Beispiel #1
0
        /// <summary>
        /// Crea una relazione valida tra persona e gruppo
        /// </summary>
        public PersonaGruppo(Persona persona, Gruppo gruppo)
        {
            Persona = persona;
            Gruppo = gruppo;

            if (Persona != null)
                Persona.Gruppi.Add(this);
            if (Gruppo != null)
                Gruppo.Persone.Add(this);
        }
Beispiel #2
0
        public string saveGruppo(Azienda azienda, DettaglioTabellaSempliceDTO elemento, Gipasoft.Sfera.Enums.CRUDOperation operation, IDaoFactory daoFactory)
        {
            try
            {
                var message = string.Empty;

                Gruppo item;
                if (elemento.Id > 0)
                    item = daoFactory.GetGruppoDao().Find(elemento.Id, false);
                else
                {
                    item = new Gruppo(elemento.Descrizione) {Codice = elemento.AltriDati, DescrizioneBreve = elemento.DescrizioneBreve, Ordine = elemento.Ordine };
                    daoFactory.GetGruppoDao().SaveOrUpdate(item);
                }

                if (item != null)
                {
                    if (operation == Gipasoft.Sfera.Enums.CRUDOperation.Update)
                    {
                        var descrizioneBreve = elemento.DescrizioneBreve;
                        if (!string.IsNullOrEmpty(descrizioneBreve) && descrizioneBreve.Length > 20)
                            descrizioneBreve = descrizioneBreve.Substring(0, 20);

                        var codice = elemento.AltriDati;
                        if (!string.IsNullOrEmpty(codice) && codice.Length > 10)
                            codice = codice.Substring(0, 10);

                        item.Codice = codice;
                        item.Descrizione = elemento.Descrizione;
                        item.DescrizioneBreve = descrizioneBreve;
                        item.Ordine = elemento.Ordine;
                        item.Azienda = azienda;
                    }
                    else if (operation == Gipasoft.Sfera.Enums.CRUDOperation.Delete)
                        daoFactory.GetGruppoDao().Delete(item);
                }

                return message;
            }
            catch (Exception ex)
            {
                
                _log.Error($"Errore nel salvataggio del gruppo - {Utility.GetMethodDescription()} - id:{elemento.Id}", ex);
                throw;
            }
        }
Beispiel #3
0
 public GruppoDTO GetByDomainEntityGruppo(Gruppo item)
 {
     try
     {
         return setGruppoDto(item);
     }
     catch (Exception ex)
     {
         
         _log.Error($"Errore nel caricamento dei gruppi - {Utility.GetMethodDescription()} - id:{item.ID}", ex);
         throw;
     }
 }
Beispiel #4
0
 private GruppoDTO setGruppoDto(Gruppo item)
 {
     var dto = new GruppoDTO { ID = item.ID, Descrizione = item.Descrizione, DescrizioneBreve = item.DescrizioneBreve, Ordine = item.Ordine };
     return dto;
 }
Beispiel #5
0
        private bool insert(GruppoDTO dto, out Gruppo item)
        {
            item = null;
            var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda);

            try
            {
                var descrizioneBreve = dto.DescrizioneBreve;
                if (!string.IsNullOrEmpty(descrizioneBreve) && descrizioneBreve.Length > 20)
                    descrizioneBreve = descrizioneBreve.Substring(0, 20);

                item = new Gruppo(dto.Descrizione) {DescrizioneBreve = descrizioneBreve, Ordine = dto.Ordine};
                daoFactory.GetGruppoDao().SaveOrUpdate(item);
            }
            catch (Exception ex)
            {
                _log.ErrorFormat("Errore nel salvataggio del gruppo - {0} - id:{1}", ex, Utility.GetMethodDescription(), dto.ID);
                throw;
            }

            return true;
        }
Beispiel #6
0
        private bool update(GruppoDTO dto, out Gruppo item)
        {
            bool result;
            item = null;
            var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda);

            try
            {
                item = daoFactory.GetGruppoDao().GetById(dto.ID, false);

                // Condizione necessare per il controllo del fatto che sul DB ho una versione uguale o più vecchia
                if (dto.Version == item.Version)
                {
                    var descrizioneBreve = dto.DescrizioneBreve;
                    if (!string.IsNullOrEmpty(descrizioneBreve) && descrizioneBreve.Length > 20)
                        descrizioneBreve = descrizioneBreve.Substring(0, 20);

                    item.DescrizioneBreve = descrizioneBreve;
                    item.Ordine = dto.Ordine;
                    item.Descrizione = dto.Descrizione;
                    result = true;
                }
                else
                {
                    // Eccezione: Sul db c'è qualche cosa di più nuovo.
                     
                    _log.ErrorFormat("Errore nel salvataggio del gruppo- il dato sul db è più recente di quello che si vuole salvare - {0} - id:{1}", Utility.GetMethodDescription(), dto.ID);
                    result = false;
                }
            }
            catch (Exception ex)
            {
                _log.ErrorFormat("Errore nel salvataggio del gruppo - {0} - id:{1}", ex, Utility.GetMethodDescription(), dto.ID);
                throw;
            }

            return result;
        }