Commit 0ca059cb by Juho Juopperi

Merge branch 'foodwavefix' into 'master'

Foodwavefix

oikea requesti

See merge request !121
2 parents dc4be23d 9c64ffe0
......@@ -378,7 +378,7 @@ public class ProductBean implements ProductBeanLocal {
@Override
@RolesAllowed(ShopPermission.S_MANAGE_PRODUCTS)
public List<Product> findForStaffshop() {
return productFacade.findAll();
return productFacade.findProductsWithNoFlag(ProductFlag.HIDE_FROM_INFOSHOP);
}
@RolesAllowed(ShopPermission.S_MANAGE_PRODUCTS)
......
......@@ -19,6 +19,7 @@
package fi.codecrew.moya.facade;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
......@@ -57,6 +58,8 @@ public class ProductFacade extends IntegerPkGenericFacade<Product> {
return getEm().createQuery(cq).getResultList();
}
public Product getCreditProduct() {
throw new RuntimeException();
......@@ -88,6 +91,35 @@ public class ProductFacade extends IntegerPkGenericFacade<Product> {
return getEm().createQuery(cq).getResultList();
}
public List<Product> findProductsWithNoFlag(ProductFlag... productFlags) {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Product> cq = cb.createQuery(Product.class);
Root<Product> root = cq.from(Product.class);
cq.where(cb.equal(root.get(Product_.event), eventbean.getCurrentEvent())
// kettu, tehään käsin, katotaan toi joskus, saa korjata criteriabuilderiin.
// ,cb.or(cb.not(root.get(Product_.productFlags).in(Arrays.asList(productFlags))), cb.isEmpty(root.get(Product_.productFlags)))
);
cq.orderBy(cb.asc(root.get(Product_.sort)));
List<Product> retList = new ArrayList<Product>();
productList: for(Product product : getEm().createQuery(cq).getResultList()) {
if(product.getProductFlags() != null && product.getProductFlags().size() != 0) {
for(ProductFlag flag : productFlags ) {
if(product.getProductFlags().contains(flag))
continue productList;
}
}
retList.add(product);
}
return retList;
}
public Product findProductByBarcode(String barcode) {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
......
......@@ -23,7 +23,7 @@
<h:link rendered="#{not foodwave.isFull()}" outcome="#{cc.attrs.outcome}" value="#{foodwave.name}">
<f:param name="foodwaveid" value="#{foodwave.id}" />
<f:param name="userid" value="#{userView.user.user.id}" />
<f:param name="userid" value="#{userView.getCurrentUser().user.id}" />
</h:link>
<h:outputText rendered="#{foodwave.isFull()}" value="#{foodwave.name}" />
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!