List of usage examples for org.hibernate.criterion Restrictions like
public static SimpleExpression like(String propertyName, String value, MatchMode matchMode)
From source file:com.inkubator.hrm.dao.impl.WtPeriodeDaoImpl.java
private void doSearchWtPeriodeByParam(WtPeriodeSearchParameter searchParameter, Criteria criteria) { if (searchParameter.getTahun() != null) { criteria.add(Restrictions.like("tahun", searchParameter.getTahun(), MatchMode.START)); }//from ww w .ja v a 2s .c om if (searchParameter.getBulan() != null && searchParameter.getBulan() != 0) { criteria.add(Restrictions.eq("bulan", searchParameter.getBulan())); } criteria.add(Restrictions.isNotNull("id")); }
From source file:com.inkubator.sms.gateway.dao.impl.ModemDefinitionDaoImpl.java
@Override public long getTotalByModemIdAndNotId(String modemId, Long id) { Criteria criteria = getCurrentSession().createCriteria(getEntityClass()); criteria.add(Restrictions.like("modemId", modemId, MatchMode.ANYWHERE)); criteria.add(Restrictions.ne("id", id)); return (Long) criteria.setProjection(Projections.rowCount()).uniqueResult(); }
From source file:com.jacobheric.youbrew.dao.impl.ExpenseDAOImpl.java
License:Open Source License
@SuppressWarnings("unchecked") public List<Expense> search(ExpenseCriteria expenseCriteria) { Criteria c = this.getSessionFactory().getCurrentSession().createCriteria(Expense.class); ////from www .j av a 2 s . c o m //Property restrictions if (expenseCriteria.getQuery() != null) { Disjunction d = Restrictions.disjunction(); d.add(Restrictions.like("name", expenseCriteria.getQuery().trim(), MatchMode.ANYWHERE)); d.add(Restrictions.like("tasteNotes", expenseCriteria.getQuery().trim(), MatchMode.ANYWHERE)); d.add(Restrictions.like("brewNotes", expenseCriteria.getQuery().trim(), MatchMode.ANYWHERE)); c.add(d); } // //Determine the total before limiting (useful for paging) c.setProjection(Projections.rowCount()); expenseCriteria.setTotal(((Integer) c.uniqueResult()).intValue()); c.setProjection(null); c.setResultTransformer(Criteria.ROOT_ENTITY); // //Start & limit grid page restrictions if (expenseCriteria.getStart() != null) { c.setFirstResult(expenseCriteria.getStart()); } if (expenseCriteria.getLimit() != null) { c.setMaxResults(expenseCriteria.getLimit()); } return c.list(); }
From source file:com.jacobheric.youbrew.dao.impl.RecipeDAOImpl.java
License:Open Source License
/** * @param recipeCriteria - custom criteria object * @return list of recipe criteria// w w w. j a v a2s . c o m */ @SuppressWarnings("unchecked") public List<Recipe> search(RecipeCriteria recipeCriteria) { Criteria c = this.getSessionFactory().getCurrentSession().createCriteria(Recipe.class); // //Property restrictions if (recipeCriteria.getQuery() != null) { Disjunction d = Restrictions.disjunction(); d.add(Restrictions.like("name", recipeCriteria.getQuery().trim(), MatchMode.ANYWHERE)); d.add(Restrictions.like("tasteNotes", recipeCriteria.getQuery().trim(), MatchMode.ANYWHERE)); d.add(Restrictions.like("brewNotes", recipeCriteria.getQuery().trim(), MatchMode.ANYWHERE)); c.add(d); } // //Determine the total before limiting (useful for paging) c.setProjection(Projections.rowCount()); recipeCriteria.setTotal(((Integer) c.uniqueResult()).intValue()); c.setProjection(null); c.setResultTransformer(Criteria.ROOT_ENTITY); // //Start & limit grid page restrictions if (recipeCriteria.getStart() != null) { c.setFirstResult(recipeCriteria.getStart()); } if (recipeCriteria.getLimit() != null) { c.setMaxResults(recipeCriteria.getLimit()); } return c.list(); }
From source file:com.jeysan.modules.orm.hibernate.HibernateDao.java
License:Apache License
/** * ??Criterion,.//from w w w . ja v a 2 s. co m */ protected Criterion buildCriterion(final String propertyName, final Object propertyValue, final MatchType matchType) { Assert.hasText(propertyName, "propertyName?"); Criterion criterion = null; //?MatchTypecriterion switch (matchType) { case EQ: criterion = Restrictions.eq(propertyName, propertyValue); break; case NEQ: if (propertyValue == null) criterion = Restrictions.isNotNull(propertyName); else criterion = Restrictions.not(Restrictions.eq(propertyName, propertyValue)); break; case NULL: criterion = Restrictions.isNull(propertyName); break; case LIKE: criterion = Restrictions.like(propertyName, (String) propertyValue, MatchMode.ANYWHERE); break; case LE: criterion = Restrictions.le(propertyName, propertyValue); break; case LT: criterion = Restrictions.lt(propertyName, propertyValue); break; case GE: criterion = Restrictions.ge(propertyName, propertyValue); break; case GT: criterion = Restrictions.gt(propertyName, propertyValue); } return criterion; }
From source file:com.jubination.model.dao.CallAPIMessageDAOImpl.java
@Transactional(propagation = Propagation.REQUIRED, readOnly = true) public Object getByProperty(Object entity, String listType) { List<Call> list = new ArrayList<>(); switch (listType) { case "Number": String number = (String) entity; session = getSessionFactory().getCurrentSession(); Criteria criteria = session.createCriteria(Call.class, "call"); criteria.add(Restrictions.eq("CallTo", number)); list = criteria.list();/* w ww . ja va 2s .c o m*/ break; case "OrderId": Long orderId = (Long) entity; session = getSessionFactory().getCurrentSession(); list.add((Call) session.get(Call.class, (Long) orderId)); break; case "Sid": String sid = (String) entity; session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.add(Restrictions.eq("Sid", sid)); list = criteria.list(); break; case "DateCreated": String dateCreated = (String) entity; session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.add(Restrictions.like("DateCreated", dateCreated, MatchMode.START)); list = criteria.list(); break; case "PendingOnDate": String pendingOnDate = (String) entity; session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.add(Restrictions.or( Restrictions.and(Restrictions.like("DateCreated", pendingOnDate, MatchMode.START), Restrictions.like("TrackStatus", "did not", MatchMode.ANYWHERE)), Restrictions.and(Restrictions.like("DateCreated", pendingOnDate, MatchMode.START), Restrictions.like("TrackStatus", "Pressed 2", MatchMode.START)), Restrictions.and(Restrictions.like("DateCreated", pendingOnDate, MatchMode.START), Restrictions.like("Status", "failed", MatchMode.START)), Restrictions.and(Restrictions.like("DateCreated", pendingOnDate, MatchMode.START), Restrictions.like("Status", "no-answer", MatchMode.START)))); list = criteria.list(); break; default: System.err.println("Not a valid option"); break; } return list; }
From source file:com.jubination.model.dao.CallAPIMessageDAOImpl.java
@Transactional(propagation = Propagation.REQUIRED, readOnly = true) public Long fetchEntitySize(String fromDate, String toDate, String type) { System.out.println("*******com.jubination.model.dao.CallAPIMessageDAOImpl.fetchEntitySize()"); Long size = 0l;//from w w w. j a v a2 s . co m switch (type) { case "Total": System.out.println("*****Case - Total"); session = getSessionFactory().getCurrentSession(); Criteria criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.and(Restrictions.ge("DateCreated", fromDate), Restrictions.le("DateCreated", toDate), Restrictions.isNull("lead"))); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "Busy": System.out.println("*****Case - Busy"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.and(Restrictions.ge("DateCreated", fromDate), Restrictions.le("DateCreated", toDate), Restrictions.isNull("lead"))); criteria.add(Restrictions.like("Status", "busy", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "Failed": System.out.println("*****Case - Failed"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.and(Restrictions.ge("DateCreated", fromDate), Restrictions.le("DateCreated", toDate), Restrictions.isNull("lead"))); criteria.add(Restrictions.like("Status", "failed", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "NoAnswer": System.out.println("*****Case - NoAnswer"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.and(Restrictions.ge("DateCreated", fromDate), Restrictions.le("DateCreated", toDate), Restrictions.isNull("lead"))); criteria.add(Restrictions.like("Status", "no-answer", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "RequestedCallBack": System.out.println("*****Case - RequestedCallBack"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.and(Restrictions.ge("DateCreated", fromDate), Restrictions.le("DateCreated", toDate), Restrictions.isNull("lead"))); criteria.add(Restrictions.like("TrackStatus", "requested for callback", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "GreetingsHangUp": System.out.println("*****Case - GreetingsHangUp"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.and(Restrictions.ge("DateCreated", fromDate), Restrictions.le("DateCreated", toDate), Restrictions.isNull("lead"))); criteria.add(Restrictions.like("CallType", "trans", MatchMode.ANYWHERE)); criteria.add(Restrictions.like("Status", "completed", MatchMode.ANYWHERE)); criteria.add(Restrictions.isNull("TrackStatus")); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "HangUpOnConnect": System.out.println("*****Case - HangUpOnConnect"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.and(Restrictions.ge("DateCreated", fromDate), Restrictions.le("DateCreated", toDate), Restrictions.isNull("lead"))); criteria.add(Restrictions.like("TrackStatus", "did not speak", MatchMode.ANYWHERE)); criteria.add(Restrictions.like("CallType", "client-hangup", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "MissCall": System.out.println("*****Case - MissCall"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.and(Restrictions.ge("DateCreated", fromDate), Restrictions.le("DateCreated", toDate), Restrictions.isNull("lead"))); criteria.add(Restrictions.like("TrackStatus", "did not speak", MatchMode.ANYWHERE)); criteria.add(Restrictions.like("CallType", "incomplete", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "Spoke": System.out.println("*****Case - Spoke"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.and(Restrictions.ge("DateCreated", fromDate), Restrictions.le("DateCreated", toDate), Restrictions.isNull("lead"))); criteria.add(Restrictions.like("TrackStatus", "spoke", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; } return size; }
From source file:com.jubination.model.dao.CallAPIMessageDAOImpl.java
@Transactional(propagation = Propagation.REQUIRED, readOnly = true) public Long fetchEntitySize(String date, String type) { System.out.println("*******com.jubination.model.dao.CallAPIMessageDAOImpl.fetchEntitySize()"); Long size = 0l;//from ww w . j a v a 2 s .c om switch (type) { case "Total": System.out.println("*****Case - Total"); session = getSessionFactory().getCurrentSession(); Criteria criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.like("DateCreated", date, MatchMode.START)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "Busy": System.out.println("*****Case - Busy"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.like("DateCreated", date, MatchMode.START)); criteria.add(Restrictions.like("Status", "busy", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "Failed": System.out.println("*****Case - Failed"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.like("DateCreated", date, MatchMode.START)); criteria.add(Restrictions.like("Status", "failed", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "NoAnswer": System.out.println("*****Case - NoAnswer"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.like("DateCreated", date, MatchMode.START)); criteria.add(Restrictions.like("Status", "no-answer", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "RequestedCallBack": System.out.println("*****Case - RequestedCallBack"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.like("DateCreated", date, MatchMode.START)); criteria.add(Restrictions.like("TrackStatus", "requested for callback", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "GreetingsHangUp": System.out.println("*****Case - GreetingsHangUp"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.like("DateCreated", date, MatchMode.START)); criteria.add(Restrictions.like("CallType", "trans", MatchMode.ANYWHERE)); criteria.add(Restrictions.like("Status", "completed", MatchMode.ANYWHERE)); criteria.add(Restrictions.isNull("TrackStatus")); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "HangUpOnConnect": System.out.println("*****Case - HangUpOnConnect"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.like("DateCreated", date, MatchMode.START)); criteria.add(Restrictions.like("TrackStatus", "did not speak", MatchMode.ANYWHERE)); criteria.add(Restrictions.like("CallType", "client-hangup", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "MissCall": System.out.println("*****Case - MissCall"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.like("DateCreated", date, MatchMode.START)); criteria.add(Restrictions.like("TrackStatus", "did not speak", MatchMode.ANYWHERE)); criteria.add(Restrictions.like("CallType", "incomplete", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; case "Spoke": System.out.println("*****Case - Spoke"); session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Call.class, "call"); criteria.setReadOnly(true); criteria.add(Restrictions.like("DateCreated", date, MatchMode.START)); criteria.add(Restrictions.like("TrackStatus", "spoke", MatchMode.ANYWHERE)); criteria.setProjection(Projections.rowCount()); size = (Long) criteria.uniqueResult(); break; } return size; }
From source file:com.jubination.model.dao.ClientDAOImpl.java
@Transactional(propagation = Propagation.REQUIRED, readOnly = true) public Object fetchInnerEntities(String param, String type) { List<Lead> list = null; if (param.equals("Lead")) { if (type.equals("NotificationOn")) { session = getSessionFactory().getCurrentSession(); list = (List<Lead>) session.createCriteria(Lead.class).add(Restrictions.isNotNull("followUpDate")) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY).list(); }/*from ww w. ja v a 2 s.co m*/ if (type.equals("Pending")) { session = getSessionFactory().getCurrentSession(); list = (List<Lead>) session.createCriteria(Lead.class).add(Restrictions.ge("count", 1)) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY).list(); } } else if (param.equals("Number")) { session = getSessionFactory().getCurrentSession(); list = (List<Lead>) session.createCriteria(Lead.class).createAlias("client", "c") .add(Restrictions.eq("c.phoneNumber", type)) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY).list(); } else if (param.equals("MissedAppointmentStatusToday")) { session = getSessionFactory().getCurrentSession(); list = (List<Lead>) session.createCriteria(Lead.class) .add(Restrictions.and(Restrictions.like("missedAppointmentStatus", type, MatchMode.ANYWHERE), Restrictions.eq("appointmentDate", new SimpleDateFormat("yyyy-MM-dd").format(new Date())))) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY).list(); } else if (param.equals("ActiveSourceLeads")) { session = getSessionFactory().getCurrentSession(); list = (List<Lead>) session.createCriteria(Lead.class, "l").createAlias("client", "c") .add(Restrictions.and(Restrictions.ge("l.count", 1), Restrictions.eq("c.source", type))) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY).list(); } if (list != null) { for (Lead lead : list) { if (lead != null) { if (lead.getBeneficiaries() != null) { lead.getBeneficiaries().size(); } } } } System.out.println("READ LEAD WITH A STATUS :::::::::::::::::::::::::::::::::::::::::::::::CHECK"); return (T) list; }
From source file:com.jubination.model.dao.ClientDAOImpl.java
@Transactional(propagation = Propagation.REQUIRED, readOnly = true) public Object getByProperty(Object entity, String listType) { List<Client> list = new ArrayList<Client>(); switch (listType) { case "Email": String emailId = (String) entity; session = getSessionFactory().getCurrentSession(); Criteria criteria = session.createCriteria(Client.class, "client"); criteria.add(Restrictions.eq("emailId", emailId)); list = criteria.list();/* ww w . jav a 2 s.c om*/ break; case "City": String city = (String) entity; session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Client.class, "client"); criteria.add(Restrictions.like("city", city, MatchMode.START)); list = criteria.list(); break; case "Id": Long orderId = (Long) entity; session = getSessionFactory().getCurrentSession(); list.add((Client) session.get(Client.class, orderId)); break; case "LeadId": String leadId = (String) entity; session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Client.class, "client"); criteria.add(Restrictions.eq("tempLeadDetails", leadId)); list = criteria.list(); break; case "Number": String number = (String) entity; session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Client.class); criteria.add(Restrictions.like("phoneNumber", number, MatchMode.ANYWHERE)); list = criteria.list(); for (Client client : list) { client.getLead().size(); for (Lead lead : client.getLead()) { if (lead.getBeneficiaries() != null) { lead.getBeneficiaries().size(); } } } break; case "Name": String name = (String) entity; session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Client.class); criteria.add(Restrictions.like("name", name, MatchMode.ANYWHERE)); list = criteria.list(); break; case "DateCreated": String dateCreated = (String) entity; session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Client.class); criteria.add(Restrictions.like("dateCreation", dateCreated, MatchMode.START)); list = criteria.list(); break; case "DateCreatedLeadProperty": dateCreated = (String) entity; session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Lead.class); criteria.createAlias("client", "c") .add(Restrictions.like("c.dateCreation", dateCreated, MatchMode.START)); list = criteria.list(); break; case "DateUpdatedFull": String dateUpdated = (String) entity; session = getSessionFactory().getCurrentSession(); criteria = session.createCriteria(Client.class, "client"); criteria.createAlias("client.lead", "l"); criteria.createAlias("l.call", "c"); criteria.add(Restrictions.like("c.DateUpdated", dateUpdated, MatchMode.START)); criteria.setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY); list = criteria.list(); for (Client client : list) { client.getLead().size(); for (Lead lead : client.getLead()) { lead.getCall().size(); if (lead.getBeneficiaries() != null) { lead.getBeneficiaries().size(); } } } break; default: System.err.println("Not a valid option"); break; } System.out.println( "READ CLIENT WITH A PROPERTY (INNER AND NON INNER MIXED) :::::::::::::::::::::::::::::::::::::::::::::::CHECK"); return list; }