Example #1
0
        /// <summary>
        /// Inserimento di una nuova amministrazione nel documentale
        /// </summary>
        /// <param name="info"></param>
        /// <returns></returns>
        public EsitoOperazione Insert(InfoAmministrazione info)
        {
            EsitoOperazione esito = new EsitoOperazione();

            DocsPaDB.Query_DocsPAWS.Amministrazione dmAmm = new DocsPaDB.Query_DocsPAWS.Amministrazione();

            // campo codice univoco
            if (dmAmm.ContainsAmministrazione(info))
            {
                esito.Codice      = 2;
                esito.Descrizione = "il campo CODICE è già utilizzato da altra amministrazione";
                return(esito);
            }

            // campi obbligatori
            if (!this.CheckRequiredFields(info))
            {
                esito.Codice      = 1;
                esito.Descrizione = "inserire tutti i campi obbligatori";
                return(esito);
            }

            // verifica campi numerici
            if (!string.IsNullOrEmpty(info.PortaSMTP) && !this.IsNumeric(info.PortaSMTP))
            {
                esito.Codice      = 2;
                esito.Descrizione = "il campo PORTA SMTP deve avere un valore numerico";
                return(esito);
            }

            if (!string.IsNullOrEmpty(info.SslSMTP) && !this.IsNumeric(info.SslSMTP))
            {
                esito.Codice      = 2;
                esito.Descrizione = "il campo SSL SMTP deve avere un valore numerico";
                return(esito);
            }

            if (info.AttivaGGPermanenzaTDL.Equals("1"))
            {
                if (!string.IsNullOrEmpty(info.GGPermanenzaTDL))
                {
                    if (!this.IsNumeric(info.GGPermanenzaTDL))
                    {
                        esito.Codice      = 2;
                        esito.Descrizione = "il campo che indica i giorni nella funzionalità di avviso relativo alle 'Cose da fare' deve avere un valore numerico";
                        return(esito);
                    }
                }
                else
                {
                    esito.Codice      = 2;
                    esito.Descrizione = "è stata attivata la funzionalità di avviso delle trasmissioni nelle 'Cose da fare' ma non sono stati specificati i giorni";
                    return(esito);
                }
            }
            else
            {
                if (info.AttivaGGPermanenzaTDL.Equals("0"))
                {
                    info.GGPermanenzaTDL = "NULL";
                }
            }

            string errorMessage;

            // Inserimento nuova amministrazione
            if (!dmAmm.InsertAmministrazione(info, out errorMessage))
            {
                esito.Codice      = 3;
                esito.Descrizione = errorMessage;
            }

            return(esito);
        }