public void SetDefaultAttivita(Attivita attivita) { if (attivita != null) { // Alert scadenza attività var tipoAlert = _daoFactory.GetTipoAlertDao().Find(6, false); if (tipoAlert != null) { foreach (var dettaglio in tipoAlert.DettaglioReferenti) { if (dettaglio.Azienda.ID == attivita.PraticaRiferimento.CondominioRiferimento.Azienda.ID) { var alertAttivita = new AlertAttivita(dettaglio.TipoNotifica, dettaglio.ReferenteRiferimento, attivita) { AvvisoScadenza = dettaglio.NumeroGiorni.GetValueOrDefault() }; } } } } }
public AlertAttivitaDTO GetByDomainEntity(AlertAttivita alert) { try { return setDto(alert); } catch (Exception ex) { if (alert != null) _log.ErrorFormat("Errore nel caricamento degli Alert - {0} - id:{1}", ex, Utility.GetMethodDescription(), alert.ID); else _log.ErrorFormat("Errore nel caricamento degli Alert - ALERT ATTIVITA --> NULL - {0} - azienda:{1}", ex, Utility.GetMethodDescription(), _info.Azienda); throw; } }
private bool insert(AlertAttivitaDTO alertDto, out AlertAttivita 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); Attivita attivita = null; if (alertDto.IdAttivita > 0) attivita = daoFactory.GetAttivitaDao().Find(alertDto.IdAttivita, false); Referente referente = null; if (alertDto.IdDestinatario > 0) referente = daoFactory.GetReferenteDao().Find(alertDto.IdDestinatario, false); if (attivita != null && referente != null) { alert = new AlertAttivita(notifyType, referente, attivita) { AvvisoScadenza = alertDto.AvvisoScadenza, TipoAvviso = notifyType }; daoFactory.GetAlertAttivitaDao().SaveOrUpdate(alert); } } catch (Exception ex) { _log.ErrorFormat("Errore nell'inserimento dell'alert - {0} - id:{1} - attivita:{2} - referente:{3}", ex, Utility.GetMethodDescription(), alertDto.ID, alertDto.IdAttivita, alertDto.IdDestinatario); } } return true; }
private bool update(AlertAttivitaDTO alertDto, out AlertAttivita alert) { alert = null; var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda); try { alert = daoFactory.GetAlertAttivitaDao().GetById(alertDto.ID, false); alert = daoFactory.GetAlertAttivitaDao().GetById(alertDto.ID, false); alert.AvvisoScadenza = alertDto.AvvisoScadenza; alert.Destinatario = daoFactory.GetReferenteDao().GetById(alertDto.IdDestinatario, false); alert.TipoAvviso = (NotifyType)Enum.Parse(typeof(NotifyType), alertDto.TipoAvviso); daoFactory.GetAlertAttivitaDao().Update(alert); } catch (Exception ex) { _log.ErrorFormat("Errore nel salvataggio dell'alert attività - {0} - id:{1}", ex, Utility.GetMethodDescription(), alertDto.ID); throw; } return true; }
private AlertAttivitaDTO setDto(AlertAttivita alert) { try { var dto = new AlertAttivitaDTO { AvvisoScadenza = alert.AvvisoScadenza, DisplayName = alert.ToString(), ID = alert.ID, TipoAvviso = alert.TipoAvviso.ToString(), ToNotify = alert.ToNotify }; if (alert.Destinatario != null) { dto.IdDestinatario = alert.Destinatario.ID; if (alert.Destinatario.IsDinamico) { var referenteEffettivo = alert.Destinatario.GetReferenteEffettivo(alert.Attivita.PraticaRiferimento.CondominioRiferimento, alert.Attivita); dto.DisplayDestinatario = alert.Destinatario.DisplayName; if(referenteEffettivo != null) dto.DisplayDestinatario += " (" + referenteEffettivo.Sigla + ")"; } else dto.DisplayDestinatario = alert.Destinatario.DisplayName; } dto.Version = alert.Version; return dto; } catch (Exception ex) { _log.ErrorFormat("Errore nella creazione dell'oggetto DTO per alert - {0} - id:{1}", ex, Utility.GetMethodDescription(), alert.ID); throw; } }
private void notifySingleAlert(AlertAttivita alert, IDaoFactory daoFactory) { if (alert.TipoAvviso == NotifyType.Email) notifyEmailAlert(alert, daoFactory); // In futuro prevedere le altre tipologie di notifica }