Example usage for org.hibernate.criterion Restrictions le

List of usage examples for org.hibernate.criterion Restrictions le

Introduction

In this page you can find the example usage for org.hibernate.criterion Restrictions le.

Prototype

public static SimpleExpression le(String propertyName, Object value) 

Source Link

Document

Apply a "less than or equal" constraint to the named property

Usage

From source file:com.floreantpos.model.dao.TicketDAO.java

License:Open Source License

public void loadTickets(PaginatedTableModel tableModel, Date start, Date end) {
    Session session = null;/*  w ww  . j  a  va  2  s  .c  o m*/
    Criteria criteria = null;
    try {
        session = createNewSession();
        criteria = session.createCriteria(getReferenceClass());
        criteria.add(Restrictions.eq(Ticket.PROP_CLOSED, Boolean.FALSE));
        if (start != null)
            criteria.add(Restrictions.ge(Ticket.PROP_DELIVERY_DATE, start));

        if (end != null)
            criteria.add(Restrictions.le(Ticket.PROP_DELIVERY_DATE, end));

        criteria.add(Restrictions.isNotNull(Ticket.PROP_DELIVERY_DATE));
        criteria.setFirstResult(tableModel.getCurrentRowIndex());
        criteria.setMaxResults(tableModel.getPageSize());
        tableModel.setRows(criteria.list());
        return;

    } finally {
        closeSession(session);
    }
}

From source file:com.floreantpos.report.service.ReportService.java

License:Open Source License

public MenuUsageReport getMenuUsageReport(Date fromDate, Date toDate) {
    GenericDAO dao = new GenericDAO();
    MenuUsageReport report = new MenuUsageReport();
    Session session = null;//from   ww w .  j av a2  s . c  o m

    try {

        session = dao.getSession();

        Criteria criteria = session.createCriteria(MenuCategory.class);
        List<MenuCategory> categories = criteria.list();
        MenuCategory miscCategory = new MenuCategory();
        miscCategory.setName(com.floreantpos.POSConstants.MISC_BUTTON_TEXT);
        categories.add(miscCategory);

        for (MenuCategory category : categories) {
            criteria = session.createCriteria(TicketItem.class, "item"); //$NON-NLS-1$
            criteria.createCriteria("ticket", "t"); //$NON-NLS-1$ //$NON-NLS-2$
            ProjectionList projectionList = Projections.projectionList();
            projectionList.add(Projections.sum(TicketItem.PROP_ITEM_COUNT));
            projectionList.add(Projections.sum(TicketItem.PROP_SUBTOTAL_AMOUNT));
            projectionList.add(Projections.sum(TicketItem.PROP_DISCOUNT_AMOUNT));
            criteria.setProjection(projectionList);
            criteria.add(Restrictions.eq("item." + TicketItem.PROP_CATEGORY_NAME, category.getName())); //$NON-NLS-1$
            criteria.add(Restrictions.ge("t." + Ticket.PROP_CREATE_DATE, fromDate)); //$NON-NLS-1$
            criteria.add(Restrictions.le("t." + Ticket.PROP_CREATE_DATE, toDate)); //$NON-NLS-1$
            criteria.add(Restrictions.eq("t." + Ticket.PROP_PAID, Boolean.TRUE)); //$NON-NLS-1$

            List datas = criteria.list();
            if (datas.size() > 0) {
                Object[] objects = (Object[]) datas.get(0);

                MenuUsageReportData data = new MenuUsageReportData();
                data.setCategoryName(category.getName());

                if (objects.length > 0 && objects[0] != null)
                    data.setCount(((Number) objects[0]).intValue());

                if (objects.length > 1 && objects[1] != null)
                    data.setGrossSales(((Number) objects[1]).doubleValue());

                if (objects.length > 2 && objects[2] != null)
                    data.setDiscount(((Number) objects[2]).doubleValue());

                data.calculate();
                report.addReportData(data);
            }
        }

        return report;
    } finally {
        if (session != null) {
            session.close();
        }
    }
}

From source file:com.floreantpos.report.service.ReportService.java

License:Open Source License

public ServerProductivityReport getServerProductivityReport(Date fromDate, Date toDate) {
    GenericDAO dao = new GenericDAO();
    ServerProductivityReport report = new ServerProductivityReport();
    Session session = null;/*from ww  w. ja  v  a  2s. c  o m*/

    try {

        session = dao.getSession();

        Criteria criteria = session.createCriteria(User.class);
        //criteria.add(Restrictions.eq(User.PROP_USER_TYPE, User.USER_TYPE_SERVER));
        List<User> servers = criteria.list();

        criteria = session.createCriteria(MenuCategory.class);
        List<MenuCategory> categories = criteria.list();
        MenuCategory miscCategory = new MenuCategory();
        miscCategory.setName(com.floreantpos.POSConstants.MISC_BUTTON_TEXT);
        categories.add(miscCategory);

        for (User server : servers) {
            ServerProductivityReportData data = new ServerProductivityReportData();
            data.setServerName(server.getUserId() + "/" + server.toString()); //$NON-NLS-1$
            criteria = session.createCriteria(Ticket.class);
            criteria.add(Restrictions.eq(Ticket.PROP_OWNER, server));
            criteria.add(Restrictions.eq(Ticket.PROP_PAID, Boolean.TRUE));
            criteria.add(Restrictions.eq(Ticket.PROP_VOIDED, Boolean.FALSE)); //$NON-NLS-1$
            criteria.add(Restrictions.eq(Ticket.PROP_REFUNDED, Boolean.FALSE)); //$NON-NLS-1$
            criteria.add(Restrictions.ge(Ticket.PROP_CREATE_DATE, fromDate));
            criteria.add(Restrictions.le(Ticket.PROP_CREATE_DATE, toDate));

            ProjectionList projectionList = Projections.projectionList();
            projectionList.add(Projections.rowCount());
            projectionList.add(Projections.sum(Ticket.PROP_NUMBER_OF_GUESTS));
            projectionList.add(Projections.sum(TicketItem.PROP_TOTAL_AMOUNT));

            criteria.setProjection(projectionList);

            Object[] o = (Object[]) criteria.uniqueResult();
            int totalCheckCount = 0;
            double totalServerSale = 0;
            if (o != null) {
                if (o.length > 0 && o[0] != null) {
                    int i = ((Number) o[0]).intValue();
                    data.setTotalCheckCount(totalCheckCount = i);
                }
                if (o.length > 1 && o[1] != null) {
                    int i = ((Number) o[1]).intValue();
                    data.setTotalGuestCount(i);
                }
                if (o.length > 2 && o[2] != null) {
                    totalServerSale = ((Number) o[2]).doubleValue();
                    data.setTotalSales(totalServerSale);
                }
            }

            data.calculate();
            report.addReportData(data);

            for (MenuCategory category : categories) {
                data = new ServerProductivityReportData();
                data.setServerName(server.getUserId() + "/" + server.toString()); //$NON-NLS-1$

                criteria = session.createCriteria(TicketItem.class, "item"); //$NON-NLS-1$
                criteria.createCriteria(TicketItem.PROP_TICKET, "t"); //$NON-NLS-1$

                projectionList = Projections.projectionList();
                criteria.setProjection(projectionList);
                projectionList.add(Projections.sum(TicketItem.PROP_ITEM_COUNT));
                projectionList.add(Projections.sum(TicketItem.PROP_SUBTOTAL_AMOUNT));
                projectionList.add(Projections.sum("t." + Ticket.PROP_DISCOUNT_AMOUNT)); //$NON-NLS-1$
                projectionList.add(Projections.rowCount());

                criteria.add(Restrictions.eq("item." + TicketItem.PROP_CATEGORY_NAME, category.getName())); //$NON-NLS-1$
                criteria.add(Restrictions.ge("t." + Ticket.PROP_CREATE_DATE, fromDate)); //$NON-NLS-1$
                criteria.add(Restrictions.le("t." + Ticket.PROP_CREATE_DATE, toDate)); //$NON-NLS-1$
                criteria.add(Restrictions.eq("t." + Ticket.PROP_OWNER, server)); //$NON-NLS-1$
                criteria.add(Restrictions.eq("t." + Ticket.PROP_PAID, Boolean.TRUE)); //$NON-NLS-1$
                criteria.add(Restrictions.eq("t." + Ticket.PROP_VOIDED, Boolean.FALSE)); //$NON-NLS-1$
                criteria.add(Restrictions.eq("t." + Ticket.PROP_REFUNDED, Boolean.FALSE)); //$NON-NLS-1$

                List datas = criteria.list();
                if (datas.size() > 0) {
                    Object[] objects = (Object[]) datas.get(0);

                    data.setCategoryName(category.getName());
                    data.setTotalCheckCount(totalCheckCount);
                    if (objects.length > 0 && objects[0] != null) {
                        int i = ((Number) objects[0]).intValue();
                        data.setCheckCount(i);
                    }

                    if (objects.length > 1 && objects[1] != null) {
                        double d = ((Number) objects[1]).doubleValue();
                        data.setGrossSales(d);
                    }

                    if (objects.length > 2 && objects[2] != null) {
                        double d = ((Number) objects[2]).doubleValue();
                        if (d > 0)
                            data.setSalesDiscount(d);
                    }
                    data.setAllocation((data.getGrossSales() / totalServerSale) * 100.0);
                    data.calculate();
                    report.addReportData(data);
                }
            }
        }
        return report;
    } finally {
        if (session != null) {
            session.close();
        }
    }
}

From source file:com.floreantpos.report.service.ReportService.java

License:Open Source License

public JournalReportModel getJournalReport(Date fromDate, Date toDate) {
    GenericDAO dao = new GenericDAO();
    JournalReportModel report = new JournalReportModel();
    Session session = null;//www.  j  a  v  a 2s. c  o  m

    report.setFromDate(fromDate);
    report.setToDate(toDate);
    report.setReportTime(new Date());
    try {

        session = dao.getSession();
        Criteria criteria = session.createCriteria(ActionHistory.class);
        criteria.add(Restrictions.ge(ActionHistory.PROP_ACTION_TIME, fromDate));
        criteria.add(Restrictions.le(ActionHistory.PROP_ACTION_TIME, toDate));
        List<ActionHistory> list = criteria.list();

        for (ActionHistory history : list) {
            JournalReportData data = new JournalReportData();
            data.setRefId(history.getId());
            data.setAction(history.getActionName());
            data.setUserInfo(history.getPerformer().getUserId() + "/" + history.getPerformer()); //$NON-NLS-1$
            data.setTime(history.getActionTime());
            data.setComments(history.getDescription());
            report.addReportData(data);
        }

        return report;
    } finally {
        if (session != null) {
            session.close();
        }
    }
}

From source file:com.floreantpos.report.service.ReportService.java

License:Open Source License

private void calculateDrawerPullAmount(Session session, SalesBalanceReport report, Date fromDate, Date toDate,
        User user) {//from  w w w . j av  a2  s. c  o m
    Criteria criteria = session.createCriteria(DrawerPullReport.class);
    criteria.add(Restrictions.ge(DrawerPullReport.PROP_REPORT_TIME, fromDate));
    criteria.add(Restrictions.le(DrawerPullReport.PROP_REPORT_TIME, toDate));

    if (user != null) {
        criteria.add(Restrictions.eq(DrawerPullReport.PROP_ASSIGNED_USER, user));
    }

    ProjectionList projectionList = Projections.projectionList();
    projectionList.add(Projections.sum(DrawerPullReport.PROP_DRAWER_ACCOUNTABLE));
    projectionList.add(Projections.sum(DrawerPullReport.PROP_BEGIN_CASH));
    criteria.setProjection(projectionList);

    Object[] o = (Object[]) criteria.uniqueResult();
    if (o.length > 0 && o[0] instanceof Number) {
        double amount = ((Number) o[0]).doubleValue();
        report.setDrawerPullsAmount(amount);
    }
    if (o.length > 1 && o[1] instanceof Number) {
        double amount = ((Number) o[1]).doubleValue();
        report.setDrawerPullsAmount(report.getDrawerPullsAmount() - amount);
    }
}

From source file:com.floreantpos.report.service.ReportService.java

License:Open Source License

private double calculateCashPayout(Session session, Date fromDate, Date toDate, User user) {
    Criteria criteria = session.createCriteria(PayOutTransaction.class);
    criteria.add(Restrictions.ge(PayOutTransaction.PROP_TRANSACTION_TIME, fromDate));
    criteria.add(Restrictions.le(PayOutTransaction.PROP_TRANSACTION_TIME, toDate));

    if (user != null) {
        criteria.add(Restrictions.eq(PayOutTransaction.PROP_USER, user));
    }/*  w w w  .j a  va2 s .  c  om*/

    criteria.setProjection(Projections.sum(PayOutTransaction.PROP_AMOUNT));

    return getDoubleAmount(criteria.uniqueResult());
}

From source file:com.floreantpos.report.service.ReportService.java

License:Open Source License

private double calculateTipsPaid(Session session, Date fromDate, Date toDate, User user) {
    Criteria criteria = session.createCriteria(Ticket.class);
    criteria.createAlias(Ticket.PROP_GRATUITY, "gratuity"); //$NON-NLS-1$
    criteria.add(Restrictions.ge(Ticket.PROP_CREATE_DATE, fromDate));
    criteria.add(Restrictions.le(Ticket.PROP_CREATE_DATE, toDate));

    criteria.add(Restrictions.eq("gratuity." + Gratuity.PROP_PAID, Boolean.TRUE)); //$NON-NLS-1$

    if (user != null) {
        criteria.add(Restrictions.eq(Ticket.PROP_OWNER, user));
    }/*from   w  ww  .j  a  v  a  2 s.  c o  m*/

    criteria.setProjection(Projections.sum("gratuity." + Gratuity.PROP_AMOUNT)); //$NON-NLS-1$

    return getDoubleAmount(criteria.uniqueResult());
}

From source file:com.floreantpos.report.service.ReportService.java

License:Open Source License

private double calculateCreditReceipt(Session session, Class transactionClass, Date fromDate, Date toDate,
        User user) {//from  www  .  j a  v  a 2  s. co  m
    //cash receipt
    Criteria criteria = session.createCriteria(transactionClass);
    criteria.add(Restrictions.ge(PosTransaction.PROP_TRANSACTION_TIME, fromDate));
    criteria.add(Restrictions.le(PosTransaction.PROP_TRANSACTION_TIME, toDate));
    criteria.add(Restrictions.eq(PosTransaction.PROP_TRANSACTION_TYPE, TransactionType.CREDIT.name()));

    if (user != null) {
        criteria.add(Restrictions.eq(PosTransaction.PROP_USER, user));
    }

    criteria.setProjection(Projections.sum(CashTransaction.PROP_AMOUNT));

    return getDoubleAmount(criteria.uniqueResult());
}

From source file:com.floreantpos.report.service.ReportService.java

License:Open Source License

private double calculateCashReceipt(Session session, Date fromDate, Date toDate) {
    //cash receipt
    Criteria criteria = session.createCriteria(CashTransaction.class);
    criteria.add(Restrictions.ge(CashTransaction.PROP_TRANSACTION_TIME, fromDate));
    criteria.add(Restrictions.le(CashTransaction.PROP_TRANSACTION_TIME, toDate));
    criteria.add(Restrictions.eq(CashTransaction.PROP_TRANSACTION_TYPE, TransactionType.CREDIT.name()));

    criteria.setProjection(Projections.sum(CashTransaction.PROP_AMOUNT));

    return getDoubleAmount(criteria.uniqueResult());
}

From source file:com.floreantpos.report.service.ReportService.java

License:Open Source License

private double calculateCreditCardReceipt(Session session, Date fromDate, Date toDate) {
    //cash receipt
    Criteria criteria = session.createCriteria(CashTransaction.class);
    criteria.add(Restrictions.ge(CreditCardTransaction.PROP_TRANSACTION_TIME, fromDate));
    criteria.add(Restrictions.le(CreditCardTransaction.PROP_TRANSACTION_TIME, toDate));
    criteria.add(Restrictions.eq(CreditCardTransaction.PROP_TRANSACTION_TYPE, TransactionType.CREDIT.name()));

    criteria.setProjection(Projections.sum(CashTransaction.PROP_AMOUNT));

    return getDoubleAmount(criteria.uniqueResult());
}