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;
}
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);
}
}
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);
}
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;
}
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;
}
Aggregations