List of usage examples for org.hibernate.criterion DetachedCriteria setProjection
public DetachedCriteria setProjection(Projection projection)
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());/*w ww . j a va 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.lzw.work.cms.manager.PreCarRegisterManager.java
/** * //from w ww. ja v a2 s . c o 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.medicfast.DAO.SenhaDAO.java
public Senha buscarProximaSenha() { // nao usado Session session = (Session) em.getDelegate(); DetachedCriteria max = DetachedCriteria.forClass(Senha.class); max.add(Restrictions.eq("chamado", true)); max.setProjection(Projections.max("numero")); Criteria c = session.createCriteria(Senha.class); c.add(Restrictions.eq("chamado", false)); c.add(Property.forName("numero").eq(max)); return (Senha) c.uniqueResult(); }
From source file:com.opengamma.masterdb.batch.DbBatchMaster.java
License:Open Source License
@Override @SuppressWarnings("unchecked") public Pair<List<MarketData>, Paging> getMarketData(final PagingRequest pagingRequest) { s_logger.info("Getting markte datas: ", pagingRequest); return getTransactionTemplateRetrying(getMaxRetries()) .execute(new TransactionCallback<Pair<List<MarketData>, Paging>>() { @Override//w w w .ja v a 2 s.c o m public Pair<List<MarketData>, Paging> doInTransaction(final TransactionStatus status) { final DetachedCriteria criteria = DetachedCriteria.forClass(MarketData.class); List<MarketData> results = Collections.emptyList(); if (!pagingRequest.equals(PagingRequest.NONE)) { results = getHibernateTemplate().findByCriteria(criteria, pagingRequest.getFirstItem(), pagingRequest.getPagingSize()); } // Paging paging; if (pagingRequest.equals(PagingRequest.ALL)) { 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()); } // return Pair.of(results, paging); } }); }
From source file:com.opengamma.masterdb.batch.DbBatchMaster.java
License:Open Source License
@Override @SuppressWarnings("unchecked") public Pair<List<MarketDataValue>, Paging> getMarketDataValues(final ObjectId marketDataId, final PagingRequest pagingRequest) { s_logger.info("Getting the batch data snapshot: {}", marketDataId); final Long marketDataPK = extractOid(marketDataId); return getTransactionTemplateRetrying(getMaxRetries()) .execute(new TransactionCallback<Pair<List<MarketDataValue>, Paging>>() { @Override/*from ww w . j a v a 2 s .c om*/ public Pair<List<MarketDataValue>, Paging> doInTransaction(final TransactionStatus status) { final DetachedCriteria criteria = DetachedCriteria.forClass(MarketDataValue.class); criteria.add(Restrictions.eq("marketDataId", marketDataPK)); // List<MarketDataValue> results = Collections.emptyList(); if (!pagingRequest.equals(PagingRequest.NONE)) { results = getHibernateTemplate().findByCriteria(criteria, pagingRequest.getFirstItem(), pagingRequest.getPagingSize()); } // Paging paging; if (pagingRequest.equals(PagingRequest.ALL)) { 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()); } // return Pair.of(results, paging); } }); }
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 v a 2s .co m*/ 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.orig.gls.group.dao.Group.java
public static ArrayList getAllVerifiedGroups() { ArrayList arr = new ArrayList(); Session session = HibernateUtil.getSessionFactory().openSession(); Transaction tx = null;/*from ww w . j ava 2 s . c o m*/ List<GroupsTable> list; try { tx = session.beginTransaction(); DetachedCriteria subquery = DetachedCriteria.forClass(GroupsTableMod.class); subquery.setProjection(Projections.property("groupId")); Criteria cr = session.createCriteria(GroupsTable.class); cr.add(Subqueries.propertyNotIn("groupId", subquery)); list = cr.list(); for (GroupsTable group : list) { ArrayList one = new ArrayList(); one.add(group.getGroupCode()); one.add(String.valueOf(group.getGroupId())); one.add(group.getGroupName()); one.add(sdf.format(group.getRcreTime())); one.add(group.getRcreUserId()); one.add(String.valueOf(group.getSolId()));//5 one.add(group.getBranchName());//6 one.add(group.getGrpMgrId());//7 one.add(group.getGrpRegNo());//8 one.add(sdf.format(group.getFormationDate()));//9 one.add(group.getGpRegion());//10 one.add(group.getGroupCenter());//11 one.add(group.getGroupVillage());//12 one.add(group.getGroupAddress());//13 one.add(group.getGroupPhone());//14 one.add(sdf.format(group.getFirstMeetDate()));//15 one.add(sdf.format(group.getNxtMeetDate()));//16 one.add(group.getMeetTime());//17 one.add(group.getMeetPlace());//18 one.add(String.valueOf(group.getMaxAllowedMembers()));//19 one.add(String.valueOf(group.getMaxAllowedSubGrps()));//20 String groupchair = ""; String grouptre = ""; String groupsec = ""; if (group.getGpChair() != null) { groupchair = group.getGpChair(); } if (group.getGpTreasurer() != null) { grouptre = group.getGpTreasurer(); } if (group.getGpSecretary() != null) { groupsec = group.getGpSecretary(); } one.add(groupchair);//21 one.add(grouptre);//22 one.add(groupsec);//23 one.add(group.getGpStatus());//24 one.add(group.getGpStatusCode());//25 one.add(String.valueOf(group.getNoOfMembers()));//26 one.add(group.getMeetFrequency());//27 one.add(String.valueOf(group.getSavingAccounts()));//28 one.add(String.valueOf(group.getSavingsAmt()));//29 one.add(String.valueOf(group.getLoanAccounts()));//30 one.add(String.valueOf(group.getOutstandingBal()));//31 arr.add(one); } tx.commit(); } catch (Exception asd) { log.debug(asd.getMessage()); if (tx != null) { tx.rollback(); } } finally { session.close(); } return arr; }
From source file:com.orig.gls.subgroup.dao.SubGroup.java
public static ArrayList getAllVerifiedSubGroups() { ArrayList arr = new ArrayList(); Session session = HibernateUtil.getSessionFactory().openSession(); Transaction tx = null;// w w w . j ava 2 s . c o m List<SubGrpTable> list; try { tx = session.beginTransaction(); DetachedCriteria subquery = DetachedCriteria.forClass(SubGrpTableMod.class); subquery.setProjection(Projections.property("subGroupId")); Criteria cr = session.createCriteria(SubGrpTable.class); cr.add(Subqueries.propertyNotIn("subGroupId", subquery)); list = cr.list(); for (SubGrpTable group : list) { ArrayList one = new ArrayList(); one.add(group.getSubGroupCode()); one.add(String.valueOf(group.getSubGroupId())); one.add(group.getSubGroupName()); one.add(sdf.format(group.getRcreTime())); one.add(group.getRcreUserId()); one.add(String.valueOf(group.getSolId()));//5 one.add(group.getBranchName());//6 one.add(group.getSubGrpMgrId());//7 one.add(group.getSubGrpRegNo());//8 one.add(sdf.format(group.getFormationDate()));//9 one.add(group.getSubGpRegion());//10 one.add(group.getSubGroupCenter());//11 one.add(group.getSubGroupVillage());//12 one.add(group.getSubGroupAddress());//13 one.add(group.getSubGroupPhone());//14 one.add(sdf.format(group.getFirstMeetDate()));//15 one.add(sdf.format(group.getNxtMeetDate()));//16 one.add(group.getMeetTime());//17 one.add(group.getMeetPlace());//18 one.add(String.valueOf(group.getMaxAllowedMembers()));//19 String groupchair = ""; String grouptre = ""; String groupsec = ""; if (group.getSubGpChair() != null) { groupchair = group.getSubGpChair(); } if (group.getSubGpTreasurer() != null) { grouptre = group.getSubGpTreasurer(); } if (group.getSubGpSecretary() != null) { groupsec = group.getSubGpSecretary(); } one.add(groupchair);//21 one.add(grouptre);//22 one.add(groupsec);//23 one.add(group.getSubGpStatus());//24 one.add(group.getSubGpStatusCode());//25 one.add(String.valueOf(group.getNoOfMembers()));//26 one.add(group.getMeetFrequency());//27 one.add(String.valueOf(group.getSavingAccounts()));//28 one.add(String.valueOf(group.getSavingsAmt()));//29 one.add(String.valueOf(group.getLoanAccounts()));//30 one.add(String.valueOf(group.getOutstandingBal()));//31 List<GroupsTable> lgs = Group.getgroupDetails(group.getGroupId()); String groupcode = ""; String groupname = ""; for (GroupsTable lg : lgs) { groupcode = lg.getGroupCode(); groupname = lg.getGroupName(); } one.add(groupcode); one.add(groupname); arr.add(one); } tx.commit(); } catch (Exception asd) { log.debug(asd.getMessage()); if (tx != null) { tx.rollback(); } } finally { session.close(); } return arr; }
From source file:com.rta.vsd.data.service.impl.OwnerInfoDataServiceImpl.java
/** * /*from w w w . j a v a2s . c o m*/ * Gets the owner info from the latest plate details provided. * * @author Eldon Barrows * @param dsContext * @param retrieveArabicData * @param plateDetails * @return * @throws VSDDataAccessException */ public VsdOwnerInfo getOwnerInfoByLatestPlateDetails(DataServiceContext dsContext, boolean retrieveArabicData, VehiclePlate plateDetails) throws VSDDataAccessException { logger.info("getOwnerInfoByLatestPlateDetails -- START"); try { Session session = (Session) dsContext.getInternalContext(); DetachedCriteria dc = DetachedCriteria.forClass(VsdVehicleInfo.class, "vi") .add(Restrictions.eq("vi.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("vi.vsdOwnerInfos", "oi", Criteria.INNER_JOIN) .add(Restrictions.eq("oi.isDeleted", IDataService.BOOL_FALSE)); dc.setProjection(Projections.max("vi.createdTimestamp")); if (plateDetails != null && plateDetails.getPlateCategory() != null && !plateDetails.getPlateCategory().equals("")) { dc.add(Restrictions.eq("vi.vehiclePlateCategory", plateDetails.getPlateCategory())); } if (plateDetails != null && plateDetails.getPlateCode() != null && !plateDetails.getPlateCode().equals("")) { dc.add(Restrictions.eq("vi.vehiclePlateCode", plateDetails.getPlateCode())); } if (plateDetails != null && plateDetails.getPlateNumber() != null && !plateDetails.getPlateNumber().equals("")) { dc.add(Restrictions.eq("vi.vehiclePlateNumber", plateDetails.getPlateNumber())); } if (plateDetails != null && plateDetails.getPlateSource() != null && !plateDetails.getPlateSource().equals("")) { dc.add(Restrictions.eq("vi.vehiclePlateSource", plateDetails.getPlateSource())); } Criteria crit = session.createCriteria(VsdVehicleInfo.class, "vInfo") .createCriteria("vInfo.vsdOwnerInfos", "oi", Criteria.INNER_JOIN, Restrictions.eq("oi.isDeleted", IDataService.BOOL_FALSE)) .add(Restrictions.eq("vInfo.isDeleted", IDataService.BOOL_FALSE)) .add(Property.forName("vInfo.createdTimestamp").in(dc)); // crit.setProjection(Projections.property("vInfo.vehicleInfoId")); if (plateDetails != null && plateDetails.getPlateCategory() != null && !plateDetails.getPlateCategory().equals("")) { crit.add(Restrictions.eq("vInfo.vehiclePlateCategory", plateDetails.getPlateCategory())); } if (plateDetails != null && plateDetails.getPlateCode() != null && !plateDetails.getPlateCode().equals("")) { crit.add(Restrictions.eq("vInfo.vehiclePlateCode", plateDetails.getPlateCode())); } if (plateDetails != null && plateDetails.getPlateNumber() != null && !plateDetails.getPlateNumber().equals("")) { crit.add(Restrictions.eq("vInfo.vehiclePlateNumber", plateDetails.getPlateNumber())); } if (plateDetails != null && plateDetails.getPlateSource() != null && !plateDetails.getPlateSource().equals("")) { crit.add(Restrictions.eq("vInfo.vehiclePlateSource", plateDetails.getPlateSource())); } crit.addOrder(Order.desc("vInfo.createdTimestamp")); List<VsdVehicleInfo> vehicles = crit.list(); if (vehicles == null || vehicles.isEmpty()) return null; Long vehicleInfoId = (Long) vehicles.get(0).getVehicleInfoId(); System.out.println("vehicleInfoId " + vehicleInfoId); VsdOwnerInfo ownerInfo = (VsdOwnerInfo) session.createCriteria(VsdOwnerInfo.class, "oi") .add(Restrictions.eq("oi.isDeleted", IDataService.BOOL_FALSE)) .add(Restrictions.eq("oi.vehicleInfoId", vehicleInfoId)).uniqueResult(); logger.info("getOwnerInfoByLatestPlateDetails -- END"); return ownerInfo; } catch (Exception ex) { logger.error("An error occured in getOwnerInfoByLatestPlateDetails()"); throw new VSDDataAccessException(ex.getMessage(), ex); } }
From source file:com.sapienter.jbilling.server.metafields.db.MetaFieldGroupDAS.java
License:Open Source License
@SuppressWarnings("unchecked") public Integer getAllAvailableFieldGroupsCount(Integer entityId) { DetachedCriteria query = DetachedCriteria.forClass(MetaFieldGroup.class); query.setProjection(Projections.rowCount()).add(Restrictions.eq("entityId", entityId)) .addOrder(Order.asc("displayOrder")); List result = getHibernateTemplate().findByCriteria(query); return (Integer) result.get(0); }