List of usage examples for org.hibernate.criterion Restrictions or
public static LogicalExpression or(Criterion lhs, Criterion rhs)
From source file:com.floreantpos.model.dao.DiscountDAO.java
License:Open Source License
public List<Discount> getTicketValidCoupon() { Session session = null;/*from w w w . j a va2s .c om*/ Date currentDate = new Date(); try { session = createNewSession(); Criteria criteria = session.createCriteria(getReferenceClass()); criteria.add(Restrictions.eq(Discount.PROP_ENABLED, Boolean.TRUE)); criteria.add(Restrictions.eq(Discount.PROP_QUALIFICATION_TYPE, Discount.QUALIFICATION_TYPE_ORDER)); criteria.add(Restrictions.or(Restrictions.eq(Discount.PROP_NEVER_EXPIRE, Boolean.TRUE), Restrictions.ge(Discount.PROP_EXPIRY_DATE, currentDate))); return criteria.list(); } finally { closeSession(session); } }
From source file:com.floreantpos.model.dao.MenuCategoryDAO.java
License:Open Source License
public List<MenuCategory> findNonBevegares() { Session session = null;//from w w w . jav a2 s . co m try { session = getSession(); Criteria criteria = session.createCriteria(getReferenceClass()); criteria.add(Restrictions.eq(MenuCategory.PROP_VISIBLE, Boolean.TRUE)); criteria.add(Restrictions.or(Restrictions.isNull(MenuCategory.PROP_BEVERAGE), Restrictions.eq(MenuCategory.PROP_BEVERAGE, Boolean.FALSE))); return criteria.list(); } finally { closeSession(session); } }
From source file:com.floreantpos.model.dao.MenuGroupDAO.java
License:Open Source License
@SuppressWarnings("unchecked") public boolean hasChildren(Terminal terminal, MenuGroup group, OrderType orderType) throws PosException { Session session = null;// w w w .ja va2s.c om try { session = getSession(); Criteria criteria = session.createCriteria(MenuItem.class); criteria.add(Restrictions.eq(MenuItem.PROP_PARENT, group)); criteria.add(Restrictions.eq(MenuItem.PROP_VISIBLE, Boolean.TRUE)); // if(terminal!=null) { // criteria.add(Restrictions.eq(MenuItem., criteria)) // } criteria.setProjection(Projections.rowCount()); criteria.createAlias("orderTypeList", "type", CriteriaSpecification.LEFT_JOIN); criteria.add(Restrictions.or(Restrictions.isEmpty("orderTypeList"), Restrictions.eq("type.id", orderType.getId()))); int uniqueResult = (Integer) criteria.uniqueResult(); return uniqueResult > 0; } catch (Exception e) { e.printStackTrace(); throw new PosException(Messages.getString("MenuItemDAO.0")); //$NON-NLS-1$ } finally { if (session != null) { session.close(); } } }
From source file:com.floreantpos.model.dao.MenuItemDAO.java
License:Open Source License
public List<MenuItem> findByParent(Terminal terminal, MenuGroup menuGroup, Object selectedOrderType, boolean includeInvisibleItems) { Session session = null;//from www. j av a 2 s. co m Criteria criteria = null; try { session = getSession(); criteria = session.createCriteria(MenuItem.class); if (menuGroup != null) { criteria.add(Restrictions.eq(MenuItem.PROP_PARENT, menuGroup)); } criteria.addOrder(Order.asc(MenuItem.PROP_SORT_ORDER)); if (!includeInvisibleItems) { criteria.add(Restrictions.eq(MenuItem.PROP_VISIBLE, Boolean.TRUE)); } if (selectedOrderType instanceof OrderType) { OrderType orderType = (OrderType) selectedOrderType; criteria.createAlias("orderTypeList", "type", CriteriaSpecification.LEFT_JOIN); criteria.add(Restrictions.or(Restrictions.isEmpty("orderTypeList"), Restrictions.eq("type.id", orderType.getId()))); } return criteria.list(); } catch (Exception e) { } return criteria.list(); }
From source file:com.floreantpos.model.dao.MenuItemDAO.java
License:Open Source License
public List<MenuItem> getMenuItems() { Session session = null;/* w w w . j a va 2s .co m*/ Criteria criteria = null; try { session = createNewSession(); criteria = session.createCriteria(MenuItem.class); criteria.add(Restrictions.or(Restrictions.eq(MenuItem.PROP_PIZZA_TYPE, false), Restrictions.isNull(MenuItem.PROP_PIZZA_TYPE))); List<MenuItem> result = criteria.list(); return result; } finally { closeSession(session); } }
From source file:com.floreantpos.model.dao.PosTransactionDAO.java
License:Open Source License
public List<PosTransaction> findUnauthorizedTransactions(User owner) { Session session = null;//from www .j av a 2 s .c om try { session = getSession(); Criteria criteria = session.createCriteria(getReferenceClass()); criteria.add(Restrictions.eq(PosTransaction.PROP_CAPTURED, Boolean.FALSE)); criteria.add(Restrictions.eq(PosTransaction.PROP_AUTHORIZABLE, Boolean.TRUE)); criteria.add(Restrictions.or(Restrictions.isNull(PosTransaction.PROP_VOIDED), Restrictions.eq(PosTransaction.PROP_VOIDED, Boolean.FALSE))); criteria.add(Restrictions.eq(PosTransaction.PROP_TRANSACTION_TYPE, TransactionType.CREDIT.name())); criteria.add(Restrictions.isNotNull(PosTransaction.PROP_TICKET)); if (owner != null) { criteria.add(Restrictions.eq(PosTransaction.PROP_USER, owner)); } return criteria.list(); } finally { closeSession(session); } }
From source file:com.floreantpos.model.dao.PosTransactionDAO.java
License:Open Source License
public List<PosTransaction> findAuthorizedTransactions(User owner) { Session session = null;//w w w . j a va 2 s. c o m try { session = getSession(); Criteria criteria = session.createCriteria(CreditCardTransaction.class); criteria.add(Restrictions.eq(PosTransaction.PROP_CAPTURED, Boolean.TRUE)); criteria.add(Restrictions.or(Restrictions.isNull(PosTransaction.PROP_VOIDED), Restrictions.eq(PosTransaction.PROP_VOIDED, Boolean.FALSE))); criteria.add(Restrictions.isNotNull(PosTransaction.PROP_TICKET)); //criteria.add(Restrictions.eq(PosTransaction.PROP_DRAWER_RESETTED, Boolean.FALSE)); Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.DAY_OF_MONTH, -1); Date startOfDay = DateUtil.startOfDay(calendar.getTime()); Date endOfDay = DateUtil.endOfDay(new Date()); //show credit card transactions of last 2 days criteria.add(Restrictions.between(PosTransaction.PROP_TRANSACTION_TIME, startOfDay, endOfDay)); return criteria.list(); } finally { closeSession(session); } }
From source file:com.floreantpos.model.dao.TicketDAO.java
License:Open Source License
public List<Ticket> findOpenTicketsByOrderType(OrderType orderType) { Session session = null;/* w w w . j a v a 2 s.c o m*/ try { session = getSession(); Criteria criteria = session.createCriteria(getReferenceClass()); User user = Application.getCurrentUser(); if (user != null && !user.canViewAllOpenTickets()) { criteria.add(Restrictions.eq(Ticket.PROP_OWNER, user)); } criteria.add(Restrictions.eq(Ticket.PROP_TICKET_TYPE, orderType.getName())); criteria.add(Restrictions.eq(Ticket.PROP_BAR_TAB, true)); criteria.add( Restrictions.or(Restrictions.isEmpty("tableNumbers"), Restrictions.isNull("tableNumbers"))); criteria.add(Restrictions.eq(Ticket.PROP_CLOSED, Boolean.FALSE)); criteria.addOrder(getDefaultOrder()); List list = criteria.list(); return list; } finally { closeSession(session); } }
From source file:com.floreantpos.print.DrawerpullReportService.java
License:Open Source License
private static void populateNetSales(Session session, Terminal terminal, DrawerPullReport report) { //find net sale, tax Criteria criteria = session.createCriteria(Ticket.class); criteria.add(Restrictions.gt(Ticket.PROP_PAID_AMOUNT, 0.0)); criteria.add(Restrictions.or(Restrictions.eq(Ticket.PROP_VOIDED, Boolean.FALSE), Restrictions.eq(Ticket.PROP_REFUNDED, Boolean.TRUE))); criteria.add(Restrictions.eq(Ticket.PROP_DRAWER_RESETTED, Boolean.FALSE)); criteria.add(Restrictions.eq(Ticket.PROP_TERMINAL, terminal)); List<Ticket> list = criteria.list(); if (list == null || list.size() == 0) { return;// w w w.j av a 2 s. co m } int ticketCount = 0; double subtotal = 0; double discount = 0; double salesTax = 0; double salesDeliveryCharge = 0; double tips = 0; for (Ticket ticket : list) { ++ticketCount; double refundAmount = 0; double refundTaxAmount = 0; Gratuity gratuity = ticket.getGratuity(); if (gratuity != null) { if (gratuity.isRefunded()) { refundAmount -= gratuity.getAmount(); } else tips += gratuity.getAmount(); } if (ticket.isRefunded()) { if (ticket.getTransactions() != null) { for (PosTransaction t : ticket.getTransactions()) { if (t instanceof RefundTransaction) { refundAmount += NumberUtil.roundToTwoDigit(t.getAmount()); } } } refundTaxAmount = (ticket.getTaxAmount() * refundAmount) / (ticket.getSubtotalAmount() + ticket.getTaxAmount()); refundAmount = NumberUtil.roundToTwoDigit(refundAmount - refundTaxAmount); } subtotal += ticket.getSubtotalAmount() - refundAmount; discount += ticket.getDiscountAmount(); salesTax += ticket.getTaxAmount() - refundTaxAmount; salesDeliveryCharge += ticket.getDeliveryCharge(); } report.setTicketCount(ticketCount); report.setNetSales(subtotal - discount); report.setSalesTax(NumberUtil.roundToTwoDigit(salesTax)); report.setSalesDeliveryCharge(salesDeliveryCharge); report.setChargedTips(tips); }
From source file:com.floreantpos.print.DrawerpullReportService.java
License:Open Source License
private static void populateReceiptDifferential(Session session, Terminal terminal, DrawerPullReport report) { //find net sale, tax Criteria criteria = session.createCriteria(Ticket.class); criteria.add(Restrictions.gt(Ticket.PROP_PAID_AMOUNT, 0.0)); criteria.add(Restrictions.or(Restrictions.eq(Ticket.PROP_VOIDED, Boolean.FALSE), Restrictions.eq(Ticket.PROP_REFUNDED, Boolean.TRUE))); criteria.add(Restrictions.eq(Ticket.PROP_DRAWER_RESETTED, Boolean.FALSE)); criteria.add(Restrictions.eq(Ticket.PROP_TERMINAL, terminal)); List<Ticket> list = criteria.list(); if (list == null || list.size() == 0) { return;/*from w ww . ja v a 2 s . c o m*/ } TicketDAO dao = TicketDAO.getInstance(); for (Ticket ticket : list) { ticket = dao.loadCouponsAndTransactions(ticket.getId()); TransactionSummary ts = calculateTransactionSummary(ticket, CashTransaction.class); report.setCashReceiptCount(report.getCashReceiptCount() + ts.getCount()); report.setCashReceiptAmount(report.getCashReceiptAmount() + ts.getAmount()); ts = calculateTransactionSummary(ticket, CreditCardTransaction.class); report.setCreditCardReceiptCount(report.getCreditCardReceiptCount() + ts.getCount()); report.setCreditCardReceiptAmount(report.getCreditCardReceiptAmount() + ts.getAmount()); ts = calculateTransactionSummary(ticket, DebitCardTransaction.class); report.setDebitCardReceiptCount(report.getDebitCardReceiptCount() + ts.getCount()); report.setDebitCardReceiptAmount(report.getDebitCardReceiptAmount() + ts.getAmount()); ts = calculateTransactionSummary(ticket, GiftCertificateTransaction.class); report.setGiftCertReturnCount(report.getGiftCertReturnCount() + ts.getCount()); report.setGiftCertReturnAmount(report.getGiftCertReturnAmount() + ts.getAmount()); report.setGiftCertChangeAmount(report.getGiftCertChangeAmount() + ts.getChangeAmount()); report.setCashBack(report.getCashBack() + ts.getChangeAmount()); } }