List of usage examples for org.hibernate.criterion Projections countDistinct
public static CountProjection countDistinct(String propertyName)
From source file:com.restful.api.resteasy.dao.FeatureDAO.java
public long getFeaturesFilteredCount(String column, String dir, String value) { long features = 0; Session session = null;/* w w w . j a v a2s.c om*/ try { session = HibernateUtil.getSessionFactory().openSession(); Criteria crit = session.createCriteria(Feature.class); if (value != null) { Criterion v1 = Restrictions.like("rendering_engine", "%" + value + "%"); Criterion v3 = Restrictions.like("browser", "%" + value + "%"); Criterion v4 = Restrictions.like("platform", "%" + value + "%"); Criterion v5 = Restrictions.like("engine_version", "%" + value + "%"); Criterion v6 = Restrictions.like("css_grade", "%" + value + "%"); crit.add(Restrictions.or(v1, v3, v4, v5, v6)); } if (dir != null && column != null) { if ("desc".equals(dir.toLowerCase())) { crit.addOrder(Order.desc(column));//?? } else { crit.addOrder(Order.asc(column));//?? } } crit.setProjection(Projections.countDistinct("id")); features = (long) crit.uniqueResult(); } catch (Exception ex) { Logger.getLogger(Feature.class.getName()).log(Level.SEVERE, null, ex); } finally { if (session != null) { session.close(); } } return features; }
From source file:com.restful.api.resteasy.dao.FeatureDAO.java
public long getFeaturesCount() { long features = 0; Session session = null;//from www .j av a2s .c om try { session = HibernateUtil.getSessionFactory().openSession(); Criteria crit = session.createCriteria(Feature.class); crit.setProjection(Projections.countDistinct("id")); features = (long) crit.uniqueResult(); } catch (Exception ex) { Logger.getLogger(Feature.class.getName()).log(Level.SEVERE, null, ex); } finally { if (session != null) { session.close(); } } return features; }
From source file:com.rta.vsd.data.service.impl.InspectionDataServiceImpl.java
/** * /* w w w . j av a 2 s .c o m*/ * Gets the count for getInspectionsByPlateDetails * * @author Eldon Barrows * @param dsContext * @param retrieveArabicData * @param vehiclePlateDetails * @return Long * @throws VSDDataAccessException */ public Long getCountForGetInspectionsByPlateDetails(final DataServiceContext dsContext, boolean retrieveArabicData, VehiclePlate vehiclePlateDetails) throws VSDDataAccessException { logger.info("getCountForGetInspectionsByPlateDetails -- START"); try { Session session = (Session) dsContext.getInternalContext(); Criteria crit = session.createCriteria(VsdInspection.class, "inspections") .add(Restrictions.eq("inspections.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("inspections.vsdLocation", "loc", Criteria.LEFT_JOIN, Restrictions.eq("loc.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("loc.vsdLocation", "area", Criteria.LEFT_JOIN, Restrictions.eq("area.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("inspections.vsdVehicleInfo", "vehicleInfo", Criteria.LEFT_JOIN, Restrictions.eq("vehicleInfo.isDeleted", IDataService.BOOL_FALSE)) .add(Restrictions.eq("vehicleInfo.vehiclePlateCategory", vehiclePlateDetails.getPlateCategory()) .ignoreCase()) .add(Restrictions.eq("vehicleInfo.vehiclePlateCode", vehiclePlateDetails.getPlateCode()) .ignoreCase()) .add(Restrictions.eq("vehicleInfo.vehiclePlateSource", vehiclePlateDetails.getPlateSource()) .ignoreCase()) .add(Restrictions.eq("vehicleInfo.vehiclePlateNumber", vehiclePlateDetails.getPlateNumber()) .ignoreCase()) .addOrder(Order.desc("inspections.inspectionId")) .setProjection(Projections.countDistinct("inspections.inspectionId")); Long count = (Long) crit.uniqueResult(); logger.info("getCountForGetInspectionsByPlateDetails -- END"); return count; } catch (Exception ex) { logger.error("An error occured in getCountForGetInspectionsByPlateDetails()"); throw new VSDDataAccessException(ex.getMessage(), ex); } }
From source file:com.rta.vsd.data.service.impl.InspectionDataServiceImpl.java
/** * // ww w . j a v a 2 s. c o m * Get count for all the inspections for vehicles owned by the owner with the specified trade license number * * @author Eldon Barrows * @param dsContext * @param retrieveArabicData * @param traficFileNo * @return Long * @throws VSDDataAccessException */ public Long getCountForInspectionsByTraficFileNumber(final DataServiceContext dsContext, boolean retrieveArabicData, String traficFileNo) throws VSDDataAccessException { logger.info("getCountForInspectionsByTraficFileNumber -- START"); Long inspectionsCount; try { Session session = (Session) dsContext.getInternalContext(); inspectionsCount = (Long) session.createCriteria(VsdInspection.class, "inspections") .add(Restrictions.eq("inspections.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("inspections.vsdLocation", "loc", Criteria.LEFT_JOIN, Restrictions.eq("loc.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("loc.vsdLocation", "area", Criteria.LEFT_JOIN, Restrictions.eq("area.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("inspections.vsdVehicleInfo", "vehicleInfo", Criteria.LEFT_JOIN, Restrictions.eq("vehicleInfo.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("vehicleInfo.vsdOwnerInfos", "ownerInfo", Criteria.LEFT_JOIN, Restrictions.eq("ownerInfo.isDeleted", IDataService.BOOL_FALSE)) .add(Restrictions.eq("ownerInfo.trafficFileNumber", traficFileNo).ignoreCase()) .setProjection(Projections.countDistinct("inspections.inspectionId")).uniqueResult(); } catch (Exception ex) { logger.error("An error occured in getCountForInspectionsByTraficFileNumber()"); throw new VSDDataAccessException(ex.getMessage(), ex); } logger.info("getCountForInspectionsByTraficFileNumber -- END"); return inspectionsCount; }
From source file:com.rta.vsd.data.service.impl.InspectionDataServiceImpl.java
/** * //from www . j a va2 s .c o m * Gets the count for getInspectionsByTradeLicenseNumber * * @author Eldon Barrows * @param dsContext * @param retrieveArabicData * @param tradeLicenseNumber * @return Long * @throws VSDDataAccessException */ public Long getCountForGetInspectionsByTradeLicenseNumber(final DataServiceContext dsContext, boolean retrieveArabicData, String tradeLicenseNumber) throws VSDDataAccessException { logger.info("getCountForGetInspectionsByTradeLicenseNumber -- START"); try { Session session = (Session) dsContext.getInternalContext(); Criteria crit = session.createCriteria(VsdInspection.class, "inspections") .add(Restrictions.eq("inspections.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("inspections.vsdLocation", "loc", Criteria.LEFT_JOIN, Restrictions.eq("loc.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("loc.vsdLocation", "area", Criteria.LEFT_JOIN, Restrictions.eq("area.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("inspections.vsdVehicleInfo", "vehicleInfo", Criteria.LEFT_JOIN, Restrictions.eq("vehicleInfo.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("vehicleInfo.vsdOwnerInfos", "ownerInfo", Criteria.LEFT_JOIN, Restrictions.eq("ownerInfo.isDeleted", IDataService.BOOL_FALSE)) .add(Restrictions.eq("ownerInfo.tradeLicenseNumber", tradeLicenseNumber).ignoreCase()) .addOrder(Order.desc("inspections.inspectionId")) .setProjection(Projections.countDistinct("inspections.inspectionId")); Long count = (Long) crit.uniqueResult(); logger.info("getCountForGetInspectionsByTradeLicenseNumber -- END"); return count; } catch (Exception ex) { logger.error("An error occured in getCountForGetInspectionsByTradeLicenseNumber()"); throw new VSDDataAccessException(ex.getMessage(), ex); } }
From source file:com.rta.vsd.data.service.impl.InspectionDataServiceImpl.java
/** * // w w w . j a va 2 s . co m * get Count For Inspections By ChassisNumber * * @author Eldon Barrows * @param dsContext * @param retrieveArabicData * @param vehicleChassisNumber * @return Long * @throws VSDDataAccessException */ public Long getCountForInspectionsByChassisNumber(final DataServiceContext dsContext, boolean retrieveArabicData, String vehicleChassisNumber) throws VSDDataAccessException { logger.info("getCountForInspectionsByChassisNumber -- START"); Long inspectionsCount; try { Session session = (Session) dsContext.getInternalContext(); Criteria projectionCriteria = session.createCriteria(VsdInspection.class, "i") .add(Restrictions.eq("i.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("i.vsdVehicleInfo", "vi", Criteria.LEFT_JOIN, Restrictions.eq("vi.isDeleted", IDataService.BOOL_FALSE)) .add(Restrictions.eq("vi.vehicleChassisNumber", vehicleChassisNumber).ignoreCase()) .createCriteria("vi.vsdOwnerInfos", "oi", Criteria.LEFT_JOIN, Restrictions.eq("oi.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("i.vsdViolation", "v", Criteria.LEFT_JOIN, Restrictions.eq("v.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("v.vsdChannelDefects", "cd", Criteria.LEFT_JOIN, Restrictions.eq("cd.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("cd.vsdChannelPartInst", "cpi", Criteria.LEFT_JOIN, Restrictions.eq("cpi.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("cpi.vsdChannelPartner", "cp", Criteria.LEFT_JOIN, Restrictions.eq("cp.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("cp.vsdPartner", "p", Criteria.LEFT_JOIN, Restrictions.eq("p.isDeleted", IDataService.BOOL_FALSE)) .setProjection(Projections.countDistinct("i.inspectionId")); inspectionsCount = (Long) projectionCriteria.uniqueResult(); logger.debug("inspectionsCount : " + inspectionsCount); } catch (Exception ex) { logger.error("An error occured in getCountForInspectionsByChassisNumber()"); logger.error(ex); throw new VSDDataAccessException(ex.getMessage(), ex); } logger.info("getCountForInspectionsByChassisNumber -- END"); return inspectionsCount; }
From source file:com.rta.vsd.data.service.impl.InspectionDataServiceImpl.java
/** * /* ww w. j ava 2 s .c om*/ * get Count For Inspections By VehiclePlate * * @author Eldon Barrows * @param dsContext * @param retrieveArabicData * @param vehiclePlate * @return Long * @throws VSDDataAccessException */ public Long getCountForInspectionsByVehiclePlateForWS(final DataServiceContext dsContext, boolean retrieveArabicData, VehiclePlate vehiclePlate) throws VSDDataAccessException { logger.info("getCountForInspectionsByVehiclePlateForWS -- START"); Long inspectionsCount; try { Session session = (Session) dsContext.getInternalContext(); Criteria projectionCriteria = session.createCriteria(VsdInspection.class, "i") .add(Restrictions.eq("i.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("i.vsdVehicleInfo", "vi", Criteria.LEFT_JOIN, Restrictions.eq("vi.isDeleted", IDataService.BOOL_FALSE)) .add(Restrictions.eq("vi.vehiclePlateCategory", vehiclePlate.getPlateCategory()).ignoreCase()) .add(Restrictions.eq("vi.vehiclePlateCode", vehiclePlate.getPlateCode()).ignoreCase()) .add(Restrictions.eq("vi.vehiclePlateSource", vehiclePlate.getPlateSource()).ignoreCase()) .add(Restrictions.eq("vi.vehiclePlateNumber", vehiclePlate.getPlateNumber()).ignoreCase()) .createCriteria("vi.vsdOwnerInfos", "oi", Criteria.LEFT_JOIN, Restrictions.eq("oi.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("i.vsdViolation", "v", Criteria.LEFT_JOIN, Restrictions.eq("v.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("v.vsdChannelDefects", "cd", Criteria.LEFT_JOIN, Restrictions.eq("cd.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("cd.vsdChannelPartInst", "cpi", Criteria.LEFT_JOIN, Restrictions.eq("cpi.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("cpi.vsdChannelPartner", "cp", Criteria.LEFT_JOIN, Restrictions.eq("cp.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("cp.vsdPartner", "p", Criteria.LEFT_JOIN, Restrictions.eq("p.isDeleted", IDataService.BOOL_FALSE)) .setProjection(Projections.countDistinct("i.inspectionId")); inspectionsCount = (Long) projectionCriteria.uniqueResult(); logger.debug("inspectionsCount : " + inspectionsCount); } catch (Exception ex) { logger.error("An error occured in getCountForInspectionsByVehiclePlateForWS()"); logger.error(ex); throw new VSDDataAccessException(ex.getMessage(), ex); } logger.info("getCountForInspectionsByVehiclePlateForWS -- END"); return inspectionsCount; }
From source file:com.rta.vsd.data.service.impl.InspectionDataServiceImpl.java
/** * //from w ww.ja va2s . c om * get Count for Inspections By TrafficFileNumber * Following three methods are associated. * getInspectionsByTrafficFileNumber(dsContext, retrieveArabicData, trafficFileNumber) * getCountForInspectionsByTrafficFileNumber(dsContext, retrieveArabicData, trafficFileNumber) * getInspectionsByTrafficFileNumber(dsContext, retrieveArabicData, trafficFileNumber, maxResults, firstResult) * @author Eldon Barrows * @param dsContext * @param retrieveArabicData * @param trafficFileNumber * @return List<VsdInspection> * @throws VSDDataAccessException */ public Long getCountForInspectionsByTrafficFileNumber(final DataServiceContext dsContext, boolean retrieveArabicData, String trafficFileNumber) throws VSDDataAccessException { logger.info("getCountForInspectionsByTrafficFileNumber -- START"); Long count = new Long(0); try { Session session = (Session) dsContext.getInternalContext(); ProjectionList projectionList = Projections.projectionList(); Criteria projectionCriteria = session.createCriteria(VsdInspection.class, "i") .add(Restrictions.eq("i.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("i.vsdVehicleInfo", "vi", Criteria.LEFT_JOIN, Restrictions.eq("vi.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("vi.vsdOwnerInfos", "oi", Criteria.LEFT_JOIN, Restrictions.eq("oi.isDeleted", IDataService.BOOL_FALSE)) .add(Restrictions.eq("oi.trafficFileNumber", trafficFileNumber).ignoreCase()) .createCriteria("i.vsdViolation", "vio", Criteria.LEFT_JOIN, Restrictions.eq("vio.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("i.vsdLocation", "l", Criteria.LEFT_JOIN, Restrictions.eq("l.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("l.vsdLocation", "pl", Criteria.LEFT_JOIN, Restrictions.eq("pl.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("i.vsdChannelPartInst", "cpi", Criteria.LEFT_JOIN, Restrictions.eq("cpi.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("cpi.vsdChannelPartner", "cp", Criteria.LEFT_JOIN, Restrictions.eq("cp.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("cp.vsdPartner", "p", Criteria.LEFT_JOIN, Restrictions.eq("p.isDeleted", IDataService.BOOL_FALSE)) .setProjection(Projections.countDistinct("i.inspectionId")) .addOrder(Order.desc("i.inspectionTimestamp")); count = (Long) projectionCriteria.uniqueResult(); logger.debug("count : " + count); } catch (Exception ex) { logger.error("An error occured in getCountForInspectionsByTrafficFileNumber()"); logger.error(ex); throw new VSDDataAccessException(ex.getMessage(), ex); } logger.info("getCountForInspectionsByTrafficFileNumber -- END"); return count.longValue(); }
From source file:com.rta.vsd.data.service.impl.VehicleDataServiceImpl.java
/** * search vehicles.//w w w.j a v a 2 s . c o m * * @author Eldon Barrows * @param dsContext * @param retrieveArabicData * @param vehicleSearchCriteria * @return Long * @throws VSDDataAccessException */ public Long getCountForSearchVehicle(DataServiceContext dsContext, boolean retrieveArabicData, VehicleSearchCriteria vehicleSearchCriteria) throws VSDDataAccessException { logger.info("getCountForSearchVehicle -- START"); try { Session session = (Session) dsContext.getInternalContext(); Criteria criteria = session.createCriteria(VsdVehicle.class, "v") .add(Restrictions.eq("v.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("v.vsdVehPlateCatCode", "vpcc", Criteria.LEFT_JOIN, Restrictions.eq("vpcc.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("vpcc.vsdVehPlateCatCode", "vpcc2", Criteria.LEFT_JOIN, Restrictions.eq("vpcc2.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("v.vsdVehicleOwner", "vo", Criteria.LEFT_JOIN, Restrictions.eq("vo.isDeleted", IDataService.BOOL_FALSE)); if (vehicleSearchCriteria.getEmirateCode() != null && !vehicleSearchCriteria.getEmirateCode().equals("")) criteria.add( Restrictions.eq("v.vehicleCountry", vehicleSearchCriteria.getEmirateCode()).ignoreCase()); if (vehicleSearchCriteria.getPlateNumber() != null && !vehicleSearchCriteria.getPlateNumber().equals("")) criteria.add(Restrictions.eq("v.vehiclePlateNumber", vehicleSearchCriteria.getPlateNumber()) .ignoreCase()); if (vehicleSearchCriteria.getPlateCode() != null && !vehicleSearchCriteria.getPlateCode().equals("")) criteria.add(Restrictions.eq("vpcc.vehPlateCatCodeId", vehicleSearchCriteria.getPlateCode())); if (vehicleSearchCriteria.getPlateCategory() != null && !vehicleSearchCriteria.getPlateCategory().equals("")) criteria.add(Restrictions.eq("vpcc2.vehPlateCatCodeId", vehicleSearchCriteria.getPlateCategory())); if (vehicleSearchCriteria.getOperatorName() != null && !vehicleSearchCriteria.getOperatorName().equals("")) criteria.add(Restrictions.like("vo.ownerName", "%" + vehicleSearchCriteria.getOperatorName() + "%") .ignoreCase()); if (vehicleSearchCriteria.getOperatorNameA() != null && !vehicleSearchCriteria.getOperatorNameA().equals("")) criteria.add(Restrictions .like("vo.ownerNameA", "%" + vehicleSearchCriteria.getOperatorNameA() + "%").ignoreCase()); criteria.setProjection(Projections.countDistinct("v.vehicleId")); Long count = (Long) criteria.uniqueResult(); logger.info("getCountForSearchVehicle -- END"); return count; } catch (Exception ex) { logger.error("An error occured in getCountForSearchVehicle()"); logger.error(ex); throw new VSDDataAccessException(ex.getMessage(), ex); } }
From source file:com.rta.vsd.data.service.impl.VehicleDataServiceImpl.java
/** * /*from w w w .j ava 2 s . co m*/ * Gets the count for getVehiclesByTrafficFileNumber * * @author Eldon * @param dsContext * @param retrieveArabicData * @param trafficFileNumber * @return Long * @throws VSDDataAccessException */ public Long getCountForGetVehiclesByTrafficFileNumber(DataServiceContext dsContext, boolean retrieveArabicData, String trafficFileNumber) throws VSDDataAccessException { logger.info("getCountForGetVehiclesByTrafficFileNumber -- START"); try { Session session = (Session) dsContext.getInternalContext(); Criteria crit = session.createCriteria(VsdVehicle.class, "v") .add(Restrictions.eq("v.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("v.vsdVehicleManufacturers", "vm", Criteria.LEFT_JOIN, Restrictions.eq("vm.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("v.vsdVehicleOwner", "vo", Criteria.LEFT_JOIN, Restrictions.eq("vo.isDeleted", IDataService.BOOL_FALSE)) .add(Restrictions.eq("vo.trafficFileNumber", trafficFileNumber).ignoreCase()) .createCriteria("rrp.vsdRiskRating", "rr", Criteria.LEFT_JOIN, Restrictions.eq("rr.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("v.vsdVehPlateCatCode", "vpcc", Criteria.LEFT_JOIN, Restrictions.eq("vpcc.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("vpcc.vsdVehPlateCatCode", "pvpcc", Criteria.LEFT_JOIN, Restrictions.eq("pvpcc.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("pvpcc.vsdCountry", "c", Criteria.LEFT_JOIN, Restrictions.eq("c.isDeleted", IDataService.BOOL_FALSE)) //.addOrder(Order.desc("rrp.riskRatingScore")) .createCriteria("v.vsdRRProfilings", "rrp", Criteria.LEFT_JOIN, Restrictions.eq("rrp.isDeleted", IDataService.BOOL_FALSE)) .add(Restrictions.sqlRestriction("1=1 Order by {alias}.RISK_RATING_SCORE DESC NULLS LAST")) .setProjection(Projections.countDistinct("v.vehicleId")); Long count = (Long) crit.uniqueResult(); logger.info("getCountForGetVehiclesByTrafficFileNumber -- END"); return count; } catch (Exception ex) { logger.error("An error occured in getCountForGetVehiclesByTrafficFileNumber()"); logger.error(ex); throw new VSDDataAccessException(ex.getMessage(), ex); } }