List of usage examples for org.hibernate.criterion Restrictions or
public static LogicalExpression or(Criterion lhs, Criterion rhs)
From source file:com.lp.server.personal.ejbfac.ZutrittscontrollerReportFacBean.java
License:Open Source License
public JasperPrintLP printZutrittsjournal(java.sql.Timestamp tVon, java.sql.Timestamp tBis, TheClientDto theClientDto) {// ww w . j a v a2s . c o m index = -1; sAktuellerReport = ZutrittscontrollerReportFac.REPORT_ZUTRITTSJOURNAL; Session session = FLRSessionFactory.getFactory().openSession(); org.hibernate.Criteria crit = session .createCriteria(com.lp.server.personal.fastlanereader.generated.FLRZutrittslog.class) .add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant())); crit.add(Restrictions.ge(ZutrittscontrollerFac.FLR_ZUTRITTSLOG_T_ZEITPUNKT, tVon)); crit.add(Restrictions.le(ZutrittscontrollerFac.FLR_ZUTRITTSLOG_T_ZEITPUNKT, tBis)); // Wenn Hauptmandant try { String hauptmandant = getMandantFac().mandantFindByPrimaryKey(theClientDto.getMandant(), theClientDto) .getAnwenderDto().getMandantCNrHauptmandant(); if (!hauptmandant.equals(theClientDto.getMandant())) { crit.add(Restrictions.or( Restrictions.isNull(ZutrittscontrollerFac.FLR_ZUTRITTSLOG_MANDANT_C_NR_OBJEKT), Restrictions.or( Restrictions.eq(ZutrittscontrollerFac.FLR_ZUTRITTSLOG_MANDANT_C_NR_OBJEKT, theClientDto.getMandant()), Restrictions.eq(ZutrittscontrollerFac.FLR_ZUTRITTSLOG_FLRMANDANT + ".c_nr", theClientDto.getMandant())))); } } catch (RemoteException ex) { throwEJBExceptionLPRespectOld(ex); } crit.addOrder(Order.desc(ZutrittscontrollerFac.FLR_ZUTRITTSLOG_T_ZEITPUNKT)); List<?> results = crit.list(); Iterator<?> resultListIterator = results.iterator(); data = new Object[results.size()][7]; int row = 0; while (resultListIterator.hasNext()) { FLRZutrittslog log = (FLRZutrittslog) resultListIterator.next(); data[row][REPORT_ZUTRITTSJOURNAL_AUSWEIS] = log.getC_ausweis(); data[row][REPORT_ZUTRITTSJOURNAL_CONTROLLER] = log.getC_zutrittscontroller(); data[row][REPORT_ZUTRITTSJOURNAL_ERLAUBT] = log.getB_erlaubt(); data[row][REPORT_ZUTRITTSJOURNAL_MANDANT] = log.getMandant_c_nr(); data[row][REPORT_ZUTRITTSJOURNAL_OBJEKT] = log.getC_zutrittsobjekt(); data[row][REPORT_ZUTRITTSJOURNAL_PERSON] = log.getC_person(); data[row][REPORT_ZUTRITTSJOURNAL_ZEITPUNKT] = new java.sql.Timestamp(log.getT_zeitpunkt().getTime()); row++; } session.close(); HashMap<String, Object> parameter = new HashMap<String, Object>(); parameter.put("P_VON", tVon); parameter.put("P_BIS", tBis); initJRDS(parameter, ZutrittscontrollerReportFac.REPORT_MODUL, ZutrittscontrollerReportFac.REPORT_ZUTRITTSJOURNAL, theClientDto.getMandant(), theClientDto.getLocUi(), theClientDto); return getReportPrint(); }
From source file:com.lp.server.projekt.ejbfac.ProjektReportFacBean.java
License:Open Source License
public JasperPrintLP printProjektErledigt(ReportJournalKriterienDto reportJournalKriterienDtoI, Date dStichtag, Integer bereichIId, boolean interneErledigungBeruecksichtigen, TheClientDto theClientDto) throws EJBExceptionLP, RemoteException { JasperPrintLP oPrint = null;//ww w.j a va2 s . c o m cAktuellerReport = ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT; Locale locDruck; SessionFactory factory = FLRSessionFactory.getFactory(); Session session = null; // vom Stichtag die Uhrzeit abschneiden dStichtag = Helper.cutDate(dStichtag); 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(FLRProjekt.class); // Einschraenkung auf den aktuellen Mandanten crit.add(Restrictions.eq(ProjektFac.FLR_PROJEKT_MANDANT_C_NR, theClientDto.getMandant())); crit.add(Restrictions.not(Restrictions.eq(ProjektFac.FLR_PROJEKT_STATUS_C_NR, ProjektServiceFac.PROJEKT_STATUS_STORNIERT))); crit.add(Restrictions.eq(ProjektFac.FLR_PROJEKT_BEREICH_I_ID, bereichIId)); // Einschraenkung nach Status Offen, Erledigt if (interneErledigungBeruecksichtigen == false) { Collection<String> cStati = new LinkedList<String>(); cStati.add(ProjektServiceFac.PROJEKT_STATUS_ERLEDIGT); crit.add(Restrictions.in(ProjektFac.FLR_PROJEKT_STATUS_C_NR, cStati)); } if (reportJournalKriterienDtoI.dVon != null) { if (interneErledigungBeruecksichtigen == true) { crit.add(Restrictions.or( Restrictions.and(Restrictions.isNotNull(ProjektFac.FLR_PROJEKT_T_INTERNERLEDIGT), Restrictions.ge(ProjektFac.FLR_PROJEKT_T_INTERNERLEDIGT, reportJournalKriterienDtoI.dVon)), Restrictions.ge(ProjektFac.FLR_PROJEKT_T_ERLEDIGUNGSDATUM, reportJournalKriterienDtoI.dVon))); } else { crit.add(Restrictions.ge(ProjektFac.FLR_PROJEKT_T_ERLEDIGUNGSDATUM, reportJournalKriterienDtoI.dVon)); } } if (reportJournalKriterienDtoI.dBis != null) { Date d = Helper.addiereTageZuDatum(reportJournalKriterienDtoI.dBis, 1); if (interneErledigungBeruecksichtigen == true) { crit.add(Restrictions.or( Restrictions.and(Restrictions.isNotNull(ProjektFac.FLR_PROJEKT_T_INTERNERLEDIGT), Restrictions.lt(ProjektFac.FLR_PROJEKT_T_INTERNERLEDIGT, d)), Restrictions.lt(ProjektFac.FLR_PROJEKT_T_ERLEDIGUNGSDATUM, d))); } else { crit.add(Restrictions.lt(ProjektFac.FLR_PROJEKT_T_ERLEDIGUNGSDATUM, d)); } } // Einschraenkung nach einer bestimmten Perosn if (reportJournalKriterienDtoI.personalIId != null) { crit.add(Restrictions.eq(ProjektFac.FLR_PROJEKT_PERSONAL_I_ID_ERLEDIGER, reportJournalKriterienDtoI.personalIId)); } // Sortierung nach Partner, if (reportJournalKriterienDtoI.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER) { crit.createCriteria(ProjektFac.FLR_PROJEKT_FLRPARTNER) .addOrder(Order.asc(PartnerFac.FLR_PARTNER_NAME1NACHNAMEFIRMAZEILE1)); crit.addOrder(Order.asc(ProjektFac.FLR_PROJEKT_T_ERLEDIGUNGSDATUM)); crit.addOrder(Order.asc(ProjektFac.FLR_PROJEKT_C_NR)); } crit.addOrder(Order.asc(ProjektFac.FLR_PROJEKT_KATEGORIE_C_NR)); List<?> list = crit.list(); ArrayList<Object[]> alDaten = new ArrayList<Object[]>(); Iterator<?> it = list.iterator(); while (it.hasNext()) { FLRProjekt projekt = (FLRProjekt) it.next(); Object[] oZeile = new Object[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ANZAHL_SPALTEN]; if (interneErledigungBeruecksichtigen == true && projekt.getT_internerledigt() != null && projekt.getT_erledigungsdatum() != null) { // Wenn intern-Erledigt und normal erledigt, dann gilt jenes // Datum, das frueher war if (projekt.getT_internerledigt().getTime() <= projekt.getT_erledigungsdatum().getTime()) { if (reportJournalKriterienDtoI.dVon != null && projekt.getT_internerledigt() .getTime() < reportJournalKriterienDtoI.dVon.getTime()) { continue; } if (reportJournalKriterienDtoI.dBis != null && projekt.getT_internerledigt() .getTime() > reportJournalKriterienDtoI.dBis.getTime()) { continue; } } } oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_PROJEKTTITEL] = projekt.getC_titel(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_PROJEKTKATEGORIE] = projekt .getKategorie_c_nr(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_PROJEKTCNR] = projekt.getC_nr(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_TYP] = projekt.getTyp_c_nr(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_KUNDECNAME1] = projekt.getFlrpartner() .getC_name1nachnamefirmazeile1(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_WAHRSCHEINLICHKEIT] = projekt .getI_wahrscheinlichkeit(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_GEPLANTERUMSATZ] = projekt .getN_umsatzgeplant(); if (projekt.getPersonal_i_id_internerledigt() != null) { PersonalDto personalDto = getPersonalFac() .personalFindByPrimaryKey(projekt.getPersonal_i_id_internerledigt(), theClientDto); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_INTERNERLEDIGT_PERSON] = personalDto .getPartnerDto().formatAnrede(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_INTERNERLEDIGT_ZEIT] = projekt .getT_internerledigt(); } locDruck = Helper.string2Locale(projekt.getFlrpartner().getLocale_c_nr_kommunikation()); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ZIELTERMIN] = Helper .formatDatum(projekt.getT_zielwunschdatum(), locDruck); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_BELEGDATUM] = Helper .formatDatum(projekt.getT_anlegen(), locDruck); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ERLEDIGUNGSDATUM] = Helper .formatDatumZeit(projekt.getT_erledigungsdatum(), locDruck); if (projekt.getB_verrechenbar().equals(new Integer(1).shortValue())) { oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_B_VERRECHENBAR] = "verrechenbar"; } else { oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_B_VERRECHENBAR] = null; } if (projekt.getB_freigegeben().equals(new Integer(1).shortValue())) { oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_FREIGEGEBEN] = "freigegeben"; } else { oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_FREIGEGEBEN] = null; } Calendar calendar = new GregorianCalendar(); calendar.setTime(new Date(projekt.getT_zielwunschdatum().getTime())); int KW = calendar.get(Calendar.WEEK_OF_YEAR); // Kalendarwochen oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ZIELWOCHE] = "" + KW; oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_PRIO] = projekt.getI_prio(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_TEXT] = Helper .formatStyledTextForJasper(projekt.getX_freetext()); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ERZEUGER] = projekt.getFlrpersonalErzeuger() .getFlrpartner().getC_name1nachnamefirmazeile1(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ZUGEWIESENER] = projekt .getFlrpersonalZugewiesener().getFlrpartner().getC_name1nachnamefirmazeile1(); if (projekt.getPersonal_i_id_erlediger() != null) { oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ERLEDIGER] = projekt .getFlrpersonalErlediger().getFlrpartner().getC_name1nachnamefirmazeile1(); } oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ZEIT] = projekt.getT_zeit(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_DAUER] = projekt.getD_dauer(); // Gesamte Dauer eines Projektes Double ddArbeitszeitist = getZeiterfassungFac().getSummeZeitenEinesBeleges( LocaleFac.BELEGART_PROJEKT, projekt.getI_id(), null, null, null, null, theClientDto); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_GESAMTDAUER] = ddArbeitszeitist; Criteria crit1 = session.createCriteria(FLRHistory.class); crit1.createCriteria(ProjektFac.FLR_HISTORY_FLRPROJEKT) .add(Restrictions.eq(ProjektFac.FLR_PROJEKT_I_ID, projekt.getI_id())); List<?> resultList = crit1.list(); Iterator<?> itHistory = resultList.iterator(); alDaten.add(oZeile); while (itHistory.hasNext()) { FLRHistory history = (FLRHistory) itHistory.next(); oZeile = new Object[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ANZAHL_SPALTEN]; oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_PROJEKTCNR] = projekt.getC_nr(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ZUGEWIESENER] = projekt .getFlrpersonalZugewiesener().getFlrpartner().getC_name1nachnamefirmazeile1(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_HISTORY_MITARBEITER] = history .getFlrpersonal().getFlrpartner().getC_name1nachnamefirmazeile1(); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_HISTORY_BELEGDATUM] = Helper .formatDatum(history.getT_belegdatum(), locDruck); oZeile[ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_HISTORY_TEXT] = history.getX_text(); alDaten.add(oZeile); } } Object[][] returnArray = new Object[alDaten .size()][ProjektReportFac.REPORT_PROJEKT_JOURNAL_ERLEDIGT_ANZAHL_SPALTEN]; data = (Object[][]) alDaten.toArray(returnArray); } catch (RemoteException e) { throw new EJBExceptionLP(EJBExceptionLP.FEHLER_IN_ZEITDATEN, new Exception(e)); } finally { try { session.close(); } catch (HibernateException he) { throw new EJBExceptionLP(EJBExceptionLP.FEHLER_HIBERNATE, he); } } // die Parameter dem Report uebergeben HashMap<String, Object> parameter = new HashMap<String, Object>(); parameter.put(LPReport.P_FILTER, buildFilterProjektErledigt(reportJournalKriterienDtoI, theClientDto)); parameter.put("P_BEREICH", getProjektServiceFac().bereichFindByPrimaryKey(bereichIId).getCBez()); parameter.put("P_INTERNEERLEDIGUNGBERUECKSICHTIGEN", interneErledigungBeruecksichtigen); parameter.put("P_TITLE", getTextRespectUISpr("proj.print.erledigt", theClientDto.getMandant(), theClientDto.getLocUi())); initJRDS(parameter, ProjektReportFac.REPORT_MODUL, cAktuellerReport, theClientDto.getMandant(), theClientDto.getLocUi(), theClientDto); oPrint = getReportPrint(); return oPrint; }
From source file:com.lp.server.rechnung.ejbfac.RechnungReportFacBean.java
License:Open Source License
public JasperPrintLP printRechnungenOffene(ReportRechnungJournalKriterienDto krit, TheClientDto theClientDto) throws EJBExceptionLP { Session session = null;/* w w w. j a v a 2 s . com*/ try { Map<String, Object> mapParameter = new TreeMap<String, Object>(); MandantDto mandantDto = getMandantFac().mandantFindByPrimaryKey(theClientDto.getMandant(), theClientDto); this.useCase = UC_REPORT_RECHNUNGEN_OFFENE; SessionFactory factory = FLRSessionFactory.getFactory(); session = factory.openSession(); // Kunde oder Statistikadresse verwenden final String critKundeIId; final String critFLRKunde; if (krit.getBVerwendeStatistikAdresse()) { critKundeIId = RechnungFac.FLR_RECHNUNG_KUNDE_I_ID_STATISTIKADRESSE; critFLRKunde = RechnungFac.FLR_RECHNUNG_FLRSTATISTIKADRESSE; } else { critKundeIId = RechnungFac.FLR_RECHNUNG_KUNDE_I_ID; critFLRKunde = RechnungFac.FLR_RECHNUNG_FLRKUNDE; } List<Integer> kundenIIds = new ArrayList<Integer>(); if (krit.kundeIId != null) { kundenIIds.add(krit.kundeIId); } else if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER) { Iterator<?> iter = session.createCriteria(FLRKunde.class).createAlias("flrpartner", "p") .addOrder(Order.asc("p.c_name1nachnamefirmazeile1")) .add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant())).list().iterator(); while (iter.hasNext()) kundenIIds.add(((FLRKunde) iter.next()).getI_id()); } else { kundenIIds.add(null); } List<Object[]> dataList = new ArrayList<Object[]>(); for (Integer kndIId : kundenIIds) { Criteria c = session.createCriteria(FLRRechnungReport.class); // Filter nach Mandant c.add(Restrictions.eq(RechnungFac.FLR_RECHNUNG_MANDANT_C_NR, theClientDto.getMandant())); // Rechnungstypen Collection<String> cRechnungstyp = new LinkedList<String>(); cRechnungstyp.add(RechnungFac.RECHNUNGTYP_RECHNUNG); if (krit.getBGutschriftenBeruecksichtigen()) { cRechnungstyp.add(RechnungFac.RECHNUNGTYP_GUTSCHRIFT); } c.createCriteria(RechnungFac.FLR_RECHNUNG_FLRRECHNUNGART) .add(Restrictions.in(RechnungFac.FLR_RECHNUNGART_RECHNUNGTYP_C_NR, cRechnungstyp)); // Kostenstelle if (krit.kostenstelleIId != null) { c.add(Restrictions.eq(RechnungFac.FLR_RECHNUNG_KOSTENSTELLE_I_ID, krit.kostenstelleIId)); } if (kndIId != null) { c.add(Restrictions.eq(critKundeIId, kndIId)); KundeDto kundeDto = getKundeFac().kundeFindByPrimaryKey(kndIId, theClientDto); mapParameter.put("P_KUNDE", kundeDto.getPartnerDto().formatTitelAnrede()); } // Filter nach einem Vertrter if (krit.vertreterIId != null) { c.add(Restrictions.eq(RechnungFac.FLR_RECHNUNG_FLRVERTRETER + ".i_id", krit.vertreterIId)); } String sVon = null; String sBis = null; if (krit.dVon != null) { c.add(Restrictions.ge(RechnungFac.FLR_RECHNUNG_D_BELEGDATUM, krit.dVon)); sVon = Helper.formatDatum(krit.dVon, theClientDto.getLocUi()); } if (krit.dBis != null) { c.add(Restrictions.le(RechnungFac.FLR_RECHNUNG_D_BELEGDATUM, krit.dBis)); sBis = Helper.formatDatum(krit.dBis, theClientDto.getLocUi()); } LpBelegnummerFormat f = getBelegnummerGeneratorObj() .getBelegnummernFormat(theClientDto.getMandant()); Integer iGeschaeftsjahr = getParameterFac().getGeschaeftsjahr(theClientDto.getMandant()); String sMandantKuerzel = getParameterFac().getMandantparameter(theClientDto.getMandant(), ParameterFac.KATEGORIE_ALLGEMEIN, ParameterFac.PARAMETER_BELEGNUMMER_MANDANTKENNUNG) .getCWert(); if (krit.sBelegnummerVon != null) { sVon = HelperServer.getBelegnummernFilterForHibernateCriterias(f, iGeschaeftsjahr, sMandantKuerzel, krit.sBelegnummerVon); c.add(Restrictions.ge(RechnungFac.FLR_RECHNUNG_C_NR, sVon)); } if (krit.sBelegnummerBis != null) { sBis = HelperServer.getBelegnummernFilterForHibernateCriterias(f, iGeschaeftsjahr, sMandantKuerzel, krit.sBelegnummerBis); c.add(Restrictions.le(RechnungFac.FLR_RECHNUNG_C_NR, sBis)); } // Alle Stati ausser Angelegt, Bezahlt, Storniert Collection<String> cStati = new LinkedList<String>(); cStati.add(RechnungFac.STATUS_ANGELEGT); cStati.add(RechnungFac.STATUS_STORNIERT); c.add(Restrictions.not(Restrictions.in(RechnungFac.FLR_RECHNUNG_STATUS_C_NR, cStati))); c.add(Restrictions.or(Restrictions.gt("t_bezahltdatum", krit.getTStichtag()), Restrictions.isNull("t_bezahltdatum"))); boolean mitNichtZugeordnetenBelegen = false; // Sortierung nach Kostenstelle if (krit.bSortiereNachKostenstelle) { c.createCriteria(RechnungFac.FLR_RECHNUNG_FLRKOSTENSTELLE).addOrder(Order.asc("c_nr")); } // Sortierung nach Kunde if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER) { c.createCriteria(critFLRKunde).createCriteria(KundeFac.FLR_PARTNER) .addOrder(Order.asc(PartnerFac.FLR_PARTNER_NAME1NACHNAMEFIRMAZEILE1)); c.addOrder(Order.asc(RechnungFac.FLR_RECHNUNG_C_NR)); mitNichtZugeordnetenBelegen = krit.getBMitNichtZugeordnetendBelegen(); } // Sortierung nach Belegnummer else if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_BELEGNUMMER) { c.addOrder(Order.asc(RechnungFac.FLR_RECHNUNG_C_NR)); } else if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_VERTRETER) { c.createCriteria(RechnungFac.FLR_RECHNUNG_FLRVERTRETER) .addOrder(Order.asc(PersonalFac.FLR_PERSONAL_C_KURZZEICHEN)); } else if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_FAELLIGKEIT) { c.addOrder(Order.asc(RechnungFac.FLR_RECHNUNG_T_FAELLIGKEIT)) .addOrder(Order.asc(RechnungFac.FLR_RECHNUNG_C_NR)); } // stichtag ab belegdatum c.add(Restrictions.le(RechnungFac.FLR_RECHNUNG_D_BELEGDATUM, krit.getTStichtag())); List<?> firstResultList = c.list(); Iterator<?> firstResultListIterator = firstResultList.iterator(); List<FLRRechnungReport> resultList = new LinkedList<FLRRechnungReport>(); while (firstResultListIterator.hasNext()) { FLRRechnungReport re = (FLRRechnungReport) firstResultListIterator.next(); // stichtag bereits bezahlt? if (re.getT_bezahltdatum() == null || !krit.getTStichtag().after(re.getT_bezahltdatum())) { resultList.add(re); } } Iterator<?> resultListIterator = resultList.iterator(); int row = 0; Object[][] tempData = new Object[resultList.size()][OFFENE_ANZAHL_SPALTEN]; KundeDto kundeDto = null; if (kndIId != null) kundeDto = getKundeFac().kundeFindByPrimaryKey(kndIId, theClientDto); if (mitNichtZugeordnetenBelegen && kundeDto.getIidDebitorenkonto() != null) { // TODO: nur FLRFinanzBuchungDetail holen Query query = session.createQuery( "SELECT buchungdetail from FLRFinanzBuchungDetail buchungdetail LEFT OUTER JOIN buchungdetail.flrbuchung AS buchung" + " WHERE" + BuchungDetailQueryBuilder.buildNurOffeneBuchungDetails("buchungdetail") + "AND" + BuchungDetailQueryBuilder.buildNichtZuordenbareVonKonto("buchungdetail", "buchung", kundeDto.getIidDebitorenkonto()) + (krit.getTStichtag() == null ? "" : (" AND buchung.d_buchungsdatum<='" + Helper.formatDateWithSlashes(krit.getTStichtag()) + "'"))); @SuppressWarnings("unchecked") List<FLRFinanzBuchungDetail> bdList = query.list(); if (bdList.size() > 0) { if (tempData.length < 1) { tempData = new Object[1][OFFENE_ANZAHL_SPALTEN]; String sFirma = kundeDto.getPartnerDto().getCName1nachnamefirmazeile1(); tempData[row][OFFENE_FELD_FIRMA] = sFirma; tempData[row][OFFENE_FELD_DEBITORENNR] = kundeDto.getIidDebitorenkonto() != null ? getFinanzFac().kontoFindByPrimaryKey(kundeDto.getIidDebitorenkonto()).getCNr() : null; } tempData[0][OFFENE_SUBREPORT_OFFENE_BUCHUNGEN] = FinanzSubreportGenerator .createBuchungsdetailSubreport(bdList, true); } } while (resultListIterator.hasNext()) { FLRRechnungReport re = (FLRRechnungReport) resultListIterator.next(); RechnungDto reDto = getRechnungFac().rechnungFindByPrimaryKey(re.getI_id()); // Kunde oder Statistikadresse? final Integer kundeIId, kundeIIdStatistik; if (krit.getBVerwendeStatistikAdresse()) { kundeIId = reDto.getKundeIIdStatistikadresse(); } else { kundeIId = reDto.getKundeIId(); // Statistikdaten wenn nicht Kriterium Statistikadresse kundeIIdStatistik = reDto.getKundeIIdStatistikadresse(); KundeDto kundeDtoStatistik = getKundeFac().kundeFindByPrimaryKey(kundeIIdStatistik, theClientDto); String sFirmaStatistik = kundeDtoStatistik.getPartnerDto().getCName1nachnamefirmazeile1(); String sKundeLKZStatistik = null; if (kundeDtoStatistik.getPartnerDto().getLandplzortDto() != null) { sKundeLKZStatistik = kundeDtoStatistik.getPartnerDto().getLandplzortDto().getLandDto() .getCLkz(); } tempData[row][OFFENE_FELD_FIRMA_STATISTIK] = sFirmaStatistik; tempData[row][OFFENE_FELD_FIRMA_LKZ_STATISTIK] = sKundeLKZStatistik; } if (kundeDto == null || kundeDto.getIId() != kundeIId) { kundeDto = getKundeFac().kundeFindByPrimaryKey(kundeIId, theClientDto); } String sFirma = kundeDto.getPartnerDto().getCName1nachnamefirmazeile1(); String sKundeLKZ = null; if (kundeDto.getPartnerDto().getLandplzortDto() != null) { sKundeLKZ = kundeDto.getPartnerDto().getLandplzortDto().getLandDto().getCLkz(); } tempData[row][OFFENE_FELD_RECHNUNGART] = re.getFlrrechnungart().getRechnungtyp_c_nr(); tempData[row][OFFENE_FELD_RECHNUNGSNUMMER] = reDto.getCNr(); tempData[row][OFFENE_FELD_FIRMA] = sFirma; tempData[row][OFFENE_FELD_FIRMA_LKZ] = sKundeLKZ; tempData[row][OFFENE_FELD_RECHNUNGSDATUM] = re.getD_belegdatum(); tempData[row][OFFENE_FELD_KURS] = re.getN_kurs(); tempData[row][OFFENE_FELD_WAEHRUNG] = re.getWaehrung_c_nr(); tempData[row][OFFENE_FELD_DEBITORENNR] = kundeDto.getIidDebitorenkonto() != null ? getFinanzFac().kontoFindByPrimaryKey(kundeDto.getIidDebitorenkonto()).getCNr() : null; // Vertreter if (re.getFlrvertreter() != null) { if (re.getFlrvertreter().getFlrpartner().getC_name2vornamefirmazeile2() != null) { tempData[row][OFFENE_FELD_VERTRETER] = re.getFlrvertreter().getFlrpartner() .getC_name1nachnamefirmazeile1() + " " + re.getFlrvertreter().getFlrpartner().getC_name2vornamefirmazeile2(); } else { tempData[row][OFFENE_FELD_VERTRETER] = re.getFlrvertreter().getFlrpartner() .getC_name1nachnamefirmazeile1(); } } // datum der letzten zahlung bis zum stichtag ermitteln RechnungzahlungDto[] zahlungen = getRechnungFac().zahlungFindByRechnungIId(re.getI_id()); java.sql.Date dZahldatum = null; for (int i = 0; i < zahlungen.length; i++) { if ((dZahldatum == null || zahlungen[i].getDZahldatum().after(dZahldatum)) && !zahlungen[i].getDZahldatum().after(krit.getTStichtag())) { dZahldatum = new Date(zahlungen[i].getDZahldatum().getTime()); } } // Zahlungsbetrag bis zum Stichtag ermitteln BigDecimal bdBezahlt = new BigDecimal(0); for (int i = 0; i < zahlungen.length; i++) { if (!zahlungen[i].getDZahldatum().after(krit.getTStichtag())) { bdBezahlt = bdBezahlt.add(zahlungen[i].getNBetrag()); } } if (reDto.getKostenstelleIId() != null) { KostenstelleDto kstDto = getSystemFac() .kostenstelleFindByPrimaryKey(reDto.getKostenstelleIId()); tempData[row][OFFENE_FELD_KOSTENSTELLE] = kstDto.getCNr(); } if (reDto.getNWert() == null) { EJBExceptionLP ex = new EJBExceptionLP(EJBExceptionLP.FEHLER_RECHNUNG_HAT_KEINEN_WERT, ""); ArrayList<Object> alInfo = new ArrayList<Object>(); alInfo.add("ID: " + reDto.getIId()); alInfo.add("Nr: " + reDto.getCNr()); ex.setAlInfoForTheClient(alInfo); throw ex; } BigDecimal bdWertBrutto = reDto.getNWert().add(reDto.getNWertust()); BigDecimal bdWertNetto = reDto.getNWert(); BigDecimal bdWertBruttoFW = reDto.getNWertfw().add(reDto.getNWertustfw()); BigDecimal bdWertNettoFW = reDto.getNWertfw(); BigDecimal bdBezahltUst = getRechnungFac().getBereitsBezahltWertVonRechnungUst(reDto.getIId(), null, krit.getTStichtag()); BigDecimal bdBezahltNetto = getRechnungFac().getBereitsBezahltWertVonRechnung(reDto.getIId(), null, krit.getTStichtag()); BigDecimal bdBezahltUstFw = getRechnungFac() .getBereitsBezahltWertVonRechnungUstFw(reDto.getIId(), null, krit.getTStichtag()); BigDecimal bdBezahltNettoFw = getRechnungFac() .getBereitsBezahltWertVonRechnungFw(reDto.getIId(), null, krit.getTStichtag()); BigDecimal bdNettoOffenFw = reDto.getNWertfw().subtract(bdBezahltNettoFw); BigDecimal bdUstOffenFw = reDto.getNWertustfw().subtract(bdBezahltUstFw); BigDecimal bdNettoOffenMandWhg = getLocaleFac().rechneUmInAndereWaehrungZuDatum(bdNettoOffenFw, reDto.getWaehrungCNr(), theClientDto.getSMandantenwaehrung(), krit.getTStichtag(), theClientDto); BigDecimal bdUstOffenMandWhg = getLocaleFac().rechneUmInAndereWaehrungZuDatum(bdUstOffenFw, reDto.getWaehrungCNr(), theClientDto.getSMandantenwaehrung(), krit.getTStichtag(), theClientDto); BigDecimal bdUstAnzahlungMandWhg = new BigDecimal(0); BigDecimal bdNettoAnzahlungMandWhg = new BigDecimal(0); BigDecimal bdUstAnzahlungFW = new BigDecimal(0); BigDecimal bdNettoAnzahlungFW = new BigDecimal(0); if (reDto.getAuftragIId() != null && reDto.getRechnungartCNr().equals(RechnungFac.RECHNUNGART_SCHLUSSZAHLUNG)) { bdNettoAnzahlungMandWhg = getLocaleFac().rechneUmInAndereWaehrungZuDatum( getRechnungFac().getAnzahlungenZuSchlussrechnungFw(reDto.getIId()), reDto.getWaehrungCNr(), theClientDto.getSMandantenwaehrung(), krit.getTStichtag(), theClientDto); bdUstAnzahlungMandWhg = getLocaleFac().rechneUmInAndereWaehrungZuDatum( getRechnungFac().getAnzahlungenZuSchlussrechnungUstFw(reDto.getIId()), reDto.getWaehrungCNr(), theClientDto.getSMandantenwaehrung(), krit.getTStichtag(), theClientDto); } tempData[row][OFFENE_FELD_WERT_BRUTTO_ANZAHLUNGEN] = bdNettoAnzahlungMandWhg .add(bdUstAnzahlungMandWhg); tempData[row][OFFENE_FELD_WERT_NETTO_ANZAHLUNGEN] = bdNettoAnzahlungMandWhg; tempData[row][OFFENE_FELD_WERT_BRUTTO_ANZAHLUNGEN_FW] = bdNettoAnzahlungFW .add(bdUstAnzahlungFW); tempData[row][OFFENE_FELD_WERT_NETTO_ANZAHLUNGEN_FW] = bdNettoAnzahlungFW; // SP554 bdNettoOffenMandWhg = bdNettoOffenMandWhg.subtract(bdNettoAnzahlungMandWhg); bdUstOffenMandWhg = bdUstOffenMandWhg.subtract(bdUstAnzahlungMandWhg); if (re.getFlrrechnungart().getRechnungtyp_c_nr().equals(RechnungFac.RECHNUNGTYP_RECHNUNG)) { tempData[row][OFFENE_FELD_WERT_BRUTTO] = bdWertBrutto; tempData[row][OFFENE_FELD_WERT_NETTO] = bdWertNetto; tempData[row][OFFENE_FELD_WERT_BRUTTO_OFFEN] = bdNettoOffenMandWhg.add(bdUstOffenMandWhg); tempData[row][OFFENE_FELD_WERT_NETTO_OFFEN] = bdNettoOffenMandWhg; // FW tempData[row][OFFENE_FELD_WERT_BRUTTO_FW] = bdWertBruttoFW; tempData[row][OFFENE_FELD_WERT_NETTO_FW] = bdWertNettoFW; tempData[row][OFFENE_FELD_WERT_BRUTTO_OFFEN_FW] = bdNettoOffenFw.add(bdUstOffenFw); tempData[row][OFFENE_FELD_WERT_NETTO_OFFEN_FW] = bdNettoOffenFw; } else if (re.getFlrrechnungart().getRechnungtyp_c_nr() .equals(RechnungFac.RECHNUNGTYP_GUTSCHRIFT)) { tempData[row][OFFENE_FELD_WERT_BRUTTO] = bdWertBrutto.negate(); tempData[row][OFFENE_FELD_WERT_NETTO] = bdWertNetto.negate(); tempData[row][OFFENE_FELD_WERT_BRUTTO_OFFEN] = bdNettoOffenMandWhg.add(bdUstOffenMandWhg) .negate(); tempData[row][OFFENE_FELD_WERT_NETTO_OFFEN] = bdNettoOffenMandWhg.negate(); // FW tempData[row][OFFENE_FELD_WERT_BRUTTO_FW] = bdWertBruttoFW.negate(); tempData[row][OFFENE_FELD_WERT_NETTO_FW] = bdWertNettoFW.negate(); tempData[row][OFFENE_FELD_WERT_BRUTTO_OFFEN_FW] = bdNettoOffenFw.add(bdUstOffenFw).negate(); tempData[row][OFFENE_FELD_WERT_NETTO_OFFEN_FW] = bdNettoOffenFw.negate(); } tempData[row][OFFENE_FELD_MAHNDATUM] = getMahnwesenFac() .getAktuellesMahndatumEinerRechnung(reDto.getIId(), theClientDto); tempData[row][OFFENE_FELD_MAHNSTUFE] = getMahnwesenFac() .getAktuelleMahnstufeEinerRechnung(reDto.getIId(), theClientDto); tempData[row][OFFENE_FELD_MAHNSPERRE] = reDto.getTMahnsperrebis(); // Faelligkeitsdatum // java.sql.Date dFaellig; // if (reDto.getZahlungszielIId() != null) { // dFaellig = // getMandantFac().berechneZielDatumFuerBelegdatum(reDto // .getTBelegdatum(), // reDto.getZahlungszielIId(), theClientDto); // } // else { // dFaellig = new // java.sql.Date(reDto.getTBelegdatum().getTime()); // } if (re.getT_faelligkeit() != null) { tempData[row][OFFENE_FELD_FAELLIGKEITSDATUM] = new java.util.Date( re.getT_faelligkeit().getTime()); } else { throw new EJBExceptionLP(EJBExceptionLP.FEHLER_RECHNUNG_FAELLIGKEIT_NICHT_BERECHENBAR, new Exception("Faelligkeit nicht berechenbar")); } // Differenz in Tagen: Stichtag - Faelligkeitsdatum tempData[row][OFFENE_FELD_TAGE_BIS_FAELLIGKEITSDATUM] = Helper .getDifferenzInTagen(krit.getTStichtag(), re.getT_faelligkeit()); row++; } dataList.addAll(Arrays.asList(tempData)); } data = dataList.toArray(new Object[0][]); // Waehrung mapParameter.put(LPReport.P_WAEHRUNG, mandantDto.getWaehrungCNr()); mapParameter.put("P_STICHTAG", Helper.formatDatum(krit.getTStichtag(), theClientDto.getLocUi())); StringBuffer sSortierung = new StringBuffer(); if (krit.bSortiereNachKostenstelle) { sSortierung.append( getTextRespectUISpr("lp.kostenstelle", theClientDto.getMandant(), theClientDto.getLocUi())); sSortierung.append(", "); } if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER) { if (krit.getBVerwendeStatistikAdresse()) { sSortierung.append(getTextRespectUISpr("rech.statistikadresse", theClientDto.getMandant(), theClientDto.getLocUi())); } else { sSortierung.append( getTextRespectUISpr("lp.kunde", theClientDto.getMandant(), theClientDto.getLocUi())); } } else if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_BELEGNUMMER) { sSortierung.append(getTextRespectUISpr("rechnung.rechnungsnummer", theClientDto.getMandant(), theClientDto.getLocUi())); } else if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_VERTRETER) { sSortierung.append( getTextRespectUISpr("lp.vertreter", theClientDto.getMandant(), theClientDto.getLocUi())); } else if (krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_FAELLIGKEIT) { sSortierung.append( getTextRespectUISpr("lp.faelligkeit", theClientDto.getMandant(), theClientDto.getLocUi())); } mapParameter.put(LPReport.P_SORTIERUNG, sSortierung.toString()); mapParameter.put(LPReport.P_SORTIERENACHKOSTENSTELLE, new Boolean(krit.bSortiereNachKostenstelle)); mapParameter.put(LPReport.P_SORTIERENACHKUNDE, new Boolean(krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER)); mapParameter.put(LPReport.P_SORTIERENACHVERTRETER, new Boolean(krit.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_VERTRETER)); String sZessionstext = null; sZessionstext = getParameterFac().parametermandantFindByPrimaryKey(ParameterFac.PARAMETER_ZESSIONSTEXT, ParameterFac.KATEGORIE_ALLGEMEIN, theClientDto.getMandant()).getCWert(); if (sZessionstext != null) { mapParameter.put("P_ZESSIONSTEXT", sZessionstext); } /** * @todo zinsen PJ 4538 */ initJRDS(mapParameter, RechnungReportFac.REPORT_MODUL, RechnungReportFac.REPORT_RECHNUNGEN_OFFENE, theClientDto.getMandant(), theClientDto.getLocUi(), theClientDto); return getReportPrint(); // } // catch (FinderException ex) { // { // @ToDo FinderException // throw new EJBExceptionLP(EJBExceptionLP.FEHLER_BEIM_DRUCKEN, // null); // } // throw new EJBExceptionLP(EJBExceptionLP.FEHLER_BEIM_DRUCKEN, ex); } catch (RemoteException ex) { throwEJBExceptionLPRespectOld(ex); return null; } finally { try { session.close(); } catch (HibernateException he) { throw new EJBExceptionLP(EJBExceptionLP.FEHLER, he); } } }
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 ww.j av 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) {//from w w w. j a v a 2s . 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 w ww .j a va 2 s . c o 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.modules.sys.web.AviationBuyersController.java
License:Apache License
/** * combogrid//from w w w . j ava2s . c o m * * @return * @throws Exception */ @RequestMapping(value = { "combogrid" }) @ResponseBody public Datagrid<AviationBuyers> combogrid(@RequestParam(value = "ids", required = false) List<Long> ids, String loginNameOrName, Integer rows) throws Exception { Criterion statusCriterion = Restrictions.eq("status", StatusState.normal.getValue()); Criterion[] criterions = new Criterion[0]; criterions = (Criterion[]) ArrayUtils.add(criterions, 0, statusCriterion); Criterion criterion = null; if (Collections3.isNotEmpty(ids)) { //in? Criterion inCriterion = Restrictions.in("id", ids); if (StringUtils.isNotBlank(loginNameOrName)) { Criterion loginNameCriterion = Restrictions.like("loginName", loginNameOrName, MatchMode.ANYWHERE); Criterion nameCriterion = Restrictions.like("name", loginNameOrName, MatchMode.ANYWHERE); Criterion criterion1 = Restrictions.or(loginNameCriterion, nameCriterion); criterion = Restrictions.or(inCriterion, criterion1); } else { criterion = inCriterion; } //?? criterions = (Criterion[]) ArrayUtils.add(criterions, 0, criterion); } else { if (StringUtils.isNotBlank(loginNameOrName)) { Criterion loginNameCriterion = Restrictions.like("loginName", loginNameOrName, MatchMode.ANYWHERE); Criterion nameCriterion = Restrictions.like("name", loginNameOrName, MatchMode.ANYWHERE); criterion = Restrictions.or(loginNameCriterion, nameCriterion); //?? criterions = (Criterion[]) ArrayUtils.add(criterions, 0, criterion); } } // Page<AviationBuyers> p = new Page<AviationBuyers>(rows);// p = aviationBuyersManager.findByCriteria(p, criterions); Datagrid<AviationBuyers> dg = new Datagrid<AviationBuyers>(p.getTotalCount(), p.getResult()); return dg; }
From source file:com.lushapp.modules.sys.web.AviationOrderController.java
License:Apache License
/** * combogrid//from ww w . j a va2s . c o m * * @return * @throws Exception */ @RequestMapping(value = { "combogrid" }) @ResponseBody public Datagrid<AviationOrder> combogrid(@RequestParam(value = "ids", required = false) List<Long> ids, String loginNameOrName, Integer rows) throws Exception { Criterion statusCriterion = Restrictions.eq("status", StatusState.normal.getValue()); Criterion[] criterions = new Criterion[0]; criterions = (Criterion[]) ArrayUtils.add(criterions, 0, statusCriterion); Criterion criterion = null; if (Collections3.isNotEmpty(ids)) { //in? Criterion inCriterion = Restrictions.in("id", ids); if (StringUtils.isNotBlank(loginNameOrName)) { Criterion loginNameCriterion = Restrictions.like("loginName", loginNameOrName, MatchMode.ANYWHERE); Criterion nameCriterion = Restrictions.like("name", loginNameOrName, MatchMode.ANYWHERE); Criterion criterion1 = Restrictions.or(loginNameCriterion, nameCriterion); criterion = Restrictions.or(inCriterion, criterion1); } else { criterion = inCriterion; } //?? criterions = (Criterion[]) ArrayUtils.add(criterions, 0, criterion); } else { if (StringUtils.isNotBlank(loginNameOrName)) { Criterion loginNameCriterion = Restrictions.like("loginName", loginNameOrName, MatchMode.ANYWHERE); Criterion nameCriterion = Restrictions.like("name", loginNameOrName, MatchMode.ANYWHERE); criterion = Restrictions.or(loginNameCriterion, nameCriterion); //?? criterions = (Criterion[]) ArrayUtils.add(criterions, 0, criterion); } } // Page<AviationOrder> p = new Page<AviationOrder>(rows);// p = aviationOrderManager.findByCriteria(p, criterions); Datagrid<AviationOrder> dg = new Datagrid<AviationOrder>(p.getTotalCount(), p.getResult()); return dg; }
From source file:com.lushapp.modules.sys.web.AviationSuppliersController.java
License:Apache License
/** * combogrid// www . j ava 2 s .c o m * * @return * @throws Exception */ @RequestMapping(value = { "combogrid" }) @ResponseBody public Datagrid<AviationSuppliers> combogrid(@RequestParam(value = "ids", required = false) List<Long> ids, String loginNameOrName, Integer rows) throws Exception { Criterion statusCriterion = Restrictions.eq("status", StatusState.normal.getValue()); Criterion[] criterions = new Criterion[0]; criterions = (Criterion[]) ArrayUtils.add(criterions, 0, statusCriterion); Criterion criterion = null; if (Collections3.isNotEmpty(ids)) { //in? Criterion inCriterion = Restrictions.in("id", ids); if (StringUtils.isNotBlank(loginNameOrName)) { Criterion loginNameCriterion = Restrictions.like("loginName", loginNameOrName, MatchMode.ANYWHERE); Criterion nameCriterion = Restrictions.like("name", loginNameOrName, MatchMode.ANYWHERE); Criterion criterion1 = Restrictions.or(loginNameCriterion, nameCriterion); criterion = Restrictions.or(inCriterion, criterion1); } else { criterion = inCriterion; } //?? criterions = (Criterion[]) ArrayUtils.add(criterions, 0, criterion); } else { if (StringUtils.isNotBlank(loginNameOrName)) { Criterion loginNameCriterion = Restrictions.like("loginName", loginNameOrName, MatchMode.ANYWHERE); Criterion nameCriterion = Restrictions.like("name", loginNameOrName, MatchMode.ANYWHERE); criterion = Restrictions.or(loginNameCriterion, nameCriterion); //?? criterions = (Criterion[]) ArrayUtils.add(criterions, 0, criterion); } } // Page<AviationSuppliers> p = new Page<AviationSuppliers>(rows);// p = aviationSuppliersManager.findByCriteria(p, criterions); Datagrid<AviationSuppliers> dg = new Datagrid<AviationSuppliers>(p.getTotalCount(), p.getResult()); return dg; }
From source file:com.lushapp.modules.sys.web.OrganController.java
License:Apache License
/** * combogrid//w ww. j a va2s.c om * * @return * @throws Exception */ @RequestMapping(value = { "combogrid" }) @ResponseBody public Datagrid<Organ> combogrid(String nameOrCode, @RequestParam(value = "ids", required = false) List<Long> ids, Integer rows) throws Exception { Criterion statusCriterion = Restrictions.eq("status", StatusState.normal.getValue()); Criterion[] criterions = new Criterion[0]; criterions = (Criterion[]) ArrayUtils.add(criterions, 0, statusCriterion); Criterion criterion = null; if (Collections3.isNotEmpty(ids)) { //in? Criterion inCriterion = Restrictions.in("id", ids); if (StringUtils.isNotBlank(nameOrCode)) { Criterion nameCriterion = Restrictions.like("name", nameOrCode, MatchMode.ANYWHERE); Criterion codeCriterion = Restrictions.like("code", nameOrCode, MatchMode.ANYWHERE); Criterion criterion1 = Restrictions.or(nameCriterion, codeCriterion); criterion = Restrictions.or(inCriterion, criterion1); } else { criterion = inCriterion; } //?? criterions = (Criterion[]) ArrayUtils.add(criterions, 0, criterion); } else { if (StringUtils.isNotBlank(nameOrCode)) { Criterion nameCriterion = Restrictions.like("name", nameOrCode, MatchMode.ANYWHERE); Criterion codeCriterion = Restrictions.like("code", nameOrCode, MatchMode.ANYWHERE); criterion = Restrictions.or(nameCriterion, codeCriterion); //?? criterions = (Criterion[]) ArrayUtils.add(criterions, 0, criterion); } } // Page<Organ> p = new Page<Organ>(rows);// p = organManager.findByCriteria(p, criterions); Datagrid<Organ> dg = new Datagrid<Organ>(p.getTotalCount(), p.getResult()); return dg; }