</p:link>
</p:column>
+ <p:column
+ headerText="#{product.BRAND_NAME_HEADER}"
+ sortBy="#{receiptItem.itemBrandName}"
+ filterBy="#{receiptItem.itemBrandName}"
+ >
+ <h:outputText value="#{receiptItem.itemBrandName}" />
+ </p:column>
+
+ <p:column
+ headerText="#{project.RECIPIENT_ITEM_COUPON_NUMBER_HEADER}"
+ sortBy="#{receiptItem.itemCouponNumber}"
+ filterBy="#{receiptItem.itemCouponNumber}"
+ >
+ <h:outputText value="#{receiptItem.itemCouponNumber}" />
+ </p:column>
+
+ <p:column
+ headerText="#{project.GROSS_PRICE_HEADER}"
+ sortBy="#{receiptItem.itemGrossPrice}"
+ filterBy="#{receiptItem.itemGrossPrice}"
+ filterFunction="#{productListController.filterByPrice}"
+ >
+ <h:outputText value="#{receiptItem.itemGrossPrice}" />
+ </p:column>
+
+ <p:column
+ headerText="#{project.NET_PRICE_HEADER}"
+ sortBy="#{receiptItem.itemNetPrice}"
+ filterBy="#{receiptItem.itemNetPrice}"
+ filterFunction="#{productListController.filterByPrice}"
+ >
+ <h:outputText value="#{receiptItem.itemNetPrice}">
+ <!-- @TODO Hard-coded EUR again -->
+ <f:convertNumber type="currency" currencyCode="EUR" />
+ </h:outputText>
+ </p:column>
+
+ <p:column
+ headerText="#{project.TAX_RATE_HEADER}"
+ sortBy="#{receiptItem.itemTaxRate}"
+ filterBy="#{receiptItem.itemTaxRate}"
+ >
+ <h:outputText value="#{receiptItem.itemTaxRate}">
+ <!-- @TODO No real percentage number, 7.0 means 7.0%, not 700% -->
+ <f:convertNumber type="number" />
+ </h:outputText>
+ </p:column>
+
+ <p:column
+ headerText="#{project.IS_DISCOUNT_HEADER}"
+ sortBy="#{receiptItem.itemIsDiscount}"
+ filterBy="#{receiptItem.itemIsDiscount}"
+ filterMatchMode="exact"
+ >
+ <f:facet name="filter">
+ <p:selectOneMenu onchange="PF('receiptItemList').filter()">
+ <f:converter converterId="javax.faces.Boolean" />
+ <f:selectItem itemLabel="#{msg.CHOICE_ALL}" itemValue="#{null}" />
+ <f:selectItem itemLabel="#{msg.CHOICE_YES}" itemValue="true" />
+ <f:selectItem itemLabel="#{msg.CHOICE_NO}" itemValue="false" />
+ </p:selectOneMenu>
+ </f:facet>
+
+ <h:outputText value="#{receiptItem.itemIsDiscount ? msg.CHOICE_YES : msg.CHOICE_NO}" />
+ </p:column>
+
+ <p:column
+ headerText="#{project.IS_REFUND_HEADER}"
+ sortBy="#{receiptItem.itemIsRefund}"
+ filterBy="#{receiptItem.itemIsRefund}"
+ filterMatchMode="exact"
+ >
+ <f:facet name="filter">
+ <p:selectOneMenu onchange="PF('receiptItemList').filter()">
+ <f:converter converterId="javax.faces.Boolean" />
+ <f:selectItem itemLabel="#{msg.CHOICE_ALL}" itemValue="#{null}" />
+ <f:selectItem itemLabel="#{msg.CHOICE_YES}" itemValue="true" />
+ <f:selectItem itemLabel="#{msg.CHOICE_NO}" itemValue="false" />
+ </p:selectOneMenu>
+ </f:facet>
+
+ <h:outputText value="#{receiptItem.itemIsRefund ? msg.CHOICE_YES : msg.CHOICE_NO}" />
+ </p:column>
+
+ <p:column
+ headerText="#{project.RECEIPT_ITEM_NUMBER_HEADER}"
+ sortBy="#{receiptItem.itemNumber}"
+ filterBy="#{receiptItem.itemNumber}"
+ >
+ <h:outputText value="#{receiptItem.itemNumber}" />
+ </p:column>
+
<p:column
headerText="#{project.ADMIN_RECEIPT_HEADER}"
sortBy="#{receiptItem.itemReceipt}"
</p:link>
</p:column>
+ <p:column
+ headerText="#{project.RECEIPT_ITEM_PRODUCT_QUANTITY_HEADER}"
+ sortBy="#{receiptItem.itemProductQuantity}"
+ filterBy="#{receiptItem.itemProductQuantity}"
+ >
+ <h:outputText value="#{receiptItem.itemProductQuantity}" />
+ </p:column>
+
<p:column
headerText="#{product.ADMIN_PRODUCT_MANUFACTURER_HEADER}"
sortBy="#{receiptItem.itemManufacturer.companyName}"