List of usage examples for org.hibernate.criterion Restrictions or
public static LogicalExpression or(Criterion lhs, Criterion rhs)
From source file:com.bean.ProvinceBean.java
public List<Province> getAllProvince() { Dao dao = new Dao(); HibernateUtil.getInstance().clear(); List<Province> list = null; if (proSearch == null || proSearch.equals(null) || proSearch.equals("")) { list = dao.getByCondition(Province.class, Order.desc("provId")); } else {// w w w .j a v a 2s . com Criterion name = Restrictions.like("provName", "%" + proSearch + "%"); Criterion desc = Restrictions.like("provDescription", "%" + proSearch + "%"); LogicalExpression orExp = Restrictions.or(desc, name); list = dao.getByCondition(Province.class, orExp, Order.desc("provId")); } return list; }
From source file:com.bean.RegisterAdmin.java
public List<Users> getAllUsers() { Dao dao = new Dao(); List<Users> list1 = null; HibernateUtil.getInstance().clear(); if (usersearh == null || usersearh.equals(null) || usersearh.equals("")) { Criterion admin = Restrictions.eq("UIsAdmin", true); list1 = dao.getByCondition(Users.class, admin); } else {//from ww w .ja va2 s .co m Criterion admin = Restrictions.eq("UIsAdmin", true); Criterion name = Restrictions.like("UUsername", "%" + usersearh + "%"); Criterion fname = Restrictions.like("UFullname", "%" + usersearh + "%"); Criterion phone = Restrictions.like("UPhone", "%" + usersearh + "%"); Criterion mail = Restrictions.like("UEmail", "%" + usersearh + "%"); LogicalExpression orExp = Restrictions.or(fname, name); orExp = Restrictions.or(orExp, phone); orExp = Restrictions.or(orExp, mail); orExp = Restrictions.and(orExp, admin); list1 = dao.getByCondition(Users.class, orExp); } return list1; }
From source file:com.bean.RegisterEmployees.java
public List<Users> getAllUsers() { Dao dao = new Dao(); List<Users> list = null; //HibernateUtil.getInstance().clear(); if (userview == null || userview.equals(null) || userview.equals("")) { Criterion admin = Restrictions.eq("UIsAdmin", false); list = dao.getByCondition(Users.class, admin); } else {/*from w w w .j av a2s . c o m*/ Criterion admin = Restrictions.eq("UIsAdmin", false); Criterion name = Restrictions.like("UUsername", "%" + userview + "%"); Criterion fname = Restrictions.like("UFullname", "%" + userview + "%"); Criterion phone = Restrictions.like("UPhone", "%" + userview + "%"); Criterion mail = Restrictions.like("UEmail", "%" + userview + "%"); LogicalExpression orExp = Restrictions.or(fname, name); orExp = Restrictions.or(orExp, phone); orExp = Restrictions.or(orExp, mail); orExp = Restrictions.and(orExp, admin); list = dao.getByCondition(Users.class, orExp); } return list; }
From source file:com.cai310.lottery.web.controller.lottery.SchemeBaseController.java
/** * ?/*from w w w .j av a 2s . c o m*/ */ protected XDetachedCriteria buildListDetachedCriteria() { XDetachedCriteria criteria = new XDetachedCriteria(this.schemeClass, "m"); criteria.add(Restrictions.eq("m.periodId", this.period.getId())); criteria.add(Restrictions.eq("m.shareType", ShareType.TOGETHER)); if (queryForm != null) { if (StringUtils.isNotBlank(queryForm.getSponsorName())) { if (!"???".equals(queryForm.getSponsorName().trim())) { criteria.add(Restrictions.or(Restrictions.eq("m.sponsorName", queryForm.getSponsorName()), Restrictions.eq("m.sponsorName", queryForm.getSponsorName()))); } } if (StringUtils.isNotBlank(queryForm.getSchemeNumber())) { Long schemeId = this.period.getLotteryType().getSchemeId(queryForm.getSchemeNumber()); if (schemeId != null) criteria.add(Restrictions.eq("m.id", schemeId)); } if (null != queryForm.getCostType()) { queryForm.setMinMaxCost(); } if (null != queryForm.getChooseType()) { if (Integer.valueOf(1).equals(queryForm.getChooseType())) { // ? criteria.add(Restrictions.eq("m.sendToPrint", true)); } else if (Integer.valueOf(2).equals(queryForm.getChooseType())) { // User user = this.getLoginUser(); if (user != null) { criteria.add(Restrictions.eq("m.sponsorId", user.getId())); } } } if (queryForm.getMinSchemeCost() != null) criteria.add(Restrictions.ge("m.schemeCost", queryForm.getMinSchemeCost())); if (queryForm.getMaxSchemeCost() != null) criteria.add(Restrictions.le("m.schemeCost", queryForm.getMaxSchemeCost())); if (queryForm.getSchemeState() != null) criteria.add(Restrictions.eq("m.state", queryForm.getSchemeState())); if (queryForm.getOrderType() != null) { criteria.addOrder(Order.desc("m.orderPriority")); switch (queryForm.getOrderType()) { case CREATE_TIME_DESC: criteria.addOrder(Order.desc("m.id")); break; case CREATE_TIME_ASC: criteria.addOrder(Order.asc("m.id")); break; case PROCESS_RATE_DESC: criteria.addOrder(Order.desc("m.progressRate")); break; case PROCESS_RATE_ASC: criteria.addOrder(Order.asc("m.progressRate")); break; case SCHEME_COST_DESC: criteria.addOrder(Order.desc("m.schemeCost")); break; case SCHEME_COST_ASC: criteria.addOrder(Order.asc("m.schemeCost")); break; } criteria.addOrder(Order.asc("m.state")); } else { criteria.addOrder(Order.asc("m.state")); criteria.addOrder(Order.desc("m.orderPriority")); criteria.addOrder(Order.desc("m.progressRate")); criteria.addOrder(Order.desc("m.id")); } } else { criteria.addOrder(Order.asc("m.state")); criteria.addOrder(Order.desc("m.orderPriority")); criteria.addOrder(Order.desc("m.progressRate")); criteria.addOrder(Order.desc("m.id")); } return criteria; }
From source file:com.callcenter.controller.command.Whom.java
License:Apache License
public void addSearchFilter(DetachedCriteria criteria) { String actualNumber = number.replaceAll("\\*", "%").replaceAll("\\?", "_"); if (type == Whom.Type.TO_AND_FROM) { criteria.add(/* w w w . ja v a2s . c o m*/ Restrictions.or(Restrictions.ilike(Constants.CallRecord.CALLED_ID_PROPERTY_NAME, actualNumber), Restrictions.ilike(Constants.CallRecord.CALLER_ID_PROPERTY_NAME, actualNumber))); return; } if (type == Whom.Type.TO) { criteria.add(Restrictions.ilike(Constants.CallRecord.CALLED_ID_PROPERTY_NAME, actualNumber)); return; } criteria.add(Restrictions.ilike(Constants.CallRecord.CALLER_ID_PROPERTY_NAME, actualNumber)); }
From source file:com.cimmyt.model.dao.impl.LabStudyDAOImpl.java
License:Apache License
private void addCriteria(DetachedCriteria criteria, List<DsSearchParam> params, boolean useSampleDetailFilters) { boolean hasAND = false; boolean hasOR = false; List<DsSearchParam> paramList = new ArrayList<DsSearchParam>(params); criteria.createAlias("project", VALUE_PROJECT) .createAlias("investigatorid", "investigator", CriteriaSpecification.LEFT_JOIN) .createAlias("season", "season", CriteriaSpecification.LEFT_JOIN) .createAlias("location", "location", CriteriaSpecification.LEFT_JOIN); if (useSampleDetailFilters) criteria.createAlias("sampleDetailCollection", VALUE_SAMPLE, CriteriaSpecification.INNER_JOIN); //separates 'OR' from other operators, to use in disjunction List<DsSearchParam> orParams = new ArrayList<DsSearchParam>(); for (DsSearchParam p : paramList) { if (p.getOperator().equals(TypeCondition.OR)) { orParams.add(p);/*from w w w . j a v a 2 s . co m*/ } } paramList.removeAll(orParams); String qualifiedParam = null; Conjunction conjunction = Restrictions.conjunction(); for (DsSearchParam param : paramList) { hasAND = true; qualifiedParam = param.getQualifier(); DataType dataType = OperatorImp.getType(param.getElement(), param.getQualifier()); Operator condition = OperatorImp.valueOf(param.getCondition()); addDynamicCriterion(conjunction, condition, dataType, qualifiedParam, param.getValue()); } Disjunction disjunction = Restrictions.disjunction(); for (DsSearchParam param : orParams) { hasOR = true; qualifiedParam = param.getQualifier(); DataType dataType = OperatorImp.getType(param.getElement(), param.getQualifier()); Operator condition = OperatorImp.valueOf(param.getCondition()); addDynamicCriterion(disjunction, condition, dataType, qualifiedParam, param.getValue()); } if (hasAND) { if (hasOR) { criteria.add(Restrictions.or(conjunction, disjunction)); } else { criteria.add(conjunction); } } else if (hasOR) { criteria.add(disjunction); } }
From source file:com.cimmyt.model.dao.impl.SampleDetailDAOImpl.java
License:Apache License
/** * add parameters for project, study and sample * *///from w w w . j av a2 s . c om private void addCriteria(DetachedCriteria criteria, List<DsSearchParam> params) { boolean hasAND = false; boolean hasOR = false; List<DsSearchParam> paramList = new ArrayList<DsSearchParam>(params); criteria.createAlias("labstudyid", Constants.VALUE_STUDY) .createAlias("study.project", Constants.VALUE_PROJECT) .createAlias("locationid", "location", CriteriaSpecification.LEFT_JOIN) .createAlias("seasonid", "season", CriteriaSpecification.LEFT_JOIN) .createAlias("study.investigatorid", "investigator", CriteriaSpecification.LEFT_JOIN); //separates 'OR' from other operators, to use in disjunction List<DsSearchParam> orParams = new ArrayList<DsSearchParam>(); for (DsSearchParam p : paramList) { if (p.getOperator().equals(TypeCondition.OR)) { orParams.add(p); } } paramList.removeAll(orParams); String qualifiedParam = null; Conjunction conjunction = Restrictions.conjunction(); for (DsSearchParam param : paramList) { hasAND = true; qualifiedParam = param.getQualifier(); DataType dataType = OperatorImp.getType(param.getElement(), param.getQualifier()); Operator condition = OperatorImp.valueOf(param.getCondition()); addDynamicCriterion(conjunction, condition, dataType, qualifiedParam, param.getValue()); } Disjunction disjunction = Restrictions.disjunction(); for (DsSearchParam param : orParams) { hasOR = true; qualifiedParam = param.getQualifier(); DataType dataType = OperatorImp.getType(param.getElement(), param.getQualifier()); Operator condition = OperatorImp.valueOf(param.getCondition()); addDynamicCriterion(disjunction, condition, dataType, qualifiedParam, param.getValue()); } if (hasAND) { if (hasOR) { criteria.add(Restrictions.or(conjunction, disjunction)); } else { criteria.add(conjunction); } } else if (hasOR) { criteria.add(disjunction); } }
From source file:com.codefupanda.persistor.util.HibernateUtil.java
License:Open Source License
private static Criterion convert(LogicalCriteria criteria) { Criterion criterion = null;//ww w . j a v a 2s . c o m Criteria lhs = criteria.getLhs(); Criteria rhs = criteria.getRhs(); if (criteria.getLogicalOp().equals("or")) { criterion = Restrictions.or(convert(lhs), convert(rhs)); } else if (criteria.getLogicalOp().equals("and")) { criterion = Restrictions.and(convert(lhs), convert(rhs)); } return criterion; }
From source file:com.cristian.tareask.daoImpl.EmailConversationDaoImpl.java
@Override public List getAllEmailConversations(int idUser) { s = HibernateUtil.getSessionFactory().openSession(); Criteria c = s.createCriteria(EmailConversation.class).createAlias("emailMessage", "message") .createAlias("message.messageReceptors", "receptor").createAlias("receptor.user", "user") .createAlias("message.user", "userid") //parte experimental .add(Restrictions.or(Restrictions.eq("userid.id", idUser), Restrictions.eq("user.id", idUser))) //.add(Restrictions.eq("userid.id", 2)) //.add(Restrictions.eq("user.id",2)) // fin parte experimental .addOrder(Order.desc("message.date")) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY); return c.list(); }
From source file:com.denimgroup.threadfix.data.dao.hibernate.HibernateApplicationDao.java
License:Mozilla Public License
@SuppressWarnings("unchecked") @Override//w w w.ja v a 2 s . co m public List<Integer> getTopXVulnerableAppsFromList(int numApps, List<Integer> teamIdList, List<Integer> applicationIdList, List<Integer> tagIdList, List<Integer> vulnTagIdList) { Session session = sessionFactory.getCurrentSession(); Criteria criteria = session.createCriteria(Application.class); criteria.createAlias("vulnerabilities", "vulnerability"); criteria.add(Restrictions.eq("active", true)); criteria.add(Restrictions.eq("vulnerability.active", true)); criteria.add(Restrictions.eq("vulnerability.hidden", false)); criteria.add(Restrictions.eq("vulnerability.isFalsePositive", false)); if (vulnTagIdList.size() > 0) { criteria.createAlias("vulnerability.tags", "tags"); criteria.add(Restrictions.in("tags.id", vulnTagIdList)); } if (teamIdList.isEmpty() || applicationIdList.isEmpty()) { if (!applicationIdList.isEmpty()) { criteria.add(Restrictions.in("id", applicationIdList)); } if (!teamIdList.isEmpty()) { criteria.add(Restrictions.in("organization.id", teamIdList)); } } else { criteria.add(Restrictions.or(Restrictions.in("id", applicationIdList), Restrictions.in("organization.id", teamIdList))); } if (!tagIdList.isEmpty()) { criteria.createAlias("tags", "tag"); criteria.add(Restrictions.in("tag.id", tagIdList)); } criteria.setProjection(Projections.projectionList().add(Projections.groupProperty("id")) .add(Projections.alias(Projections.countDistinct("vulnerability.id"), "vulnCount"))); criteria.addOrder(Order.desc("vulnCount")); List<Integer> list = list(); List results = criteria.list(); int i = 0; for (Object result : results) { if (i++ >= numApps) { break; } Object[] resultArray = (Object[]) result; list.add((Integer) resultArray[0]); } if (list.isEmpty()) list = Arrays.asList(-1); return list; }