/// <summary> /// /// </summary> /// <param name="ruolo"></param> /// <param name="idRegistro"></param> /// <param name="idNodoTitolario"></param> /// <param name="tipoOggetto"></param> /// <returns> ritorna un arraylist e in caso di eccezione null</returns> //ricerca dei ruoli autorizzati di livello superiore public System.Collections.ArrayList getGerarchiaSup(DocsPaVO.utente.Ruolo ruolo, string idRegistro, string idNodoTitolario, DocsPaVO.trasmissione.TipoOggetto tipoOggetto) { logger.Debug("getGerarchiaSup"); System.Collections.ArrayList listaRuoli = new System.Collections.ArrayList(); try { DataSet dataSet; //Costruzione della query //si estraggono i codici delle UO parent del ruolo System.Collections.ArrayList idParentUO = new System.Collections.ArrayList(); DocsPaVO.utente.UnitaOrganizzativa currentUO; currentUO = ruolo.uo; DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); idParentUO = getParentUO(ruolo); DocsPaDB.Query_Utils.Utils obj = new DocsPaDB.Query_Utils.Utils(); obj.selCorGlTipRuoSup(out dataSet, tipoOggetto, idRegistro, idNodoTitolario, ruolo, idParentUO); foreach (DataRow ruoloRow in dataSet.Tables["RUOLI"].Rows) { listaRuoli.Add(this.GetRuolo(ruoloRow)); } } catch (Exception e) { // TODO: Utilizzare il progetto DocsPaDbManagement //database.closeConnection(); //throw e; string exMessage = e.Message; listaRuoli = null; } return(listaRuoli); }
public bool ExportStructure(XmlDocument doc, XmlNode amministrazione, string idAmm) { bool result = true; //presume successo try { System.Data.DataSet dataSetRuoli; DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); result = amministrazioneXml.Exp_GetRuoli(out dataSetRuoli, idAmm); if (!result) { throw new Exception(); } if (dataSetRuoli != null) { XmlNode ruolo; XmlNode ruoli = amministrazione.AppendChild(doc.CreateElement("RUOLI")); foreach (System.Data.DataRow rowRuolo in dataSetRuoli.Tables["RUOLI"].Rows) { ruolo = ruoli.AppendChild(doc.CreateElement("RUOLO")); ruolo.AppendChild(doc.CreateElement("DESCRIZIONE")).InnerText = rowRuolo["VAR_DESC_RUOLO"].ToString(); ruolo.AppendChild(doc.CreateElement("CODICE")).InnerText = rowRuolo["VAR_CODICE"].ToString().ToUpper(); ruolo.AppendChild(doc.CreateElement("LIVELLO")).InnerText = rowRuolo["NUM_LIVELLO"].ToString(); } } } catch (Exception exception) { logger.Debug("Errore durante l'esportazione dei ruoli", exception); result = false; } return(result); }
/// <summary> /// Procedura per la lettura dell'XML /// </summary> /// <param name="rootNode"></param> private void NavigateXml(XmlNode rootNode, string idAmm) { try { XmlNodeList nodiRuolo = rootNode.SelectNodes("RUOLO"); // Estrazione dati e nodi sottostanti foreach (XmlNode node in nodiRuolo) { // Leggi dati string codice = this.GetXmlField("CODICE", node, false); string descrizione = this.GetXmlField("DESCRIZIONE", node, false); int livello = Int32.Parse(this.GetXmlField("LIVELLO", node, false)); codice = codice.ToUpper(); DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(7, 10, "Import tipo ruolo: " + codice); DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); string idRuolo = amministrazioneXml.NewRuolo(idAmm, codice, descrizione, livello); if (idRuolo == null) { throw new Exception(); } } } catch (Exception e) { logger.Debug("Errore durante l'importazione dei ruoli", e); } }
/// <summary> /// Procedura per la lettura dell'XML /// </summary> /// <param name="rootNode"></param> private void NavigateXml(XmlNode rootNode, string idAmm) { XmlNodeList nodiRagioni = rootNode.SelectNodes("RAGIONE"); // Estrazione dati e nodi sottostanti foreach (XmlNode node in nodiRagioni) { // Leggi dati string codice = this.GetXmlField("CODICE", node, false); string tipo = this.GetXmlField("TIPO", node, false); string visibilita = this.GetXmlField("VISIBILITA", node, false); string diritti = this.GetXmlField("DIRITTI", node, false); string destinatario = this.GetXmlField("DESTINATARIO", node, false); string risposta = this.GetXmlField("RISPOSTA", node, false); string tipoRisposta = this.GetXmlField("TIPORISPOSTA", node, false); string eredita = this.GetXmlField("EREDITA", node, false); string note = this.GetXmlField("NOTE", node, false); string notifica = this.GetXmlField("NOTIFICA", node, false); codice = codice.ToUpper(); // Inserisci i dati DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); bool result = amministrazioneXml.NewRagioneTrasmissione(codice, tipo, visibilita, diritti, destinatario, risposta, tipoRisposta, eredita, note, notifica, idAmm); if (!result) { throw new Exception(); } } }
/// <summary> /// Procedura per la lettura dell'XML /// </summary> /// <param name="rootNode"></param> private void NavigateXml(XmlNode rootNode) { //lettura dei server di posta XmlNodeList nodiServers = rootNode.SelectNodes("SERVERPOSTA"); // Estrazione dati e nodi sottostanti foreach (XmlNode node in nodiServers) { string codice = this.GetXmlField("CODICE", node, false); string serverPop = this.GetXmlField("SERVERPOP", node, false); string portaPop = this.GetXmlField("PORTAPOP", node, false); string serverSmtp = this.GetXmlField("SERVERSMTP", node, false); string portaSmtp = this.GetXmlField("PORTASMTP", node, false); string dominio = this.GetXmlField("DOMINIO", node, false); string descrizione = this.GetXmlField("DESCRIZIONE", node, false); codice = codice.ToUpper(); // Inserisci il server di posta DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(System.Configuration.ConfigurationManager.AppSettings["importConnectionString"]); if (!amministrazioneXml.NewServerPosta(codice, serverPop, portaPop, serverSmtp, portaSmtp, dominio, descrizione)) { throw new Exception(); } } }
/// <summary> /// Cancella la struttura dei documenti esistenti /// </summary> /// <returns></returns> public bool DropAll() { bool result = true; try { if (errorCode == ErrorCode.NoError) { DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); if (!amministrazioneXml.ClearRagioniTrasmissione()) { throw new Exception(); } amministrazioneXml.Dispose(); } } catch (Exception exception) { logger.Debug("Errore durante la cancellazione del titolario", exception); errorCode = ErrorCode.GenericError; } if (errorCode != ErrorCode.NoError) { result = false; } return(result); }
public bool ChangeAdminPwd(string user, string password) { bool result; DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazione = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); result = amministrazione.ChangeAdminPwd(user, password); return(result); }
/// <summary> /// /// </summary> /// <param name="ruolo"></param> /// <returns></returns> public EsitoOperazione InserisciRuolo(OrgRuolo ruolo, bool computeAtipicita) { DocsPaDB.Query_DocsPAWS.Amministrazione dbAmm = new DocsPaDB.Query_DocsPAWS.Amministrazione(); DocsPaVO.amministrazione.EsitoOperazione esito = new DocsPaVO.amministrazione.EsitoOperazione(); //verifica se il codice è univoco sulla corr_globali DocsPaDB.Query_DocsPAWS.AmministrazioneXml obj = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); if (!obj.CheckCountCondition("DPA_CORR_GLOBALI", "UPPER(VAR_CODICE)=UPPER('" + ruolo.Codice + "') AND ID_AMM=" + ruolo.IDAmministrazione)) { esito.Codice = 1; esito.Descrizione = "codice già utilizzato da altro ruolo"; } else { //verifica se il codice è univoco sulla groups if (!obj.CheckCountCondition("GROUPS", "UPPER(GROUP_ID)=UPPER('" + ruolo.Codice + "')")) { esito.Codice = 2; esito.Descrizione = "codice già utilizzato da altro gruppo"; } else { if (!dbAmm.AmmInsNuovoRuolo(ruolo)) { esito.Codice = 3; esito.Descrizione = "si è verificato un errore: inserimento del ruolo"; } //verifica se si vuole disabilitare alla ricezione delle trasmissioni un ruolo di riferimento if (ruolo.DiRiferimento.ToString().Equals("1") && ruolo.DisabledTrasm.ToString().Equals("1")) { esito.Codice = 4; esito.Descrizione = "Impossibile disabilitare alla ricezione delle trasmissioni un ruolo di riferimento"; } } } // Se è richiesto il calcolo dell'atipicità, viene richiamata la procedura if (esito.Codice == 0 && computeAtipicita) { try { using (DocsPaDB.Query_DocsPAWS.Documentale doc = new DocsPaDB.Query_DocsPAWS.Documentale()) doc.CalcolaAtipicitaRuoliSottoposti(ruolo); } catch (Exception e) { esito.Codice = 5; esito.Descrizione = "Errore durante il calcolo di atipicità su documenti e fascicoli dei ruoli sottoposti"; } } obj = null; dbAmm = null; return(esito); }
/// <summary> /// sposta un ruolo da una uo ad un'altra /// </summary> /// <param name="codRuolo">codice del ruolo da spostare</param> /// <param name="codAmm">codice Amm.ne</param> /// <param name="codNewUO">codice della nuova UO nella quale deve essere spostato il ruolo</param> /// <returns>bool</returns> public bool MoveRoleToNewUO(string codRuolo, string codAmm, string codNewUO, string descNewUO, string codTipoRuolo, string descTipoRuolo, string codNewRuolo, string descNewRuolo) { bool result = false; DocsPaDB.Query_DocsPAWS.AmministrazioneXml amm = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); result = amm.MoveRoleToNewUO(codRuolo, codAmm, codNewUO, descNewUO, codTipoRuolo, descTipoRuolo, codNewRuolo, descNewRuolo); return(result); }
private void NavigateXmlForUpdate(XmlNode rootNode, string idAmm) { try { XmlNodeList nodiRuolo = rootNode.SelectNodes("RUOLO"); // Estrazione dati e nodi sottostanti foreach (XmlNode node in nodiRuolo) { XmlAttribute attribute = node.Attributes["MODE"]; string mode = ""; if (attribute != null) { mode = attribute.InnerText.ToUpper(); } string codice = this.GetXmlField("CODICE", node, false); string descrizione = this.GetXmlField("DESCRIZIONE", node, false); descrizione = DocsPaUtils.Functions.Functions.ReplaceApexes(descrizione); int livello = Int32.Parse(this.GetXmlField("LIVELLO", node, false)); codice = codice.ToUpper(); DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); if (mode == "CREATED") { string idRuolo = amministrazioneXml.NewRuolo(idAmm, codice, descrizione, livello); if (idRuolo == null) { throw new Exception(); } } if (mode == "MODIFIED") { if (!amministrazioneXml.UpdateRuolo(idAmm, codice, descrizione, livello)) { throw new Exception(); } } if (mode == "DELETED") { if (!amministrazioneXml.DeleteRuolo(idAmm, codice)) { throw new Exception(); } } } } catch (Exception e) { logger.Debug("Errore durante l'update dei ruoli", e); } }
public bool CheckAdminLogged(string user) { bool result = false; DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazione = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); if (amministrazione.CheckUniqueAdmin(user) == user) { result = true; } return(result); }
private void NavigateXmlForUpdate(XmlNode rootNode, string idAmm) { XmlNodeList nodiRagioni = rootNode.SelectNodes("RAGIONE"); // Estrazione dati e nodi sottostanti foreach (XmlNode node in nodiRagioni) { string mode = ""; XmlAttribute attribute = node.Attributes["MODE"]; if (attribute != null) { mode = attribute.InnerText.ToUpper(); } // Leggi dati string codice = this.GetXmlField("CODICE", node, false).ToUpper(); string tipo = this.GetXmlField("TIPO", node, false); string visibilita = this.GetXmlField("VISIBILITA", node, false); string diritti = this.GetXmlField("DIRITTI", node, false); string destinatario = this.GetXmlField("DESTINATARIO", node, false); string risposta = this.GetXmlField("RISPOSTA", node, false); string tipoRisposta = this.GetXmlField("TIPORISPOSTA", node, false); string eredita = this.GetXmlField("EREDITA", node, false); string note = this.GetXmlField("NOTE", node, false); string notifica = this.GetXmlField("NOTIFICA", node, false); DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); if (mode == "CREATED") { if (!amministrazioneXml.NewRagioneTrasmissione(codice, tipo, visibilita, diritti, destinatario, risposta, tipoRisposta, eredita, note, notifica, idAmm)) { throw new Exception(); } } if (mode == "MODIFIED") { // modifica i dati if (!amministrazioneXml.UpdateRagioneTrasmissione(codice, tipo, visibilita, diritti, destinatario, risposta, tipoRisposta, eredita, note, notifica, idAmm)) { throw new Exception(); } } if (mode == "DELETED") { if (!amministrazioneXml.DeleteRagioneTrasmissione(codice, idAmm)) { throw new Exception(); } } } }
private void NavigateXmlForUpdate(XmlNode rootNode) { //lettura dei server di posta XmlNodeList nodiServers = rootNode.SelectNodes("SERVERPOSTA"); // Estrazione dati e nodi sottostanti foreach (XmlNode node in nodiServers) { XmlAttribute attribute = node.Attributes["MODE"]; string mode = ""; if (attribute != null) { mode = attribute.InnerText.ToUpper(); } string codice = this.GetXmlField("CODICE", node, false); string serverPop = this.GetXmlField("SERVERPOP", node, false); string portaPop = this.GetXmlField("PORTAPOP", node, false); string serverSmtp = this.GetXmlField("SERVERSMTP", node, false); string portaSmtp = this.GetXmlField("PORTASMTP", node, false); string dominio = this.GetXmlField("DOMINIO", node, false); string descrizione = this.GetXmlField("DESCRIZIONE", node, false); descrizione = DocsPaUtils.Functions.Functions.ReplaceApexes(descrizione); codice = codice.ToUpper(); DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); if (mode == "CREATED") { // Inserisci il server di posta if (!amministrazioneXml.NewServerPosta(codice, serverPop, portaPop, serverSmtp, portaSmtp, dominio, descrizione)) { throw new Exception(); } } if (mode == "MODIFIED") { // Inserisci il server di posta if (!amministrazioneXml.UpdateServerPosta(codice, serverPop, portaPop, serverSmtp, portaSmtp, dominio, descrizione)) { throw new Exception(); } } if (mode == "DELETED") { //cancella server di posta if (!amministrazioneXml.DeleteServerPosta(codice)) { throw new Exception(); } } } }
public static void disconnettiUtente(string userId, string codiceAmm) { DocsPaDB.Query_DocsPAWS.Utenti gestioneUtenti = new DocsPaDB.Query_DocsPAWS.Utenti(); DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazione = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); string idAmm = amministrazione.GetAdminByName(codiceAmm); if (idAmm != null) { gestioneUtenti.UnlockUserLogin(userId, idAmm); } return; }
/// <summary> /// /// </summary> /// <param name="ruolo"></param> /// <param name="dbProvider"></param> /// <returns></returns> public System.Collections.ArrayList getParentUO(DocsPaVO.utente.Ruolo ruolo, DBProvider dbProvider) { System.Collections.ArrayList lista = new System.Collections.ArrayList(); DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); string idCurrentUO = null; if (ruolo.uo != null) { idCurrentUO = ruolo.uo.systemId; } while (idCurrentUO != null) { lista.Add(idCurrentUO); idCurrentUO = amministrazioneXml.GetUOParent(idCurrentUO, dbProvider); } return(lista); }
public bool ExportAnagraficaFunzioni(XmlDocument doc, XmlNode root) { bool result = true; //presume successo try { System.Data.DataSet dataSetFunzioniElementari; DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); result = amministrazioneXml.Exp_GetFunzioniElementari(out dataSetFunzioniElementari); if (!result) { logger.Debug("Errore lettura anagrafica funzioni elementari"); throw new Exception(); } if (dataSetFunzioniElementari != null) { XmlNode funzioniElementari = root.AppendChild(doc.CreateElement("FUNZIONIELEMENTARI")); foreach (System.Data.DataRow rowFunzioni in dataSetFunzioniElementari.Tables["FUNZIONIELEMENTARI"].Rows) { XmlNode funzioneElementare = funzioniElementari.AppendChild(doc.CreateElement("FUNZIONEELEMENTARE")); funzioneElementare.AppendChild(doc.CreateElement("DESCRIZIONE")).InnerText = rowFunzioni["VAR_DESC_FUNZIONE"].ToString(); funzioneElementare.AppendChild(doc.CreateElement("CODICE")).InnerText = rowFunzioni["COD_FUNZIONE"].ToString().ToUpper(); string tipoFunzFull = "Full"; string tipoFunz = rowFunzioni["CHA_TIPO_FUNZ"].ToString(); if (tipoFunz == "R") { tipoFunzFull = "Read"; } if (tipoFunz == "W") { tipoFunzFull = "Write"; } funzioneElementare.AppendChild(doc.CreateElement("ACCESSO")).InnerText = tipoFunzFull; } } } catch (Exception exception) { logger.Debug("Errore durante l'esportazione della anagrafica funzioni elementari", exception); result = false; } return(result); }
public bool ExportStructure(XmlDocument doc, XmlNode amministrazione, string idAmm) { bool result = true; //presume successo try { System.Data.DataSet dataSetRagioni; DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); result = amministrazioneXml.Exp_GetRagioniTrasmissione(out dataSetRagioni, idAmm); if (!result) { throw new Exception(); } if (dataSetRagioni != null) { XmlNode ragioni = amministrazione.AppendChild(doc.CreateElement("RAGIONITRASMISSIONE")); foreach (System.Data.DataRow rowRagione in dataSetRagioni.Tables["RAGIONI"].Rows) { XmlNode ragione = ragioni.AppendChild(doc.CreateElement("RAGIONE")); ragione.AppendChild(doc.CreateElement("CODICE")).InnerText = rowRagione["VAR_DESC_RAGIONE"].ToString().ToUpper(); ragione.AppendChild(doc.CreateElement("TIPO")).InnerText = rowRagione["CHA_TIPO_RAGIONE"].ToString(); ragione.AppendChild(doc.CreateElement("VISIBILITA")).InnerText = rowRagione["CHA_VIS"].ToString(); ragione.AppendChild(doc.CreateElement("DIRITTI")).InnerText = rowRagione["CHA_TIPO_DIRITTI"].ToString(); ragione.AppendChild(doc.CreateElement("DESTINATARIO")).InnerText = rowRagione["CHA_TIPO_DEST"].ToString(); ragione.AppendChild(doc.CreateElement("RISPOSTA")).InnerText = rowRagione["CHA_RISPOSTA"].ToString(); ragione.AppendChild(doc.CreateElement("TIPORISPOSTA")).InnerText = rowRagione["CHA_TIPO_RISPOSTA"].ToString(); ragione.AppendChild(doc.CreateElement("EREDITA")).InnerText = rowRagione["CHA_EREDITA"].ToString(); ragione.AppendChild(doc.CreateElement("NOTE")).InnerText = rowRagione["VAR_NOTE"].ToString(); ragione.AppendChild(doc.CreateElement("NOTIFICA")).InnerText = rowRagione["VAR_NOTIFICA_TRASM"].ToString(); } } } catch (Exception exception) { logger.Debug("Errore durante l'esportazione delle ragioni di trasmissione", exception); result = false; } return(result); }
/// <summary> /// /// </summary> /// <param name="ruolo"></param> /// <param name="idRegistro"></param> /// <param name="idNodoTitolario"></param> /// <param name="tipoOggetto"></param> /// <returns> ritorna un arraylist e in caso di eccezione null</returns> //ricerca dei ruoli autorizzati di livello superiore public System.Collections.ArrayList getGerarchiaSup(DocsPaVO.utente.Ruolo ruolo, string idRegistro, string idNodoTitolario, DocsPaVO.trasmissione.TipoOggetto tipoOggetto, DocsPaDB.DBProvider dbProvider) { logger.Debug("getGerarchiaSup"); System.Collections.ArrayList listaRuoli = new System.Collections.ArrayList(); try { DataSet dataSet; //si estraggono i codici delle UO parent del ruolo System.Collections.ArrayList idParentUO = new System.Collections.ArrayList(); DocsPaVO.utente.UnitaOrganizzativa currentUO; currentUO = ruolo.uo; DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); idParentUO = getParentUO(ruolo, dbProvider); DocsPaDB.Query_Utils.Utils obj = new DocsPaDB.Query_Utils.Utils(); obj.selCorGlTipRuoSup(out dataSet, tipoOggetto, idRegistro, idNodoTitolario, ruolo, idParentUO, dbProvider); foreach (DataRow ruoloRow in dataSet.Tables["RUOLI"].Rows) { DocsPaVO.utente.Ruolo ruoloSup = new DocsPaVO.utente.Ruolo(); ruoloSup.systemId = ruoloRow["SYSTEM_ID"].ToString(); ruoloSup.descrizione = ruoloRow["VAR_DESC_RUOLO"].ToString(); ruoloSup.codice = ruoloRow["VAR_CODICE"].ToString(); ruoloSup.codiceCorrispondente = ruoloSup.codice; ruoloSup.codiceRubrica = ruoloRow["VAR_COD_RUBRICA"].ToString(); ruoloSup.uo = getParents(ruoloRow["ID_UO"].ToString(), ruolo); ruoloSup.idGruppo = ruoloRow["ID_GRUPPO"].ToString(); listaRuoli.Add(ruoloSup); } } catch (Exception e) { string exMessage = e.Message; listaRuoli = null; } return(listaRuoli); }
/// <summary> /// /// </summary> /// <param name="user"></param> /// <param name="password"></param> /// <returns> /// 1-> errore utente sconosciuto /// 2-> errore amministratore già loggato /// 0-> ok /// </returns> public string CheckAdminLogin(string user, string password) { string result = null; DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazione = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); if (amministrazione.CheckAdminLogin(user, password) == true) { //amministratore valido, verifica DPA_LOCK if (user.ToUpper() == "ADMINISTRATOR") { amministrazione.DeleteUniqueAdmin(); } result = amministrazione.CheckUniqueAdmin(user); if (result == null) { amministrazione.SetUniqueAdmin(user); result = user; } } logger.Debug("Login amministratore: utente = " + user + ": esito = " + result); return(result); }
public bool ExportStructure(XmlDocument doc, XmlNode node) { bool result = true; //presume successo try { //legge i server System.Data.DataSet dataSet; DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); result = amministrazioneXml.Exp_GetServerPosta(out dataSet); if (!result) { throw new Exception(); } if (dataSet != null) { XmlNode servers = node.AppendChild(doc.CreateElement("SERVERS")); foreach (System.Data.DataRow row in dataSet.Tables["SERVERPOSTA"].Rows) { //esportazione dati della amministrazione XmlNode serverPosta = servers.AppendChild(doc.CreateElement("SERVERPOSTA")); serverPosta.AppendChild(doc.CreateElement("CODICE")).InnerText = row["VAR_CODICE"].ToString().ToUpper(); serverPosta.AppendChild(doc.CreateElement("SERVERPOP")).InnerText = row["VAR_SERVER_POP"].ToString(); serverPosta.AppendChild(doc.CreateElement("PORTAPOP")).InnerText = row["NUM_PORTA_POP"].ToString(); serverPosta.AppendChild(doc.CreateElement("SERVERSMTP")).InnerText = row["VAR_SERVER_SMTP"].ToString(); serverPosta.AppendChild(doc.CreateElement("PORTASMTP")).InnerText = row["NUM_PORTA_SMTP"].ToString(); serverPosta.AppendChild(doc.CreateElement("DOMINIO")).InnerText = row["VAR_DOMINIO"].ToString(); serverPosta.AppendChild(doc.CreateElement("DESCRIZIONE")).InnerText = row["VAR_DESCRIZIONE"].ToString(); } } } catch (Exception exception) { logger.Debug("Errore durante l'esportazione dei server", exception); result = false; } return(result); }
public bool ExportStructure(XmlDocument doc, XmlNode amministrazione, string idAmm) { bool result = true; //presume successo try { System.Data.DataSet dataSetRegistri; DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); result = amministrazioneXml.Exp_GetRegistri(out dataSetRegistri, idAmm); if (!result) { throw new Exception(); } if (dataSetRegistri != null) { if (dataSetRegistri.Tables["REGISTRI"].Rows.Count > 0) { XmlNode registri = amministrazione.AppendChild(doc.CreateElement("REGISTRI")); foreach (System.Data.DataRow rowRegistro in dataSetRegistri.Tables["REGISTRI"].Rows) { XmlNode registro = registri.AppendChild(doc.CreateElement("REGISTRO")); registro.AppendChild(doc.CreateElement("DESCRIZIONE")).InnerText = rowRegistro["VAR_DESC_REGISTRO"].ToString(); registro.AppendChild(doc.CreateElement("CODICE")).InnerText = rowRegistro["VAR_CODICE"].ToString().ToUpper(); registro.AppendChild(doc.CreateElement("AUTOMATICO")).InnerText = rowRegistro["CHA_AUTOMATICO"].ToString().ToUpper(); XmlNode registroMail = registro.AppendChild(doc.CreateElement("EMAIL")); registroMail.AppendChild(doc.CreateElement("INDIRIZZO")).InnerText = rowRegistro["VAR_EMAIL_REGISTRO"].ToString(); registroMail.AppendChild(doc.CreateElement("UTENTE")).InnerText = rowRegistro["VAR_USER_MAIL"].ToString(); registroMail.AppendChild(doc.CreateElement("PASSWORD")).InnerText = rowRegistro["VAR_PWD_MAIL"].ToString(); registroMail.AppendChild(doc.CreateElement("SMTP")).InnerText = rowRegistro["VAR_SERVER_SMTP"].ToString(); registroMail.AppendChild(doc.CreateElement("POP")).InnerText = rowRegistro["VAR_SERVER_POP"].ToString(); registroMail.AppendChild(doc.CreateElement("PORTASMTP")).InnerText = rowRegistro["NUM_PORTA_SMTP"].ToString(); registroMail.AppendChild(doc.CreateElement("PORTAPOP")).InnerText = rowRegistro["NUM_PORTA_POP"].ToString(); registroMail.AppendChild(doc.CreateElement("USERSMTP")).InnerText = rowRegistro["VAR_USER_SMTP"].ToString(); registroMail.AppendChild(doc.CreateElement("PASSWORDSMTP")).InnerText = rowRegistro["VAR_PWD_SMTP"].ToString(); //string ruoloRif=amministrazioneXml.GetRuoloRif(rowRegistro["SYSTEM_ID"].ToString (),idAmm); string ruoloRif = ""; registro.AppendChild(doc.CreateElement("RUO_RIF")).InnerText = ruoloRif; /*string utenteRif=amministrazioneXml.GetUtenteRif(ruoloRif,idAmm); * if(utenteRif==null) * { * utenteRif=""; * } * else * { * utenteRif=utenteRif.ToUpper(); * }*/ string utenteRif = ""; registro.AppendChild(doc.CreateElement("UT_RIF")).InnerText = utenteRif; } } } } catch (Exception exception) { logger.Debug("Errore durante l'esportazione delle ragioni di trasmissione", exception); result = false; } return(result); }
private void NavigateXmlForUpdate(XmlNode rootNode, string idAmm) { XmlNodeList nodiRegistro = rootNode.SelectNodes("REGISTRO"); // Estrazione dati e nodi sottostanti foreach (XmlNode node in nodiRegistro) { XmlAttribute attribute = node.Attributes["MODE"]; string mode = ""; if (attribute != null) { mode = attribute.InnerText.ToUpper(); } string codice = this.GetXmlField("CODICE", node, false); string descrizione = this.GetXmlField("DESCRIZIONE", node, false); string automatico = this.GetXmlField("AUTOMATICO", node, false); //Celeste descrizione = DocsPaUtils.Functions.Functions.ReplaceApexes(descrizione); XmlNode email = node.SelectSingleNode("EMAIL"); codice = codice.ToUpper(); if (email == null) { //logger.DebugAdm (true,"Indirizzo email non valido",null); throw new Exception("Indirizzo email non valido"); } string indirizzo = this.GetXmlField("INDIRIZZO", email, false); string utente = this.GetXmlField("UTENTE", email, false); string password = this.GetXmlField("PASSWORD", email, false); string smtp = this.GetXmlField("SMTP", email, false); string pop = this.GetXmlField("POP", email, false); string portaSmtp = this.GetXmlField("PORTASMTP", email, false); string portaPop = this.GetXmlField("PORTAPOP", email, false); string usersmtp = this.GetXmlField("USERSMTP", email, false); string pwdsmtp = this.GetXmlField("PASSWORDSMTP", email, false); string ruoloRif = this.GetXmlField("RUO_RIF", node, false); string utenteRif = this.GetXmlField("UT_RIF", node, false); DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); string idRegistro = null; if (mode == "CREATED") { // Inserisci il registro /* Celeste idRegistro=amministrazioneXml.NewRegistro(codice,descrizione indirizzo,utente, */ idRegistro = amministrazioneXml.NewRegistro(codice, descrizione, automatico, indirizzo, utente, password, smtp, pop, portaSmtp, portaPop, usersmtp, pwdsmtp, idAmm); if (idRegistro == null) { logger.Debug("Errore nella creazione registro"); throw new Exception(); } } if (mode == "MODIFIED") { // modifica il registro /* Celeste if(!amministrazioneXml.UpdateRegistro(codice,descrizione,indirizzo,utente, */ if (!amministrazioneXml.UpdateRegistro(codice, descrizione, automatico, indirizzo, utente, password, smtp, pop, portaSmtp, portaPop, usersmtp, pwdsmtp, idAmm)) { throw new Exception(); } idRegistro = amministrazioneXml.GetRegByName(codice); } /* * if(mode=="MODIFIED" || mode=="CREATED") * { * if(idRegistro!=null && ruoloRif!=null) * { * string idRuolo=amministrazioneXml.GetRuoloUOByName(ruoloRif,idAmm); * if(idRuolo!=null) * { * if(amministrazioneXml.UpdateRuoloRif(idRuolo,idRegistro)==false) * { * logger.Debug("Errore nella impostazione ruolo di riferimento registro"); * throw new Exception(); * } * } * string idGruppo=amministrazioneXml.GetGroupByName(ruoloRif); * string idUtente=amministrazioneXml.GetUserByName(utenteRif,idAmm); * if(idUtente!=null && idGruppo!=null) * { * if(amministrazioneXml.UpdateUtenteRif(idUtente,idGruppo,idAmm)==false) * { * logger.Debug("Errore nella impostazione utente di riferimento registro"); * throw new Exception(); * } * } * } * }*/ if (mode == "DELETED") { //TO DO //cancellazione registro, da valutare } } }
/// <summary> /// Procedura per la lettura dell'XML /// </summary> /// <param name="rootNode"></param> private void NavigateXml(XmlNode rootNode, string idAmm) { XmlNodeList nodiRegistro = rootNode.SelectNodes("REGISTRO"); // Estrazione dati e nodi sottostanti foreach (XmlNode node in nodiRegistro) { string codice = this.GetXmlField("CODICE", node, false); codice = codice.ToUpper(); string descrizione = this.GetXmlField("DESCRIZIONE", node, false); //Celeste string automatico = this.GetXmlField("AUTOMATICO", node, false); //fine // Leggi email XmlNode email = node.SelectSingleNode("EMAIL"); if (email == null) { throw new Exception(); } string indirizzo = this.GetXmlField("INDIRIZZO", email, false); string utente = this.GetXmlField("UTENTE", email, false); string password = this.GetXmlField("PASSWORD", email, false); string smtp = this.GetXmlField("SMTP", email, false); string pop = this.GetXmlField("POP", email, false); string portaSmtp = this.GetXmlField("PORTASMTP", email, false); string portaPop = this.GetXmlField("PORTAPOP", email, false); string usersmtp = this.GetXmlField("USERSMTP", email, false); string pwdsmtp = this.GetXmlField("PASSWORDSMTP", email, false); string ruoloRif = this.GetXmlField("RUO_RIF", email, false); string utenteRif = this.GetXmlField("UT_RIF", email, false); // Inserisci il registro DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); string idRegistro = amministrazioneXml.NewRegistro(codice, descrizione, automatico, //Celeste indirizzo, utente, password, smtp, pop, portaSmtp, portaPop, usersmtp, pwdsmtp, idAmm); if (idRegistro == null) { throw new Exception(); } /* * if(ruoloRif!=null) * { * string idRuolo=amministrazioneXml.GetRuoloUOByName(ruoloRif,idAmm); * if(idRuolo!=null) * { * if(amministrazioneXml.UpdateRuoloRif(idRuolo,idRegistro)==false) * { * logger.Debug("Errore nella impostazione ruolo di riferimento registro"); * throw new Exception(); * } * } * string idGruppo=amministrazioneXml.GetGroupByName(ruoloRif); * string idUtente=amministrazioneXml.GetUserByName(utenteRif,idAmm); * if(idUtente!=null && idGruppo!=null) * { * if(amministrazioneXml.UpdateUtenteRif(idUtente,idGruppo,idAmm)==false) * { * logger.Debug("Errore nella impostazione utente di riferimento registro"); * throw new Exception(); * } * } * }*/ } }
public bool LogOutAdmin() { DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazione = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); return(amministrazione.DeleteUniqueAdmin()); }
/// <summary> /// Procedura per la lettura dell'XML /// </summary> /// <param name="rootNode"></param> private void NavigateXml(XmlNode rootNode, string idAmm) { XmlNodeList nodiFunzione = rootNode.SelectNodes("TIPO"); // Estrazione dati e nodi sottostanti foreach (XmlNode node in nodiFunzione) { // Leggi dati XmlNode dati = node.SelectSingleNode("DATI"); if (dati == null) { logger.Debug("Errore corpo DATI tipo funzione"); throw new Exception(); } string codice = this.GetXmlField("CODICE", dati, false); string descrizione = this.GetXmlField("DESCRIZIONE", dati, false); codice = codice.ToUpper(); DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(6, 10, "Import tipo funzione: " + codice); // Inserisci il tipo funzione DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); string idTipoFunzione = amministrazioneXml.NewTipoFunzione(codice, descrizione); if (idTipoFunzione == null) { logger.Debug("Errore creazione tipo funzione"); throw new Exception(); } // Leggi funzioni XmlNode bloccoFunzioni = node.SelectSingleNode("FUNZIONI"); if (bloccoFunzioni == null) { logger.Debug("Errore tag FUNZIONI tipo funzione"); throw new Exception(); } XmlNodeList funzioni = bloccoFunzioni.SelectNodes("FUNZIONE"); foreach (XmlNode functionNode in funzioni) { descrizione = this.GetXmlField("DESCRIZIONE", functionNode, false); codice = this.GetXmlField("CODICE", functionNode, false); string accesso = this.GetXmlField("ACCESSO", functionNode, true); codice = codice.ToUpper(); DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(6, 10, "Import funzione: " + codice); if (accesso == null) { accesso = "Full"; } // Inserisci la funzione string idFunzione = amministrazioneXml.NewFunzione(codice, descrizione, accesso, idTipoFunzione); if (idFunzione == null) { logger.Debug("Errore creazione funzione"); throw new Exception(); } } } }
private void NavigateXmlForUpdate(XmlNode rootNode) { DocsPaUtils.LogsManagement.ProgressLogger pl = DocsPaUtils.LogsManagement.ProgressLogger.getInstance(false); try { /*XmlNode servers= rootNode.SelectSingleNode("SERVERS"); * if(servers!=null) * { * int idMessage=pl.NewMessage("Caricamento Servers di Posta"); * ServerXml serverXml = new ServerXml(); * * if(!serverXml.UpdateStructure(servers)) * { * pl.UpdateMessage(idMessage,null,true,true); * logger.Debug("Errore aggiornamento servers"); * throw new Exception(); * } * pl.UpdateMessage(idMessage,null,true,false); * }*/ // Funzioni XmlNode funzioni = rootNode.SelectSingleNode("TIPIFUNZIONE"); if (funzioni != null) { int idMessage = pl.NewMessage("Caricamento Tipi Funzione"); logger.Debug("Caricamento Tipi Funzione..."); FunzioniXml funzioniXml = new FunzioniXml(); if (!funzioniXml.UpdateStructure(funzioni)) { pl.UpdateMessage(idMessage, null, true, true); logger.Debug("Errore aggiornamento tipi funzione"); throw new Exception(); } pl.UpdateMessage(idMessage, null, true, false); } XmlNodeList nodiAmministrazione = rootNode.SelectNodes("AMMINISTRAZIONE"); // Estrazione dati e nodi sottostanti foreach (XmlNode node in nodiAmministrazione) { XmlNode dati = node.SelectSingleNode("DATI"); if (dati == null) { logger.Debug("Errore mancanza corpo DATI amministrazione"); //logger.DebugAdm(true,"Errore mancanza corpo DATI tag Amministrazione",null); throw new Exception(); } DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); string idAmm = ""; string mode = ""; XmlAttribute attribute = node.Attributes["MODE"]; if (attribute != null) { mode = attribute.InnerText.ToUpper(); } string codice = this.GetXmlField("CODICE", dati); string descrizione = this.GetXmlField("DESCRIZIONE", dati); string libreria = this.GetXmlField("LIBRERIA", dati); string segnatura = this.GetXmlField("SEGNATURA", dati); string fascicolatura = this.GetXmlField("FASCICOLATURA", dati); string dominio = this.GetXmlField("DOMINIO", dati); string serversmtp = this.GetXmlField("SERVERSMTP", dati); string portasmtp = this.GetXmlField("PORTASMTP", dati); if (portasmtp == null || portasmtp == "") { portasmtp = "NULL"; } string usersmtp = this.GetXmlField("USERSMTP", dati); string pwdsmtp = this.GetXmlField("PASSWORDSMTP", dati); string protocolloInt = this.GetXmlField("PROTOCOLLO_INTERNO", dati); if (protocolloInt != null && protocolloInt != "") { protocolloInt = "1"; } string ragioneTO = this.GetXmlField("RAGIONE_TO", dati); string ragioneCC = this.GetXmlField("RAGIONE_CC", dati); codice = codice.ToUpper(); descrizione = DocsPaUtils.Functions.Functions.ReplaceApexes(descrizione); int idMessage = pl.NewMessage("Caricamento Amministrazione: " + codice); logger.Debug("Caricamento Amministrazione: " + codice); if (mode == "CREATED") { //aggiunge la nuova amministrazione idAmm = amministrazioneXml.NewAmministrazione(codice, descrizione, libreria, segnatura, fascicolatura, dominio, serversmtp, portasmtp, protocolloInt, ragioneTO, ragioneCC, usersmtp, pwdsmtp); if (idAmm == null) { pl.UpdateMessage(idMessage, null, true, true); logger.Debug("Errore nella creazione nuova amministrazione"); throw new Exception(); } DocsPaDB.Utils.Personalization.Reset(); } else if (mode == "MODIFIED") { //modifica i dati della amministrazione idAmm = amministrazioneXml.GetAdminByName(codice); if (!amministrazioneXml.UpdateAmministrazione(codice, descrizione, libreria, segnatura, fascicolatura, dominio, serversmtp, portasmtp, protocolloInt, ragioneTO, ragioneCC, usersmtp, pwdsmtp)) { pl.UpdateMessage(idMessage, null, true, true); logger.Debug("Errore aggiornamento nuova amministrazione"); throw new Exception(); } DocsPaDB.Utils.Personalization.Reset(); } else if (mode == "DELETED") { //TO DO - > cancellazione della amministrazione } else { //in a4ltri casi (mode="") seleziona l'id idAmm = amministrazioneXml.GetAdminByName(codice); if (idAmm == null) { pl.UpdateMessage(idMessage, null, true, true); logger.Debug("Amministrazione: " + codice + " sconosciuta"); //logger.DebugAdm(true,"Amministrazione: " + codice + " sconosciuta",null); throw new Exception(); } } //si analizza il contenuto della amministrazione solo se non è stata cancellata if (mode != "DELETED") { // Ragioni Trasmissione XmlNode ragioni = node.SelectSingleNode("RAGIONITRASMISSIONE"); if (ragioni != null) { int idMessageAmm = pl.NewMessage("Caricamento Ragioni Trasmissione"); logger.Debug("Caricamento Ragioni Trasmissione..."); RagioniTrasmissioneXml ragioniTrasmissioneXml = new RagioniTrasmissioneXml(); if (!ragioniTrasmissioneXml.UpdateStructure(ragioni, idAmm)) { pl.UpdateMessage(idMessageAmm, null, true, true); logger.Debug("Errore aggiornamento ragioni trasmissione"); throw new Exception(); } pl.UpdateMessage(idMessageAmm, null, true, false); } // Registri XmlNode registri = node.SelectSingleNode("REGISTRI"); if (registri != null) { int idMessageAmm = pl.NewMessage("Caricamento Registri"); logger.Debug("Caricamento Registri..."); RegistriXml registriXml = new RegistriXml(); if (!registriXml.UpdateStructure(registri, idAmm)) { pl.UpdateMessage(idMessageAmm, null, true, true); logger.Debug("Errore aggiornamento registri"); throw new Exception(); } pl.UpdateMessage(idMessageAmm, null, true, false); } // // Funzioni // XmlNode funzioni = node.SelectSingleNode("TIPIFUNZIONE"); // if(funzioni!=null) // { // FunzioniXml funzioniXml = new FunzioniXml(); // // if(!funzioniXml.UpdateStructure(funzioni, idAmm)) // { // logger.Debug("Errore aggiornamento tipi funzione"); // throw new Exception(); // } // } // Tipi Ruolo XmlNode ruoli = node.SelectSingleNode("RUOLI"); if (ruoli != null) { int idMessageAmm = pl.NewMessage("Caricamento Ruoli"); logger.Debug("Caricamento Tipo Ruoli..."); RuoliXml ruoliXml = new RuoliXml(); if (!ruoliXml.UpdateStructure(ruoli, idAmm)) { pl.UpdateMessage(idMessageAmm, null, true, true); logger.Debug("Errore aggiornamento ruoli"); throw new Exception(); } pl.UpdateMessage(idMessageAmm, null, true, false); } // Utenti // XmlNode utenti = node.SelectSingleNode("UTENTI"); // if(utenti!=null) // { // int idMessageAmm=pl.NewMessage("Caricamento Utenti"); // UtentiXml utentiXml = new UtentiXml(); // // if(!utentiXml.UpdateStructure(utenti, idAmm)) // { // pl.UpdateMessage(idMessageAmm,null,true,true); // logger.Debug("Errore aggiornamento utenti"); // throw new Exception(); // } // pl.UpdateMessage(idMessageAmm,null,true,false); // } // Organigramma // XmlNode organigramma = node.SelectSingleNode("ORGANIGRAMMA"); // if(organigramma!=null) // { // int idMessageAmm=pl.NewMessage("Caricamento Organigramma"); // OrganigrammaXml organigrammaXml = new OrganigrammaXml(); // // if(!organigrammaXml.UpdateStructure(organigramma, idAmm)) // { // pl.UpdateMessage(idMessageAmm,null,true,true); // logger.Debug("Errore aggiornamento organigramma"); // throw new Exception(); // } // pl.UpdateMessage(idMessageAmm,null,true,false); // } } pl.UpdateMessage(idMessage, null, true, false); } } catch (Exception e) { logger.Debug("Errore durante la navigazione ricorsiva per aggiornamento", e); } }
public bool ExportStructure(XmlDocument doc, XmlNode root) { bool result = true; //presume successo try { DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); System.Data.DataSet dataSetTipi; //amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); result = amministrazioneXml.Exp_GetTipiFunzione(out dataSetTipi); if (!result) { logger.Debug("Errore lettura tipi funzioni"); throw new Exception(); } if (dataSetTipi != null) { XmlNode tipiFunzione = root.AppendChild(doc.CreateElement("TIPIFUNZIONE")); foreach (System.Data.DataRow rowTipo in dataSetTipi.Tables["TIPIFUNZIONE"].Rows) { string idTipoFunzione = rowTipo["SYSTEM_ID"].ToString(); XmlNode tipo = tipiFunzione.AppendChild(doc.CreateElement("TIPO")); XmlNode datiTipo = tipo.AppendChild(doc.CreateElement("DATI")); datiTipo.AppendChild(doc.CreateElement("CODICE")).InnerText = rowTipo["VAR_COD_TIPO"].ToString().ToUpper(); datiTipo.AppendChild(doc.CreateElement("DESCRIZIONE")).InnerText = rowTipo["VAR_DESC_TIPO_FUN"].ToString(); //esportazione funzioni System.Data.DataSet dataSetFunzioni; result = amministrazioneXml.Exp_GetFunzioni(out dataSetFunzioni, idTipoFunzione); if (!result) { logger.Debug("Errore lettura funzioni"); throw new Exception(); } if (dataSetFunzioni != null) { XmlNode funzioni = tipo.AppendChild(doc.CreateElement("FUNZIONI")); foreach (System.Data.DataRow rowFunzione in dataSetFunzioni.Tables["FUNZIONI"].Rows) { XmlNode funzione = funzioni.AppendChild(doc.CreateElement("FUNZIONE")); funzione.AppendChild(doc.CreateElement("DESCRIZIONE")).InnerText = rowFunzione["VAR_DESC_FUNZIONE"].ToString(); funzione.AppendChild(doc.CreateElement("CODICE")).InnerText = rowFunzione["COD_FUNZIONE"].ToString().ToUpper(); string tipoFunz = rowFunzione["ID_TIPO_FUNZIONE"].ToString(); string tipoFunzFull = "Full"; if (tipoFunz == "R") { tipoFunzFull = "Read"; } if (tipoFunz == "W") { tipoFunzFull = "Write"; } funzione.AppendChild(doc.CreateElement("ACCESSO")).InnerText = tipoFunzFull; } } } } } catch (Exception exception) { logger.Debug("Errore durante l'esportazione delle funzioni", exception); result = false; } return(result); }
private void NavigateXmlForUpdate(XmlNode rootNode) { XmlNodeList nodiFunzione = rootNode.SelectNodes("TIPO"); // Estrazione dati e nodi sottostanti foreach (XmlNode node in nodiFunzione) { string mode = ""; XmlAttribute attribute = node.Attributes["MODE"]; if (attribute != null) { mode = attribute.InnerText.ToUpper(); } // Leggi dati XmlNode dati = node.SelectSingleNode("DATI"); if (dati == null) { logger.Debug("Errore corpo DATI tipo funzione"); //logger.DebugAdm(true,"Errore corpo DATI tipo funzione",null); throw new Exception(); } string codice = this.GetXmlField("CODICE", dati, false); string descrizione = this.GetXmlField("DESCRIZIONE", dati, false); descrizione = DocsPaUtils.Functions.Functions.ReplaceApexes(descrizione); codice = codice.ToUpper(); DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); if (mode == "MODIFIED" || mode == "CREATED") { string idTipoFunzione = null; if (mode == "MODIFIED") { // Modifica il tipo funzione idTipoFunzione = amministrazioneXml.UpdateTipoFunzione(codice, descrizione); if (idTipoFunzione == null) { logger.Debug("Errore aggiornamento tipo funzione"); throw new Exception(); } //cancellazione delle funzioni associate al tipo if (!amministrazioneXml.DeleteFunzioni(idTipoFunzione)) { logger.Debug("Errore cancellazioni funzioni associate al tipo funzione"); throw new Exception(); } } if (mode == "CREATED") { // Inserisce il tipo funzione idTipoFunzione = amministrazioneXml.NewTipoFunzione(codice, descrizione); if (idTipoFunzione == null) { logger.Debug("Errore creazione tipo funzione"); throw new Exception(); } } // ricarica le funzioni XmlNode bloccoFunzioni = node.SelectSingleNode("FUNZIONI"); if (bloccoFunzioni == null) { logger.Debug("Errore tag FUNZIONI tipo funzione"); //logger.DebugAdm(true,"Errore tag FUNZIONI tipo funzione",null); throw new Exception(); } XmlNodeList funzioni = bloccoFunzioni.SelectNodes("FUNZIONE"); foreach (XmlNode functionNode in funzioni) { descrizione = this.GetXmlField("DESCRIZIONE", functionNode, false); codice = this.GetXmlField("CODICE", functionNode, false); string accesso = this.GetXmlField("ACCESSO", functionNode, true); codice = codice.ToUpper(); if (accesso == null) { accesso = "Full"; } // Inserisci la funzione string idFunzione = amministrazioneXml.NewFunzione(codice, codice, accesso, idTipoFunzione); if (idFunzione == null) { logger.Debug("Errore creazione funzione"); throw new Exception(); } } } if (mode == "DELETED") { //recupera l'id del tipo funzione string idTipoFunzione = amministrazioneXml.GetTipoFunzione(codice); if (idTipoFunzione == null) { logger.Debug("Codice tipo funzione sconosciuto: " + codice); //logger.DebugAdm(true,"Codice tipo funzione sconosciuto: " + codice,null); throw new Exception(); } //cancella il tipo funzione if (!amministrazioneXml.DeleteTipoFunzione(codice)) { logger.Debug("Errore cancellazione tipo funzione"); throw new Exception(); } //cancellazione delle funzioni associate al tipo funzione if (!amministrazioneXml.DeleteFunzioni(idTipoFunzione)) { logger.Debug("Errore cancellazioni funzioni"); throw new Exception(); } } } }
/// <summary> /// </summary> /// <param name="idAmm"></param> private void SetSegnaturaFascicolatura(string idAmm) { DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); amministrazioneXml.GetSegnaturaFascicolatura(idAmm, out this.segnatura, out this.fascicolatura); }
/// <summary> /// Procedura per la lettura dell'XML /// </summary> /// <param name="rootNode"></param> private void NavigateXml(XmlNode rootNode) { // Servers /* * XmlNode servers= rootNode.SelectSingleNode("SERVERS"); * * DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(1, 10, "Import dei server."); * * if(servers!=null) * { * ServerXml serverXml = new ServerXml(); * * if(!serverXml.CreateStructure(servers)) * { * logger.Debug("Errore creazione servers"); * throw new Exception(); * } * }*/ XmlNodeList nodiAmministrazione = rootNode.SelectNodes("AMMINISTRAZIONE"); // Estrazione dati e nodi sottostanti foreach (XmlNode node in nodiAmministrazione) { DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(2, 10, "Creazione amministrazioni."); //legge l'attributo dropAll ed esegue il drop dell'amministrazione se richiesto dropChildren = false; XmlAttribute attribute = node.Attributes["dropAll"]; if (attribute != null) { bool dropAll = Boolean.Parse(attribute.InnerText); if (dropAll) { this.DropAll(); dropChildren = true; } } XmlNode dati = node.SelectSingleNode("DATI"); if (dati == null) { logger.Debug("Errore mancanza corpo DATI amministrazione"); throw new Exception(); } string codice = this.GetXmlField("CODICE", dati); string descrizione = this.GetXmlField("DESCRIZIONE", dati); string libreria = this.GetXmlField("LIBRERIA", dati); string segnatura = this.GetXmlField("SEGNATURA", dati); string fascicolatura = this.GetXmlField("FASCICOLATURA", dati); string dominio = this.GetXmlField("DOMINIO", dati); string serversmtp = this.GetXmlField("SERVERSMTP", dati); string portasmtp = this.GetXmlField("PORTASMTP", dati); string usersmtp = this.GetXmlField("USERSMTP", dati); string pwdsmtp = this.GetXmlField("PASSWORDSMTP", dati); if (portasmtp == null || portasmtp == "") { portasmtp = "NULL"; } string protocolloInt = this.GetXmlField("PROTOCOLLO_INTERNO", dati); if (protocolloInt != null && protocolloInt != "") { protocolloInt = "1"; } string ragioneTO = this.GetXmlField("RAGIONE_TO", dati); string ragioneCC = this.GetXmlField("RAGIONE_CC", dati); codice = codice.ToUpper(); DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(3, 10, "Import amministrazione: " + codice); DocsPaDB.Query_DocsPAWS.AmministrazioneXml amministrazioneXml = new DocsPaDB.Query_DocsPAWS.AmministrazioneXml(); string idAmm = amministrazioneXml.NewAmministrazione(codice, descrizione, libreria, segnatura, fascicolatura, dominio, serversmtp, portasmtp, protocolloInt, ragioneTO, ragioneCC, usersmtp, pwdsmtp); if (idAmm == null) { logger.Debug("Errore nella creazione nuova amministrazione"); throw new Exception(); } // Ragioni Trasmissione DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(4, 10, "Import ragioni trasmissione dell'amministrazione: " + codice); XmlNode ragioni = node.SelectSingleNode("RAGIONITRASMISSIONE"); RagioniTrasmissioneXml ragioniTrasmissioneXml = new RagioniTrasmissioneXml(); if (!ragioniTrasmissioneXml.CreateStructure(ragioni, idAmm, dropChildren)) { logger.Debug("Errore nella creazione delle ragioni trasmissione"); throw new Exception(); } // Registri DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(5, 10, "Import registri dell'amministrazione: " + codice); XmlNode registri = node.SelectSingleNode("REGISTRI"); RegistriXml registriXml = new RegistriXml(); if (!registriXml.CreateStructure(registri, idAmm, dropChildren)) { logger.Debug("Errore nella creazione dei registri"); throw new Exception(); } // Funzioni DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(6, 10, "Import funzioni dell'amministrazione: " + codice); XmlNode funzioni = node.SelectSingleNode("TIPIFUNZIONE"); FunzioniXml funzioniXml = new FunzioniXml(); if (!funzioniXml.CreateStructure(funzioni, idAmm, dropChildren)) { logger.Debug("Errore nella creazione dei tipi funzione"); throw new Exception(); } // Tipi Ruolo DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(7, 10, "Import tipi ruolo dell'amministrazione: " + codice); XmlNode ruoli = node.SelectSingleNode("RUOLI"); RuoliXml ruoliXml = new RuoliXml(); if (!ruoliXml.CreateStructure(ruoli, idAmm, dropChildren)) { logger.Debug("Errore nella creazione dei ruoli"); throw new Exception(); } // // Utenti // DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(8, 10, "Import utenti dell'amministrazione: " + codice); // XmlNode utenti = node.SelectSingleNode("UTENTI"); // UtentiXml utentiXml = new UtentiXml(); // // if(!utentiXml.CreateStructure(utenti, idAmm, dropChildren)) // { // logger.Debug("Errore nella creazione degli utenti"); // throw new Exception(); // } // // // Organigramma // DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(9, 10, "Import organigramma dell'amministrazione: " + codice); // XmlNode organigramma = node.SelectSingleNode("ORGANIGRAMMA"); // OrganigrammaXml organigrammaXml = new OrganigrammaXml(); // // if(!organigrammaXml.CreateStructure(organigramma, idAmm, dropChildren)) // { // logger.Debug("Errore nella creazione dell'organigramma"); // throw new Exception(); // } DocsPaUtils.LogsManagement.ImportExportLogger.getInstance("import", 0).SetMessage(10, 10, "Import dell'amministrazione completo"); } }