public NotaPredefinitaDTO[] GetAllByAzienda(int idAzienda) { try { var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda); var lista = daoFactory.GetNotaPredefinitaDao().GetByAzienda(idAzienda); var listaDto = new NotaPredefinitaDTO[lista.Count]; int index = 0; foreach (var item in lista) { listaDto[index] = setDto(item); index++; } return listaDto; } catch (Exception ex) { _log.Error("Errore nel caricamento delle note predefinite - " + Library.Utility.GetMethodDescription() + " - idAzienda:" + idAzienda, ex); throw; } }
private string manage(NotaPredefinitaDTO dto) { string message = string.Empty; NotaPredefinita item; bool result; // Controllo sullo stato U, D, I switch (dto.Stato.ToUpper()) { case "U": result = update(dto, out item); if (!result) { //Il dato sul database è più recente di quello utilizzato message = "Un altro utente ha aggiornato la stessa nota."; } break; case "I": result = insert(dto, out item); if (!result) throw new Exception("Impossibile scrivere sul database"); break; case "D": result = delete(dto.ID); if (!result) throw new Exception("Impossibile scrivere sul database"); break; } return message; }
private bool insert(NotaPredefinitaDTO dto, out NotaPredefinita item) { var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda); try { item = new NotaPredefinita(dto.Descrizione, (Gipasoft.Sfera.Enums.TipoNotaEnum)Enum.Parse(typeof (Gipasoft.Sfera.Enums.TipoNotaEnum), dto.Tipo), dto.TestoHtml, daoFactory.GetAziendaDao().GetById(_info.Azienda, false)) {Ordine = dto.Ordine}; daoFactory.GetNotaPredefinitaDao().SaveOrUpdate(item); } catch (Exception ex) { _log.Error("Errore nell'inserimento delle note predefinite - " + Library.Utility.GetMethodDescription() + " - id:" + dto.ID, ex); throw; } return true; }
private bool update(NotaPredefinitaDTO dto, out NotaPredefinita item) { bool result; item = null; var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda); try { item = daoFactory.GetNotaPredefinitaDao().GetById(dto.ID, false); if (dto.Version == item.Version) { item.Tipo = (Gipasoft.Sfera.Enums.TipoNotaEnum)Enum.Parse(typeof(Gipasoft.Sfera.Enums.TipoNotaEnum), dto.Tipo); item.Ordine = dto.Ordine; item.Descrizione = dto.Descrizione; item.Testo = dto.TestoHtml; result = true; } else { // Eccezione: Sul db c'è qualche cosa di più nuovo. _log.Error("Errore nel salvataggio delle note predefinite: id:" + dto.ID + " - il dato sul db è più recente di quello che si vuole salvare"); result = false; } } catch (Exception ex) { _log.Error("Errore nel salvataggio delle note predefinite - " + Library.Utility.GetMethodDescription() + " - id:" + dto.ID, ex); throw; } return result; }
private NotaPredefinitaDTO setDto(NotaPredefinita item) { var dto = new NotaPredefinitaDTO { Descrizione = item.Descrizione, Tipo = item.Tipo.ToString(), Testo = Library.Conversione.HtmlToString(item.Testo), TestoHtml = item.Testo, Ordine = item.Ordine, ID = item.ID, Version = item.Version }; if (item.Azienda != null) dto.IdAzienda = item.Azienda.ID; dto.IsDeleteAllow = (dto.IdAzienda > 0); return dto; }
public string ManageDomainEntity(NotaPredefinitaDTO dto) { try { return manage(dto); } catch (Exception ex) { _log.Error("Errore nella gestione delle note predefinite: " + Library.Utility.GetMethodDescription() + " - id:" + dto.ID, ex); throw; } }