コード例 #1
0
 public static void SetDefault(Contratto contratto)
 {
     if (contratto.Tipo != null)
     {
         // Alert scadenza contratto
         if (contratto.Tipo.TipoAlertRiferimento != null)
         {
             foreach (TipoAlertDettaglio dettaglio in contratto.Tipo.TipoAlertRiferimento.DettaglioReferenti)
             {
                 if (dettaglio.Azienda.ID == contratto.CondominioRiferimento.Azienda.ID)
                 {
                     var alertContratto = new AlertScadenzaContratto(dettaglio.TipoNotifica, "Alert di default", contratto)
                     {
                         Destinatario = dettaglio.ReferenteRiferimento,
                         AvvisoScadenza = dettaglio.NumeroGiorni.GetValueOrDefault()
                     };
                 }
             }
         }
     }
 }
コード例 #2
0
        private bool insert(AlertContrattoDTO alertDto, out AlertContratto alert)
        {
            alert = null;
            if (alertDto != null)
            {
                var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda);

                try
                {
                    var notifyType = NotifyType.Email;
                    if(!string.IsNullOrEmpty(alertDto.TipoAvviso))
                        notifyType = (NotifyType) Enum.Parse(typeof (NotifyType), alertDto.TipoAvviso);

                    switch (alertDto.TipoAlert)
                    {
                        case TipoAlertEnum.ContrattoAppalto:
                            ContrattoAppalto contrattoAppalto = null;
                            if (alertDto.IdContratto > 0)
                                contrattoAppalto = daoFactory.GetContrattoAppaltoDao().Find(alertDto.IdContratto.Value, false);
                            alert = new AlertScadenzaContratto(notifyType, alertDto.Descrizione, contrattoAppalto);
                            break;
                        case TipoAlertEnum.ContrattoAssicurativo:
                            AssicurazioneContratto contrattoAssicurativo = null;
                            if (alertDto.IdContratto > 0)
                                contrattoAssicurativo = daoFactory.GetAssicurazioneContrattoDao().Find(alertDto.IdContratto.Value, false);
                            alert = new AlertScadenzaContratto(notifyType, alertDto.Descrizione, contrattoAssicurativo);
                            break;
                        case TipoAlertEnum.PremioAssicurativo:
                            AssicurazioneContratto contrattoPremio = null;
                            if (alertDto.IdContratto > 0)
                                contrattoPremio = daoFactory.GetAssicurazioneContrattoDao().Find(alertDto.IdContratto.Value, false);
                            alert = new AlertPremioContratto(notifyType, alertDto.Descrizione, contrattoPremio);
                            break;
                    }

                    if (alert != null)
                    {
                        alert.AvvisoScadenza = alertDto.AvvisoScadenza;
                        alert.Descrizione = alertDto.Descrizione;
                        alert.Destinatario = daoFactory.GetReferenteDao().Find(alertDto.IdReferente, false);
                        alert.TipoAvviso = notifyType;

                        daoFactory.GetAlertContrattoDao().SaveOrUpdate(alert);
                    }
                }
                catch (Exception ex)
                {
                    _log.Error("Errore nell'inserimento dell'alert: " + Utility.GetMethodDescription() + " - id:" + alertDto.ID + " - contratto:" + alertDto.IdContratto.GetValueOrDefault(), ex);
                }
            }

            return true;
        }