public bool CollegaUtenteLDAP(DataAccess WebConn, WebUser WU, FlowChartUser FCU) { if (!CollegaUtenteNormale(WebConn, WU, FCU)) { return(false); } //se è ANCHE un responsabile lo segna comunque tra i responsabili impostando la userweb di quel resp. DataTable Man = Conn.RUN_SELECT("manager", "*", null, QHS.CmpEq("email", WU.email), null, false); if (Man.Rows.Count > 1) { MessageBox.Show(this, "L'utente " + WU.login + " è associato ad una mail responsabile presente in più responsabili (" + WU.email + ")", "Errore"); return(false); } if (Man.Rows.Count == 1) { string sql = "UPDATE manager set userweb=" + QHS.quote(WU.login) + // ", passwordweb=" + QHS.quote(WU.email)+ " WHERE " + QHS.CmpKey(Man.Rows[0]); Conn.SQLRunner(sql, false, 100); } return(AddVirtualUser(WebConn, WU)); }
public bool GetDataFromReader(FrmNotable_Importazione.LeggiFile Reader, out WebUser WU, out FlowChartUser FCU) { Reader.GetNext(); WU = null; FCU = null; if (!Reader.DataPresent()) { return(false); } WU = new WebUser(); FCU = new FlowChartUser(); WU.cf = Reader.getCurrField("cf"); WU.cognome = Reader.getCurrField("cognome"); WU.email = Reader.getCurrField("email"); WU.idcustomuser = Reader.getCurrField("idcustomuser"); WU.login = Reader.getCurrField("login"); WU.nome = Reader.getCurrField("nome"); WU.tipoutente = Reader.getCurrField("tipoutente"); FCU.all_sorkind01 = Reader.getCurrField("all_attr01"); FCU.all_sorkind02 = Reader.getCurrField("all_attr02"); FCU.all_sorkind03 = Reader.getCurrField("all_attr03"); FCU.all_sorkind04 = Reader.getCurrField("all_attr04"); FCU.all_sorkind05 = Reader.getCurrField("all_attr05"); FCU.flagdefault = Reader.getCurrField("flagdefault"); FCU.flowchartcode = Reader.getCurrField("flowchartcode"); FCU.idcustomuser = Reader.getCurrField("idcustomuser").ToString(); FCU.sorkind01_withchilds = Reader.getCurrField("attr01_childs"); FCU.sorkind02_withchilds = Reader.getCurrField("attr02_childs"); FCU.sorkind03_withchilds = Reader.getCurrField("attr03_childs"); FCU.sorkind04_withchilds = Reader.getCurrField("attr04_childs"); FCU.sorkind05_withchilds = Reader.getCurrField("attr05_childs"); FCU.title = Reader.getCurrField("ruolo"); FCU.idsor01 = attr_id_fromcode(1, Reader.getCurrField("codiceattr01")); FCU.idsor02 = attr_id_fromcode(2, Reader.getCurrField("codiceattr02")); FCU.idsor03 = attr_id_fromcode(3, Reader.getCurrField("codiceattr03")); FCU.idsor04 = attr_id_fromcode(4, Reader.getCurrField("codiceattr04")); FCU.idsor05 = attr_id_fromcode(5, Reader.getCurrField("codiceattr05")); FCU.start = Reader.getCurrField("datainizio"); return(true); }
bool CollegaUtenteWeb(DataAccess WebConn, WebUser WU, FlowChartUser FCU) { int tipo = CfgFn.GetNoNullInt32(WU.tipoutente.ToString().Trim()); switch (tipo) { case 1: return(CollegaResponsabile(WebConn, WU, FCU)); case 3: return(CollegaUtenteNormale(WebConn, WU, FCU)); case 4: return(CollegaUtenteLDAP(WebConn, WU, FCU)); default: MessageBox.Show(this, "Il tipo utente " + WU.tipoutente.ToString() + " non è contemplato (login " + WU.login + ")", "Errore"); return(false); } }
public bool CollegaUtenteNormale(DataAccess WebConn, WebUser WU, FlowChartUser FCU) { if (WU.login.ToString() == "") { MessageBox.Show(this, "Impossibile aggiungere un utente senza login", "Errore"); return(false); } //Aggiunge l'utente al dipartimento e if (!AggiungiUtente(WU.login.ToString())) { return(false); //per gli utenti normali login= idcustomuser } if (FCU.flowchartcode != DBNull.Value) { if (!AggiungiUtenteAdOrganigramma(FCU)) { return(false); } return(AddVirtualUser(WebConn, WU)); } return(true); //se non c'è una voce di organigramma lo aggiunge come utente normale punto e basta }
/// <summary> /// Aggiunge un utente al gruppo organigramma e poi lo collega ad uno specifico nodo dell'organigramma stesso /// </summary> /// <param name="FlowChartUserToAdd"></param> /// <returns></returns> bool AggiungiUtenteAdOrganigramma(FlowChartUser FlowChartUserToAdd) { MetaData meta_flowchartuser = Meta.Dispatcher.Get("flowchartuser"); string idcustomuser = FlowChartUserToAdd.idcustomuser; string login = idcustomuser; // assunzione base bool res = AggiungiUtenteAGruppoOrganigramma(idcustomuser, login); if (!res) { return(false); } object idflowchart = Conn.DO_READ_VALUE("flowchart", QHS.AppAnd(QHS.CmpEq("codeflowchart", FlowChartUserToAdd.flowchartcode), QHS.CmpEq("ayear", Conn.GetSys("esercizio"))) , "idflowchart"); if (idflowchart == null || idflowchart == DBNull.Value) { MessageBox.Show(this, "Il codice " + FlowChartUserToAdd.flowchartcode + " non è presente nella tabella organigramma dell'anno " + Conn.GetSys("esercizio").ToString() + ".", "Errore"); return(false); } string f = QHS.AppAnd(QHS.CmpEq("idcustomuser", idcustomuser), QHS.CmpEq("idflowchart", idflowchart), QHS.CmpEq("title", FlowChartUserToAdd.title)); if (Conn.RUN_SELECT_COUNT("flowchartuser", f, false) > 0) { return(true); //già presente } DataTable TFlowchartUser = Conn.CreateTableByName("flowchartuser", "*"); DataSet D = new DataSet(); D.Tables.Add(TFlowchartUser); MetaData.SetDefault(TFlowchartUser, "idflowchart", idflowchart); MetaData.SetDefault(TFlowchartUser, "idcustomuser", idcustomuser); meta_flowchartuser.SetDefaults(TFlowchartUser); DataRow fu = meta_flowchartuser.Get_New_Row(null, TFlowchartUser); fu["title"] = FlowChartUserToAdd.title; fu["idsor01"] = FlowChartUserToAdd.idsor01; fu["idsor02"] = FlowChartUserToAdd.idsor02; fu["idsor03"] = FlowChartUserToAdd.idsor03; fu["idsor04"] = FlowChartUserToAdd.idsor04; fu["idsor05"] = FlowChartUserToAdd.idsor05; fu["all_sorkind01"] = FlowChartUserToAdd.all_sorkind01; fu["all_sorkind02"] = FlowChartUserToAdd.all_sorkind02; fu["all_sorkind03"] = FlowChartUserToAdd.all_sorkind03; fu["all_sorkind04"] = FlowChartUserToAdd.all_sorkind04; fu["all_sorkind05"] = FlowChartUserToAdd.all_sorkind05; fu["sorkind01_withchilds"] = FlowChartUserToAdd.sorkind01_withchilds; fu["sorkind02_withchilds"] = FlowChartUserToAdd.sorkind02_withchilds; fu["sorkind03_withchilds"] = FlowChartUserToAdd.sorkind03_withchilds; fu["sorkind04_withchilds"] = FlowChartUserToAdd.sorkind04_withchilds; fu["sorkind05_withchilds"] = FlowChartUserToAdd.sorkind05_withchilds; fu["flagdefault"] = FlowChartUserToAdd.flagdefault; fu["start"] = FlowChartUserToAdd.start == DBNull.Value? new DateTime(1900, 1, 1): FlowChartUserToAdd.start; Easy_PostData pd = new Easy_PostData(); pd.InitClass(D, Conn); if (!pd.DO_POST()) { MessageBox.Show(this, "Errore nel salvataggio dei dati in AggiungiUtenteAdOrganigramma", "Errore"); return(false); } else { return(true); } }