Search in sources :

Example 21 with CNRUserContext

use of it.cnr.contab.utenze00.bp.CNRUserContext in project sigla-main by consiglionazionaledellericerche.

the class V_cons_registro_inventarioHome method selectByClause.

public SQLBuilder selectByClause(UserContext usercontext, CompoundFindClause compoundfindclause) throws PersistencyException {
    SQLBuilder sql = super.selectByClause(usercontext, compoundfindclause);
    // Se uo 999.000 in scrivania: visualizza tutto l'elenco
    Unita_organizzativa_enteBulk ente = (Unita_organizzativa_enteBulk) getHomeCache().getHome(Unita_organizzativa_enteBulk.class).findAll().get(0);
    if (!((CNRUserContext) usercontext).getCd_unita_organizzativa().equals(ente.getCd_unita_organizzativa())) {
        sql.addSQLClause("AND", "CD_UNITA_ORGANIZZATIVA = ?");
        sql.addParameter(((CNRUserContext) usercontext).getCd_unita_organizzativa(), java.sql.Types.VARCHAR, 0);
    }
    return sql;
}
Also used : Unita_organizzativa_enteBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativa_enteBulk) SQLBuilder(it.cnr.jada.persistency.sql.SQLBuilder) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext)

Example 22 with CNRUserContext

use of it.cnr.contab.utenze00.bp.CNRUserContext in project sigla-main by consiglionazionaledellericerche.

the class MacroAction method doDefault.

public Forward doDefault(ActionContext actioncontext) {
    try {
        actioncontext.invalidateSession();
        String cd_utente, pwd, cd_uo = null;
        Integer pg_modulo = null;
        ProgettoBulk modulo = null;
        Integer esercizio;
        String costi_personale = "N";
        String mode = "M";
        try {
            esercizio = new Integer(((HttpActionContext) actioncontext).getParameter("esercizio"));
        } catch (NullPointerException e) {
            esercizio = new Integer(2006);
        } catch (NumberFormatException e) {
            esercizio = new Integer(2006);
        }
        try {
            costi_personale = ((HttpActionContext) actioncontext).getParameter("costi_personale");
        } catch (NullPointerException e) {
            costi_personale = "N";
        }
        if (costi_personale == null)
            costi_personale = "N";
        try {
            mode = ((HttpActionContext) actioncontext).getParameter("mode");
        } catch (NullPointerException e) {
            mode = "M";
        }
        if (mode == null)
            mode = "M";
        actioncontext.setUserContext(new CNRUserContext("LOGIN", actioncontext.getSessionId(), esercizio, null, null, null));
        try {
            cd_utente = ((HttpActionContext) actioncontext).getParameter("cd_utente").toUpperCase();
            pwd = ((HttpActionContext) actioncontext).getParameter("pwd");
        } catch (NullPointerException e) {
            setErrorMessage(actioncontext, "Parametri non corretti.");
            return actioncontext.findDefaultForward();
        }
        /*try{
				cd_uo = ((HttpActionContext)actioncontext).getParameter("cd_uo").toUpperCase();
			}catch(NullPointerException e){}
			catch(NumberFormatException e){
				setErrorMessage(actioncontext,"Parametri non corretti.");
				return actioncontext.findDefaultForward();
			}*/
        try {
            if (((HttpActionContext) actioncontext).getParameter("pg_modulo") != null)
                pg_modulo = new Integer(((HttpActionContext) actioncontext).getParameter("pg_modulo"));
        } catch (NullPointerException e) {
        } catch (NumberFormatException e) {
            setErrorMessage(actioncontext, "Parametri non corretti.");
            return actioncontext.findDefaultForward();
        }
        Unita_organizzativaBulk uo = null;
        LoginBP loginbp = (LoginBP) actioncontext.getBusinessProcessRoot(true);
        CNRUserInfo ui = loginbp.getUserInfo();
        UtenteBulk utente = new UtenteBulk();
        utente.setCd_utente(cd_utente);
        utente.setPassword(pwd);
        utente.setLdap_password(pwd);
        ui.setUtente(utente);
        Integer[] esercizi = getComponentSession().listaEserciziPerUtente(actioncontext.getUserContext(), utente);
        int annoInCorso = java.util.Calendar.getInstance().get(java.util.Calendar.YEAR);
        ui.setEsercizi(esercizi);
        utente = getComponentSession().validaUtente(actioncontext.getUserContext(), utente);
        if (utente == null || !(utente instanceof UtenteComuneBulk)) {
            setErrorMessage(actioncontext, "Nome utente o password sbagliati.");
            return actioncontext.findDefaultForward();
        }
        if (cd_uo != null)
            uo = (Unita_organizzativaBulk) getUOComponentSession().findUOByCodice(actioncontext.getUserContext(), cd_uo);
        if (uo == null)
            uo = ((UtenteComuneBulk) utente).getCdr().getUnita_padre();
        ui.setUtente(utente);
        ui.setUserid(utente.getCd_utente());
        ui.setUnita_organizzativa(uo);
        ui.setEsercizio(esercizio);
        GestioneUtenteBP bp = (GestioneUtenteBP) actioncontext.createBusinessProcess("GestioneUtenteBP");
        actioncontext.addBusinessProcess(bp);
        bp.setUserInfo(ui);
        CNRUserContext userContext = new CNRUserContext(utente.getCd_utente(), actioncontext.getSessionId(), esercizio, ui.getUnita_organizzativa().getCd_unita_organizzativa(), ui.getUnita_organizzativa().getCd_cds(), ui.getCdr().getCd_centro_responsabilita());
        actioncontext.setUserContext(userContext);
        actioncontext.setUserInfo(ui);
        HttpServletRequest request = ((HttpActionContext) actioncontext).getRequest();
        try {
            request.logout();
            request.login(cd_utente, pwd);
        } catch (ServletException e) {
            setErrorMessage(actioncontext, "Nome utente o password sbagliati.");
            return actioncontext.findDefaultForward();
        }
        // Se il mode è H allora va in sola visualizzazione altrimenti in modifica
        mode = mode.equals("H") ? "V" : "M";
        if (costi_personale.equals("N")) {
            Object[] parametri;
            if (pg_modulo != null)
                parametri = new Object[] { mode, pg_modulo };
            else
                parametri = new Object[] { mode };
            CRUDPdGAggregatoModuloBP newbp = (CRUDPdGAggregatoModuloBP) actioncontext.getUserInfo().createBusinessProcess(actioncontext, "CRUDPdGAggregatoModuloBP", parametri);
            if (mode.equals("M")) {
                newbp.setStatus(CRUDPdGAggregatoModuloBP.EDIT);
                newbp.setEditable(true);
            }
            if (pg_modulo != null && mode.equals("M") && newbp.isModuloInseribile()) {
                logger.info("PDGP -> Progressivo modulo {}", pg_modulo);
                Pdg_moduloBulk pdg_modulo = new Pdg_moduloBulk(CNRUserContext.getEsercizio(actioncontext.getUserContext()), ui.getCdr().getCd_centro_responsabilita(), pg_modulo);
                Progetto_sipBulk progetto_sipBulk = new Progetto_sipBulk(esercizio, pg_modulo, ProgettoBulk.TIPO_FASE_PREVISIONE);
                progetto_sipBulk = Optional.ofNullable(progetto_sipBulk).map(progetto -> {
                    try {
                        return Optional.ofNullable(getProgettoRicercaPadreComponentSession().findByPrimaryKey(userContext, progetto)).filter(Progetto_sipBulk.class::isInstance).map(Progetto_sipBulk.class::cast).orElse(null);
                    } catch (ComponentException | RemoteException e) {
                        throw new DetailedRuntimeException(e);
                    }
                }).orElse(null);
                logger.info("PDGP -> Trovato progetto con progressivo {}", Optional.ofNullable(progetto_sipBulk).map(ProgettoKey::getPg_progetto).orElse(null));
                logger.info("PDGP -> Trovato progetto con stato {}", Optional.ofNullable(progetto_sipBulk).flatMap(progetto_sipBulk1 -> Optional.ofNullable(progetto_sipBulk1.getOtherField())).flatMap(progetto_other_fieldBulk -> Optional.ofNullable(progetto_other_fieldBulk.getStato())).orElse(null));
                if (!Optional.ofNullable(progetto_sipBulk.getOtherField()).flatMap(progetto_other_fieldBulk -> Optional.ofNullable(progetto_other_fieldBulk.getStato())).filter(stato -> Arrays.asList(StatoProgetto.STATO_NEGOZIAZIONE.value(), StatoProgetto.STATO_APPROVATO.value()).indexOf(stato) != -1).isPresent()) {
                    if (!progetto_sipBulk.getCd_unita_organizzativa().equals(CNRUserContext.getCd_unita_organizzativa(actioncontext.getUserContext()))) {
                        setErrorMessage(actioncontext, "Attenzione: il progetto non ha uno stato utile alla previsione! Deve essere completatato dalla UO responsabile!");
                        return actioncontext.findDefaultForward();
                    } else {
                        newbp.setPgModulo(pg_modulo);
                        pdg_modulo.setStato(Pdg_moduloBulk.STATO_AC);
                        pdg_modulo.setToBeCreated();
                        ((CdrBulk) newbp.getModel()).addToDettagli(pdg_modulo);
                        newbp.evidenziaModulo(actioncontext);
                        actioncontext.addBusinessProcess(newbp);
                        return openConfirm(actioncontext, "Attenzione: il progetto non ha uno stato utile alla previsione! Vuoi completare le informazioni mancanti?", OptionBP.CONFIRM_YES_NO, "doConfermaCompletaProgetto");
                    }
                }
                if (!Optional.ofNullable(progetto_sipBulk.getOtherField()).flatMap(progetto_other_fieldBulk -> Optional.ofNullable(progetto_other_fieldBulk.getTipoFinanziamento())).filter(tipoFinanziamentoBulk -> tipoFinanziamentoBulk.getFlPrevEntSpesa() || tipoFinanziamentoBulk.getFlRipCostiPers()).isPresent()) {
                    setErrorMessage(actioncontext, "Attenzione: per il progetto non è consentita la previsione!");
                    return actioncontext.findDefaultForward();
                }
                try {
                    pdg_modulo = getPdgModuloComponentSession().findAndInsertBulkForMacro(actioncontext.getUserContext(), pdg_modulo);
                    if (pdg_modulo != null) {
                        newbp.setModel(actioncontext, newbp.initializeModelForEdit(actioncontext, newbp.getModel()));
                        newbp.setPgModulo(pg_modulo);
                        newbp.evidenziaModulo(actioncontext);
                    }
                } catch (ApplicationException e) {
                    setErrorMessage(actioncontext, e.getMessage());
                    return actioncontext.findDefaultForward();
                }
            }
            actioncontext.addBusinessProcess(newbp);
        } else if (costi_personale.equals("Y")) {
            aggiornaGECO(actioncontext);
            CostiDipendenteBP newbp = (CostiDipendenteBP) actioncontext.getUserInfo().createBusinessProcess(actioncontext, "CostiDipendenteBP", new Object[] { mode });
            actioncontext.addBusinessProcess(newbp);
        }
        return actioncontext.findDefaultForward();
    } catch (it.cnr.contab.utente00.nav.comp.PasswordScadutaException e) {
        setErrorMessage(actioncontext, "Password scaduta da più di sei mesi.");
        return actioncontext.findForward("password_scaduta");
    } catch (it.cnr.contab.utente00.nav.comp.UtenteNonValidoException e) {
        setErrorMessage(actioncontext, "Utente non più valido");
        return actioncontext.findDefaultForward();
    } catch (it.cnr.contab.utente00.nav.comp.UtenteInDisusoException e) {
        setErrorMessage(actioncontext, "Utente non utilizzato da più di sei mesi.");
        return actioncontext.findDefaultForward();
    } catch (Throwable e) {
        return handleException(actioncontext, e);
    }
}
Also used : HttpActionContext(it.cnr.jada.action.HttpActionContext) Arrays(java.util.Arrays) Unita_organizzativaBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk) TestataProgettiRicercaBP(it.cnr.contab.progettiric00.bp.TestataProgettiRicercaBP) ServletException(javax.servlet.ServletException) LoggerFactory(org.slf4j.LoggerFactory) SendMail(it.cnr.jada.util.SendMail) Forward(it.cnr.jada.action.Forward) ActionContext(it.cnr.jada.action.ActionContext) Unita_organizzativaComponentSession(it.cnr.contab.config00.ejb.Unita_organizzativaComponentSession) Progetto_sipBulk(it.cnr.contab.progettiric00.core.bulk.Progetto_sipBulk) HttpServletRequest(javax.servlet.http.HttpServletRequest) UtenteComuneBulk(it.cnr.contab.utenze00.bulk.UtenteComuneBulk) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext) ApplicationException(it.cnr.jada.comp.ApplicationException) BulkAction(it.cnr.jada.util.action.BulkAction) Logger(org.slf4j.Logger) UtenteBulk(it.cnr.contab.utenze00.bulk.UtenteBulk) Pdg_moduloBulk(it.cnr.contab.prevent01.bulk.Pdg_moduloBulk) CostiDipendenteBP(it.cnr.contab.pdg00.bp.CostiDipendenteBP) CdrBulk(it.cnr.contab.config00.sto.bulk.CdrBulk) PdgAggregatoModuloComponentSession(it.cnr.contab.prevent01.ejb.PdgAggregatoModuloComponentSession) OptionBP(it.cnr.jada.util.action.OptionBP) RemoteException(java.rmi.RemoteException) CDRComponentSession(it.cnr.contab.config00.ejb.CDRComponentSession) BusinessProcessException(it.cnr.jada.action.BusinessProcessException) GestioneUtenteBP(it.cnr.contab.utenze00.bp.GestioneUtenteBP) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) ProgettoBulk(it.cnr.contab.progettiric00.core.bulk.ProgettoBulk) CNRUserInfo(it.cnr.contab.utenze00.bulk.CNRUserInfo) ProgettoKey(it.cnr.contab.progettiric00.core.bulk.ProgettoKey) CRUDPdGAggregatoModuloBP(it.cnr.contab.prevent01.bp.CRUDPdGAggregatoModuloBP) ProgettoRicercaPadreComponentSession(it.cnr.contab.progettiric00.ejb.ProgettoRicercaPadreComponentSession) LoginBP(it.cnr.contab.utenze00.bp.LoginBP) StatoProgetto(it.cnr.contab.progettiric00.enumeration.StatoProgetto) Optional(java.util.Optional) CRUDPdGAggregatoModuloAction(it.cnr.contab.prevent01.action.CRUDPdGAggregatoModuloAction) GestioneLoginComponentSession(it.cnr.contab.utente00.nav.ejb.GestioneLoginComponentSession) ComponentException(it.cnr.jada.comp.ComponentException) UtenteBulk(it.cnr.contab.utenze00.bulk.UtenteBulk) Unita_organizzativaBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk) ProgettoBulk(it.cnr.contab.progettiric00.core.bulk.ProgettoBulk) CdrBulk(it.cnr.contab.config00.sto.bulk.CdrBulk) HttpServletRequest(javax.servlet.http.HttpServletRequest) ServletException(javax.servlet.ServletException) ProgettoKey(it.cnr.contab.progettiric00.core.bulk.ProgettoKey) CNRUserInfo(it.cnr.contab.utenze00.bulk.CNRUserInfo) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext) CRUDPdGAggregatoModuloBP(it.cnr.contab.prevent01.bp.CRUDPdGAggregatoModuloBP) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) Pdg_moduloBulk(it.cnr.contab.prevent01.bulk.Pdg_moduloBulk) GestioneUtenteBP(it.cnr.contab.utenze00.bp.GestioneUtenteBP) ApplicationException(it.cnr.jada.comp.ApplicationException) UtenteComuneBulk(it.cnr.contab.utenze00.bulk.UtenteComuneBulk) LoginBP(it.cnr.contab.utenze00.bp.LoginBP) ComponentException(it.cnr.jada.comp.ComponentException) HttpActionContext(it.cnr.jada.action.HttpActionContext) CostiDipendenteBP(it.cnr.contab.pdg00.bp.CostiDipendenteBP) Progetto_sipBulk(it.cnr.contab.progettiric00.core.bulk.Progetto_sipBulk) RemoteException(java.rmi.RemoteException)

Example 23 with CNRUserContext

use of it.cnr.contab.utenze00.bp.CNRUserContext in project sigla-main by consiglionazionaledellericerche.

the class CdrHome method findPdgModuloDettagli.

public java.util.Collection findPdgModuloDettagli(UserContext userContext, CdrBulk testata, Integer livelloProgetto) throws IntrospectionException, PersistencyException {
    PersistentHome dettHome = getHomeCache().getHome(Pdg_moduloBulk.class);
    SQLBuilder sql = dettHome.createSQLBuilder();
    sql.addClause("AND", "esercizio", SQLBuilder.EQUALS, it.cnr.contab.utenze00.bp.CNRUserContext.getEsercizio(userContext));
    sql.addClause("AND", "cd_centro_responsabilita", SQLBuilder.EQUALS, testata.getCd_centro_responsabilita());
    Unita_organizzativa_enteBulk ente = (Unita_organizzativa_enteBulk) getHomeCache().getHome(Unita_organizzativa_enteBulk.class).findAll().get(0);
    if (!((CNRUserContext) userContext).getCd_unita_organizzativa().equals(ente.getCd_unita_organizzativa())) {
        Progetto_sipHome progettohome = (Progetto_sipHome) getHomeCache().getHome(Progetto_sipBulk.class);
        sql.addSQLExistsClause("AND", progettohome.abilitazioni(userContext, "PDG_MODULO.PG_PROGETTO", livelloProgetto));
    // sql.addSQLClause("AND","EXISTS ( SELECT 1 FROM PROGETTO_UO WHERE PDG_MODULO.PG_PROGETTO = PROGETTO_UO.PG_PROGETTO AND PROGETTO_UO.CD_UNITA_ORGANIZZATIVA = ?)");
    // sql.addParameter(((CNRUserContext) userContext).getCd_unita_organizzativa() ,java.sql.Types.VARCHAR,0);
    }
    return dettHome.fetchAll(sql);
}
Also used : SQLBuilder(it.cnr.jada.persistency.sql.SQLBuilder) Progetto_sipHome(it.cnr.contab.progettiric00.core.bulk.Progetto_sipHome) PersistentHome(it.cnr.jada.persistency.sql.PersistentHome) Progetto_sipBulk(it.cnr.contab.progettiric00.core.bulk.Progetto_sipBulk) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext)

Example 24 with CNRUserContext

use of it.cnr.contab.utenze00.bp.CNRUserContext in project sigla-main by consiglionazionaledellericerche.

the class ConsAccertamentiHome method selectByClause.

public SQLBuilder selectByClause(UserContext usercontext, CompoundFindClause compoundfindclause) throws PersistencyException {
    SQLBuilder sql = super.selectByClause(usercontext, compoundfindclause);
    sql.addSQLClause("AND", "ESERCIZIO", sql.EQUALS, CNRUserContext.getEsercizio(usercontext));
    Unita_organizzativa_enteBulk ente = (Unita_organizzativa_enteBulk) getHomeCache().getHome(Unita_organizzativa_enteBulk.class).findAll().get(0);
    // Se uo 999.000 in scrivania: visualizza tutto l'elenco
    if (!((CNRUserContext) usercontext).getCd_unita_organizzativa().equals(ente.getCd_unita_organizzativa())) {
        sql.addSQLClause("AND", "CDS", SQLBuilder.EQUALS, CNRUserContext.getCd_cds(usercontext));
        Unita_organizzativaBulk uoScrivania = (Unita_organizzativaBulk) getHomeCache().getHome(Unita_organizzativaBulk.class).findByPrimaryKey(new Unita_organizzativaBulk(CNRUserContext.getCd_unita_organizzativa(usercontext)));
        if (!uoScrivania.isUoCds())
            sql.addSQLClause("AND", "UO", SQLBuilder.EQUALS, CNRUserContext.getCd_unita_organizzativa(usercontext));
    }
    return sql;
}
Also used : Unita_organizzativa_enteBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativa_enteBulk) SQLBuilder(it.cnr.jada.persistency.sql.SQLBuilder) Unita_organizzativaBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext)

Example 25 with CNRUserContext

use of it.cnr.contab.utenze00.bp.CNRUserContext in project sigla-main by consiglionazionaledellericerche.

the class VGaeTotaleStoricoSpeHome method selectByClause.

public SQLBuilder selectByClause(UserContext usercontext, CompoundFindClause compoundfindclause) throws PersistencyException {
    SQLBuilder sql = super.selectByClause(usercontext, compoundfindclause);
    Unita_organizzativa_enteBulk ente = (Unita_organizzativa_enteBulk) getHomeCache().getHome(Unita_organizzativa_enteBulk.class).findAll().get(0);
    // Se uo 999.000 in scrivania: visualizza tutto l'elenco
    if (!((CNRUserContext) usercontext).getCd_unita_organizzativa().equals(ente.getCd_unita_organizzativa())) {
        sql.addSQLClause("AND", "CDR", sql.EQUALS, CNRUserContext.getCd_cdr(usercontext));
    }
    return sql;
}
Also used : Unita_organizzativa_enteBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativa_enteBulk) SQLBuilder(it.cnr.jada.persistency.sql.SQLBuilder) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext)

Aggregations

CNRUserContext (it.cnr.contab.utenze00.bp.CNRUserContext)148 SQLBuilder (it.cnr.jada.persistency.sql.SQLBuilder)79 Unita_organizzativa_enteBulk (it.cnr.contab.config00.sto.bulk.Unita_organizzativa_enteBulk)63 ComponentException (it.cnr.jada.comp.ComponentException)53 PersistencyException (it.cnr.jada.persistency.PersistencyException)52 Unita_organizzativaBulk (it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk)45 RemoteException (java.rmi.RemoteException)34 ApplicationException (it.cnr.jada.comp.ApplicationException)27 EJBException (javax.ejb.EJBException)21 ValidationException (it.cnr.jada.bulk.ValidationException)17 BigDecimal (java.math.BigDecimal)16 Parametri_cnrBulk (it.cnr.contab.config00.bulk.Parametri_cnrBulk)15 UserContext (it.cnr.jada.UserContext)15 IntrospectionException (it.cnr.jada.persistency.IntrospectionException)15 Parametri_cdsBulk (it.cnr.contab.config00.bulk.Parametri_cdsBulk)14 CdrBulk (it.cnr.contab.config00.sto.bulk.CdrBulk)13 RestException (it.cnr.contab.web.rest.exception.RestException)13 SQLException (java.sql.SQLException)13 ProgettoBulk (it.cnr.contab.progettiric00.core.bulk.ProgettoBulk)11 BulkHome (it.cnr.jada.bulk.BulkHome)11