在前台得到数据排序
csPaymentFormSjsh.conditions.length = 0; buildCondition(csPaymentFormSjsh.searchForm,csPaymentFormSjsh.conditions); csPaymentFormSjsh.conditions.push(new Condition('businessPeriodIdTo',OPRATER_EQUAL,Ext.getCmp('s_businessPeriodId').getValue(),'','String','','','')); csPaymentFormSjsh.conditions.push(new Condition('bankTypeCds',OPRATER_EQUAL,Ext.getCmp('bankTypeCds').getValue(),'','String','','',''));
csPaymentFormSjsh.listGrid.onSearch(csPaymentFormSjsh.conditions); csPaymentFormSjsh.listGrid.getStore().sort("orgCd","asc");
在后台用DetachedCriteria查询排序
public PaginationSupport getHistoryCheckByDwr(DwrBackParams params){ int pageSize=params.getLimit(); int currentPage=params.getStart()/pageSize+1; String id = ((Condition)params.getConditions().get(0)).getFirstValue(); DetachedCriteria criteria = DetachedCriteria.forClass(CsCheckAccountT.class); criteria.add(Restrictions.eq("businessYear", getBussinesYear())); criteria.add(Restrictions.eq("systemTypeCd", DatabaseConstants.SYSTEM_TYPE_CD_5301)); criteria.add(Restrictions.eq("capitalSettlementId", id)); return dao.findPageByCriteria(criteria, Order.desc("checkAccountDate"), currentPage, pageSize, params.isReCount()); }
public PaginationSupport findPageByCriteria(final DetachedCriteria detachedCriteria, final Order order, final int currentPage, final int pageSize,final boolean reCount) { return (PaginationSupport) getHibernateTemplate().executeWithNativeSession(new HibernateCallback() {
public Object doInHibernate(Session session) throws HibernateException { Criteria criteria = detachedCriteria.getExecutableCriteria(session); if (isCacheQueries()) { criteria.setCacheable(true); if (getQueryCacheRegion() != null) { criteria.setCacheRegion(getQueryCacheRegion()); } } int totalCount = 0; if(reCount){ totalCount = ((Integer) criteria.setProjection(Projections.rowCount()).uniqueResult()).intValue(); } int startRow = (currentPage - 1) * pageSize; criteria.setProjection(null); if (null != order) { criteria.addOrder(order); } List items = criteria.setFirstResult(startRow).setMaxResults(pageSize).list(); return new PaginationSupport(items, totalCount, startRow, pageSize,reCount); } }); }