Example usage for org.hibernate.criterion Restrictions between

List of usage examples for org.hibernate.criterion Restrictions between

Introduction

In this page you can find the example usage for org.hibernate.criterion Restrictions between.

Prototype

public static Criterion between(String propertyName, Object low, Object high) 

Source Link

Document

Apply a "between" constraint to the named property

Usage

From source file:com.lp.server.angebot.ejbfac.AngebotReportFacBean.java

License:Open Source License

/**
 * reportflr: 2 Diese Methode liefert eine Liste von allen
 * Angebotspositionen eines Mandanten, die nach den eingegebenen Kriterien
 * des Benutzers zusammengestellt wird. <br>
 * Achtung: Hibernate verwendet lazy initialization, d.h. der Zugriff auf
 * Collections muss innerhalb der Session erfolgen.
 * /*from  w w  w .  j a  va2s  .  c o m*/
 * @param kritDtoI
 *            die Filter- und Sortierkriterien
 * @param cAktuellerReport
 *            wird fuer alle und offene Angebote verwendet
 * @param theClientDto
 *            der aktuelle Benutzer
 * @return ReportAngebotpositionDto[] die Liste aller Positionen.
 * @throws EJBExceptionLP
 *             Ausnahme
 */
private ReportAngebotpositionJournalDto[] getListeAngebotpositionenJournal(
        ReportAngebotJournalKriterienDto kritDtoI, String erledigungsgrundCNr, String cAktuellerReport,
        TheClientDto theClientDto) throws EJBExceptionLP {

    ReportAngebotpositionJournalDto[] aResult = null;
    Session session = null;
    // es gilt das Locale des Benutzers
    Locale locDruck = theClientDto.getLocUi();
    try {
        SessionFactory factory = FLRSessionFactory.getFactory();
        session = factory.openSession();

        // Criteria duerfen keine Texts oder Blobs enthalten!

        // Criteria anlegen fuer alle referenzierten Objekte anlegen
        Criteria crit = session.createCriteria(FLRAngebotpositionReport.class);
        Criteria critAngebot = crit.createCriteria(AngebotpositionFac.FLR_ANGEBOTPOSITION_FLRANGEBOT);

        // Einschraenken nach Mandant
        critAngebot.add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant()));

        // Einschraenken nach Status
        if (cAktuellerReport.equals(AngebotReportFac.REPORT_ANGEBOT_JOURNAL_ALLE)) {
            if (kritDtoI.getBNurErledigteAngebote()) {
                critAngebot.add(Restrictions.eq(AngebotFac.FLR_ANGEBOT_ANGEBOTSTATUS_C_NR,
                        AngebotServiceFac.ANGEBOTSTATUS_ERLEDIGT));
                if (erledigungsgrundCNr != null) {
                    critAngebot.add(Restrictions.eq(AngebotFac.FLR_ANGEBOT_ANGEBOTERLEDIGUNGSGRUND_C_NR,
                            erledigungsgrundCNr));
                }
            } else {
                // PJ 07/0011040
                /*
                 * critAngebot.add(Restrictions.ne(
                 * AngebotFac.FLR_ANGEBOT_ANGEBOTSTATUS_C_NR,
                 * AngebotServiceFac.ANGEBOTSTATUS_ANGELEGT));
                 */
                critAngebot.add(Restrictions.ne(AngebotFac.FLR_ANGEBOT_ANGEBOTSTATUS_C_NR,
                        AngebotServiceFac.ANGEBOTSTATUS_STORNIERT));
            }
        } else if (cAktuellerReport.equals(AngebotReportFac.REPORT_ANGEBOT_JOURNAL_OFFENE)) {
            critAngebot.add(Restrictions.eq(AngebotFac.FLR_ANGEBOT_ANGEBOTSTATUS_C_NR,
                    AngebotServiceFac.ANGEBOTSTATUS_OFFEN));
        }

        // UW 22.03.06 alle nicht alternativen Positionen mit positiver
        // Menge
        crit.add(Restrictions.isNotNull(AngebotpositionFac.FLR_ANGEBOTPOSITION_N_MENGE));
        crit.add(Restrictions.gt(AngebotpositionFac.FLR_ANGEBOTPOSITION_N_MENGE, new BigDecimal(0)));
        crit.add(Restrictions.eq(AngebotpositionFac.FLR_ANGEBOTPOSITION_B_ALTERNATIVE, new Short((short) 0)));

        // Einschraenkung nach einer bestimmten Kostenstelle
        if (kritDtoI.kostenstelleIId != null) {
            critAngebot
                    .add(Restrictions.eq(AngebotFac.FLR_ANGEBOT_KOSTENSTELLE_I_ID, kritDtoI.kostenstelleIId));
        }

        // Einschraenkung nach einem bestimmten Kunden
        if (kritDtoI.kundeIId != null) {
            critAngebot
                    .add(Restrictions.eq(AngebotFac.FLR_ANGEBOT_KUNDE_I_ID_ANGEBOTSADRESSE, kritDtoI.kundeIId));
        }

        // Einschraenkung nach einem bestimmten Vertreter
        if (kritDtoI.vertreterIId != null) {
            critAngebot.add(Restrictions.eq(AngebotFac.FLR_ANGEBOT_VERTRETER_I_ID, kritDtoI.vertreterIId));
        }
        /*
         * // Belegdatum von bis: flrangebotposition >
         * flrangebot.t_belegdatum if (kritDtoI.dVon != null) {
         * critAngebot.add(Restrictions.ge(
         * AngebotFac.FLR_ANGEBOT_T_BELEGDATUM, kritDtoI.dVon)); }
         * 
         * if (kritDtoI.dBis != null) { critAngebot.add(Restrictions.le(
         * AngebotFac.FLR_ANGEBOT_T_BELEGDATUM, kritDtoI.dBis)); }
         */
        if (kritDtoI.dVon != null && kritDtoI.dBis != null) {
            Calendar cal = Calendar.getInstance();
            Timestamp von = null;
            cal.setTimeInMillis(kritDtoI.dVon.getTime());
            cal.set(Calendar.MINUTE, 0);
            cal.set(Calendar.SECOND, 0);
            cal.set(Calendar.HOUR_OF_DAY, 0);
            cal.set(Calendar.MILLISECOND, 0);
            von = new Timestamp(cal.getTimeInMillis());

            Timestamp bis = null;
            cal.setTimeInMillis(kritDtoI.dBis.getTime());
            cal.set(Calendar.MINUTE, 59);
            cal.set(Calendar.SECOND, 59);
            cal.set(Calendar.HOUR_OF_DAY, 23);
            bis = new Timestamp(cal.getTimeInMillis());
            critAngebot.add(Restrictions.between(AngebotFac.FLR_ANGEBOT_T_BELEGDATUM, von, bis));
        }

        // Einschraenkung nach Belegnummer von - bis
        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 (kritDtoI.sBelegnummerVon != null) {
            critAngebot.add(Restrictions.ge("c_nr", HelperServer.getBelegnummernFilterForHibernateCriterias(f,
                    iGeschaeftsjahr, sMandantKuerzel, kritDtoI.sBelegnummerVon)));
        }

        if (kritDtoI.sBelegnummerBis != null) {
            critAngebot.add(Restrictions.le("c_nr", HelperServer.getBelegnummernFilterForHibernateCriterias(f,
                    iGeschaeftsjahr, sMandantKuerzel, kritDtoI.sBelegnummerBis)));
        }

        // Sortierung nach Kostenstelle ist immer die erste Sortierung
        if (kritDtoI.bSortiereNachKostenstelle) {
            critAngebot.createCriteria(AngebotFac.FLR_ANGEBOT_FLRKOSTENSTELLE).addOrder(Order.asc("c_nr"));
        }

        // Sortierung nach Kunde, eventuell innerhalb der Kostenstelle
        if (kritDtoI.iSortierung == ReportJournalKriterienDto.KRIT_SORT_NACH_PARTNER) {
            critAngebot.createCriteria(AngebotFac.FLR_ANGEBOT_FLRKUNDE).createCriteria(KundeFac.FLR_PARTNER)
                    .addOrder(Order.asc(PartnerFac.FLR_PARTNER_NAME1NACHNAMEFIRMAZEILE1));
        }

        // Sortierung nach Vertreter, eventuell innerhalb der Kostenstelle
        if (kritDtoI.iSortierung == ReportAngebotJournalKriterienDto.KRIT_SORT_NACH_VERTRETER) {
            critAngebot.createCriteria(AngebotFac.FLR_ANGEBOT_FLRVERTRETER)
                    .addOrder(Order.asc(PersonalFac.FLR_PERSONAL_C_KURZZEICHEN));
        }

        if (cAktuellerReport.equals(AngebotReportFac.REPORT_ANGEBOT_JOURNAL_ALLE)) {
            if (kritDtoI.getBNurErledigteAngebote()) {
                critAngebot.addOrder(Order.asc(AngebotFac.FLR_ANGEBOT_ANGEBOTERLEDIGUNGSGRUND_C_NR));
            } else {
                critAngebot.addOrder(Order.asc("c_nr"));
            }
        } else {
            // es wird in jedem Fall nach der Belegnummer sortiert
            critAngebot.addOrder(Order.asc("c_nr"));
        }
        List<?> list = crit.list();
        aResult = new ReportAngebotpositionJournalDto[list.size()];
        int iIndex = 0;
        Iterator<?> it = list.iterator();
        ReportAngebotpositionJournalDto reportDto = null;

        while (it.hasNext()) {
            FLRAngebotpositionReport flrangebotposition = (FLRAngebotpositionReport) it.next();
            FLRAngebot flrangebot = flrangebotposition.getFlrangebot();
            FLRArtikel flrartikel = flrangebotposition.getFlrartikel();

            reportDto = new ReportAngebotpositionJournalDto();
            reportDto.setIId(flrangebot.getI_id());
            reportDto.setCNr(flrangebot.getC_nr());

            if (flrangebot.getAngeboterledigungsgrund_c_nr() != null) {
                AngeboterledigungsgrundDto angeboterledigungsgrundDto = getAngebotServiceFac()
                        .angeboterledigungsgrundFindByPrimaryKey(flrangebot.getAngeboterledigungsgrund_c_nr(),
                                theClientDto);
                reportDto.setAngeboterledigungsgrundCNr(angeboterledigungsgrundDto.getBezeichnung());
            }
            reportDto.setKundeCName1(flrangebot.getFlrkunde().getFlrpartner().getC_name1nachnamefirmazeile1());
            reportDto.setKundeCName2(flrangebot.getFlrkunde().getFlrpartner().getC_name2vornamefirmazeile2());
            reportDto.setKundeCName3(flrangebot.getFlrkunde().getFlrpartner().getC_name3vorname2abteilung());
            reportDto.setKundeStrasse(flrangebot.getFlrkunde().getFlrpartner().getC_strasse());
            if (flrangebot.getFlrkunde().getFlrpartner().getFlrlandplzort() != null) {
                reportDto.setKundePlz(flrangebot.getFlrkunde().getFlrpartner().getFlrlandplzort().getC_plz());
                reportDto.setKundeLkz(
                        flrangebot.getFlrkunde().getFlrpartner().getFlrlandplzort().getFlrland().getC_lkz());
                reportDto.setKundeOrt(
                        flrangebot.getFlrkunde().getFlrpartner().getFlrlandplzort().getFlrort().getC_name());
            }

            reportDto.setKundeEmail(flrangebot.getFlrkunde().getFlrpartner().getC_email());

            reportDto.setKundeFax(flrangebot.getFlrkunde().getFlrpartner().getC_fax());

            reportDto.setKundeTelefon(flrangebot.getFlrkunde().getFlrpartner().getC_telefon());

            AngebotDto angebotDto = getAngebotFac().angebotFindByPrimaryKey(flrangebot.getI_id(), theClientDto);
            if (angebotDto.getAnsprechpartnerIIdKunde() != null) {
                AnsprechpartnerDto ansprechpartnerDto = getAnsprechpartnerFac()
                        .ansprechpartnerFindByPrimaryKey(angebotDto.getAnsprechpartnerIIdKunde(), theClientDto);

                reportDto.setAnsprechpartnerNachname(
                        ansprechpartnerDto.getPartnerDto().getCName1nachnamefirmazeile1());
                reportDto.setAnsprechpartnerVorname(
                        ansprechpartnerDto.getPartnerDto().getCName2vornamefirmazeile2());
                reportDto.setAnsprechpartnerAnrede(ansprechpartnerDto.getPartnerDto().getAnredeCNr());
                reportDto.setAnsprechpartnerTitel(ansprechpartnerDto.getPartnerDto().getCTitel());

                reportDto.setAnsprechpartnerFax(ansprechpartnerDto.getCDirektfax());

                reportDto.setAnsprechpartnerFaxDw(ansprechpartnerDto.getCFax());

                reportDto.setAnsprechpartnerTelefon(ansprechpartnerDto.getCHandy());

                reportDto.setAnsprechpartnerTelefonDw(ansprechpartnerDto.getCTelefon());

                reportDto.setAnsprechpartnerEmail(ansprechpartnerDto.getCEmail());

            }

            reportDto.setKostenstelleCNr(flrangebot.getFlrkostenstelle().getC_nr());
            reportDto.setVertreterCName1(
                    getPersonalFac().personalFindByPrimaryKey(flrangebot.getVertreter_i_id(), theClientDto)
                            .getPartnerDto().formatFixName2Name1());
            reportDto.setProjektBez(flrangebot.getC_bez());
            reportDto.setRealisierungstermin(
                    Helper.formatDatum(flrangebot.getT_realisierungstermin(), theClientDto.getLocUi()));

            if (flrangebot.getAngeboterledigungsgrund_c_nr() != null)
                if (flrangebot.getAngeboterledigungsgrund_c_nr()
                        .equals(AngebotServiceFac.ANGEBOTERLEDIGUNGSGRUND_AUFTRAGERHALTEN)) {
                    AuftragDto[] auftrag = getAuftragFac().auftragFindByAngebotIId(flrangebot.getI_id(),
                            theClientDto);
                    if (auftrag != null && auftrag.length > 0) {
                        reportDto.setErledigungsgrundABNr(auftrag[0].getCNr());
                    }
                }

            // UW 08.03.06 Es kann sich um eine Ident, Handeingabe oder
            // AGStueckliste handeln
            String identCNr = null;
            String identCBez = null;

            if (flrangebotposition.getAngebotpositionart_c_nr()
                    .equals(AngebotServiceFac.ANGEBOTPOSITIONART_IDENT)) {
                identCNr = flrartikel.getC_nr();
                identCBez = getArtikelFac().formatArtikelbezeichnungEinzeiligOhneExc(flrartikel.getI_id(),
                        theClientDto.getLocUi());
            } else if (flrangebotposition.getAngebotpositionart_c_nr()
                    .equals(AngebotServiceFac.ANGEBOTPOSITIONART_AGSTUECKLISTE)) {
                identCBez = flrangebotposition.getFlragstkl().getC_bez();
            } else if (flrangebotposition.getAngebotpositionart_c_nr()
                    .equals(AngebotServiceFac.ANGEBOTPOSITIONART_HANDEINGABE)) {
                identCBez = getArtikelFac().formatArtikelbezeichnungEinzeiligOhneExc(flrartikel.getI_id(),
                        theClientDto.getLocUi());
            }

            reportDto.setArtikelCNr(identCNr);
            reportDto.setArtikelCBez(identCBez);

            reportDto.setNMenge(flrangebotposition.getN_menge());
            reportDto.setEinheitCNr(flrangebotposition.getEinheit_c_nr() == null ? ""
                    : flrangebotposition.getEinheit_c_nr().trim());
            reportDto.setDAuftragwahrscheinlichkeit(flrangebot.getF_auftragswahrscheinlichkeit());
            reportDto.setNWert(flrangebot.getN_gesamtangebotswertinangebotswaehrung());

            // Umrechnen in Mandantenwaehrung, Positionspreise sind in
            // Belegwaehrung abgelegt
            BigDecimal nPreisAmDruck = flrangebotposition
                    .getN_nettogesamtpreisplusversteckteraufschlagminusrabatte();

            nPreisAmDruck = getBetragMalWechselkurs(nPreisAmDruck, Helper.getKehrwert(new BigDecimal(
                    flrangebot.getF_wechselkursmandantwaehrungzuangebotswaehrung().doubleValue())));

            reportDto.setNPreis(nPreisAmDruck);

            aResult[iIndex] = reportDto;
            iIndex++;
        }
    } catch (Throwable t) {
        throw new EJBExceptionLP(EJBExceptionLP.FEHLER_FLR, new Exception(t));
    } finally {
        try {
            session.close();
        } catch (HibernateException he) {
            throw new EJBExceptionLP(EJBExceptionLP.FEHLER_HIBERNATE, he);
        }
    }

    return aResult;
}

From source file:com.lp.server.eingangsrechnung.ejbfac.EingangsrechnungFacBean.java

License:Open Source License

@SuppressWarnings("unchecked")
public List<Integer> eingangsrechnungzahlungIdsByMandantZahldatumVonBis(String mandantCNr, Date dVon,
        Date dBis) {//  w  w  w.  j av a2  s.c  om
    Session session = FLRSessionFactory.getFactory().openSession();
    Criteria crit = session.createCriteria(FLREingangsrechnungzahlung.class);
    crit.createAlias("flreingangsrechnung", "r");
    crit.add(Restrictions.eq("r.mandant_c_nr", mandantCNr));
    crit.add(Restrictions.between("t_zahldatum", dVon, dBis));
    List<FLREingangsrechnungzahlung> list = crit.list();
    List<Integer> ids = new ArrayList<Integer>();
    Iterator<FLREingangsrechnungzahlung> it = list.iterator();
    while (it.hasNext())
        ids.add(it.next().getI_id());
    session.close();
    return ids;
}

From source file:com.lp.server.finanz.ejbfac.FinanzReportFacBean.java

License:Open Source License

/**
 * Buchungsjournal drucken.//from   w ww. j a va 2  s . c  om
 * 
 * @param theClientDto
 *            String
 * @param buchungsjournalIId
 *            Integer
 * @return JasperPrint
 * @throws EJBExceptionLP
 */
public JasperPrintLP printBuchungsjournal(TheClientDto theClientDto, Integer buchungsjournalIId, Date dVon,
        Date dBis, boolean storniert, boolean bDatumsfilterIstBuchungsdatum, String text, String belegnummer,
        BigDecimal betrag) throws EJBExceptionLP {
    Session session = null;
    try {
        this.useCase = UC_BUCHUNGSJOURNAL;
        this.index = -1;

        Map<String, Object> mapParameter = new TreeMap<String, Object>();

        SessionFactory factory = FLRSessionFactory.getFactory();
        session = factory.openSession();
        Criteria c = session.createCriteria(FLRFinanzBuchungDetail.class);

        Timestamp help = new Timestamp(dVon.getTime());

        c.createAlias("flrbuchung", "s");

        String datumsfilter = "s.d_buchungsdatum";
        if (!bDatumsfilterIstBuchungsdatum) {
            datumsfilter = "t_anlegen";
        }
        c.add(Restrictions.ge(datumsfilter, Helper.cutTimestamp(help)));

        if (text != null) {
            c.add(Restrictions.ilike("s." + FinanzFac.FLR_BUCHUNG_C_TEXT, "%" + text + "%"));
            mapParameter.put("P_TEXT", text);

        }

        if (belegnummer != null) {

            String trennzeichen = getParameterFac().getMandantparameter(theClientDto.getMandant(),
                    ParameterFac.KATEGORIE_ALLGEMEIN, ParameterFac.PARAMETER_BELEGNUMMERNFORMAT_TRENNZEICHEN)
                    .getCWert();
            Integer stellenBelegnummer = new Integer(getParameterFac()
                    .getMandantparameter(theClientDto.getMandant(), ParameterFac.KATEGORIE_ALLGEMEIN,
                            ParameterFac.PARAMETER_BELEGNUMMERNFORMAT_STELLEN_BELEGNUMMER)
                    .getCWert());

            String sValue = belegnummer;
            sValue = sValue.replaceAll("%", "");

            sValue = Helper.fitString2LengthAlignRight(sValue, stellenBelegnummer, '0');

            sValue = "%" + trennzeichen + sValue;

            c.add(Restrictions.like("s." + FinanzFac.FLR_BUCHUNG_C_BELEGNUMMER, sValue));
        }

        if (betrag != null) {

            Integer toleranzBetragsuche = new Integer(getParameterFac()
                    .getMandantparameter(theClientDto.getMandant(), ParameterFac.KATEGORIE_FINANZ,
                            ParameterFac.PARAMETER_TOLERANZ_BETRAGSUCHE)
                    .getCWert());

            BigDecimal value1 = betrag.subtract(
                    new BigDecimal(betrag.doubleValue() * ((double) toleranzBetragsuche / (double) 100))).abs();
            BigDecimal value2 = betrag
                    .add(new BigDecimal(betrag.doubleValue() * ((double) toleranzBetragsuche / (double) 100)))
                    .abs();

            c.add(Restrictions.or(Restrictions.between(FinanzFac.FLR_BUCHUNGDETAIL_N_BETRAG, value1, value2),
                    Restrictions.between(FinanzFac.FLR_BUCHUNGDETAIL_N_BETRAG, value2.negate(),
                            value1.negate())));

            mapParameter.put("P_TOLERANZ_BETRAGSSUCHE", toleranzBetragsuche);
            mapParameter.put("P_BETRAG", betrag);

        }

        help = new Timestamp(dBis.getTime() + 24 * 3600000);

        c.add(Restrictions.lt(datumsfilter, Helper.cutTimestamp(help)));

        if (storniert != true) {
            c.add(Restrictions.isNull("s.t_storniert"));
        } else {
            // Skip
        }

        c.createAlias("s.flrkostenstelle", "k");
        c.add(Restrictions.eq("k.mandant_c_nr", theClientDto.getMandant()));

        List<?> list = c.list();
        data = new Object[list.size()][REPORT_BUCHUNGSJOURNAL_ANZAHL_SPALTEN];
        int i = 0;

        for (Iterator<?> iter = list.iterator(); iter.hasNext();) {
            FLRFinanzBuchungDetail b = (FLRFinanzBuchungDetail) iter.next();
            data[i][REPORT_BUCHUNGSJOURNAL_AUSZUG] = b.getI_auszug();
            data[i][REPORT_BUCHUNGSJOURNAL_BELEGNUMMER] = b.getFlrbuchung().getC_belegnummer();
            data[i][REPORT_BUCHUNGSJOURNAL_BUCHUNGSART] = b.getFlrbuchung().getBuchungsart_c_nr();
            data[i][REPORT_BUCHUNGSJOURNAL_BUCHUNGSDATUM] = b.getFlrbuchung().getD_buchungsdatum();
            if (b.getFlrgegenkonto() != null) {
                data[i][REPORT_BUCHUNGSJOURNAL_GEGENKONTONUMMER] = b.getFlrgegenkonto().getC_nr();
            }
            data[i][REPORT_BUCHUNGSJOURNAL_BETRAG] = b.getN_betrag();
            data[i][REPORT_BUCHUNGSJOURNAL_KONTONUMMER] = b.getFlrkonto().getC_nr();
            data[i][REPORT_BUCHUNGSJOURNAL_KOSTENSTELLENUMMER] = b.getFlrbuchung().getFlrkostenstelle()
                    .getC_nr();
            data[i][REPORT_BUCHUNGSJOURNAL_TEXT] = b.getFlrbuchung().getC_text();
            data[i][REPORT_BUCHUNGSJOURNAL_UST] = b.getN_ust();

            if (b.getFlrbuchung().getT_storniert() == null) {
                data[i][REPORT_BUCHUNGSJOURNAL_STORNIERT] = new Boolean(false);
            } else {
                data[i][REPORT_BUCHUNGSJOURNAL_STORNIERT] = new Boolean(true);
            }

            if (b.getBuchungdetailart_c_nr().equals("SOLL           ")) {
                data[i][REPORT_BUCHUNGSJOURNAL_SOLL] = b.getN_betrag();
                data[i][REPORT_BUCHUNGSJOURNAL_HABEN] = null;
            } else if (b.getBuchungdetailart_c_nr().equals("HABEN          ")) {
                data[i][REPORT_BUCHUNGSJOURNAL_HABEN] = b.getN_betrag();
                data[i][REPORT_BUCHUNGSJOURNAL_SOLL] = null;
            } else {
                data[i][REPORT_BUCHUNGSJOURNAL_SOLL] = null;
                data[i][REPORT_BUCHUNGSJOURNAL_HABEN] = null;
            }

            data[i][REPORT_BUCHUNGSJOURNAL_BUCHUNGSJOURNALDATUM] = b.getT_anlegen();

            data[i][REPORT_BUCHUNGSJOURNAL_WER] = getPersonalFac()
                    .personalFindByPrimaryKeySmall(b.getFlrbuchung().getPersonal_i_id_anlegen())
                    .getCKurzzeichen();

            i++;
        }
        MandantDto mandantDto = getMandantFac().mandantFindByPrimaryKey(theClientDto.getMandant(),
                theClientDto);

        mapParameter.put(LPReport.P_WAEHRUNG, mandantDto.getWaehrungCNr());
        mapParameter.put("P_VON", dVon);
        mapParameter.put("P_MITSTORNIERTEN", new Boolean(storniert));
        mapParameter.put("P_DATUMSFILTER_IST_BUCHUNGSDATUM", new Boolean(bDatumsfilterIstBuchungsdatum));
        mapParameter.put("P_BIS", dBis);
        initJRDS(mapParameter, FinanzReportFac.REPORT_MODUL, FinanzReportFac.REPORT_BUCHUNGSJOURNAL,
                theClientDto.getMandant(), theClientDto.getLocUi(), theClientDto);
        return getReportPrint();
    } catch (RemoteException ex) {
        throwEJBExceptionLPRespectOld(ex);
        return null;
    } finally {
        closeSession(session);
    }
}

From source file:com.lp.server.projekt.ejbfac.ProjektReportFacBean.java

License:Open Source License

@TransactionAttribute(TransactionAttributeType.NEVER)
public JasperPrintLP printAktivitaetsuebersicht(java.sql.Timestamp tVon, java.sql.Timestamp tBis,
        boolean bGesamtinfo, TheClientDto theClientDto) {

    cAktuellerReport = ProjektReportFac.REPORT_PROJEKT_JOURNAL_AKTIVITAETSUEBERSICHT;

    HashMap<String, Object> parameter = new HashMap<String, Object>();

    ArrayList alDaten = new ArrayList();

    SessionFactory factory = FLRSessionFactory.getFactory();
    Session session = factory.openSession();

    HashMap hmProjekte = new HashMap();

    String sQuery = "select distinct  zeitdaten.c_belegartnr,zeitdaten.i_belegartid, zeitdaten.personal_i_id from FLRZeitdaten zeitdaten WHERE  zeitdaten.c_belegartnr is not null AND zeitdaten.t_zeit>='"
            + Helper.formatDateWithSlashes(new java.sql.Date(tVon.getTime())) + "' AND zeitdaten.t_zeit<='"
            + Helper.formatDateWithSlashes(new java.sql.Date(tBis.getTime()))
            + "' AND zeitdaten.flrpersonal.mandant_c_nr='" + theClientDto.getMandant() + "'";

    org.hibernate.Query inventurliste = session.createQuery(sQuery);

    List<?> resultList = inventurliste.list();

    Iterator<?> resultListIterator = resultList.iterator();

    int row = 0;/*from  ww  w.  ja v  a2s  .  c o  m*/
    while (resultListIterator.hasNext()) {

        Object[] o = (Object[]) resultListIterator.next();

        Integer personalIId = (Integer) o[2];

        try {
            PersonalDto personalDto = getPersonalFac().personalFindByPrimaryKey(personalIId, theClientDto);
            Object[] oZeile = new Object[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_ANZAHL_SPALTEN];

            oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BELEGART] = o[0];
            oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PERSONAL] = personalDto.getPartnerDto()
                    .formatFixName1Name2();

            String sBezeichnung = "";
            PartnerDto partnerDto = null;
            if (((String) o[0]).equals(LocaleFac.BELEGART_AUFTRAG)) {
                AuftragDto auftragDto = getAuftragFac().auftragFindByPrimaryKey((Integer) o[1]);
                oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BELEGNUMMER] = auftragDto.getCNr();

                sBezeichnung = auftragDto.getCBezProjektbezeichnung();
                partnerDto = getKundeFac()
                        .kundeFindByPrimaryKey(auftragDto.getKundeIIdAuftragsadresse(), theClientDto)
                        .getPartnerDto();
            } else if (((String) o[0]).equals(LocaleFac.BELEGART_LOS)) {
                com.lp.server.fertigung.service.LosDto losDto = getFertigungFac()
                        .losFindByPrimaryKey((Integer) o[1]);
                oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BELEGNUMMER] = losDto.getCNr();

                sBezeichnung = losDto.getCProjekt();

                if (losDto.getAuftragIId() != null) {

                    AuftragDto auftragDto = getAuftragFac().auftragFindByPrimaryKey(losDto.getAuftragIId());

                    partnerDto = getKundeFac()
                            .kundeFindByPrimaryKey(auftragDto.getKundeIIdAuftragsadresse(), theClientDto)
                            .getPartnerDto();
                }

            } else if (((String) o[0]).equals(LocaleFac.BELEGART_PROJEKT)) {

                if (!hmProjekte.containsKey((Integer) o[1])) {
                    hmProjekte.put((Integer) o[1], "");
                }

                oZeile = projektFuerAktivitaetsuebersichtBefuellen((Integer) o[1], theClientDto);

            } else if (((String) o[0]).equals(LocaleFac.BELEGART_ANGEBOT)) {
                AngebotDto angebotDto = getAngebotFac().angebotFindByPrimaryKey((Integer) o[1], theClientDto);
                oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BELEGNUMMER] = angebotDto.getCNr();

                sBezeichnung = angebotDto.getCBez();

                partnerDto = getKundeFac()
                        .kundeFindByPrimaryKey(angebotDto.getKundeIIdAngebotsadresse(), theClientDto)
                        .getPartnerDto();

                // oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_VON]
                // = projektDto.getTAnlegen();
                // oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BIS]
                // = projektDto.getTZielwunschdatum();

            }

            AuftragzeitenDto[] dtos = getZeiterfassungFac().getAllZeitenEinesBeleges((String) o[0],
                    (Integer) o[1], null, personalIId, tVon, tBis, false, false, theClientDto);

            if (dtos.length > 0 && (((String) o[0]).equals(LocaleFac.BELEGART_PROJEKT) != true)) {
                oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_VON] = dtos[0].getTsBeginn();
                oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BIS] = dtos[dtos.length - 1].getTsEnde();
            }

            double zeiten = 0;
            for (int i = 0; i < dtos.length; i++) {
                if (dtos[i] != null && dtos[i].getDdDauer() != null) {
                    zeiten = zeiten + dtos[i].getDdDauer().doubleValue();
                }
            }
            Double dDauer = new Double(zeiten);

            oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_DAUER] = dDauer;

            if (!((String) o[0]).equals(LocaleFac.BELEGART_PROJEKT)) {

                if (partnerDto != null) {
                    oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PARTNER] = partnerDto
                            .formatTitelAnrede();

                    if (partnerDto.getLandplzortDto() != null) {
                        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_LKZ] = partnerDto
                                .getLandplzortDto().getLandDto().getCLkz();
                        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PLZ] = partnerDto
                                .getLandplzortDto().getCPlz();
                        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_ORT] = partnerDto
                                .getLandplzortDto().getOrtDto().getCName();
                    }

                } else {
                    oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PARTNER] = "";
                }
                oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BELEGTEXT] = sBezeichnung;

            }
            row++;

            alDaten.add(oZeile);
        } catch (RemoteException ex1) {
            // Zeitdaten falsch
        }
    }
    session.close();

    // Telefonzeiten

    session = factory.openSession();
    org.hibernate.Criteria crit = session.createCriteria(FLRTelefonzeiten.class)
            .createAlias(ZeiterfassungFac.FLR_TELEFONZEITEN_FLRPERSONAL, "p")
            .add(Restrictions.eq("p.mandant_c_nr", theClientDto.getMandant()));

    crit.add(Restrictions.ge(ZeiterfassungFac.FLR_TELEFONZEITEN_T_VON, tVon));
    crit.add(Restrictions.lt(ZeiterfassungFac.FLR_TELEFONZEITEN_T_VON, tBis));

    List<?> list = crit.list();
    Iterator<?> iterator = list.iterator();

    while (iterator.hasNext()) {
        FLRTelefonzeiten flrTelefonzeiten = (FLRTelefonzeiten) iterator.next();

        Object[] oZeile = new Object[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_ANZAHL_SPALTEN];

        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BELEGART] = "Telefon";
        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BELEGTEXT] = flrTelefonzeiten.getX_kommentarext();

        if (flrTelefonzeiten.getT_bis() != null) {
            java.sql.Time tTemp = new java.sql.Time(
                    flrTelefonzeiten.getT_bis().getTime() - flrTelefonzeiten.getT_von().getTime() - 3600000);
            oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_DAUER] = Helper.time2Double(tTemp);
            oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_BIS] = new Timestamp(
                    flrTelefonzeiten.getT_bis().getTime());
        }

        oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_VON] = new Timestamp(
                flrTelefonzeiten.getT_von().getTime());

        if (flrTelefonzeiten.getFlrpartner() != null) {

            com.lp.server.partner.service.PartnerDto partnerDto = getPartnerFac()
                    .partnerFindByPrimaryKey(flrTelefonzeiten.getFlrpartner().getI_id(), theClientDto);
            oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PARTNER] = partnerDto
                    .formatFixTitelName1Name2();

        } else {
            oZeile[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PARTNER] = "";
        }

    }

    // Projekte, welche wiese Woche angelegt wurde, bzw. ein neues Detail
    // hinzugefuegt wurde

    Criteria critProjekt = session.createCriteria(FLRHistory.class);

    critProjekt.add(Restrictions.between(ProjektFac.FLR_HISTORY_T_BELEGDATUM, tVon, tBis));

    critProjekt.createAlias("flrprojekt", "p")
            .add(Restrictions.eq("p.mandant_c_nr", theClientDto.getMandant()));

    List<?> resultListVorher = critProjekt.list();

    Iterator<?> itVorher = resultListVorher.iterator();

    while (itVorher.hasNext()) {
        FLRHistory history = (FLRHistory) itVorher.next();

        if (!hmProjekte.containsKey(history.getProjekt_i_id())) {
            if (!hmProjekte.containsKey(history.getProjekt_i_id())) {
                hmProjekte.put(history.getProjekt_i_id(), "");
            }
            Object[] z = projektFuerAktivitaetsuebersichtBefuellen(history.getProjekt_i_id(), theClientDto);
            alDaten.add(z);
        }

    }

    session.close();

    session = factory.openSession();

    critProjekt = session.createCriteria(FLRProjekt.class);

    critProjekt.add(Restrictions.between(ProjektFac.FLR_PROJEKT_T_ANLEGEN, tVon, tBis));
    critProjekt.add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant()));

    resultListVorher = critProjekt.list();

    itVorher = resultListVorher.iterator();

    while (itVorher.hasNext()) {
        FLRProjekt projekt = (FLRProjekt) itVorher.next();

        if (!hmProjekte.containsKey(projekt.getI_id())) {

            Object[] z = projektFuerAktivitaetsuebersichtBefuellen(projekt.getI_id(), theClientDto);
            alDaten.add(z);

        }

    }

    session.close();

    // Nach Artikel sortieren
    for (int i = alDaten.size() - 1; i > 0; --i) {
        for (int j = 0; j < i; ++j) {
            Object[] a = (Object[]) alDaten.get(j);
            Object[] b = (Object[]) alDaten.get(j + 1);
            if (((String) a[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PARTNER])
                    .compareTo(((String) b[ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_PARTNER])) > 0) {
                Object[] h = a;
                alDaten.set(j, b);
                alDaten.set(j + 1, h);
            }
        }
    }

    Object[][] returnArray = new Object[alDaten
            .size()][ProjektReportFac.REPORT_AKTIVITAETSUEBERSICHT_ANZAHL_SPALTEN];
    data = (Object[][]) alDaten.toArray(returnArray);

    parameter.put("P_VON", tVon);
    parameter.put("P_BIS", tBis);
    parameter.put("P_GESAMTINFO", new Boolean(bGesamtinfo));

    initJRDS(parameter, ProjektReportFac.REPORT_MODUL, cAktuellerReport, theClientDto.getMandant(),
            theClientDto.getLocUi(), theClientDto);

    return getReportPrint();

}

From source file:com.lp.server.rechnung.ejbfac.RechnungFacBean.java

License:Open Source License

@SuppressWarnings("unchecked")
public List<Integer> rechnungzahlungIdsByMandantZahldatumVonBis(String mandantCNr, Date dVon, Date dBis) {
    Session session = FLRSessionFactory.getFactory().openSession();
    Criteria crit = session.createCriteria(FLRRechnungZahlung.class);
    crit.createAlias("flrrechnung", "r");
    crit.add(Restrictions.eq("r.mandant_c_nr", mandantCNr));
    crit.add(Restrictions.between("d_zahldatum", dVon, dBis));
    List<FLRRechnungZahlung> list = crit.list();
    List<Integer> ids = new ArrayList<Integer>();
    Iterator<FLRRechnungZahlung> it = list.iterator();
    while (it.hasNext())
        ids.add(it.next().getI_id());/* w ww.  j  ava2s .c  om*/
    session.close();
    return ids;
}

From source file:com.mac.green_leaves.v1.dashboard.receive_dashboard.DashboardService.java

List<TGreenLeavesWeigh> getGeenLeavesWeighTotalSummary(greenLeavesSummry leavesSummry) {
    Criteria criteria = entityManager.unwrap(Session.class).createCriteria(TGreenLeavesWeigh.class);
    criteria.add(Restrictions.eq("type", leavesSummry.getType()));

    if (leavesSummry.getBranch() != null) {
        criteria.add(Restrictions.eq("branch", leavesSummry.getBranch()));
    }/*from   ww  w . ja  va  2s. c  o m*/

    if (leavesSummry.getFromDate() != null && leavesSummry.getToDate() != null) {
        criteria.add(Restrictions.between("date", leavesSummry.getFromDate(), leavesSummry.getToDate()));
    }

    if (leavesSummry.getRoute() != null) {
        criteria.add(Restrictions.eq("route", leavesSummry.getRoute()));
    }

    if (!"null".equals(leavesSummry.getStatus())) {
        if (leavesSummry.getStatus() != null) {
            criteria.add(Restrictions.eq("status", leavesSummry.getStatus()));
        }
    }

    if (leavesSummry.getClient() != null) {
        criteria.add(Restrictions.eq("client", leavesSummry.getClient()));
    }

    if (leavesSummry.getRouteOfficer() != null) {
        criteria.add(Restrictions.eq("routeOfficer", leavesSummry.getRouteOfficer()));
    }

    if (leavesSummry.getRouteHelper() != null) {
        criteria.add(Restrictions.eq("routeHelper", leavesSummry.getRouteHelper()));
    }

    if (leavesSummry.getVehicle() != null) {
        criteria.add(Restrictions.eq("vehicle", leavesSummry.getVehicle()));
    }

    if (leavesSummry.getFromDate() == null && leavesSummry.getToDate() == null
            && leavesSummry.getRoute() == null && leavesSummry.getClient() == null
            && leavesSummry.getRouteOfficer() == null && leavesSummry.getRouteHelper() == null
            && leavesSummry.getVehicle() == null) {
        throw new EntityNotFoundException("green leaves weigh not found");
    }

    criteria.setResultTransformer(DetachedCriteria.DISTINCT_ROOT_ENTITY);
    criteria.addOrder(Order.asc("date"));
    criteria.add(Restrictions.ne("status", "DELETED"));
    List<TGreenLeavesWeigh> greenLeavesWeigh = criteria.list();
    return greenLeavesWeigh;
}

From source file:com.mac.green_leaves.v1.dashboard.receive_dashboard.DashboardService.java

List<TGreenLeavesReceive> getGeenLeavesReceiveTotalSummary(greenLeavesSummry leavesSummry) {
    if ("client".equals(leavesSummry.getType())) {
        Criteria criteria = entityManager.unwrap(Session.class).createCriteria(TGreenLeavesReceive.class);

        if (leavesSummry.getBranch() != null) {
            criteria.add(Restrictions.eq("branch", leavesSummry.getBranch()));
        }/*  www.j av  a 2 s .co  m*/

        if (leavesSummry.getFromDate() != null && leavesSummry.getToDate() != null) {
            criteria.add(Restrictions.between("date", leavesSummry.getFromDate(), leavesSummry.getToDate()));
        }

        if (!"null".equals(leavesSummry.getStatus())) {
            if (leavesSummry.getStatus() != null) {
                criteria.add(Restrictions.eq("status", leavesSummry.getStatus()));
            }
        }

        if (leavesSummry.getRoute() != null) {
            criteria.add(Restrictions.eq("route", leavesSummry.getRoute()));
        }

        if (leavesSummry.getClient() != null) {
            System.out.println(leavesSummry.getClient());
            criteria.createAlias("greenLeavesReceiveDetails", "glrd");
            criteria.add(Restrictions.eq("glrd.client", leavesSummry.getClient()));
        }

        if (leavesSummry.getClient() == null && leavesSummry.getRoute() == null
                && leavesSummry.getFromDate() == null && leavesSummry.getToDate() == null) {
            throw new EntityNotFoundException("green leaves receive not found");
        }

        criteria.setResultTransformer(DetachedCriteria.DISTINCT_ROOT_ENTITY);
        criteria.addOrder(Order.asc("date"));
        //get only bulk receive
        criteria.add(Restrictions.eq("type", "BULK"));
        criteria.add(Restrictions.ne("status", "DELETED"));
        List<TGreenLeavesReceive> greenLeavesReceives = criteria.list();
        return greenLeavesReceives;

    } else {
        Criteria criteria = entityManager.unwrap(Session.class).createCriteria(TGreenLeavesReceive.class);

        if (leavesSummry.getBranch() != null) {
            criteria.add(Restrictions.eq("branch", leavesSummry.getBranch()));
        }

        if (leavesSummry.getFromDate() != null && leavesSummry.getToDate() != null) {
            criteria.add(Restrictions.between("date", leavesSummry.getFromDate(), leavesSummry.getToDate()));
        }

        if (!"null".equals(leavesSummry.getStatus())) {
            if (leavesSummry.getStatus() != null) {
                criteria.add(Restrictions.eq("status", leavesSummry.getStatus()));
            }
        }

        if (leavesSummry.getRoute() != null) {
            criteria.add(Restrictions.eq("route", leavesSummry.getRoute()));
        }

        if (leavesSummry.getClient() == null && leavesSummry.getRoute() == null
                && leavesSummry.getFromDate() == null && leavesSummry.getToDate() == null) {
            throw new EntityNotFoundException("green leaves receive not found");
        }

        criteria.setResultTransformer(DetachedCriteria.DISTINCT_ROOT_ENTITY);
        criteria.addOrder(Order.asc("date"));
        //get only bulk receive
        criteria.add(Restrictions.eq("type", "BULK"));
        criteria.add(Restrictions.ne("status", "DELETED"));
        List<TGreenLeavesReceive> greenLeavesReceives = criteria.list();
        return greenLeavesReceives;
    }
}

From source file:com.metropolitan.formulasport727.dao.VestDAOImpl.java

@Override
public List<Vest> getListaPretrazenihVesti(Date pocetni, Date zavrsni, Kategorija kategorija) {
    Calendar c = Calendar.getInstance();
    if (zavrsni.before(Calendar.getInstance().getTime())) {
        c.setTime(zavrsni);/* ww  w .j a  va2  s. c o m*/
    } else {
        c.setTime(Calendar.getInstance().getTime());
    }
    c.add(Calendar.DATE, 1);
    zavrsni = c.getTime();
    return session.createCriteria(Vest.class).add(Restrictions.between("vremeObjave", pocetni, zavrsni))
            .add(Restrictions.eq("katId", kategorija)).addOrder(Order.desc("vremeObjave"))
            .setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY).list();
}

From source file:com.qcadoo.model.api.search.SearchRestrictions.java

License:Open Source License

/**
 * Creates criterion which checks if field is between given values.
 * //from www. j a v  a 2  s.  c  o  m
 * @param field
 *            field
 * @param lo
 *            low value
 * @param hi
 *            high value
 * @return criterion
 */
public static SearchCriterion between(final String field, final Object lo, final Object hi) {
    return new SearchCriterionImpl(Restrictions.between(field, lo, hi));
}

From source file:com.qfix.vms.dao.impl.AccidentsDaoImpl.java

@Override
public List<Accidents> findAccidents(Date from, Date to) {
    Session session = sessionFactory.openSession();

    Transaction tx = null;//from  w  ww . jav  a 2  s .  c o m

    tx = session.beginTransaction();
    Criteria cr = session.createCriteria(Accidents.class);

    cr.add(Restrictions.between("date", from, to));
    List accidents = cr.list();
    return accidents;
}