List of usage examples for org.hibernate Criteria createCriteria
public Criteria createCriteria(String associationPath) throws HibernateException;
From source file:com.lm.lic.manager.hibernate.LicenseDAO.java
License:Open Source License
public Integer findNumInUseLicenses(String isvId, String prodId, String prodDefId, String storeId, String platformId, Date startDate, Date endDate) { Integer numLics = 0;/* ww w . ja va 2 s. co m*/ try { Long lisvid = null; if (StringUtils.hasText(isvId)) lisvid = Long.parseLong(isvId); Long lpid = null; if (StringUtils.hasText(prodId)) lpid = Long.parseLong(prodId); Long lppid = null; if (StringUtils.hasText(prodDefId)) lppid = Long.parseLong(prodDefId); Long lsid = null; if (StringUtils.hasText(storeId)) lsid = Long.parseLong(storeId); Long lfid = null; if (StringUtils.hasText(platformId)) lfid = Long.parseLong(platformId); Criteria criteria = getSession().createCriteria(License.class); criteria.add(Restrictions.eq("isv.id", lisvid)); Criteria prodCriteria = criteria.createCriteria("product"); // If the child product is specified, this supercedes the wider selection of the product // definition. // Only check for htye product definition if the child product was not selected. if (lpid != null) criteria.add(Restrictions.eq("product.id", lpid)); else if (lppid != null) prodCriteria.add(Restrictions.eq("productDef.id", lppid)); if (lsid != null) prodCriteria.add(Restrictions.eq("listingStore.id", lsid)); if (lfid != null) prodCriteria.add(Restrictions.eq("platform.id", lfid)); criteria.add(Restrictions.eq("inUse", true)); criteria.add(Restrictions.eq("decom", false)); if (startDate != null && endDate != null) criteria.add(Restrictions.between(TIME_ACTIVATED, startDate, endDate)); else { if (startDate != null) criteria.add(Restrictions.gt(TIME_ACTIVATED, startDate)); if (endDate != null) criteria.add(Restrictions.lt(TIME_ACTIVATED, endDate)); } criteria.setProjection(Projections.rowCount()); numLics = (Integer) criteria.list().get(0); } catch (RuntimeException re) { log.error("find by property name failed", re); throw re; } return numLics; }
From source file:com.lm.lic.manager.hibernate.LicenseDAO.java
License:Open Source License
public Integer findNumIssuedLicenses(String isvId, String prodId, String prodDefId, String storeId, String platformId, Date startDate, Date endDate) { Integer numLics = 0;/*from ww w . ja v a 2 s .c o m*/ try { Long lisvid = null; if (StringUtils.hasText(isvId)) lisvid = Long.parseLong(isvId); Long lpid = null; if (StringUtils.hasText(prodId)) lpid = Long.parseLong(prodId); Long lppid = null; if (StringUtils.hasText(prodDefId)) lppid = Long.parseLong(prodDefId); Long lsid = null; if (StringUtils.hasText(storeId)) lsid = Long.parseLong(storeId); Long lfid = null; if (StringUtils.hasText(platformId)) lfid = Long.parseLong(platformId); Criteria criteria = getSession().createCriteria(License.class); criteria.add(Restrictions.eq("isv.id", lisvid)); Criteria prodCriteria = criteria.createCriteria("product"); // If the child product is specified, this supercedes the wider selection of the product // definition. // Only check for htye product definition if the child product was not selected. if (lpid != null) criteria.add(Restrictions.eq("product.id", lpid)); else if (lppid != null) prodCriteria.add(Restrictions.eq("productDef.id", lppid)); if (lsid != null) prodCriteria.add(Restrictions.eq("listingStore.id", lsid)); if (lfid != null) prodCriteria.add(Restrictions.eq("platform.id", lfid)); criteria.add(Restrictions.eq("inUse", true)); // criteria.add(Restrictions.eq("decom", false)); if (startDate != null && endDate != null) criteria.add(Restrictions.between(TIME_ACTIVATED, startDate, endDate)); else { if (startDate != null) criteria.add(Restrictions.gt(TIME_ACTIVATED, startDate)); if (endDate != null) criteria.add(Restrictions.lt(TIME_ACTIVATED, endDate)); } criteria.setProjection(Projections.rowCount()); numLics = (Integer) criteria.list().get(0); } catch (RuntimeException re) { log.error("find by property name failed", re); throw re; } return numLics; }
From source file:com.lm.lic.manager.hibernate.LicenseDAO.java
License:Open Source License
public Integer findNumInUseIsvLicenses(String isvId, String storeId, String platformId, Date startDate, Date endDate) {//from w w w .ja va2 s . c om Integer numLics = 0; try { Long lisvid = Long.parseLong(isvId); Criteria criteria = getSession().createCriteria(License.class); criteria.add(Restrictions.eq("isv.id", lisvid)); criteria.add(Restrictions.eq("inUse", true)); criteria.add(Restrictions.eq("decom", false)); Criteria prodCriteria = null; if (StringUtils.hasText(storeId)) { Long lsid = Long.parseLong(storeId); prodCriteria = criteria.createCriteria("product"); prodCriteria.add(Restrictions.eq("listingStore.id", lsid)); } if (StringUtils.hasText(platformId)) { Long lfid = Long.parseLong(platformId); if (prodCriteria == null) prodCriteria = criteria.createCriteria("product"); prodCriteria.add(Restrictions.eq("platform.id", lfid)); } if (startDate != null && endDate != null) criteria.add(Restrictions.between(TIME_ACTIVATED, startDate, endDate)); else { if (startDate != null) criteria.add(Restrictions.gt(TIME_ACTIVATED, startDate)); if (endDate != null) criteria.add(Restrictions.lt(TIME_ACTIVATED, endDate)); } criteria.setProjection(Projections.rowCount()); numLics = (Integer) criteria.list().get(0); } catch (RuntimeException re) { log.error("find by property name failed", re); throw re; } return numLics; }
From source file:com.lm.lic.manager.hibernate.LicenseDAO.java
License:Open Source License
/** * Add the product definition key restriction if supplied. The prodDefKey is a new parameter introduced for extra security. * Prior to this, it was not required. To accomodate applications running on phones that don't pass this argument, try to not * add the restriction unless it is physically supplied. If it is supplied, then simply add the restriction as is. NOTE THAT * THIS IS ONLY TEMPORARY AND SHOULD ALWAYS ADD THE RESATRICTION REGARDLESS OF THE PARAMETER BEING PRESENT OR NOT. * //from www . ja va 2 s . c o m * @param prodDefKey * @param prodCrit */ private void addProdDefCritIfProdDefKeyAvailable(String prodDefKey, Criteria prodCrit) { Criteria prodDefCrit = prodCrit.createCriteria("productDef"); prodDefCrit.add(Restrictions.eq("deleted", false)); prodDefCrit.add(Restrictions.eq("locked", false)); prodDefCrit.add(Restrictions.eq("enabled", true)); prodDefCrit.add(Restrictions.eq("productKey", prodDefKey)); }
From source file:com.lm.lic.manager.hibernate.LicenseDAO.java
License:Open Source License
/** * Find license by device ID and prodDefKey. Note that the license is searched for by prodDefKey. If more than one license exist * per deviceId (in such a case, the user got the trial then paid for the application)the list returned is in descending order * according to the life of the license. The higher life license is at lower index in the list - highest life is at index 0. * Lowest life is at index siz - 1.//from w w w. j ava2 s.c om */ @SuppressWarnings("unchecked") public List<License> findLicsByDevIdAndProdDefKey(String deviceId, String prodDefKey, Boolean decomStatus, Boolean inUse) { List<License> licenses = null; Criteria criteria = getSession().createCriteria(License.class); addLicenseStatucCrit(decomStatus, inUse, criteria); criteria.add(Restrictions.eq("endUserPin", deviceId)); Criteria prodCrit = addValidProductStateRestrictions(criteria); Criteria prodDefCrit = prodCrit.createCriteria("productDef"); prodDefCrit.add(Restrictions.eq("deleted", false)); prodDefCrit.add(Restrictions.eq("locked", false)); prodDefCrit.add(Restrictions.eq("enabled", true)); prodDefCrit.add(Restrictions.eq("productKey", prodDefKey)); criteria.addOrder(Order.desc("lifeInDays")); licenses = criteria.list(); return licenses; }
From source file:com.lm.lic.manager.hibernate.LicenseVerifIncidentDAO.java
License:Open Source License
private Criteria addEnabledUnDeletedProductCriteria(Criteria mainCriteria) { Criteria prodCriteria = mainCriteria.createCriteria("product"); prodCriteria.add(Restrictions.eq("enabled", true)); prodCriteria.add(Restrictions.eq("deleted", false)); return prodCriteria; }
From source file:com.lm.lic.manager.hibernate.LicenseVerifIncidentDAO.java
License:Open Source License
public Integer findNumIsvVerifs(String isvId, String licType, String respType, Date startDate, Date endDate) { Integer numVerifs = 0;/*from ww w. j a v a 2 s .c o m*/ try { Long lisvid = Long.parseLong(isvId); Criteria mainCriteria = getSession().createCriteria(LicenseVerifIncident.class); mainCriteria.add(Restrictions.eq("isv.id", lisvid)); Criteria prodCriteria = mainCriteria.createCriteria("product"); prodCriteria.add(Restrictions.eq("deleted", false)); addLicTypeRespTypeCrit(licType, respType, mainCriteria, prodCriteria); if (startDate != null && endDate != null) mainCriteria.add(Restrictions.between(TIME_REQUESTED, startDate, endDate)); else { if (startDate != null) mainCriteria.add(Restrictions.gt(TIME_REQUESTED, startDate)); if (endDate != null) mainCriteria.add(Restrictions.lt(TIME_REQUESTED, endDate)); } mainCriteria.setProjection(Projections.rowCount()); numVerifs = (Integer) mainCriteria.list().get(0); } catch (RuntimeException re) { log.error("find by property name failed", re); throw re; } return numVerifs; }
From source file:com.lm.lic.manager.hibernate.LicenseVerifIncidentDAO.java
License:Open Source License
public Integer findNumProdVerifs(String prodId, String licType, String respType, Date startDate, Date endDate) { Integer numLics = 0;// ww w .j a va 2s . c o m try { Long lpid = Long.parseLong(prodId); Criteria mainCriteria = getSession().createCriteria(LicenseVerifIncident.class); mainCriteria.add(Restrictions.eq("product.id", lpid)); Criteria prodCriteria = mainCriteria.createCriteria("product"); prodCriteria.add(Restrictions.eq("deleted", false)); addLicTypeRespTypeCrit(licType, respType, mainCriteria, prodCriteria); if (startDate != null && endDate != null) mainCriteria.add(Restrictions.between(TIME_REQUESTED, startDate, endDate)); else { if (startDate != null) mainCriteria.add(Restrictions.gt(TIME_REQUESTED, startDate)); if (endDate != null) mainCriteria.add(Restrictions.lt(TIME_REQUESTED, endDate)); } mainCriteria.setProjection(Projections.rowCount()); numLics = (Integer) mainCriteria.list().get(0); } catch (RuntimeException re) { log.error("find by property name failed", re); throw re; } return numLics; }
From source file:com.lp.server.anfrage.ejbfac.AnfrageFacBean.java
License:Open Source License
/** * Die Liste der Bestellvorschlaege holen, die den Kriterien des Benutzers * entsprechen.// w w w .j a va 2 s . co m * * @param kritDtoI * die Kriterien des Benutzers * @param theClientDto * der aktuelle Benutzer * @return BestellvorschlagDto[] die Bestellvorschlaege * @throws EJBExceptionLP * Ausnahme */ private BestellvorschlagDto[] getListeBestellvorschlaege(BestellvorschlagUeberleitungKriterienDto kritDtoI, TheClientDto theClientDto) throws EJBExceptionLP { BestellvorschlagDto[] aBestellvorschlagDto = null; Session session = null; try { SessionFactory factory = FLRSessionFactory.getFactory(); session = factory.openSession(); // Criteria duerfen keine Texts oder Blobs enthalten! // Criteria anlegen fuer flrbestellvorschlag Criteria crit = session.createCriteria(FLRBestellvorschlag.class); Criteria critArtikel = crit.createCriteria("flrartikel"); // UW->JE // Konstante // Einschraenken nach Mandant crit.add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant())); // der Lieferant muss gesetzt sein crit.add(Restrictions.isNotNull("lieferant_i_id")); if (kritDtoI.getBBelegeinlieferant()) { // alle Bestellvorschlaege zu einem bestimmten Lieferanten crit.add(Restrictions.eq("lieferant_i_id", kritDtoI.getBelegeinlieferantLieferantIId())); // UW->JE // Kosntante critArtikel.addOrder(Property.forName("c_nr").asc()); } else if (kritDtoI.getBBelegeinlieferanteintermin()) { // alle Bestellvorschlaege zu einem bestimmten Lieferanten und // einem bestimmten Termin crit.add(Restrictions.eq("lieferant_i_id", kritDtoI.getBelegeinlieferanteinterminLieferantIId())); // UW->JE // Konstante crit.add(Restrictions.eq(BestellvorschlagFac.FLR_BESTELLVORSCHLAG_T_LIEFERTERMIN, kritDtoI.getTBelegeinlieferanteinterminTermin())); // UW // - // > // JE // Konstante critArtikel.addOrder(Property.forName("c_nr").asc()); } else if (kritDtoI.getBBelegprolieferant()) { // fuer jeden Lieferanten alle seine Bestellvorschlaege crit.addOrder(Property.forName("lieferant_i_id").asc()); // UW->JE // Konstante critArtikel.addOrder(Property.forName("c_nr").asc()); } else if (kritDtoI.getBBelegprolieferantprotermin()) { // fuer jeden Lieferanten alle seine Bestellvorschlaege zu einem // bestimmten Termin crit.addOrder(Property.forName("lieferant_i_id").asc()); // UW->JE // Konstante crit.addOrder(Property.forName(BestellvorschlagFac.FLR_BESTELLVORSCHLAG_T_LIEFERTERMIN).asc()); // UW->JE Konstante critArtikel.addOrder(Property.forName("c_nr").asc()); } List<?> list = crit.list(); aBestellvorschlagDto = new BestellvorschlagDto[list.size()]; int iIndex = 0; Iterator<?> it = list.iterator(); BestellvorschlagDto bestellvorschlagDto = null; while (it.hasNext()) { FLRBestellvorschlag flrbestellvorschlag = (FLRBestellvorschlag) it.next(); bestellvorschlagDto = new BestellvorschlagDto(); bestellvorschlagDto.setIId(flrbestellvorschlag.getI_id()); bestellvorschlagDto.setCMandantCNr(flrbestellvorschlag.getMandant_c_nr()); bestellvorschlagDto.setIArtikelId(flrbestellvorschlag.getArtikel_i_id()); bestellvorschlagDto.setNZubestellendeMenge(flrbestellvorschlag.getN_zubestellendemenge()); bestellvorschlagDto.setTLiefertermin((Timestamp) flrbestellvorschlag.getT_liefertermin()); bestellvorschlagDto.setCBelegartCNr(flrbestellvorschlag.getBelegart_c_nr()); bestellvorschlagDto.setIBelegartId(flrbestellvorschlag.getI_belegartid()); bestellvorschlagDto.setILieferantId(flrbestellvorschlag.getLieferant_i_id()); bestellvorschlagDto.setNNettoeinzelpreis(flrbestellvorschlag.getN_nettoeinzelpreis()); // bestellvorschlagDto.setDRabattsatz(flrbestellvorschlag. // getFRabattsatz()); UW->JE bestellvorschlagDto.setNRabattbetrag(flrbestellvorschlag.getN_rabattbetrag()); bestellvorschlagDto.setNNettogesamtpreis(flrbestellvorschlag.getN_nettogesamtpreis()); aBestellvorschlagDto[iIndex] = bestellvorschlagDto; iIndex++; } } catch (Throwable t) { throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, new Exception(t)); } finally { try { session.close(); } catch (HibernateException he) { throw new EJBExceptionLP(EJBExceptionLP.FEHLER_HIBERNATE, he); } } return aBestellvorschlagDto; }
From source file:com.lp.server.anfrage.ejbfac.AnfrageReportFacBean.java
License:Open Source License
/** * Diese Methode liefert eine Liste von allen Anfragen zu einem bestimmten * Artikel, die nach den eingegebenen Kriterien des Benutzers * zusammengestellt wird. <br>// w w w. j a v a2 s .com * Achtung: Hibernate verwendet lazy initialization, d.h. der Zugriff auf * Collections muss innerhalb der Session erfolgen. * * @param reportAnfragestatistikKriterienDtoI * die Kriterien des Benutzers * @param theClientDto * der aktuelle Benutzer * @return ReportAnfragestatistikDto[] die Liste der Anfragen * @throws EJBExceptionLP * Ausnahme */ private ReportAnfragestatistikDto[] getReportAnfragestatistik( ReportAnfragestatistikKriterienDto reportAnfragestatistikKriterienDtoI, TheClientDto theClientDto) throws EJBExceptionLP { ReportAnfragestatistikDto[] aResult = null; SessionFactory factory = FLRSessionFactory.getFactory(); Session session = null; try { session = factory.openSession(); // Hiberante Criteria fuer alle Tabellen ausgehend von meiner // Haupttabelle anlegen, // nach denen ich filtern und sortieren kann Criteria crit = session.createCriteria(FLRAnfragepositionlieferdatenReport.class); // flranfragepositionlieferdatenReport > flranfragepositionReport Criteria critAnfragepositionReport = crit.createCriteria( AnfragepositionFac.FLR_ANFRAGEPOSITIONLIEFERDATENREPORT_FLRANFRAGEPOSITIONREPORT); // flranfragepositionlieferdatenReport > flranfragepositionReport > // flrartikel Criteria critArtikel = critAnfragepositionReport .createCriteria(AnfragepositionFac.FLR_ANFRAGEPOSITION_FLRARTIKEL); // flranfragepositionReport > flranfrage Criteria critAnfrage = critAnfragepositionReport .createCriteria(AnfragepositionFac.FLR_ANFRAGEPOSITION_FLRANFRAGE); // Einschraenkung auf den gewaehlten Artikel if (reportAnfragestatistikKriterienDtoI.getArtikelIId() != null) { critArtikel.add(Restrictions.eq("i_id", reportAnfragestatistikKriterienDtoI.getArtikelIId())); } // Einschraenkung der Anfragen auf den aktuellen Mandanten critAnfrage.add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant())); // Einschraenken nach Status critAnfrage.add(Restrictions.ne(AnfrageFac.FLR_ANFRAGE_ANFRAGESTATUS_C_NR, AnfrageServiceFac.ANFRAGESTATUS_ANGELEGT)); critAnfrage.add(Restrictions.ne(AnfrageFac.FLR_ANFRAGE_ANFRAGESTATUS_C_NR, AnfrageServiceFac.ANFRAGESTATUS_STORNIERT)); // Einschraenken nach Anfrageart critAnfrage.add(Restrictions.ne(AnfrageFac.FLR_ANFRAGE_ANFRAGEART_C_NR, AnfrageServiceFac.ANFRAGEART_LIEFERGRUPPE)); // Einschraenkung nach Belegdatum von - bis if (reportAnfragestatistikKriterienDtoI.getDVon() != null) { critAnfrage.add(Restrictions.ge(AnfrageFac.FLR_ANFRAGE_T_BELEGDATUM, reportAnfragestatistikKriterienDtoI.getDVon())); } if (reportAnfragestatistikKriterienDtoI.getDBis() != null) { critAnfrage.add(Restrictions.le(AnfrageFac.FLR_ANFRAGE_T_BELEGDATUM, reportAnfragestatistikKriterienDtoI.getDBis())); } // es wird nach der Belegnummer sortiert critAnfrage.addOrder(Order.asc("c_nr")); List<?> list = crit.list(); aResult = new ReportAnfragestatistikDto[list.size()]; int iIndex = 0; Iterator<?> it = list.iterator(); ReportAnfragestatistikDto reportDto = null; while (it.hasNext()) { FLRAnfragepositionlieferdatenReport flranfragepositionlieferdaten = (FLRAnfragepositionlieferdatenReport) it .next(); FLRAnfragepositionReport flranfrageposition = flranfragepositionlieferdaten .getFlranfragepositionreport(); FLRAnfrage flranfrage = flranfrageposition.getFlranfrage(); reportDto = new ReportAnfragestatistikDto(); reportDto.setAnfrageCNr(flranfrage.getC_nr()); reportDto.setKundenname( flranfrage.getFlrlieferant().getFlrpartner().getC_name1nachnamefirmazeile1()); Date datBelegdatum = flranfrage.getT_belegdatum(); reportDto.setBelegdatumCNr(Helper.formatDatum(datBelegdatum, theClientDto.getLocUi())); reportDto.setIIndex(new Integer(iIndex)); reportDto.setNAngebotenemenge(flranfragepositionlieferdaten.getN_anliefermenge()); reportDto.setILieferzeit(flranfragepositionlieferdaten.getI_anlieferzeit()); // der Preis wird in Mandantenwaehrung angezeigt, es gilt der // hinterlegte Wechselkurs Double ddWechselkurs = flranfrage.getF_wechselkursmandantwaehrungzuanfragewaehrung(); BigDecimal bdPreisinmandantenwaehrung = flranfragepositionlieferdaten .getN_nettogesamtpreisminusrabatt().multiply(new BigDecimal(ddWechselkurs.doubleValue())); bdPreisinmandantenwaehrung = Helper.rundeKaufmaennisch(bdPreisinmandantenwaehrung, 4); checkNumberFormat(bdPreisinmandantenwaehrung); reportDto.setNAngebotenerpreis(bdPreisinmandantenwaehrung); reportDto.setNAngefragtemenge(flranfrageposition.getN_menge()); aResult[iIndex] = reportDto; iIndex++; } } finally { closeSession(session); } return aResult; }