List of usage examples for org.hibernate.criterion Projections groupProperty
public static PropertyProjection groupProperty(String propertyName)
From source file:com.square.core.dao.implementations.ModeleEmailDaoImplementation.java
License:Open Source License
@SuppressWarnings("unchecked") @Override//www . ja v a 2s . c om public List<IdentifiantLibelleDto> rechercherListeModelesEmails(DimensionCriteresRechercheDto criteres) { final Criteria criteria = createCriteria(ModeleEmail.class); criteria.setProjection(Projections.projectionList().add(Projections.groupProperty("id")) .add(Projections.groupProperty("libelle")).add(Projections.groupProperty("ordre"))); // Critre sur l'identifiant if (criteres.getId() != null) { criteria.add(Restrictions.eq("id", criteres.getId())); } // Critre sur le libelle if (criteres.getLibelle() != null && !criteres.getLibelle().equals("")) { criteria.add(Restrictions.ilike("libelle", criteres.getLibelle().toLowerCase() + "%")); } // Critre sur la visibilit if (criteres.getVisible() != null) { criteria.add(Restrictions.eq("visible", criteres.getVisible())); } // Maxresults if (criteres.getMaxResults() != null) { criteria.setFirstResult(0); criteria.setMaxResults(criteres.getMaxResults()); } // Ordonner les lments criteria.addOrder(Order.asc("ordre")); criteria.addOrder(Order.asc("libelle")); final List<Object[]> resultat = criteria.list(); final List<IdentifiantLibelleDto> listeModeles = new ArrayList<IdentifiantLibelleDto>(); for (Object[] row : resultat) { listeModeles.add(new IdentifiantLibelleDto((Long) row[0], (String) row[1])); } return listeModeles; }
From source file:com.square.core.dao.implementations.PersonneDaoImplementation.java
License:Open Source License
@SuppressWarnings("unchecked") @Override/* w w w. ja va 2 s . com*/ public List<AdresseSimpleDto> rechercherAdressesSimplesParIdPersonne(Long idPersonne) { // Recherche des adresses de la personne final Criteria criteria = createCriteria(Personne.class); criteria.setProjection(Projections.projectionList().add(Projections.groupProperty("adr.dateDebut")) .add(Projections.groupProperty("adr.dateFin")).add(Projections.groupProperty("adr.nature")) .add(Projections.groupProperty("nature.ordre"))); criteria.add(Restrictions.eq("id", idPersonne)); criteria.createAlias("adresses", "adr"); criteria.createAlias("adr.nature", "nature"); criteria.addOrder(Order.asc("nature.ordre")); criteria.addOrder(Order.asc("adr.dateDebut")); criteria.addOrder(Order.asc("adr.dateFin")); // Transformation final List<Object[]> resultatRequete = criteria.list(); final List<AdresseSimpleDto> resultat = new ArrayList<AdresseSimpleDto>(); if (resultatRequete != null) { for (Object[] row : resultatRequete) { final AdresseSimpleDto adresseSimpleDto = new AdresseSimpleDto(); adresseSimpleDto.setDateDebut((Calendar) row[0]); adresseSimpleDto.setDateFin((Calendar) row[1]); final AdresseNature adresseNature = (AdresseNature) row[2]; if (adresseNature != null) { adresseSimpleDto.setTypeAdresse( new IdentifiantLibelleDto(adresseNature.getId(), adresseNature.getLibelle())); } resultat.add(adresseSimpleDto); } } else { return null; } return resultat; }
From source file:com.square.core.dao.implementations.PersonneMoraleDaoImplementation.java
License:Open Source License
@Override public PersonneMoraleSimpleDto rechercherPersonneMoraleSimpleParId(Long identifiant) { final Criteria criteria = createCriteria(PersonneMorale.class); criteria.setProjection(Projections.projectionList().add(Projections.groupProperty("raisonSociale")) .add(Projections.groupProperty("numSiret")).add(Projections.groupProperty("naturePersonneMorale")) .add(Projections.groupProperty("num"))); criteria.add(Restrictions.eq("id", identifiant)); // Transformation de la PersonneMorale morale en personneMoraleSimpleDto final Object[] row = (Object[]) criteria.uniqueResult(); final PersonneMoraleSimpleDto personneMoraleSimpleDto = new PersonneMoraleSimpleDto(); personneMoraleSimpleDto.setRaisonSociale(String.valueOf(row[0])); personneMoraleSimpleDto.setNumeroEntreprise(String.valueOf(row[3])); PersonneMoraleNature personneMoraleNature = null; if (row[2] instanceof PersonneMoraleNature) { personneMoraleNature = (PersonneMoraleNature) row[2]; personneMoraleSimpleDto.setNature( new IdentifiantLibelleDto(personneMoraleNature.getId(), personneMoraleNature.getLibelle())); }/*from www. j a va2 s. co m*/ personneMoraleSimpleDto.setNum(String.valueOf(row[3])); return personneMoraleSimpleDto; }
From source file:com.ut.tekir.contact.ContactStatusBean.java
License:LGPL
/** * nce devir hesaplayalm...//from ww w. j a v a2 s .c o m * */ @SuppressWarnings("unchecked") protected void calculateOffset() { HibernateSessionProxy session = (HibernateSessionProxy) entityManager.getDelegate(); Calendar cal = Calendar.getInstance(); cal.set(getYear(), 0, 1); Date beginDate = cal.getTime(); Criteria crit = session.createCriteria(FinanceTxn.class); crit.add(Restrictions.eq("contact", contact)).add(Restrictions.lt("date", beginDate)) .add(Restrictions.eq("active", true)); //Tarih kontrol yaplacak crit.setProjection(Projections.projectionList() .add(Projections.groupProperty("amount.currency"), "amountCurrency") .add(Projections.groupProperty("action"), "action").add(Projections.sum("amount.value"), "amount") .add(Projections.sum("localAmount.value"), "localAmount")); List ls = crit.list(); for (Iterator it = ls.iterator(); it.hasNext();) { Object obj[] = (Object[]) it.next(); dataTable.addRow("OPEN", (String) obj[0], (FinanceAction) obj[1], (Double) obj[2], (Double) obj[3]); } }
From source file:com.ut.tekir.contact.ContactStatusBean.java
License:LGPL
@SuppressWarnings("unchecked") private void calculateMonth(Integer month) { String rowKey = "MONTH" + (month < 10 ? "0" + month : month); Calendar cal = Calendar.getInstance(); cal.set(getYear(), month, 1);/*from www. ja v a 2s. c om*/ Date beginDate = cal.getTime(); if (month == 12) { cal.set(getYear() + 1, 1, 1); } else { cal.set(getYear(), month + 1, 1); } Date endDate = cal.getTime(); HibernateSessionProxy session = (HibernateSessionProxy) entityManager.getDelegate(); Criteria crit = session.createCriteria(FinanceTxn.class); crit.add(Restrictions.eq("contact", contact)).add(Restrictions.ge("date", beginDate)) .add(Restrictions.lt("date", endDate)).add(Restrictions.eq("active", true)); //Tarih kontrol yaplacak crit.setProjection(Projections.projectionList() .add(Projections.groupProperty("amount.currency"), "amountCurrency") .add(Projections.groupProperty("action"), "action").add(Projections.sum("amount.value"), "amount") .add(Projections.sum("localAmount.value"), "localAmount")); List ls = crit.list(); for (Iterator it = ls.iterator(); it.hasNext();) { Object obj[] = (Object[]) it.next(); dataTable.addRow(rowKey, (String) obj[0], (FinanceAction) obj[1], (Double) obj[2], (Double) obj[3]); } }
From source file:com.ut.tekir.finance.FinanceTxnReportBean.java
License:LGPL
@Override public DetachedCriteria buildCriteria() { DetachedCriteria crit = DetachedCriteria.forClass(FinanceTxn.class); crit.createAlias("contact", "contact"); if (isNotEmpty(filterModel.getSerial())) { crit.add(Restrictions.ilike("this.serial", filterModel.getSerial(), MatchMode.START)); }/*from w w w . j a v a2s. c o m*/ if (isNotEmpty(filterModel.getReference())) { crit.add(Restrictions.ilike("this.reference", filterModel.getReference(), MatchMode.START)); } if (isNotEmpty(filterModel.getCode())) { crit.add(Restrictions.ilike("this.code", filterModel.getCode(), MatchMode.START)); } if (filterModel.getBeginDate() != null) { crit.add(Restrictions.ge("this.date", filterModel.getBeginDate())); } if (filterModel.getEndDate() != null) { crit.add(Restrictions.le("this.date", filterModel.getEndDate())); } if (isNotEmpty(filterModel.getContactName())) { crit.add(Restrictions.ilike("contact.fullname", filterModel.getContactName(), MatchMode.START)); } if (isNotEmpty(filterModel.getContactCode())) { crit.add(Restrictions.ilike("contact.code", filterModel.getContactCode(), MatchMode.START)); } if (filterModel.getCompanyType() != null && !filterModel.getCompanyType().equals("All")) { if (filterModel.getCompanyType().equals("Person")) { crit.add(Restrictions.eq("contact.person", Boolean.TRUE)); } else crit.add(Restrictions.eq("contact.person", Boolean.FALSE)); } if (filterModel.getType() != null && filterModel.getType() != ContactType.All) { crit.add(Restrictions.eq("contact." + filterModel.getType().toString().toLowerCase() + "Type", Boolean.TRUE)); } if (filterModel.getCategory() != null) { crit.add(Restrictions.eq("contact.category", filterModel.getCategory())); } if (filterModel.getExCode1() != null && filterModel.getExCode1().length() > 0) { crit.add(Restrictions.ilike("contact.exCode1", filterModel.getExCode1(), MatchMode.START)); } if (filterModel.getExCode2() != null && filterModel.getExCode2().length() > 0) { crit.add(Restrictions.ilike("contact.exCode2", filterModel.getExCode2(), MatchMode.START)); } if (filterModel.getOrganization() != null) { crit.add(Restrictions.eq("contact.organization", filterModel.getOrganization())); } if (filterModel.getActive() != null) { crit.add(Restrictions.eq("this.active", filterModel.getActive())); } if (filterModel.getDocumentType() != null && filterModel.getDocumentType() != DocumentType.Unknown) { crit.add(Restrictions.eq("this.documentType", filterModel.getDocumentType())); } if (filterModel.getContact() != null) { crit.add(Restrictions.eq("contact.id", filterModel.getContact().getId())); } if (filterModel.getWorkBunch() != null) { crit.add(Restrictions.eq("this.workBunch", filterModel.getWorkBunch())); } if (filterModel.getCurrency() != null) { crit.add(Restrictions.eq("this.amount.currency", filterModel.getCurrency())); } if (filterModel.getLocalCurrencyOnly()) { crit.setProjection(Projections.projectionList() .add(Projections.groupProperty("documentType"), "documentType") .add(Projections.groupProperty("documentId"), "documentId") .add(Projections.groupProperty("serial"), "serial") .add(Projections.groupProperty("reference"), "reference") .add(Projections.groupProperty("date"), "date") .add(Projections.groupProperty("contact.fullname"), "contactName") .add(Projections.groupProperty("contact.code"), "contactCode") .add(Projections.groupProperty("code"), "code").add(Projections.groupProperty("info"), "info") .add(Projections.groupProperty("action"), "action") .add(Projections.sum("amount.localAmount"), "localAmount") .add(Projections.sum("processType"), "processType") .add(Projections.sum("amount.currency"), "currency") .add(Projections.groupProperty("workBunch"), "workBunch")); log.info("yerel secili : #0", crit); } if (filterModel.getProcessType() != null) { crit.add(Restrictions.eq("this.processType", filterModel.getProcessType())); } crit.addOrder(Order.desc("this.date")); crit.addOrder(Order.desc("this.id")); //crit.addOrder(Order.desc("serial")); //crit.addOrder(Order.asc("contact.name")); log.debug("Sonu : #0", crit); return crit; }
From source file:com.ut.tekir.finance.PromissoryChangeStatusBean.java
License:LGPL
@Override public DetachedCriteria buildCriteria() { DetachedCriteria crit = DetachedCriteria.forClass(PromissoryNote.class); crit.createAlias("this.history", "history"); crit.createAlias("contact", "contact"); crit.setProjection(Projections.projectionList().add(Projections.groupProperty("this.id"), "id") .add(Projections.groupProperty("this.maturityDate"), "maturityDate") .add(Projections.groupProperty("this.referenceNo"), "referenceNo") .add(Projections.groupProperty("this.promissorynoteOwner"), "promissorynoteOwner") .add(Projections.groupProperty("contact.id"), "contactId") .add(Projections.groupProperty("contact.name"), "contactName") .add(Projections.groupProperty("this.lastStatus"), "lastStatus") .add(Projections.groupProperty("this.previousStatus"), "previousStatus") .add(Projections.groupProperty("this.info"), "info") .add(Projections.groupProperty("money.currency"), "moneyCurrency") .add(Projections.groupProperty("money.value"), "moneyValue") .add(Projections.groupProperty("this.serialNo"), "serialNo")); crit.setResultTransformer(Transformers.aliasToBean(PromissorySumModel.class)); if (isNotEmpty(filterModel.getReferenceNo())) { crit.add(Restrictions.eq("this.referenceNo", filterModel.getReferenceNo())); }/*from www . ja v a2 s .co m*/ if (filterModel.getContact() != null) { crit.add(Restrictions.eq("this.contact", filterModel.getContact())); } if (isNotEmpty(filterModel.getPromissorynoteOwner())) { crit.add(Restrictions.ilike("this.promissorynoteOwner", filterModel.getPromissorynoteOwner() + "%")); } if (filterModel.getBeginDate() != null) { crit.add(Restrictions.ge("history.date", filterModel.getBeginDate())); } if (filterModel.getEndDate() != null) { crit.add(Restrictions.le("history.date", filterModel.getEndDate())); } if (filterModel.getLastStatus() != null) { crit.add(Restrictions.eq("this.lastStatus", filterModel.getLastStatus())); } if (getIsClientPromissory() != null) { crit.add(Restrictions.eq("this.clientPromissoryNote", getIsClientPromissory())); } return crit; }
From source file:com.ut.tekir.invoice.yeni.LimitationChecker.java
License:LGPL
public DetachedCriteria buildCriteriaForWarehouse() { DetachedCriteria crit = DetachedCriteria.forClass(ProductTxn.class); crit.createAlias("product", "product"); crit.createAlias("warehouse", "warehouse"); ProjectionList pl = Projections.projectionList(); pl.add(Projections.groupProperty("product.code"), "prodcode") .add(Projections.groupProperty("product.name"), "prodname") .add(Projections.groupProperty("product.group"), "group") .add(Projections.groupProperty("product.barcode1"), "barcode") .add(Projections.groupProperty("warehouse.code"), "warecode") .add(Projections.groupProperty("warehouse.name"), "warename") .add(Projections.sum("quantity.value"), "quantity") .add(Projections.avg("unitPrice.value"), "unitPrice") .add(Projections.sqlGroupProjection("{alias}.UNIT as unit, " + "sum( case {alias}.trade_action when 0 then {alias}.QUANTITY else 0 end ) as INQTY, " + "sum( case {alias}.trade_action when 1 then {alias}.QUANTITY else 0 end ) as OUTQTY , " + "sum( case {alias}.trade_action when 2 then {alias}.QUANTITY else 0 end ) as BUYRETQTY, " + "sum( case {alias}.trade_action when 3 then {alias}.QUANTITY else 0 end ) as SELLRETQTY, " + "sum( case {alias}.trade_action when 6 then {alias}.QUANTITY else 0 end ) as RESQTY , " + "sum( case {alias}.trade_action when 7 then {alias}.QUANTITY else 0 end ) as DELQTY ", "UNIT", new String[] { "unit", "inqty", "outqty", "buyretqty", "sellretqty", "resqty", "delqty" }, new Type[] { Hibernate.STRING, Hibernate.DOUBLE, Hibernate.DOUBLE, Hibernate.DOUBLE, Hibernate.DOUBLE, Hibernate.DOUBLE, Hibernate.DOUBLE })); crit.setProjection(pl);// ww w . j a va 2 s.co m crit.add(Restrictions.eq("active", true)); //Evran kendisini toplam deerlere eklemiyoruz. if (filterModel.getDocId() != null) { crit.add(Restrictions.ne("documentId", filterModel.getDocId())); } if (filterModel.getBarcode() != null && filterModel.getBarcode().length() > 0) { Criterion criteria1 = Restrictions.eq("product.barcode1", filterModel.getBarcode()); Criterion criteria2 = Restrictions.eq("product.barcode2", filterModel.getBarcode()); Criterion criteria3 = Restrictions.eq("product.barcode3", filterModel.getBarcode()); crit.add(Restrictions.or(criteria1, Restrictions.or(criteria2, criteria3))); } if (filterModel.getProduct() != null) { crit.add(Restrictions.eq("product", filterModel.getProduct())); } crit.addOrder(Order.asc("product.name")); return crit; }
From source file:com.ut.tekir.report.AccountStatusReportBean.java
License:LGPL
public DetachedCriteria buildCriteria() { DetachedCriteria crit = DetachedCriteria.forClass(AccountTxn.class); crit.createAlias("account", "account"); crit.setProjection(Projections.projectionList() .add(Projections.groupProperty("account.code"), "accountCode") .add(Projections.groupProperty("account.name"), "accountName") .add(Projections.groupProperty("amount.currency"), "currency") .add(Projections.sum("amount.value"), "amount") .add(Projections.sum("amount.localAmount"), "localAmount") .add(Projections.property("this.processType"), "processType") .add(Projections.sqlGroupProjection( "{alias}.CCY as currency, sum( ( case {alias}.finance_action when 0 then 1 else -1 end ) * {alias}.CCYVAL ) as AMOUNT, sum( case {alias}.finance_action when 0 then {alias}.CCYVAL else 0 end ) as DEBIT, sum( case {alias}.finance_action when 0 then 0 else {alias}.CCYVAL end ) as CREDIT", "CCY", new String[] { "currency", "amount", "debit", "credit" }, new Type[] { Hibernate.STRING, Hibernate.BIG_DECIMAL, Hibernate.BIG_DECIMAL, Hibernate.BIG_DECIMAL }))); crit.add(Restrictions.eq("active", true)); if (code != null && code.length() > 0) { crit.add(Restrictions.ilike("code", code, MatchMode.START)); }//from w w w. ja v a 2s. co m if (account != null) { crit.add(Restrictions.eq("account", account)); } if (beginDate != null) { crit.add(Restrictions.ge("date", beginDate)); } if (endDate != null) { crit.add(Restrictions.le("date", endDate)); } if (getDocumentType() != null && getDocumentType() != DocumentType.Unknown) { crit.add(Restrictions.eq("documentType", getDocumentType())); } if (getProcessType() != null) { crit.add(Restrictions.eq("this.processType", getProcessType())); } if (getWorkBunch() != null) { crit.add(Restrictions.eq("workBunch", getWorkBunch())); } crit.addOrder(Order.asc("account.code")); return crit; }
From source file:com.ut.tekir.report.BankStatusReportBean.java
License:LGPL
public DetachedCriteria buildCriteria() { DetachedCriteria crit = DetachedCriteria.forClass(BankTxn.class); crit.createAlias("bankAccount", "bankAccount"); crit.createAlias("bankAccount.bankBranch", "bankBranch"); crit.createAlias("bankAccount.bankBranch.bank", "bank"); crit.setProjection(Projections.projectionList() .add(Projections.groupProperty("bankAccount.accountNo"), "bankAccount") .add(Projections.groupProperty("bankBranch.name"), "bankBranchName") .add(Projections.groupProperty("bank.name"), "bankName") .add(Projections.groupProperty("amount.currency"), "currency") .add(Projections.sum("amount.value"), "amount") .add(Projections.property("processType"), "processType") .add(Projections.sum("amount.localAmount"), "localAmount") .add(Projections.sqlGroupProjection( "{alias}.CCY as currency, sum( ( case {alias}.action when 0 then 1 else -1 end ) * {alias}.CCYVAL ) as AMOUNT, sum( case {alias}.action when 0 then {alias}.CCYVAL else 0 end ) as DEBIT, sum( case {alias}.action when 0 then 0 else {alias}.CCYVAL end ) as CREDIT", "{alias}.CCY", new String[] { "currency", "amount", "debit", "credit" }, new Type[] { Hibernate.STRING, Hibernate.BIG_DECIMAL, Hibernate.BIG_DECIMAL, Hibernate.BIG_DECIMAL }))); crit.add(Restrictions.eq("active", true)); if (bankAccount != null) { crit.add(Restrictions.eq("this.bankAccount", bankAccount)); } else {// ww w . j a va2s .co m if (bankBranch != null) { crit.add(Restrictions.eq("bankAccount.bankBranch", bankBranch)); } else { if (bank != null) { crit.add(Restrictions.eq("bankBranch.bank", bank)); } } } if (code != null && code.length() > 0) { crit.add(Restrictions.ilike("code", code, MatchMode.START)); } if (beginDate != null) { crit.add(Restrictions.ge("date", beginDate)); } if (endDate != null) { crit.add(Restrictions.le("date", endDate)); } if (getWorkBunch() != null) { crit.add(Restrictions.eq("workBunch", getWorkBunch())); } if (getDocumentType() != null && getDocumentType() != DocumentType.Unknown) { crit.add(Restrictions.eq("documentType", getDocumentType())); } if (getProcessType() != null) { crit.add(Restrictions.eq("this.processType", getProcessType())); } crit.addOrder(Order.asc("bankAccount.name")); return crit; }