Exemplo n.º 1
0
 public void UpdateAllegati(SendMail.Model.TipoCanale tipoCanale, Comunicazioni comunicazione)
 {
     using (ComunicazioniSQLDb dao = new ComunicazioniSQLDb())
     {
         dao.UpdateAllegati(tipoCanale, comunicazione);
     }
 }
Exemplo n.º 2
0
        public int GetCountComunicazioniInviate(SendMail.Model.TipoCanale tipoCanale, string utente)
        {
            List <MailStatus> lstatus = new List <MailStatus>();

            lstatus.Add(MailStatus.SENT);
            return(GetCountComunicazioni(tipoCanale, lstatus, true, utente));
        }
Exemplo n.º 3
0
        public Int32 GetCountComunicazioniNonInviate(SendMail.Model.TipoCanale tipoCanale, string utente)
        {
            List <MailStatus> lStatus = new List <MailStatus>();

            lStatus.Add(MailStatus.SENT);
            return(GetCountComunicazioni(tipoCanale, lStatus, false, utente));
        }
Exemplo n.º 4
0
 public ICollection <Comunicazioni> LoadComunicazioniDaInviare(SendMail.Model.TipoCanale tipoCanale, int?minRec, int?maxRec, string utente)
 {
     using (ComunicazioniSQLDb dao = new ComunicazioniSQLDb())
     {
         return(dao.GetComunicazioniDaInviare(tipoCanale, minRec, maxRec, utente));
     }
 }
Exemplo n.º 5
0
 public Int32 LoadCountComunicazioniNonInviate(SendMail.Model.TipoCanale tipoCanale, string utente)
 {
     using (ComunicazioniSQLDb dao = new ComunicazioniSQLDb())
     {
         return(dao.GetCountComunicazioniNonInviate(tipoCanale, utente));
     }
 }
Exemplo n.º 6
0
 public void UpdateAllegati(SendMail.Model.TipoCanale tipoCanale, Comunicazioni comunicazione)
 {
     using (IComunicazioniDao dao = this.getDaoContext().DaoImpl.ComunicazioniDao)
     {
         dao.UpdateAllegati(tipoCanale, comunicazione);
     }
 }
Exemplo n.º 7
0
 public ICollection <Comunicazioni> LoadComunicazioniDaInviare(SendMail.Model.TipoCanale tipoCanale, int?minRec, int?maxRec, string utente)
 {
     using (IComunicazioniDao dao = this.getDaoContext().DaoImpl.ComunicazioniDao)
     {
         return(dao.GetComunicazioniDaInviare(tipoCanale, minRec, maxRec, utente));
     }
 }
Exemplo n.º 8
0
 public Int32 LoadCountComunicazioniNonInviate(SendMail.Model.TipoCanale tipoCanale, string utente)
 {
     using (IComunicazioniDao dao = this.getDaoContext().DaoImpl.ComunicazioniDao)
     {
         return(dao.GetCountComunicazioniNonInviate(tipoCanale, utente));
     }
 }
Exemplo n.º 9
0
        public ICollection <Comunicazioni> GetComunicazioniInviate(SendMail.Model.TipoCanale tipoCanale, int?minRec, int?maxRec, string utente)
        {
            V_Comunicazioni_Complete_Obj v       = new V_Comunicazioni_Complete_Obj(context);
            List <MailStatus>            lStatus = new List <MailStatus>();

            lStatus.Add(MailStatus.SENT);
            return(v.GetComunicazioniByStatus(tipoCanale, lStatus, true, minRec, maxRec, utente).Cast <Comunicazioni>().ToList());
        }
Exemplo n.º 10
0
        public void UpdateFlussoComunicazione(SendMail.Model.TipoCanale tipoCanale, Comunicazioni comunicazione)
        {
            using (IComFlussoDao dao = this.Context.DaoImpl.ComFlussoDao)
            {
                ComFlusso f = comunicazione.ComFlussi[tipoCanale].OrderBy(x => !x.IdFlusso.HasValue).ThenBy(x => x.IdFlusso).Last();
                if (f.IdFlusso.HasValue)
                {
                    try
                    {
                        dao.Update(f);
                    }
                    catch (Exception ex)
                    {
                        //TASK: Allineamento log - Ciro
                        if (!ex.GetType().Equals(typeof(ManagedException)))
                        {
                            ManagedException mEx = new ManagedException("Errore nell\'aggiornamento del flusso della comunicazione." +
                                                                        " Successiva chiamata al metodo di inserimento. Dettaglio: "
                                                                        + ex.Message, "ERR_COM_003", string.Empty, string.Empty, ex.InnerException);
                            mEx.addEnanchedInfosTag("DETAILS", new XElement("info",
                                                                            new XElement("user_msg", "Errore nell\'aggiornamento del flusso della comunicazione." +
                                                                                         " Successiva chiamata al metodo di inserimento. Dettaglio: "
                                                                                         + ex.Message),
                                                                            new XElement("exception",
                                                                                         new XElement("message", ex.Message),
                                                                                         new XElement("source", ex.Source),
                                                                                         new XElement("stack", ex.StackTrace),
                                                                                         new XElement("innerException", ex.InnerException)),
                                                                            new XElement("IdComunicazione", (comunicazione.IdComunicazione != null)?comunicazione.IdComunicazione.ToString():" vuoto. "),
                                                                            new XElement("UniqueId", (comunicazione.UniqueId != null)?comunicazione.UniqueId.ToString():" vuoto. ")).ToString(SaveOptions.DisableFormatting));
                            ErrorLogInfo err = new ErrorLogInfo(mEx);
                            err.objectID = comunicazione.IdComunicazione.ToString();
                            _log.Error(err);
                            dao.Insert(f);
                            throw mEx;  //aggiunto il 26/02/2016
                        }
                        else
                        {
                            dao.Insert(f);
                            throw ex; //aggiunto il 26/02/2016
                        }

                        //Codice Originario

                        //ErrorLogInfo error = new ErrorLogInfo();
                        //error.freeTextDetails = ex.Message;
                        //error.logCode = "ERR_COM_003";
                        //_log.Error(error);
                        //dao.Insert(f);
                    }
                }
                else
                {
                    dao.Insert(f);
                }
            }
        }
Exemplo n.º 11
0
        private int GetCountComunicazioni(SendMail.Model.TipoCanale tipoCanale, List <MailStatus> status, bool include, string utente)
        {
            int cnt = 0;

            using (OracleCommand oCmd = base.CurrentConnection.CreateCommand())
            {
                oCmd.CommandText = "SELECT count(*)"
                                   + " FROM comunicazioni_flusso cf"
                                   + " INNER JOIN ("
                                   + " SELECT ref_id_com, MAX(data_operazione) AS dta_ope"
                                   + " FROM comunicazioni_flusso"
                                   + " WHERE canale = '" + tipoCanale + "'"
                                   + " GROUP BY ref_id_com"
                                   + " ) gr"
                                   + " ON cf.ref_id_com = gr.ref_id_com AND cf.data_operazione = gr.dta_ope"
                                   + " WHERE"
                                   + " cf.stato_comunicazione_new"
                                   + ((include == false) ? " NOT" : "")
                                   + " IN (" + String.Join(", ", status.Select(s => ((int)s).ToString()).ToArray()) + ")"
                                   + " AND cf.ute_ope = '" + utente + "'";
                try
                {
                    cnt = Convert.ToInt32(oCmd.ExecuteScalar());
                }
                catch (Exception ex)
                {
                    cnt = 0;
                    //TASK: Allineamento log - Ciro
                    if (!ex.GetType().Equals(typeof(ManagedException)))
                    {
                        ManagedException mEx = new ManagedException(string.Format("Errore count comunicazioni utente: {0}. Details: {1}", utente, ex.Message),
                                                                    "ERR_COM_001",
                                                                    string.Empty,
                                                                    string.Empty,
                                                                    ex.InnerException);
                        ErrorLogInfo err = new ErrorLogInfo(mEx);
                        _log.Error(err);
                    }
                    else
                    {
                        throw ex;
                    }
                    //ErrorLogInfo error = new ErrorLogInfo();
                    //error.freeTextDetails = ex.Message;
                    //error.logCode = "ERR_COM_001";
                    //_log.Error(error);
                }
            }
            return(cnt);
        }
Exemplo n.º 12
0
        public void UpdateAllegati(SendMail.Model.TipoCanale tipoCanale, Comunicazioni comunicazione)
        {
            this.Context.StartTransaction(this.GetType());

            try
            {
                using (IComAllegatoDao allDao = this.Context.DaoImpl.ComAllegatoDao)
                {
                    allDao.Update(comunicazione.ComAllegati);
                }
            }
            catch (Exception ex)
            {
                if (this.Context.TransactionRootElement == this.GetType())
                {
                    this.Context.RollBackTransaction(this.GetType());
                }

                //TASK: Allineamento log - Ciro
                if (!ex.GetType().Equals(typeof(ManagedException)))
                {
                    ManagedException mEx = new ManagedException(String.Format("Errore update allegati. Dettaglio: {0}", ex.Message),
                                                                "ERR_COM_004",
                                                                string.Empty,
                                                                string.Empty,
                                                                ex.InnerException);
                    ErrorLogInfo err = new ErrorLogInfo(mEx);
                    err.objectID = comunicazione.IdComunicazione.ToString();
                    _log.Error(err);
                    throw mEx;
                }
                //ErrorLogInfo error = new ErrorLogInfo();
                //error.freeTextDetails = ex.Message;
                //error.logCode = "ERR_COM_004";
                //_log.Error(error);
                else
                {
                    throw ex;
                }
            }

            if (this.Context.TransactionRootElement == this.GetType())
            {
                this.Context.EndTransaction(this.GetType());
            }
        }
Exemplo n.º 13
0
        public ICollection <Comunicazioni> GetComunicazioniNonInviate(SendMail.Model.TipoCanale tipoCanale, int?minRec, int?maxRec, string utente)
        {
            V_Comunicazioni_Complete_Obj v       = new V_Comunicazioni_Complete_Obj(context);
            List <MailStatus>            lStatus = new List <MailStatus>();

            lStatus.Add(MailStatus.SENT);
            IList <ComunicazioniType> lC = v.GetComunicazioniByStatus(tipoCanale, lStatus, false, minRec, maxRec, utente);

            if (lC != null)
            {
                return(lC.Cast <Comunicazioni>().ToList());
            }
            else
            {
                return(null);
            }
        }