List of usage examples for org.hibernate.criterion Projections projectionList
public static ProjectionList projectionList()
From source file:com.bean.StatisticBean.java
public List<Object[]> getTopUserMostPost() { Dao dao = new Dao(); Criteria c = dao.createCriteria(Property.class); ProjectionList proj = Projections.projectionList(); proj.add(Projections.groupProperty("users")); proj.add(Projections.rowCount(), "Count"); c.setProjection(proj);//w w w. ja v a2s .c o m c.addOrder(Order.desc("Count")); c.setFirstResult(0); c = selectTopUserMostPost == 0 ? c.setMaxResults(10) : c.setMaxResults(selectTopUserMostPost); List<Object[]> a = c.list(); return a; }
From source file:com.bean.StatisticBean.java
public List<Object[]> getTopPostMostFav() { Dao dao = new Dao(); Criteria c = dao.createCriteria(FavoriteProperty.class); ProjectionList proj = Projections.projectionList(); proj.add(Projections.groupProperty("property")); proj.add(Projections.rowCount(), "Count"); c.setProjection(proj);//from w w w . j a v a2 s. c o m c.addOrder(Order.desc("Count")); c.setFirstResult(0); c = selectTopPostMostFav == 0 ? c.setMaxResults(10) : c.setMaxResults(selectTopPostMostFav); List<Object[]> a = c.list(); return a; }
From source file:com.cms.utils.BaseFWDAOImpl.java
License:Open Source License
public List<T> findDistinct(String[] pros, Criterion[] crits) { ProjectionList listProjections = Projections.projectionList(); ProjectionList listProperties = Projections.projectionList(); Order[] orders = new Order[pros.length]; int index = 0; for (String property : pros) { listProperties.add(Projections.property(property)); orders[index++] = Order.asc(property); }//from w ww . ja v a2s . co m listProjections.add(Projections.distinct(listProperties)); return findByCriteria("default session", 0, 0, listProjections, crits, orders); }
From source file:com.court.controller.AssignNewLoanFxmlController.java
private ObservableList<Loan> getAllLoans() { Session session = HibernateUtil.getSessionFactory().openSession(); Criteria c = session.createCriteria(Loan.class); c.add(Restrictions.eq("status", true)); c.setProjection(Projections.projectionList().add(Projections.property("loanId"), "loanId") .add(Projections.property("loanName"), "loanName")); c.setResultTransformer(Transformers.aliasToBean(Loan.class)); List<Loan> lList = c.list(); ObservableList<Loan> loans = FXCollections.observableArrayList(lList); session.close();/*w ww.java 2 s . c om*/ return loans; }
From source file:com.court.controller.AssignNewLoanFxmlController.java
private Set<Member> getAvailableGuarantors() { Session session = HibernateUtil.getSessionFactory().openSession(); Criteria c1 = session.createCriteria(MemberLoan.class); c1.setProjection(Projections.projectionList().add(Projections.property("isComplete"), "isComplete") .add(Projections.property("guarantors"), "guarantors") .add(Projections.property("member"), "member")); c1.setResultTransformer(Transformers.aliasToBean(MemberLoan.class)); List<MemberLoan> ml = c1.list(); //GET ALL GUARANTORS OF ONGOING LOANS List<String> guarantors = ml.stream().filter(p -> !p.isIsComplete()) .map(m -> m.getGuarantors() + "-" + m.getMember().getMemberId()).collect(Collectors.toList()); Set<String> lkm = new HashSet<>(guarantors); List<String> guarantor_filtered = lkm.stream().map(r -> r = r.split("-")[0]).collect(Collectors.toList()); //GET ALREADY GUARANTED MEMBERS OF THE GARNTOR List<String> alreadyGurantedMembers = ml.stream().filter(p -> !p.isIsComplete()) .filter(p -> p.getMember().getMemberId().equalsIgnoreCase(getMember().getMemberId())) .map(MemberLoan::getGuarantors).collect(Collectors.toList()); //======================== Set<Member> set = new HashSet<>(); //======================== //GET ALL MEMBERS EXCEPT THE LOAN GRANTOR Criteria c2 = session.createCriteria(Member.class); c2.add(Restrictions.ne("memberId", getMember().getMemberId())); c2.add(Restrictions.eq("status", true)); c2.setProjection(Projections.projectionList().add(Projections.property("memberId"), "memberId") .add(Projections.property("fullName"), "fullName")); c2.setResultTransformer(Transformers.aliasToBean(Member.class)); //IF NO GURANTORS FOUND THEN ALL MEMBERS CAN GUARANT FOR THE LOAN EXCEPT THE LOAN GRANTOR if (getUniqueGuarantors(guarantor_filtered, UNIQUE_GUR_FRQUENCY).isEmpty()) { List<Member> list = c2.list(); set.addAll(list);/* w w w . j a v a 2 s. c o m*/ // } else { List<Member> list = c2.add(Restrictions .not(Restrictions.in("memberId", getUniqueGuarantors(guarantor_filtered, UNIQUE_GUR_FRQUENCY)))) .list(); set.addAll(list); } //IF NO GUARANTORS AVAILABLE THEY CAN GURANT THE GRANTOR ULTIMATELY UNTIL ALL GUARANTED LOANS END if (!alreadyGurantedMembers.isEmpty()) { Set<Member> arlm = getAlreadyGurantedMembers(alreadyGurantedMembers, session); set.addAll(arlm); } session.close(); return set; }
From source file:com.court.controller.AssignNewLoanFxmlController.java
private Set<Member> getAlreadyGurantedMembers(List<String> agm, Session s) { Set<String> ug = new HashSet<>(); for (String string : agm) { Type type = new TypeToken<List<String>>() { }.getType();/*from ww w .j a v a 2 s .c o m*/ List<String> yourList = new Gson().fromJson(string, type); for (String yl : yourList) { ug.add(yl); } } Criteria cc2 = s.createCriteria(Member.class); cc2.add(Restrictions.in("memberId", ug)); cc2.setProjection(Projections.projectionList().add(Projections.property("memberId"), "memberId") .add(Projections.property("fullName"), "fullName")); cc2.setResultTransformer(Transformers.aliasToBean(Member.class)); List<Member> list = cc2.list(); Set<Member> mbrs = new HashSet(list); return mbrs; }
From source file:com.court.controller.HomeFXMLController.java
private Map<String, Number> getLoanReleasedData() { LocalDate now = LocalDate.now(); Map<String, Number> map = new HashMap<>(); Session s = HibernateUtil.getSessionFactory().openSession(); Criteria c = s.createCriteria(MemberLoan.class); ProjectionList pList = Projections.projectionList(); ClassMetadata lpMeta = s.getSessionFactory().getClassMetadata(MemberLoan.class); pList.add(Projections.property(lpMeta.getIdentifierPropertyName())); for (String prop : lpMeta.getPropertyNames()) { pList.add(Projections.property(prop), prop); }/* www .java 2s . co m*/ c.add(Restrictions.eq("status", true)); c.add(Restrictions.between("grantedDate", FxUtilsHandler.getDateFrom(now.with(firstDayOfYear())), FxUtilsHandler.getDateFrom(now.with(lastDayOfYear())))); c.setProjection(pList .add(Projections.sqlGroupProjection("DATE_FORMAT(granted_date, '%Y-%m-01') AS groupPro", "groupPro", new String[] { "groupPro" }, new Type[] { StringType.INSTANCE })) .add(Projections.sqlProjection("SUM(loan_amount) AS lSum", new String[] { "lSum" }, new Type[] { DoubleType.INSTANCE }))); c.addOrder(Order.asc("grantedDate")); c.setResultTransformer(Transformers.aliasToBean(MemberLoan.class)); List<MemberLoan> list = (List<MemberLoan>) c.list(); for (MemberLoan ml : list) { map.put(ml.getGroupPro(), ml.getlSum()); } s.close(); return map; }
From source file:com.court.controller.HomeFXMLController.java
private Map<String, Number> getLoanCollectionData() { LocalDate now = LocalDate.now(); Map<String, Number> map = new HashMap<>(); Session s = HibernateUtil.getSessionFactory().openSession(); Criteria c = s.createCriteria(LoanPayment.class); ProjectionList pList = Projections.projectionList(); ClassMetadata lpMeta = s.getSessionFactory().getClassMetadata(LoanPayment.class); pList.add(Projections.property(lpMeta.getIdentifierPropertyName())); for (String prop : lpMeta.getPropertyNames()) { pList.add(Projections.property(prop), prop); }//w w w. j a v a 2s . com c.add(Restrictions.between("paymentDate", FxUtilsHandler.getDateFrom(now.with(firstDayOfYear())), FxUtilsHandler.getDateFrom(now.with(lastDayOfYear())))); c.setProjection(pList .add(Projections.sqlGroupProjection("DATE_FORMAT(payment_date, '%Y-%m-01') AS groupPro", "groupPro", new String[] { "groupPro" }, new Type[] { StringType.INSTANCE })) .add(Projections.sqlProjection("SUM(paid_amt) AS lSum", new String[] { "lSum" }, new Type[] { DoubleType.INSTANCE }))); c.addOrder(Order.asc("paymentDate")); c.setResultTransformer(Transformers.aliasToBean(LoanPayment.class)); List<LoanPayment> list = (List<LoanPayment>) c.list(); for (LoanPayment lp : list) { map.put(lp.getGroupPro(), lp.getlSum()); } s.close(); return map; }
From source file:com.court.controller.MemberfxmlController.java
private ObservableList<Member> getAllMembers() { Session session = HibernateUtil.getSessionFactory().openSession(); try {/*from w w w .j av a 2 s . c o m*/ Criteria c = session.createCriteria(Member.class); c.setProjection(Projections.projectionList().add(Projections.property("memberId"), "memberId") .add(Projections.property("fullName"), "fullName") .add(Projections.property("jobTitle"), "jobTitle")); c.setResultTransformer(Transformers.aliasToBean(Member.class)); List<Member> mList = c.list(); ObservableList<Member> members = FXCollections.observableArrayList(mList); return members; } finally { if (session != null) { session.close(); } } }
From source file:com.court.controller.OldLoansFxmlController.java
private List<Member> getMembers() { Session s = HibernateUtil.getSessionFactory().openSession(); Criteria c = s.createCriteria(Member.class); c.add(Restrictions.eq("status", true)); ClassMetadata lpMeta = s.getSessionFactory().getClassMetadata(Member.class); c.setProjection(Projections.projectionList().add(Projections.property(lpMeta.getIdentifierPropertyName())) .add(Projections.property("memberId"), "memberId") .add(Projections.property("fullName"), "fullName")); c.setResultTransformer(Transformers.aliasToBean(Member.class)); List<Member> list = c.list(); s.close();/*from ww w.ja v a 2s. c o m*/ return list; }