Example usage for org.hibernate.criterion DetachedCriteria addOrder

List of usage examples for org.hibernate.criterion DetachedCriteria addOrder

Introduction

In this page you can find the example usage for org.hibernate.criterion DetachedCriteria addOrder.

Prototype

public DetachedCriteria addOrder(Order order) 

Source Link

Document

Adds an ordering

Usage

From source file:com.jaspersoft.jasperserver.api.metadata.user.service.impl.UserAuthorityServiceImpl.java

License:Open Source License

protected DetachedCriteria createUsersWithRoleCriteria(String roleName, String userName, boolean order) {

    DetachedCriteria criteria = DetachedCriteria.forClass(getPersistentUserClass());

    String userNameField = "username";
    String roleNameField = "roleName";

    //        addTenantCriteria(criteria, tenantIds);
    createSearchByUserNameCriteria(criteria, userName);

    if (roleName != null && roleName.trim().length() > 0) {

        Criterion roleNameCriterion = Restrictions.eq(roleNameField, roleName.trim());

        criteria.createCriteria("roles").add(roleNameCriterion);
    }//from w  w w  . j ava2  s . c om

    if (order) {
        criteria.addOrder(Order.asc(userNameField));
    }

    return criteria;
}

From source file:com.jgeppert.struts2.jquery.grid.showcase.action.JsonOrdersAction.java

License:Apache License

public String execute() {
    log.debug("Page " + getPage() + " Rows " + getRows() + " Sorting Order " + getSord() + " Index Row :"
            + getSidx());/*  www. j a  va  2s . c  o  m*/
    log.debug("Search :" + searchField + " " + searchOper + " " + searchString);

    // Calcalate until rows ware selected
    int to = (rows * page);

    // Calculate the first row to read
    int from = to - rows;

    // Criteria to Build SQL
    DetachedCriteria criteria = DetachedCriteria.forClass(Orders.class);

    if (id != null) {
        criteria.createAlias("customer", "c");
        criteria.add(Restrictions.eq("c.customernumber", id));
    }

    // Handle Search
    if (searchField != null) {
        if (searchField.equals("customernumber")) {
            Integer searchValue = Integer.parseInt(searchString);
            if (searchOper.equals("eq"))
                criteria.add(Restrictions.eq("ordernumber", searchValue));
            else if (searchOper.equals("ne"))
                criteria.add(Restrictions.ne("ordernumber", searchValue));
            else if (searchOper.equals("lt"))
                criteria.add(Restrictions.lt("ordernumber", searchValue));
            else if (searchOper.equals("gt"))
                criteria.add(Restrictions.gt("ordernumber", searchValue));
        } else if (searchField.equals("status") || searchField.equals("comments")) {
            if (searchOper.equals("eq"))
                criteria.add(Restrictions.eq(searchField, searchString));
            else if (searchOper.equals("ne"))
                criteria.add(Restrictions.ne(searchField, searchString));
            else if (searchOper.equals("bw"))
                criteria.add(Restrictions.like(searchField, searchString + "%"));
            else if (searchOper.equals("cn"))
                criteria.add(Restrictions.like(searchField, "%" + searchString + "%"));
        }
        if (searchField.equals("customer")) {
            Integer searchValue = Integer.parseInt(searchString);
            criteria.createAlias("customer", "c");

            if (searchOper.equals("eq"))
                criteria.add(Restrictions.eq("c.customernumber", searchValue));
            else if (searchOper.equals("ne"))
                criteria.add(Restrictions.ne("c.customernumber", searchValue));
            else if (searchOper.equals("lt"))
                criteria.add(Restrictions.lt("c.customernumber", searchValue));
            else if (searchOper.equals("gt"))
                criteria.add(Restrictions.gt("c.customernumber", searchValue));
        }
    }

    // Count Orders
    records = ordersDao.countByCriteria(criteria);

    // Reset count Projection
    criteria.setProjection(null);
    criteria.setResultTransformer(Criteria.ROOT_ENTITY);

    // Handle Order By
    if (sidx != null && !sidx.equals("")) {
        if (!sidx.equals("customer")) {
            if (sord.equals("asc"))
                criteria.addOrder(Order.asc(sidx));
            else
                criteria.addOrder(Order.desc(sidx));
        } else {
            if (sord.equals("asc"))
                criteria.addOrder(Order.asc("customer.customernumber"));
            else
                criteria.addOrder(Order.desc("customer.customernumber"));
        }
    }

    // Get Customers by Criteria
    gridModel = ordersDao.findByCriteria(criteria, from, rows);

    // Set to = max rows
    if (to > records)
        to = records;

    // Calculate total Pages
    total = (int) Math.ceil((double) records / (double) rows);

    return SUCCESS;
}

From source file:com.jgeppert.struts2.jquery.grid.showcase.action.JsonTableAction.java

License:Apache License

public String execute() {
    log.debug("Page " + getPage() + " Rows " + getRows() + " Sorting Order " + getSord() + " Index Row :"
            + getSidx());//from   w ww . j a  v  a 2 s .c om
    log.debug("Search :" + searchField + " " + searchOper + " " + searchString);

    // Calcalate until rows ware selected
    int to = (rows * page);

    // Calculate the first row to read
    int from = to - rows;

    // Criteria to Build SQL
    DetachedCriteria criteria = DetachedCriteria.forClass(Customers.class);

    // Handle Search
    if (searchField != null) {
        if (searchField.equals("customernumber")) {
            Integer searchValue = Integer.parseInt(searchString);
            if (searchOper.equals("eq"))
                criteria.add(Restrictions.eq("customernumber", searchValue));
            else if (searchOper.equals("ne"))
                criteria.add(Restrictions.ne("customernumber", searchValue));
            else if (searchOper.equals("lt"))
                criteria.add(Restrictions.lt("customernumber", searchValue));
            else if (searchOper.equals("gt"))
                criteria.add(Restrictions.gt("customernumber", searchValue));
        } else if (searchField.equals("country") || searchField.equals("city")
                || searchField.equals("addressLine1") || searchField.equals("contactfirstname")
                || searchField.equals("contactlastname") || searchField.equals("customername")) {
            if (searchOper.equals("eq"))
                criteria.add(Restrictions.eq(searchField, searchString));
            else if (searchOper.equals("ne"))
                criteria.add(Restrictions.ne(searchField, searchString));
            else if (searchOper.equals("bw"))
                criteria.add(Restrictions.like(searchField, searchString + "%"));
            else if (searchOper.equals("cn"))
                criteria.add(Restrictions.like(searchField, "%" + searchString + "%"));
        } else if (searchField.equals("creditlimit")) {
            Double searchValue = Double.parseDouble(searchString);
            if (searchOper.equals("eq"))
                criteria.add(Restrictions.eq("creditlimit", searchValue));
            else if (searchOper.equals("ne"))
                criteria.add(Restrictions.ne("creditlimit", searchValue));
            else if (searchOper.equals("lt"))
                criteria.add(Restrictions.lt("creditlimit", searchValue));
            else if (searchOper.equals("gt"))
                criteria.add(Restrictions.gt("creditlimit", searchValue));
        }
        if (searchField.equals("employeenumber")) {
            Integer searchValue = Integer.parseInt(searchString);
            criteria.createAlias("salesemployee", "se");

            if (searchOper.equals("eq"))
                criteria.add(Restrictions.eq("se.employeenumber", searchValue));
            else if (searchOper.equals("ne"))
                criteria.add(Restrictions.ne("se.employeenumber", searchValue));
            else if (searchOper.equals("lt"))
                criteria.add(Restrictions.lt("se.employeenumber", searchValue));
            else if (searchOper.equals("gt"))
                criteria.add(Restrictions.gt("se.employeenumber", searchValue));
        }
    }

    // Count Customers
    records = customersDao.countByCriteria(criteria);

    // Reset count Projection
    criteria.setProjection(null);
    criteria.setResultTransformer(Criteria.ROOT_ENTITY);

    // Handle Order By
    if (sidx != null && !sidx.equals("")) {
        if (!sidx.equals("employeenumber")) {
            if (sord.equals("asc"))
                criteria.addOrder(Order.asc(sidx));
            else
                criteria.addOrder(Order.desc(sidx));
        } else {
            if (sord.equals("asc"))
                criteria.addOrder(Order.asc("salesemployee.employeenumber"));
            else
                criteria.addOrder(Order.desc("salesemployee.employeenumber"));
        }
    }

    // Get Customers by Criteria
    gridModel = customersDao.findByCriteria(criteria, from, rows);

    // Set to = max rows
    if (to > records)
        to = records;

    // Calculate total Pages
    total = (int) Math.ceil((double) records / (double) rows);

    return SUCCESS;
}

From source file:com.joey.Fujikom.modules.sys.service.SystemService.java

License:Open Source License

public Page<User> findUser(Page<User> page, User user) {
    User currentUser = UserUtils.getUser();
    DetachedCriteria dc = userDao.createDetachedCriteria();

    dc.createAlias("company", "company");
    if (user.getCompany() != null && StringUtils.isNotBlank(user.getCompany().getId())) {
        dc.add(Restrictions.or(Restrictions.eq("company.id", user.getCompany().getId()),
                Restrictions.like("company.parentIds", "%," + user.getCompany().getId() + ",%")));
    }// w  w w .  j av a2 s  .c  om

    dc.createAlias("office", "office");
    if (user.getOffice() != null && StringUtils.isNotBlank(user.getOffice().getId())) {
        dc.add(Restrictions.or(Restrictions.eq("office.id", user.getOffice().getId()),
                Restrictions.like("office.parentIds", "%," + user.getOffice().getId() + ",%")));
    }

    // ????
    if (!currentUser.isAdmin()) {
        dc.add(Restrictions.ne("id", "1"));
    }

    dc.add(dataScopeFilter(currentUser, "office", ""));

    if (StringUtils.isNotEmpty(user.getLoginName())) {
        dc.add(Restrictions.like("loginName", "%" + user.getLoginName() + "%"));
    }
    if (StringUtils.isNotEmpty(user.getName())) {
        dc.add(Restrictions.like("name", "%" + user.getName() + "%"));
    }

    dc.add(Restrictions.eq(User.FIELD_DEL_FLAG, User.DEL_FLAG_NORMAL));
    if (!StringUtils.isNotEmpty(page.getOrderBy())) {
        dc.addOrder(Order.asc("company.code")).addOrder(Order.asc("office.code")).addOrder(Order.desc("name"));
    }

    return userDao.find(page, dc);
}

From source file:com.joey.Fujikom.modules.sys.utils.UserUtils.java

License:Open Source License

public static List<Office> getOfficeList() {
    @SuppressWarnings("unchecked")
    List<Office> officeList = (List<Office>) getCache(CACHE_OFFICE_LIST);
    if (officeList == null) {
        User user = getUser();//w w w.  ja  v  a2 s.c  o m
        //         if (user.isAdmin()){
        //            officeList = officeDao.findAllList();
        //         }else{
        //            officeList = officeDao.findAllChild(user.getOffice().getId(), "%,"+user.getOffice().getId()+",%");
        //         }
        DetachedCriteria dc = officeDao.createDetachedCriteria();
        dc.add(dataScopeFilter(user, dc.getAlias(), ""));
        dc.add(Restrictions.eq(Office.FIELD_DEL_FLAG, Office.DEL_FLAG_NORMAL));
        dc.addOrder(Order.asc("code"));
        officeList = officeDao.find(dc);
        putCache(CACHE_OFFICE_LIST, officeList);
    }
    return officeList;
}

From source file:com.krawler.common.util.BuildCriteria.java

License:Open Source License

private static void pushCriteriaValue(Object value, Integer conditionval, DetachedCriteria crit,
        String propertyname) {// w w  w.  j av a2  s.  c o m
    switch (conditionval) {
    case ORDER:
        crit.addOrder(getOrderByCondition(value, propertyname));
        break;
    default:
        crit.add(getCriteriaByCondition(value, conditionval, propertyname));
        break;
    }
}

From source file:com.lcw.one.modules.sys.service.OfficeService.java

License:Open Source License

public List<Office> findAll() {
    DetachedCriteria dc = officeDao.createDetachedCriteria();
    dc.add(dataScopeFilter(UserUtils.getUser(), dc.getAlias(), ""));
    dc.add(Restrictions.eq(Office.FIELD_DEL_FLAG, Office.DEL_FLAG_NORMAL));
    dc.addOrder(Order.asc("code"));
    List<Office> officeList = officeDao.find(dc);
    return officeList;
}

From source file:com.lzw.work.cms.manager.PreCarRegisterManager.java

/**
 * /*  w  w w .  ja  v  a  2  s. co  m*/
 */
public void getCarList() {

    Map userMap = (Map) ServletActionContext.getRequest().getSession().getAttribute("user");

    String stationCode = (String) userMap.get("StationCode");

    String userName = (String) userMap.get("UserName");

    String isAdmin = (String) userMap.get("IsAdmin");

    String clsbdh = ServletActionContext.getRequest().getParameter("clsbdh");

    Integer page = Integer.parseInt(ServletActionContext.getRequest().getParameter("page"));

    Integer rows = Integer.parseInt(ServletActionContext.getRequest().getParameter("rows"));

    DetachedCriteria dc = DetachedCriteria.forClass(bean.getClass());

    if (!"1".equals(isAdmin)) {
        dc.add(Restrictions.eq("stationCode", stationCode));
    }

    if (clsbdh != null && !"".equals(clsbdh)) {
        dc.add(Restrictions.like("clsbdh", "%" + clsbdh));
    }

    int first = (page - 1) * rows;

    dc.setProjection(Projections.rowCount());
    Long count = (Long) this.getHibernateTemplate().findByCriteria(dc).get(0);

    dc.setProjection(null);

    dc.addOrder(Order.desc("createdDate"));
    List list = this.getHibernateTemplate().findByCriteria(dc, first, rows);

    Map map = new HashMap();

    map.put("rows", list);
    map.put("total", count.intValue());

    JSONObject jo = JSONObject.fromObject(map);
    pw.print(jo);
}

From source file:com.opengamma.masterdb.batch.DbBatchMaster.java

License:Open Source License

@Override
@SuppressWarnings("unchecked")
public Pair<List<RiskRun>, Paging> searchRiskRun(final BatchRunSearchRequest request) {
    s_logger.info("Searching BatchDocuments: ", request);

    final DetachedCriteria criteria = DetachedCriteria.forClass(RiskRun.class);

    if (request.getValuationTime() != null) {
        criteria.add(Restrictions.eq("valuationTime", request.getValuationTime()));
    }//from   w w w .j  a  va 2s.  c om
    if (request.getVersionCorrection() != null) {
        criteria.add(Restrictions.eq("versionCorrection", request.getVersionCorrection()));
    }

    if (request.getMarketDataUid() != null) {
        criteria.createCriteria("marketData")
                .add(Restrictions.eq("baseUidScheme", request.getMarketDataUid().getScheme()))
                .add(Restrictions.eq("baseUidValue", request.getMarketDataUid().getValue()))
                .add(eqOrIsNull("baseUidVersion", request.getMarketDataUid().getVersion()));
        //.addOrder(Order.asc("baseUid"));
    }

    if (request.getViewDefinitionUid() != null) {
        criteria.add(Restrictions.eq("viewDefinitionUidScheme", request.getViewDefinitionUid().getScheme()))
                .add(Restrictions.eq("viewDefinitionUidValue", request.getViewDefinitionUid().getValue()))
                .add(eqOrIsNull("viewDefinitionUidVersion", request.getViewDefinitionUid().getVersion()));
        //.addOrder(Order.asc("viewDefinitionUid"));
    }

    return getTransactionTemplateRetrying(getMaxRetries())
            .execute(new TransactionCallback<Pair<List<RiskRun>, Paging>>() {
                @Override
                public Pair<List<RiskRun>, Paging> doInTransaction(final TransactionStatus status) {
                    //
                    final PagingRequest pagingRequest = request.getPagingRequest();
                    List<RiskRun> results = Collections.emptyList();
                    Paging paging;
                    if (!pagingRequest.equals(PagingRequest.NONE)) {
                        if (pagingRequest.equals(PagingRequest.ALL)) {
                            criteria.addOrder(Order.asc("valuationTime"));
                            results = getHibernateTemplate().findByCriteria(criteria,
                                    pagingRequest.getFirstItem(), pagingRequest.getPagingSize());
                            //
                            paging = Paging.of(pagingRequest, results);
                        } else {
                            criteria.setProjection(Projections.rowCount());
                            final Long totalCount = (Long) getHibernateTemplate().findByCriteria(criteria)
                                    .get(0);
                            paging = Paging.of(pagingRequest, totalCount.intValue());
                            //
                            criteria.setProjection(null);
                            criteria.setResultTransformer(Criteria.ROOT_ENTITY);
                            criteria.addOrder(Order.asc("valuationTime"));
                            results = getHibernateTemplate().findByCriteria(criteria,
                                    pagingRequest.getFirstItem(), pagingRequest.getPagingSize());
                        }
                    } else {
                        paging = Paging.of(PagingRequest.NONE, 0);
                    }
                    return Pair.of(results, paging);
                }
            });
}

From source file:com.ourlife.dev.modules.sys.service.SystemService.java

License:Open Source License

public Page<User> findUser(Page<User> page, User user) {
    DetachedCriteria dc = userDao.createDetachedCriteria();
    User currentUser = UserUtils.getUser();
    dc.createAlias("company", "company");
    if (user.getCompany() != null && user.getCompany().getId() != null) {
        dc.add(Restrictions.or(Restrictions.eq("company.id", user.getCompany().getId()),
                Restrictions.like("company.parentIds", "%," + user.getCompany().getId() + ",%")));
    }//from   w  w w.ja v  a 2  s . c om
    dc.createAlias("office", "office");
    if (user.getOffice() != null && user.getOffice().getId() != null) {
        dc.add(Restrictions.or(Restrictions.eq("office.id", user.getOffice().getId()),
                Restrictions.like("office.parentIds", "%," + user.getOffice().getId() + ",%")));
    }
    // ????
    if (!currentUser.isAdmin()) {
        dc.add(Restrictions.ne("id", 1L));
    }
    dc.add(dataScopeFilter(currentUser, "office", ""));
    // System.out.println(dataScopeFilterString(currentUser, "office", ""));
    if (StringUtils.isNotEmpty(user.getLoginName())) {
        dc.add(Restrictions.like("loginName", "%" + user.getLoginName() + "%"));
    }
    if (StringUtils.isNotEmpty(user.getName())) {
        dc.add(Restrictions.like("name", "%" + user.getName() + "%"));
    }
    dc.add(Restrictions.eq(User.DEL_FLAG, User.DEL_FLAG_NORMAL));
    if (!StringUtils.isNotEmpty(page.getOrderBy())) {
        dc.addOrder(Order.asc("company.code")).addOrder(Order.asc("office.code")).addOrder(Order.desc("id"));
    }
    return userDao.find(page, dc);
}