Exemplo n.º 1
0
        public string saveTipoAttivita(Azienda azienda, DettaglioTabellaSempliceDTO elemento, Gipasoft.Sfera.Enums.CRUDOperation operation, IDaoFactory daoFactory)
        {
            try
            {
                var message = string.Empty;

                if (!string.IsNullOrEmpty(elemento.DescrizioneBreve))
                {
                    TipoAttivita item;
                    if (elemento.Id > 0)
                        item = daoFactory.GetTipoAttivitaDao().Find(elemento.Id, false);
                    else
                    {
                        item = new TipoAttivita(elemento.DescrizioneBreve, elemento.Descrizione);
                        daoFactory.GetTipoAttivitaDao().SaveOrUpdate(item);
                    }

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

                            var descrizione = elemento.Descrizione;
                            if (!string.IsNullOrEmpty(descrizione) && descrizione.Length > 50)
                                descrizione = descrizione.Substring(0, 50);

                            item.Descrizione = descrizione;
                            item.Codice = descrizioneBreve;
                            item.Azienda = azienda;
                        }
                        else if (operation == Gipasoft.Sfera.Enums.CRUDOperation.Delete)
                            daoFactory.GetTipoAttivitaDao().Delete(item);
                    }
                }
                else
                    message = "E' obbligatorio il codice attività";
 
                return message;
            }
            catch (Exception ex)
            {
                _log.ErrorFormat("Errore nel salvataggio del tipo di attività - {0} - id:{1}", ex, Utility.GetMethodDescription(), elemento.Id);
                throw;
            }
        }