List of usage examples for org.hibernate.criterion Restrictions ge
public static SimpleExpression ge(String propertyName, Object value)
From source file:com.lp.server.reklamation.ejbfac.ReklamationReportFacBean.java
License:Open Source License
@TransactionAttribute(TransactionAttributeType.NEVER) public JasperPrintLP printLieferantenbeurteilung(Timestamp tVon, Timestamp tBis, Integer lieferantIId, Integer brancheIId, Integer liefergruppeIId, TheClientDto theClientDto) { index = -1;/* w w w. j av a2s . c o m*/ sAktuellerReport = ReklamationReportFac.REPORT_LIEFERANTENBEURTEILUNG; HashMap<String, Object> parameter = new HashMap<String, Object>(); parameter.put("P_VON", Helper.cutTimestamp(tVon)); parameter.put("P_BIS", Helper.cutTimestamp(tBis)); HashMap<Integer, String> hmLieferanten = new HashMap<Integer, String>(); Calendar c = Calendar.getInstance(); c.setTimeInMillis(tBis.getTime()); Timestamp tBeurteilungsdatum = Helper.cutTimestamp(tBis); // Klassen holen int iPunkteA = 0; int iPunkteB = 0; int iPunkteC = 0; try { ParametermandantDto parameterDto = getParameterFac().getMandantparameter(theClientDto.getMandant(), ParameterFac.KATEGORIE_LIEFERANT, ParameterFac.PARAMETER_LIEFERANTENBEURTEILUNG_PUNKTE_KLASSE_A); iPunkteA = (Integer) parameterDto.getCWertAsObject(); parameter.put("P_PUNKTEA", iPunkteA); parameterDto = getParameterFac().getMandantparameter(theClientDto.getMandant(), ParameterFac.KATEGORIE_LIEFERANT, ParameterFac.PARAMETER_LIEFERANTENBEURTEILUNG_PUNKTE_KLASSE_B); iPunkteB = (Integer) parameterDto.getCWertAsObject(); parameter.put("P_PUNKTEB", iPunkteB); parameterDto = getParameterFac().getMandantparameter(theClientDto.getMandant(), ParameterFac.KATEGORIE_LIEFERANT, ParameterFac.PARAMETER_LIEFERANTENBEURTEILUNG_PUNKTE_KLASSE_C); iPunkteC = (Integer) parameterDto.getCWertAsObject(); parameter.put("P_PUNKTEC", iPunkteC); } catch (RemoteException e2) { e2.printStackTrace(); } tVon = Helper.cutTimestamp(tVon); tBis = Helper.cutTimestamp(new Timestamp(tBis.getTime() + 24 * 3600000)); Session session = FLRSessionFactory.getFactory().openSession(); org.hibernate.Criteria crit = session.createCriteria(FLRWareneingangspositionen.class); crit.createAlias("flrwareneingang", "w"); crit.createAlias("w.flrbestellung", "b"); crit.createAlias("b.flrlieferant", "l"); crit.createAlias("l.flrpartner", "p"); crit.add(Restrictions.ge("w.t_wareneingansdatum", tVon)); crit.add(Restrictions.lt("w.t_wareneingansdatum", tBis)); crit.add(Restrictions.eq("b.mandant_c_nr", theClientDto.getMandant())); crit.add(Restrictions.eq("l.b_beurteilen", Helper.boolean2Short(true))); if (lieferantIId != null) { crit.add(Restrictions.eq("l.i_id", lieferantIId)); } if (brancheIId != null) { crit.add(Restrictions.eq("p.branche_i_id", brancheIId)); parameter.put("P_BRANCHE", getPartnerServicesFac().brancheFindByPrimaryKey(brancheIId, theClientDto).getBezeichnung()); } if (liefergruppeIId != null) { crit.createAlias("l.set_liefergruppen", "set"); crit.createAlias("set.flrliefergruppe", "lg"); crit.add(Restrictions.eq("lg.i_id", liefergruppeIId)); parameter.put("P_LIEFERGUPPE", getLieferantServicesFac() .lfliefergruppeFindByPrimaryKey(liefergruppeIId, theClientDto).getBezeichnung()); } crit.addOrder(Order.asc("p." + PartnerFac.FLR_PARTNER_C_NAME1NACHNAMEFIRMAZEILE1)); crit.addOrder(Order.desc("b.c_nr")); List<?> results = crit.list(); Iterator<?> resultListIterator = results.iterator(); TermintreueDto[] dtos = null; try { dtos = getReklamationFac().termintreueFindAll(); } catch (RemoteException e1) { throwEJBExceptionLPRespectOld(e1); } data = new Object[results.size()][REPORT_LIEFERANTENBEURTEILUNG_ANZAHL_SPALTEN]; int iLetzterWareneingang = -1; int iLetzterLieferant = -1; int iAnzahlWareneingaengeProLieferant = 0; int iAnzahlPunkteProLieferant = 0; int row = 0; HashMap hmWareneingaengeAbgehandelt = new HashMap(); while (resultListIterator.hasNext()) { FLRWareneingangspositionen wareneingangspositionen = (FLRWareneingangspositionen) resultListIterator .next(); data[row][REPORT_LIEFERANTENBEURTEILUNG_LIEFERANT] = wareneingangspositionen.getFlrwareneingang() .getFlrbestellung().getFlrlieferant().getFlrpartner().getC_name1nachnamefirmazeile1(); data[row][REPORT_LIEFERANTENBEURTEILUNG_LIEFERANT_STRASSE] = wareneingangspositionen .getFlrwareneingang().getFlrbestellung().getFlrlieferant().getFlrpartner().getC_strasse(); data[row][REPORT_LIEFERANTENBEURTEILUNG_LIEFERANT_KBEZ] = wareneingangspositionen.getFlrwareneingang() .getFlrbestellung().getFlrlieferant().getFlrpartner().getC_kbez(); if (wareneingangspositionen.getFlrwareneingang().getFlrbestellung().getFlrlieferant().getFlrpartner() .getFlrlandplzort() != null) { data[row][REPORT_LIEFERANTENBEURTEILUNG_LIEFERANT_PLZ] = wareneingangspositionen .getFlrwareneingang().getFlrbestellung().getFlrlieferant().getFlrpartner() .getFlrlandplzort().getC_plz(); data[row][REPORT_LIEFERANTENBEURTEILUNG_LIEFERANT_LKZ] = wareneingangspositionen .getFlrwareneingang().getFlrbestellung().getFlrlieferant().getFlrpartner() .getFlrlandplzort().getFlrland().getC_lkz(); data[row][REPORT_LIEFERANTENBEURTEILUNG_LIEFERANT_ORT] = wareneingangspositionen .getFlrwareneingang().getFlrbestellung().getFlrlieferant().getFlrpartner() .getFlrlandplzort().getFlrort().getC_name(); } Timestamp weDatum = Helper.cutTimestamp( new Timestamp(wareneingangspositionen.getFlrwareneingang().getT_wareneingansdatum().getTime())); data[row][REPORT_LIEFERANTENBEURTEILUNG_WARENEINGANGSDATUM] = weDatum; data[row][REPORT_LIEFERANTENBEURTEILUNG_WEIID] = wareneingangspositionen.getFlrwareneingang().getI_id(); data[row][REPORT_LIEFERANTENBEURTEILUNG_BESTELLNUMMER] = wareneingangspositionen.getFlrwareneingang() .getFlrbestellung().getC_nr(); data[row][REPORT_LIEFERANTENBEURTEILUNG_WELIEFERSCHEIN] = wareneingangspositionen.getFlrwareneingang() .getC_lieferscheinnr(); data[row][REPORT_LIEFERANTENBEURTEILUNG_MENGE] = wareneingangspositionen.getN_geliefertemenge(); data[row][REPORT_LIEFERANTENBEURTEILUNG_ARTIKELNUMMER] = wareneingangspositionen.getFlrbestellposition() .getFlrartikel().getC_nr(); hmLieferanten.put( wareneingangspositionen.getFlrwareneingang().getFlrbestellung().getFlrlieferant().getI_id(), ""); try { LieferantbeurteilungDto[] lbDtos = getLieferantFac() .lieferantbeurteilungfindByLetzteBeurteilungByLieferantIId(wareneingangspositionen .getFlrwareneingang().getFlrbestellung().getFlrlieferant().getI_id(), tBeurteilungsdatum); if (lbDtos != null && lbDtos.length > 0) { data[row][REPORT_LIEFERANTENBEURTEILUNG_KLASSE_BISHER] = lbDtos[0].getCKlasse(); data[row][REPORT_LIEFERANTENBEURTEILUNG_PUNKTE_BISHER] = lbDtos[0].getIPunkte(); } } catch (RemoteException e1) { throwEJBExceptionLPRespectOld(e1); } ArtikelDto artikelDto = getArtikelFac().artikelFindByPrimaryKeySmall( wareneingangspositionen.getFlrbestellposition().getFlrartikel().getI_id(), theClientDto); data[row][REPORT_LIEFERANTENBEURTEILUNG_BEZEICHNUNG] = artikelDto.formatBezeichnung(); // Solltermin: java.util.Date sollTermin = null; // if (wareneingangspositionen.getFlrbestellposition() // .getT_auftragsbestaetigungstermin() != null) { // sollTermin = wareneingangspositionen.getFlrbestellposition() // .getT_auftragsbestaetigungstermin(); // } sollTermin = wareneingangspositionen.getFlrbestellposition().getT_abursprungstermin(); if (sollTermin == null && wareneingangspositionen.getFlrbestellposition().getT_auftragsbestaetigungstermin() != null) { sollTermin = wareneingangspositionen.getFlrbestellposition().getT_auftragsbestaetigungstermin(); } if (sollTermin == null && wareneingangspositionen.getFlrwareneingang().getFlrbestellung() .getT_liefertermin() != null) { sollTermin = wareneingangspositionen.getFlrwareneingang().getFlrbestellung().getT_liefertermin(); } data[row][REPORT_LIEFERANTENBEURTEILUNG_SOLLTERMIN] = sollTermin; Integer iVerspaetungstage = getVerspaetungstage(weDatum, sollTermin); data[row][REPORT_LIEFERANTENBEURTEILUNG_VERSPAETUNG] = iVerspaetungstage; if (!hmWareneingaengeAbgehandelt.containsKey(wareneingangspositionen.getFlrwareneingang().getI_id())) { hmWareneingaengeAbgehandelt.put(wareneingangspositionen.getFlrwareneingang().getI_id(), ""); // Punkte berechnen // Reklamation holen, wenn vorhanden int iPunkteSchwere = 30; int iPunkteBehandlung = 30; int iPunkteTermin = getPunkteTermin(iVerspaetungstage, dtos); try { ReklamationDto[] reklamationDto = getReklamationFac() .reklamationFindByWareneingangIIdMandantCNr( wareneingangspositionen.getFlrwareneingang().getI_id(), theClientDto); if (reklamationDto != null && reklamationDto.length > 0) { data[row][REPORT_LIEFERANTENBEURTEILUNG_REKLAMATIONSNUMMER] = reklamationDto[0].getCNr(); if (reklamationDto[0].getSchwereIId() != null) { iPunkteSchwere = getReklamationFac() .schwereFindByPrimaryKey(reklamationDto[0].getSchwereIId()).getIPunkte(); } if (reklamationDto[0].getBehandlungIId() != null) { iPunkteBehandlung = getReklamationFac() .behandlungFindByPrimaryKey(reklamationDto[0].getBehandlungIId()).getIPunkte(); } } } catch (RemoteException e) { // Keine vorhanden } data[row][REPORT_LIEFERANTENBEURTEILUNG_PUNKTE_BEHANDLUNG] = iPunkteBehandlung; data[row][REPORT_LIEFERANTENBEURTEILUNG_PUNKTE_TERMIN] = iPunkteTermin; data[row][REPORT_LIEFERANTENBEURTEILUNG_PUNKTE_SCHWERE] = iPunkteSchwere; int iPunkteGesamt = iPunkteTermin * (iPunkteSchwere + iPunkteBehandlung); data[row][REPORT_LIEFERANTENBEURTEILUNG_PUNKTE_GESAMT] = iPunkteGesamt; iAnzahlWareneingaengeProLieferant++; iAnzahlPunkteProLieferant += iPunkteGesamt; } if ((iLetzterLieferant != -1 && (iLetzterLieferant != wareneingangspositionen.getFlrbestellposition() .getFlrbestellung().getFlrlieferant().getI_id())) || resultListIterator.hasNext() == false) { // Zuerst nachsehen ob vorhanden int iPunkte = 0; String klasse = "D"; if (iAnzahlWareneingaengeProLieferant != 0) { iPunkte = iAnzahlPunkteProLieferant / iAnzahlWareneingaengeProLieferant; } if (iPunkte >= iPunkteC) { klasse = "C"; } if (iPunkte >= iPunkteB) { klasse = "B"; } if (iPunkte >= iPunkteA) { klasse = "A"; } Integer lieferantIIdBeurteilung = iLetzterLieferant; if (lieferantIId != null) { lieferantIIdBeurteilung = lieferantIId; } try { LieferantbeurteilungDto dto = getLieferantFac().lieferantbeurteilungfindByLieferantIIdTDatum( lieferantIIdBeurteilung, tBeurteilungsdatum); if (Helper.short2boolean(dto.getBGesperrt()) == false) { dto.setBManuellgeaendert(Helper.boolean2Short(false)); dto.setIPunkte(iPunkte); dto.setCKlasse(klasse); } try { getLieferantFac().updateLieferantbeurteilung(dto, theClientDto); } catch (RemoteException e) { throwEJBExceptionLPRespectOld(e); } } catch (javax.ejb.EJBException e) { // Wenn nichts gefunden, dann neu anlegen // Beurteilung zurueckschreiben LieferantbeurteilungDto lbDto = new LieferantbeurteilungDto(); // Durchschnitt lbDto.setIPunkte(iPunkte); lbDto.setBGesperrt(Helper.boolean2Short(false)); lbDto.setTDatum(tBeurteilungsdatum); lbDto.setLieferantIId(lieferantIIdBeurteilung); lbDto.setCKlasse(klasse); lbDto.setBManuellgeaendert(Helper.boolean2Short(false)); try { getLieferantFac().createLieferantbeurteilung(lbDto, theClientDto); } catch (RemoteException ez) { throwEJBExceptionLPRespectOld(ez); } } catch (RemoteException e) { throwEJBExceptionLPRespectOld(e); } iAnzahlWareneingaengeProLieferant = 0; iAnzahlPunkteProLieferant = 0; } iLetzterLieferant = wareneingangspositionen.getFlrbestellposition().getFlrbestellung().getFlrlieferant() .getI_id(); row++; } initJRDS(parameter, ReklamationReportFac.REPORT_MODUL, ReklamationReportFac.REPORT_LIEFERANTENBEURTEILUNG, theClientDto.getMandant(), theClientDto.getLocUi(), theClientDto); JasperPrintLP print = getReportPrint(); print.putAdditionalInformation("LIEFERANTEN", (Integer[]) hmLieferanten.keySet().toArray(new Integer[hmLieferanten.keySet().size()])); return print; }
From source file:com.lp.server.reklamation.ejbfac.ReklamationReportFacBean.java
License:Open Source License
@TransactionAttribute(TransactionAttributeType.NEVER) public JasperPrintLP printLieferantentermintreue(Timestamp tVon, Timestamp tBis, Integer lieferantIId, TheClientDto theClientDto) {/*from w w w .j a va2 s .c o m*/ index = -1; sAktuellerReport = ReklamationReportFac.REPORT_LEFERANTENTERMINTREUE; HashMap<String, Object> parameter = new HashMap<String, Object>(); parameter.put("P_VON", tVon); parameter.put("P_BIS", tBis); tVon = Helper.cutTimestamp(tVon); tBis = Helper.cutTimestamp(new Timestamp(tBis.getTime() + 24 * 3600000)); Session session = FLRSessionFactory.getFactory().openSession(); org.hibernate.Criteria crit = session.createCriteria(FLRWareneingangspositionen.class); crit.createAlias("flrwareneingang", "w"); crit.createAlias("w.flrbestellung", "b"); crit.createAlias("b.flrlieferant", "l"); crit.createAlias("l.flrpartner", "p"); crit.add(Restrictions.ge("w.t_wareneingansdatum", tVon)); crit.add(Restrictions.lt("w.t_wareneingansdatum", tBis)); crit.add(Restrictions.eq("b.mandant_c_nr", theClientDto.getMandant())); if (lieferantIId != null) { crit.add(Restrictions.eq("l.i_id", lieferantIId)); LieferantDto lieferantDto = getLieferantFac().lieferantFindByPrimaryKey(lieferantIId, theClientDto); parameter.put("P_LIEFERANT", lieferantDto.getPartnerDto().formatFixTitelName1Name2()); } crit.addOrder(Order.asc("p." + PartnerFac.FLR_PARTNER_C_NAME1NACHNAMEFIRMAZEILE1)); crit.addOrder(Order.desc("b.c_nr")); List<?> results = crit.list(); Iterator<?> resultListIterator = results.iterator(); data = new Object[results.size()][9]; int row = 0; while (resultListIterator.hasNext()) { FLRWareneingangspositionen wareneingangspositionen = (FLRWareneingangspositionen) resultListIterator .next(); data[row][REPORT_LIEFERANTENTERMINTREUE_LIEFERANT] = wareneingangspositionen.getFlrwareneingang() .getFlrbestellung().getFlrlieferant().getFlrpartner().getC_name1nachnamefirmazeile1(); Timestamp weDatum = Helper.cutTimestamp( new Timestamp(wareneingangspositionen.getFlrwareneingang().getT_wareneingansdatum().getTime())); data[row][REPORT_LIEFERANTENTERMINTREUE_WARENEINGANGSDATUM] = weDatum; data[row][REPORT_LIEFERANTENTERMINTREUE_BESTELLNUMMER] = wareneingangspositionen.getFlrwareneingang() .getFlrbestellung().getC_nr(); data[row][REPORT_LIEFERANTENTERMINTREUE_WELIEFERSCHEIN] = wareneingangspositionen.getFlrwareneingang() .getC_lieferscheinnr(); data[row][REPORT_LIEFERANTENTERMINTREUE_MENGE] = wareneingangspositionen.getN_geliefertemenge(); data[row][REPORT_LIEFERANTENTERMINTREUE_ARTIKELNUMMER] = wareneingangspositionen.getFlrbestellposition() .getFlrartikel().getC_nr(); ArtikelDto artikelDto = getArtikelFac().artikelFindByPrimaryKeySmall( wareneingangspositionen.getFlrbestellposition().getFlrartikel().getI_id(), theClientDto); data[row][REPORT_LIEFERANTENTERMINTREUE_BEZEICHNUNG] = artikelDto.formatBezeichnung(); // Solltermin: java.util.Date sollTermin = null; // if (wareneingangspositionen.getFlrbestellposition() // .getT_auftragsbestaetigungstermin() != null) { // sollTermin = wareneingangspositionen.getFlrbestellposition() // .getT_auftragsbestaetigungstermin(); // } sollTermin = wareneingangspositionen.getFlrbestellposition().getT_abursprungstermin(); if (sollTermin == null && wareneingangspositionen.getFlrbestellposition().getT_auftragsbestaetigungstermin() != null) { sollTermin = wareneingangspositionen.getFlrbestellposition().getT_auftragsbestaetigungstermin(); } if (sollTermin == null && wareneingangspositionen.getFlrwareneingang().getFlrbestellung() .getT_liefertermin() != null) { sollTermin = wareneingangspositionen.getFlrwareneingang().getFlrbestellung().getT_liefertermin(); } data[row][REPORT_LIEFERANTENTERMINTREUE_SOLLTERMIN] = sollTermin; data[row][REPORT_LIEFERANTENTERMINTREUE_VERSPAETUNG] = getVerspaetungstage(weDatum, sollTermin); row++; } initJRDS(parameter, ReklamationReportFac.REPORT_MODUL, ReklamationReportFac.REPORT_LEFERANTENTERMINTREUE, theClientDto.getMandant(), theClientDto.getLocUi(), theClientDto); return getReportPrint(); }
From source file:com.lp.server.reklamation.ejbfac.ReklamationReportFacBean.java
License:Open Source License
public JasperPrintLP printFehlerarten(java.sql.Timestamp tVon, java.sql.Timestamp tBis, boolean bKunde, boolean bLieferant, boolean bFertigung, Integer kundeIId, int iGruppierung, boolean bNurBerechtigte, TheClientDto theClientDto) {//from w w w .j a v a 2 s . c om sAktuellerReport = ReklamationReportFac.REPORT_FEHLERART; HashMap<String, Object> parameter = new HashMap<String, Object>(); parameter.put("P_VON", tVon); parameter.put("P_BIS", tBis); parameter.put("P_NURBERECHTIGTE", new Boolean(bNurBerechtigte)); tVon = Helper.cutTimestamp(tVon); Session session = FLRSessionFactory.getFactory().openSession(); org.hibernate.Criteria crit = session.createCriteria(FLRReklamation.class); crit.add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant())); session.enableFilter("filterMandant").setParameter("paramMandant", theClientDto.getMandant()); session.enableFilter("filterLocale").setParameter("paramLocale", theClientDto.getLocUiAsString()); Calendar c = Calendar.getInstance(); c.setTimeInMillis(tBis.getTime()); c.set(Calendar.DAY_OF_MONTH, c.get(Calendar.DAY_OF_MONTH) + 1); tBis = Helper.cutTimestamp(new java.sql.Timestamp(c.getTimeInMillis())); crit.add(Restrictions.ge(ReklamationFac.FLR_REKLAMATION_T_BELEGDATUM, tVon)); crit.add(Restrictions.lt(ReklamationFac.FLR_REKLAMATION_T_BELEGDATUM, tBis)); crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRLIEFERANT, "l", CriteriaSpecification.LEFT_JOIN); crit.createAlias(ReklamationFac.FLR_REKLAMATION_FRLKUNDE, "k", CriteriaSpecification.LEFT_JOIN); crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRLOS, "lo", CriteriaSpecification.LEFT_JOIN); crit.createAlias("lo." + FertigungFac.FLR_LOSREPORT_FLRAUFTRAG, "au", CriteriaSpecification.LEFT_JOIN); crit.createAlias("l." + LieferantFac.FLR_PARTNER, "pl", CriteriaSpecification.LEFT_JOIN); crit.createAlias("k." + KundeFac.FLR_PARTNER, "kl", CriteriaSpecification.LEFT_JOIN); crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRFEHLERANGABE, "f", CriteriaSpecification.LEFT_JOIN); if (bNurBerechtigte == true) { crit.add(Restrictions.eq(ReklamationFac.FLR_REKLAMATION_B_BERECHTIGT, Helper.boolean2Short(true))); } ArrayList<String> alArten = new ArrayList<String>(); if (bFertigung == true) { alArten.add(ReklamationFac.REKLAMATIONART_FERTIGUNG); } if (bKunde == true) { alArten.add(ReklamationFac.REKLAMATIONART_KUNDE); } if (bLieferant == true) { alArten.add(ReklamationFac.REKLAMATIONART_LIEFERANT); } crit.add(Restrictions.in(ReklamationFac.FLR_REKLAMATION_REKLAMATIONART_C_NR, alArten)); if (alArten.size() == 0) { return null; } if (kundeIId != null) { crit.add(Restrictions.or(Restrictions.eq("au.kunde_i_id_auftragsadresse", kundeIId), Restrictions.eq(ReklamationFac.FLR_REKLAMATION_KUNDE_I_ID, kundeIId))); KundeDto kundeDto = getKundeFac().kundeFindByPrimaryKey(kundeIId, theClientDto); parameter.put("P_KUNDE", kundeDto.getPartnerDto().formatFixTitelName1Name2()); } if (iGruppierung == ReklamationReportFac.SORTIERUNG_FEHLERART_MASCHINENGRUPPE || iGruppierung == ReklamationReportFac.SORTIERUNG_FEHLERART_MASCHINENGRUPPE_MITARBEITER) { crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRMASCHINE, "masch", CriteriaSpecification.LEFT_JOIN); crit.createAlias("masch." + ZeiterfassungFac.FLR_MASCHINE_FLR_MASCHINENGRUPPE, "mgru", CriteriaSpecification.LEFT_JOIN); crit.addOrder(Order.asc("mgru.c_bez")); } if (iGruppierung == ReklamationReportFac.SORTIERUNG_FEHLERART_MITARBEITER || iGruppierung == ReklamationReportFac.SORTIERUNG_FEHLERART_MASCHINENGRUPPE_MITARBEITER) { crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRVERURSACHER, "ver", CriteriaSpecification.LEFT_JOIN); crit.createAlias("ver." + PersonalFac.FLR_PERSONAL_FLRPARTNER, "part", CriteriaSpecification.LEFT_JOIN); crit.addOrder(Order.asc("part." + PartnerFac.FLR_PARTNER_C_NAME1NACHNAMEFIRMAZEILE1)); crit.addOrder(Order.asc("part." + PartnerFac.FLR_PARTNER_C_NAME2VORNAMEFIRMAZEILE2)); } crit.addOrder(Order.asc("f.c_bez")); crit.addOrder(Order.asc("c_nr")); List<?> results = crit.list(); Iterator<?> resultListIterator = results.iterator(); data = new Object[results.size()][REPORT_FEHLERART_ANZAHL_SPALTEN]; int row = 0; if (iGruppierung == ReklamationReportFac.SORTIERUNG_FEHLERART_FEHLERART) { parameter.put("P_SORTIERUNG", getTextRespectUISpr("rekla.fehlerart", theClientDto.getMandant(), theClientDto.getLocUi())); } else if (iGruppierung == ReklamationReportFac.SORTIERUNG_FEHLERART_MASCHINENGRUPPE) { parameter.put("P_SORTIERUNG", getTextRespectUISpr("lp.maschinengruppe", theClientDto.getMandant(), theClientDto.getLocUi())); } else if (iGruppierung == ReklamationReportFac.SORTIERUNG_FEHLERART_MITARBEITER) { parameter.put("P_SORTIERUNG", getTextRespectUISpr("rekla.verursacher", theClientDto.getMandant(), theClientDto.getLocUi())); } else if (iGruppierung == ReklamationReportFac.SORTIERUNG_FEHLERART_MASCHINENGRUPPE_MITARBEITER) { parameter.put("P_SORTIERUNG", getTextRespectUISpr("lp.maschinengruppe", theClientDto.getMandant(), theClientDto.getLocUi()) + " + " + getTextRespectUISpr("rekla.verursacher", theClientDto.getMandant(), theClientDto.getLocUi())); } while (resultListIterator.hasNext()) { FLRReklamation flrReklamation = (FLRReklamation) resultListIterator.next(); data[row][REPORT_FEHLERART_FEHLERART] = flrReklamation.getFlrfehlerangabe().getC_bez(); data[row][REPORT_FEHLERART_REKLAMATIONSNUMMER] = flrReklamation.getC_nr(); data[row][REPORT_FEHLERART_REKLAMATIONSART] = flrReklamation.getReklamationart_c_nr(); data[row][REPORT_FEHLERART_MASCHINENGRUPPE] = ""; if (flrReklamation.getFlrmaschine() != null) { data[row][REPORT_FEHLERART_MASCHINENGRUPPE] = flrReklamation.getFlrmaschine() .getFlrmaschinengruppe().getC_bez(); } data[row][REPORT_FEHLERART_VERURSACHER] = ""; if (flrReklamation.getFlrverursacher() != null) { PersonalDto personalDto = getPersonalFac() .personalFindByPrimaryKey(flrReklamation.getFlrverursacher().getI_id(), theClientDto); data[row][REPORT_FEHLERART_VERURSACHER] = personalDto.formatAnrede(); } data[row][REPORT_FEHLERART_KUNDE] = ""; KundeDto kundeDto = null; if (flrReklamation.getReklamationart_c_nr().equals(ReklamationFac.REKLAMATIONART_KUNDE) && flrReklamation.getKunde_i_id() != null) { kundeDto = getKundeFac().kundeFindByPrimaryKey(flrReklamation.getKunde_i_id(), theClientDto); } else if (flrReklamation.getReklamationart_c_nr().equals(ReklamationFac.REKLAMATIONART_FERTIGUNG) && flrReklamation.getFlrlos() != null && flrReklamation.getFlrlos().getFlrauftrag() != null) { kundeDto = getKundeFac().kundeFindByPrimaryKey( flrReklamation.getFlrlos().getFlrauftrag().getKunde_i_id_auftragsadresse(), theClientDto); } if (kundeDto != null) { data[row][REPORT_FEHLERART_KUNDE] = kundeDto.getPartnerDto().formatTitelAnrede(); } flrReklamation.getFlrfehlerangabe().getC_bez(); data[row][REPORT_FEHLERART_FEHLERART] = flrReklamation.getFlrfehlerangabe().getC_bez(); if (iGruppierung == ReklamationReportFac.SORTIERUNG_FEHLERART_FEHLERART) { data[row][REPORT_FEHLERART_GRUPPIERUNG] = data[row][REPORT_FEHLERART_FEHLERART]; } else if (iGruppierung == ReklamationReportFac.SORTIERUNG_FEHLERART_MASCHINENGRUPPE) { data[row][REPORT_FEHLERART_GRUPPIERUNG] = data[row][REPORT_FEHLERART_MASCHINENGRUPPE]; } else if (iGruppierung == ReklamationReportFac.SORTIERUNG_FEHLERART_MITARBEITER) { data[row][REPORT_FEHLERART_GRUPPIERUNG] = data[row][REPORT_FEHLERART_VERURSACHER]; } else if (iGruppierung == ReklamationReportFac.SORTIERUNG_FEHLERART_MASCHINENGRUPPE_MITARBEITER) { data[row][REPORT_FEHLERART_GRUPPIERUNG] = data[row][REPORT_FEHLERART_MASCHINENGRUPPE] + " " + data[row][REPORT_FEHLERART_VERURSACHER].toString(); } row++; } initJRDS(parameter, ReklamationReportFac.REPORT_MODUL, ReklamationReportFac.REPORT_FEHLERART, theClientDto.getMandant(), theClientDto.getLocUi(), theClientDto); return getReportPrint(); }
From source file:com.lp.server.reklamation.ejbfac.ReklamationReportFacBean.java
License:Open Source License
public JasperPrintLP printMitarbeiterreklamation(java.sql.Timestamp tVon, java.sql.Timestamp tBis, boolean bKunde, boolean bLieferant, boolean bFertigung, Integer kundeIId, boolean bNurBerechtigte, TheClientDto theClientDto) {// w w w . j ava 2 s . c o m sAktuellerReport = ReklamationReportFac.REPORT_MITARBEITERREKLAMATION; HashMap<String, Object> parameter = new HashMap<String, Object>(); parameter.put("P_VON", tVon); parameter.put("P_BIS", tBis); parameter.put("P_NURBERECHTIGTE", new Boolean(bNurBerechtigte)); tVon = Helper.cutTimestamp(tVon); Session session = FLRSessionFactory.getFactory().openSession(); org.hibernate.Criteria crit = session.createCriteria(FLRReklamation.class); crit.add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant())); session.enableFilter("filterMandant").setParameter("paramMandant", theClientDto.getMandant()); session.enableFilter("filterLocale").setParameter("paramLocale", theClientDto.getLocUiAsString()); Calendar c = Calendar.getInstance(); c.setTimeInMillis(tBis.getTime()); c.set(Calendar.DAY_OF_MONTH, c.get(Calendar.DAY_OF_MONTH) + 1); tBis = Helper.cutTimestamp(new java.sql.Timestamp(c.getTimeInMillis())); crit.add(Restrictions.ge(ReklamationFac.FLR_REKLAMATION_T_BELEGDATUM, tVon)); crit.add(Restrictions.lt(ReklamationFac.FLR_REKLAMATION_T_BELEGDATUM, tBis)); crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRLIEFERANT, "l", CriteriaSpecification.LEFT_JOIN); crit.createAlias(ReklamationFac.FLR_REKLAMATION_FRLKUNDE, "k", CriteriaSpecification.LEFT_JOIN); crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRLOS, "lo", CriteriaSpecification.LEFT_JOIN); crit.createAlias("lo." + FertigungFac.FLR_LOSREPORT_FLRAUFTRAG, "au", CriteriaSpecification.LEFT_JOIN); crit.createAlias("l." + LieferantFac.FLR_PARTNER, "pl", CriteriaSpecification.LEFT_JOIN); crit.createAlias("k." + KundeFac.FLR_PARTNER, "kl", CriteriaSpecification.LEFT_JOIN); crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRFEHLERANGABE, "f", CriteriaSpecification.LEFT_JOIN); if (bNurBerechtigte == true) { crit.add(Restrictions.eq(ReklamationFac.FLR_REKLAMATION_B_BERECHTIGT, Helper.boolean2Short(true))); } ArrayList<String> alArten = new ArrayList<String>(); if (bFertigung == true) { alArten.add(ReklamationFac.REKLAMATIONART_FERTIGUNG); } if (bKunde == true) { alArten.add(ReklamationFac.REKLAMATIONART_KUNDE); } if (bLieferant == true) { alArten.add(ReklamationFac.REKLAMATIONART_LIEFERANT); } crit.add(Restrictions.in(ReklamationFac.FLR_REKLAMATION_REKLAMATIONART_C_NR, alArten)); if (kundeIId != null) { crit.add(Restrictions.or(Restrictions.eq("au.kunde_i_id_auftragsadresse", kundeIId), Restrictions.eq(ReklamationFac.FLR_REKLAMATION_KUNDE_I_ID, kundeIId))); KundeDto kundeDto = getKundeFac().kundeFindByPrimaryKey(kundeIId, theClientDto); parameter.put("P_KUNDE", kundeDto.getPartnerDto().formatFixTitelName1Name2()); } crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRVERURSACHER, "ver", CriteriaSpecification.LEFT_JOIN); crit.createAlias("ver." + PersonalFac.FLR_PERSONAL_FLRPARTNER, "part", CriteriaSpecification.LEFT_JOIN); crit.addOrder(Order.asc("part." + PartnerFac.FLR_PARTNER_C_NAME1NACHNAMEFIRMAZEILE1)); crit.addOrder(Order.asc("part." + PartnerFac.FLR_PARTNER_C_NAME2VORNAMEFIRMAZEILE2)); crit.addOrder(Order.asc("f.c_bez")); crit.addOrder(Order.asc("c_nr")); List<?> results = crit.list(); Iterator<?> resultListIterator = results.iterator(); data = new Object[results.size()][REPORT_MITARBEITERREKLAMATION_ANZAHL_SPALTEN]; int row = 0; while (resultListIterator.hasNext()) { FLRReklamation flrReklamation = (FLRReklamation) resultListIterator.next(); data[row][REPORT_MITARBEITERREKLAMATION_REKLAMATIONSNUMMER] = flrReklamation.getC_nr(); data[row][REPORT_MITARBEITERREKLAMATION_REKLAMATIONSART] = flrReklamation.getReklamationart_c_nr(); data[row][REPORT_MITARBEITERREKLAMATION_VERURSACHER] = ""; if (flrReklamation.getFlrverursacher() != null) { PersonalDto personalDto = getPersonalFac() .personalFindByPrimaryKey(flrReklamation.getFlrverursacher().getI_id(), theClientDto); data[row][REPORT_MITARBEITERREKLAMATION_VERURSACHER] = personalDto.formatAnrede(); } data[row][REPORT_MITARBEITERREKLAMATION_KUNDE] = ""; KundeDto kundeDto = null; if (flrReklamation.getReklamationart_c_nr().equals(ReklamationFac.REKLAMATIONART_KUNDE) && flrReklamation.getKunde_i_id() != null) { kundeDto = getKundeFac().kundeFindByPrimaryKey(flrReklamation.getKunde_i_id(), theClientDto); } else if (flrReklamation.getReklamationart_c_nr().equals(ReklamationFac.REKLAMATIONART_FERTIGUNG) && flrReklamation.getFlrlos() != null && flrReklamation.getFlrlos().getFlrauftrag() != null) { kundeDto = getKundeFac().kundeFindByPrimaryKey( flrReklamation.getFlrlos().getFlrauftrag().getKunde_i_id_auftragsadresse(), theClientDto); } if (kundeDto != null) { data[row][REPORT_MITARBEITERREKLAMATION_KUNDE] = kundeDto.getPartnerDto().formatTitelAnrede(); } row++; } initJRDS(parameter, ReklamationReportFac.REPORT_MODUL, ReklamationReportFac.REPORT_MITARBEITERREKLAMATION, theClientDto.getMandant(), theClientDto.getLocUi(), theClientDto); return getReportPrint(); }
From source file:com.lp.server.reklamation.ejbfac.ReklamationReportFacBean.java
License:Open Source License
public JasperPrintLP printMaschinenreklamation(java.sql.Timestamp tVon, java.sql.Timestamp tBis, boolean bKunde, boolean bLieferant, boolean bFertigung, Integer kundeIId, boolean bNurBerechtigte, TheClientDto theClientDto) {//from ww w. j a v a 2 s .co m sAktuellerReport = ReklamationReportFac.REPORT_MASCHINENREKLAMATION; HashMap<String, Object> parameter = new HashMap<String, Object>(); parameter.put("P_VON", tVon); parameter.put("P_BIS", tBis); parameter.put("P_NURBERECHTIGTE", new Boolean(bNurBerechtigte)); tVon = Helper.cutTimestamp(tVon); Session session = FLRSessionFactory.getFactory().openSession(); org.hibernate.Criteria crit = session.createCriteria(FLRReklamation.class); crit.add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant())); session.enableFilter("filterMandant").setParameter("paramMandant", theClientDto.getMandant()); session.enableFilter("filterLocale").setParameter("paramLocale", theClientDto.getLocUiAsString()); Calendar c = Calendar.getInstance(); c.setTimeInMillis(tBis.getTime()); c.set(Calendar.DAY_OF_MONTH, c.get(Calendar.DAY_OF_MONTH) + 1); tBis = Helper.cutTimestamp(new java.sql.Timestamp(c.getTimeInMillis())); crit.add(Restrictions.ge(ReklamationFac.FLR_REKLAMATION_T_BELEGDATUM, tVon)); crit.add(Restrictions.lt(ReklamationFac.FLR_REKLAMATION_T_BELEGDATUM, tBis)); crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRLIEFERANT, "l", CriteriaSpecification.LEFT_JOIN); crit.createAlias(ReklamationFac.FLR_REKLAMATION_FRLKUNDE, "k", CriteriaSpecification.LEFT_JOIN); crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRLOS, "lo", CriteriaSpecification.LEFT_JOIN); crit.createAlias("lo." + FertigungFac.FLR_LOSREPORT_FLRAUFTRAG, "au", CriteriaSpecification.LEFT_JOIN); crit.createAlias("l." + LieferantFac.FLR_PARTNER, "pl", CriteriaSpecification.LEFT_JOIN); crit.createAlias("k." + KundeFac.FLR_PARTNER, "kl", CriteriaSpecification.LEFT_JOIN); crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRFEHLERANGABE, "f", CriteriaSpecification.LEFT_JOIN); if (bNurBerechtigte == true) { crit.add(Restrictions.eq(ReklamationFac.FLR_REKLAMATION_B_BERECHTIGT, Helper.boolean2Short(true))); } ArrayList<String> alArten = new ArrayList<String>(); if (bFertigung == true) { alArten.add(ReklamationFac.REKLAMATIONART_FERTIGUNG); } if (bKunde == true) { alArten.add(ReklamationFac.REKLAMATIONART_KUNDE); } if (bLieferant == true) { alArten.add(ReklamationFac.REKLAMATIONART_LIEFERANT); } crit.add(Restrictions.in(ReklamationFac.FLR_REKLAMATION_REKLAMATIONART_C_NR, alArten)); if (kundeIId != null) { crit.add(Restrictions.or(Restrictions.eq("au.kunde_i_id_auftragsadresse", kundeIId), Restrictions.eq(ReklamationFac.FLR_REKLAMATION_KUNDE_I_ID, kundeIId))); KundeDto kundeDto = getKundeFac().kundeFindByPrimaryKey(kundeIId, theClientDto); parameter.put("P_KUNDE", kundeDto.getPartnerDto().formatFixTitelName1Name2()); } crit.createAlias(ReklamationFac.FLR_REKLAMATION_FLRMASCHINE, "masch", CriteriaSpecification.LEFT_JOIN); crit.createAlias("masch." + ZeiterfassungFac.FLR_MASCHINE_FLR_MASCHINENGRUPPE, "mgru", CriteriaSpecification.LEFT_JOIN); crit.addOrder(Order.asc("mgru.c_bez")); crit.addOrder(Order.asc("f.c_bez")); crit.addOrder(Order.asc("c_nr")); List<?> results = crit.list(); Iterator<?> resultListIterator = results.iterator(); data = new Object[results.size()][REPORT_MASCHINENREKLAMATION_ANZAHL_SPALTEN]; int row = 0; while (resultListIterator.hasNext()) { FLRReklamation flrReklamation = (FLRReklamation) resultListIterator.next(); data[row][REPORT_MASCHINENREKLAMATION_REKLAMATIONSNUMMER] = flrReklamation.getC_nr(); data[row][REPORT_MASCHINENREKLAMATION_REKLAMATIONSART] = flrReklamation.getReklamationart_c_nr(); if (flrReklamation.getFlrmaschine() != null) { data[row][REPORT_MASCHINENREKLAMATION_MASCHINENGRUPPE] = flrReklamation.getFlrmaschine() .getFlrmaschinengruppe().getC_bez(); } data[row][REPORT_MASCHINENREKLAMATION_VERURSACHER] = ""; if (flrReklamation.getFlrverursacher() != null) { PersonalDto personalDto = getPersonalFac() .personalFindByPrimaryKey(flrReklamation.getFlrverursacher().getI_id(), theClientDto); data[row][REPORT_MASCHINENREKLAMATION_VERURSACHER] = personalDto.formatAnrede(); } data[row][REPORT_MASCHINENREKLAMATION_KUNDE] = ""; KundeDto kundeDto = null; if (flrReklamation.getReklamationart_c_nr().equals(ReklamationFac.REKLAMATIONART_KUNDE) && flrReklamation.getKunde_i_id() != null) { kundeDto = getKundeFac().kundeFindByPrimaryKey(flrReklamation.getKunde_i_id(), theClientDto); } else if (flrReklamation.getReklamationart_c_nr().equals(ReklamationFac.REKLAMATIONART_FERTIGUNG) && flrReklamation.getFlrlos() != null && flrReklamation.getFlrlos().getFlrauftrag() != null) { kundeDto = getKundeFac().kundeFindByPrimaryKey( flrReklamation.getFlrlos().getFlrauftrag().getKunde_i_id_auftragsadresse(), theClientDto); } if (kundeDto != null) { data[row][REPORT_MASCHINENREKLAMATION_KUNDE] = kundeDto.getPartnerDto().formatTitelAnrede(); } row++; } initJRDS(parameter, ReklamationReportFac.REPORT_MODUL, ReklamationReportFac.REPORT_MASCHINENREKLAMATION, theClientDto.getMandant(), theClientDto.getLocUi(), theClientDto); return getReportPrint(); }
From source file:com.lushapp.common.orm.hibernate.HibernateDao.java
License:Apache License
/** * ??Criterion,./*from ww w .j a va 2s. co m*/ */ protected Criterion buildCriterion(final String propertyName, final Object propertyValue, final MatchType matchType) { Assert.hasText(propertyName, "propertyName?"); Criterion criterion = null; String value; Character ESCAPE = '!'; // ?MatchTypecriterion switch (matchType) { case EQ: criterion = Restrictions.eq(propertyName, propertyValue); break; case NE: criterion = Restrictions.ne(propertyName, propertyValue); break; case LIKE: // value = (String) propertyValue; if ((ESCAPE.toString()).equals(value)) { criterion = Restrictions.like(propertyName, (String) propertyValue, MatchMode.ANYWHERE); } else { criterion = new LikeExpression(propertyName, (String) propertyValue, MatchMode.ANYWHERE, ESCAPE, true); } break; case SLIKE: // value = (String) propertyValue; if ((ESCAPE.toString()).equals(value)) { criterion = Restrictions.like(propertyName, (String) propertyValue, MatchMode.START); } else { criterion = new LikeExpression(propertyName, (String) propertyValue, MatchMode.START, ESCAPE, true); } break; case ELIKE: // value = (String) propertyValue; if ((ESCAPE.toString()).equals(value)) { criterion = Restrictions.like(propertyName, (String) propertyValue, MatchMode.END); } else { criterion = new LikeExpression(propertyName, (String) propertyValue, MatchMode.END, ESCAPE, true); } 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); break; case ISNULL: criterion = Restrictions.isNull(propertyName); } return criterion; }
From source file:com.marc.lastweek.business.entities.classifiedad.repository.ClassifiedAdRepository.java
License:Open Source License
private Criteria advancedSearchQueryConstructor(FilterParameters parameters, Calendar from) { Criteria criteriaQuery = this.sessionFactory.getCurrentSession().createCriteria(ClassifiedAd.class); if (parameters.getCategoryId() != null) { criteriaQuery.createCriteria("category").add(Restrictions.eq("id", parameters.getCategoryId())); }/*from w ww . j ava 2 s. c om*/ if (parameters.getProvinceId() != null) { criteriaQuery.createCriteria("province").add(Restrictions.eq("id", parameters.getProvinceId())); } if (parameters.getSubcategoryId() != null) { criteriaQuery.createCriteria("subcategory").add(Restrictions.eq("id", parameters.getSubcategoryId())); } criteriaQuery.add(Restrictions.ge("publicationDate", from)); criteriaQuery.add(Restrictions.eq("state", Integer.valueOf(ClassifiedAd.STATE_ACTIVE))); return criteriaQuery; }
From source file:com.maydesk.base.PDUserSession.java
License:Mozilla Public License
private Chat findLastChat(String otherUserId) { ChatManager chatmanager = connection.getChatManager(); String threadId = user.getJabberId() + "|" + otherUserId + "|"; Calendar calOneHourBefore = Calendar.getInstance(); calOneHourBefore.add(Calendar.MINUTE, -60); Criteria c = PDHibernateFactory.getSession().createCriteria(MChatHistory.class); c.add(Restrictions.eq("user", user)); c.add(Restrictions.eq("otherUser", otherUserId)); c.add(Restrictions.ge("lastActivity", calOneHourBefore.getTime())); c.addOrder(Order.desc("lastActivity")); c.setMaxResults(1);//from www.j a v a 2 s.co m MChatHistory chatHistory = (MChatHistory) c.uniqueResult(); Chat chat = null; if (chatHistory != null) { chat = chatmanager.getThreadChat(threadId + chatHistory.getId()); if (chat != null) { return chat; } } chatHistory = new MChatHistory(); chatHistory.setUser(user); chatHistory.setOtherUser(otherUserId); chatHistory.setLastActivity(new Date()); PDHibernateFactory.getSession().save(chatHistory); return chatmanager.createChat(otherUserId, threadId + chatHistory.getId(), null); }
From source file:com.mercatis.lighthouse3.persistence.events.hibernate.EventRegistryImplementation.java
License:Apache License
/** * This method generates criteria for a given event template that also * contain an ordering clause on the date of occurrence. * /* ww w . j a va2s . c o m*/ * @param session * the Hibernate session to use for criteria generation * @param entityTemplate * the template for which to generate the criteria * @param descending * <code>true</code> if descending order is wanted (the default) * or <code>false</code> for ascending order. * @return */ public Criteria generateOrderingCriteria(Session session, Event entityTemplate, boolean descending) { Criteria criteria = super.entityToCriteria(session, entityTemplate); if (entityTemplate.getContext() != null) { if (!Ranger.isEnumerationRange(entityTemplate.getContext())) criteria.add(Restrictions.eq("context", entityTemplate.getContext())); else criteria.add(Restrictions.in("context", Ranger.castToEnumerationRange(entityTemplate.getContext()).getEnumeration())); } if (entityTemplate.getCode() != null) { if (!Ranger.isEnumerationRange(entityTemplate.getCode())) criteria.add(Restrictions.eq("code", entityTemplate.getCode())); else criteria.add(Restrictions.in("code", Ranger.castToEnumerationRange(entityTemplate.getCode()).getEnumeration())); } if (entityTemplate.getLevel() != null) { if (!Ranger.isEnumerationRange(entityTemplate.getLevel())) criteria.add(Restrictions.eq("level", entityTemplate.getLevel())); else criteria.add(Restrictions.in("level", Ranger.castToEnumerationRange(entityTemplate.getLevel()).getEnumeration())); } if (entityTemplate.getMachineOfOrigin() != null) criteria.add(Restrictions.eq("machineOfOrigin", entityTemplate.getMachineOfOrigin())); if (entityTemplate.getMessage() != null) { criteria.add(Restrictions.ilike("message", "%" + entityTemplate.getMessage() + "%")); } if (entityTemplate.getStackTrace() != null) { if (this.unitOfWork.getSqlDialect() instanceof org.hibernate.dialect.MySQL5InnoDBDialect) criteria.add(Restrictions.sqlRestriction("match ({alias}.STACK_TRACE) against (?)", entityTemplate.getStackTrace(), StringType.INSTANCE)); else criteria.add(Restrictions.ilike("stackTrace", "%" + entityTemplate.getStackTrace() + "%")); } if (entityTemplate.getDateOfOccurrence() != null) { if (!Ranger.isIntervalRange(entityTemplate.getDateOfOccurrence())) { criteria.add(Restrictions.eq("dateOfOccurrence", entityTemplate.getDateOfOccurrence())); } else { Date lowerBound = Ranger.castToIntervalRange(entityTemplate.getDateOfOccurrence()).getLowerBound(); Date upperBound = Ranger.castToIntervalRange(entityTemplate.getDateOfOccurrence()).getUpperBound(); if ((lowerBound == null) && (upperBound != null)) criteria.add(Restrictions.le("dateOfOccurrence", upperBound)); else if ((lowerBound != null) && (upperBound == null)) criteria.add(Restrictions.ge("dateOfOccurrence", lowerBound)); else if ((lowerBound != null) && (upperBound != null)) { criteria.add(Restrictions.le("dateOfOccurrence", upperBound)); criteria.add(Restrictions.ge("dateOfOccurrence", lowerBound)); } } } if (!entityTemplate.getTransactionIds().isEmpty()) { Set<Criterion> transactionRestrictions = new HashSet<Criterion>(); for (String transactionId : entityTemplate.getTransactionIds()) transactionRestrictions.add(Restrictions.sqlRestriction( "exists (select lti.* from EVENT_TRANSACTION_IDS lti where {alias}.EVT_ID = lti.EVT_ID and lti.TRANSACTION_ID = ?)", transactionId, StringType.INSTANCE)); if (transactionRestrictions.size() == 1) { criteria.add(transactionRestrictions.iterator().next()); } else { Iterator<Criterion> restrictions = transactionRestrictions.iterator(); Criterion orCriterion = restrictions.next(); while (restrictions.hasNext()) { orCriterion = Restrictions.or(orCriterion, restrictions.next()); } criteria.add(orCriterion); } } for (String tag : entityTemplate.getTags()) criteria.add(Restrictions.sqlRestriction( "exists (select lt.* from EVENT_TAGS lt where {alias}.EVT_ID = lt.EVT_ID and lt.TAG = ?)", tag, StringType.INSTANCE)); for (String udf : entityTemplate.getUdfs().keySet()) { Object value = entityTemplate.getUdf(udf); if (udf.equals("eventRESTResourceLimitRestriction")) { criteria.setMaxResults((Integer) value); break; } String columnName = ""; Type valueType = StringType.INSTANCE; if (value instanceof Boolean) { columnName = "BOOLEAN_VAL"; valueType = BooleanType.INSTANCE; } if (value instanceof Integer) { columnName = "INTEGER_VAL"; valueType = IntegerType.INSTANCE; } if (value instanceof Long) { columnName = "LONG_VAL"; valueType = LongType.INSTANCE; } if (value instanceof Float) { columnName = "FLOAT_VAL"; valueType = FloatType.INSTANCE; } if (value instanceof Double) { columnName = "DOUBLE_VAL"; valueType = DoubleType.INSTANCE; } if (value instanceof Date) { columnName = "DATE_VAL"; valueType = DateType.INSTANCE; } if (value instanceof byte[]) { columnName = "BINARY_VAL"; valueType = BlobType.INSTANCE; } if (value instanceof String) { columnName = "STRING_VAL"; valueType = StringType.INSTANCE; } criteria.add(Restrictions.sqlRestriction( "exists (select lu.* from EVENT_UDFS lu where {alias}.EVT_ID = lu.EVT_ID and lu.UDF = ? and lu." + columnName + " = ?)", new Object[] { udf, value }, new Type[] { StringType.INSTANCE, valueType })); } if (descending) criteria.addOrder(Order.desc("dateOfOccurrence")); else criteria.addOrder(Order.asc("dateOfOccurrence")); return criteria; }
From source file:com.mycompany.CRMFly.hibernateAccess.ProjectsDAOImpl.java
public List<Projects> getProjectsOnDate(Date date) { return sessionFactory.getCurrentSession().createCriteria(Projects.class) .add(Restrictions.le("begin_date", date)).add(Restrictions.ge("end_date", date)).list(); }