Exemplo n.º 1
0
        internal static RUBR_ENTITA MapToRubrEntita(RubricaEntita e, bool isInsert)
        {
            RUBR_ENTITA r = new RUBR_ENTITA();

            r.AFF_IPA     = e.AffIPA;
            r.COD_FIS     = e.CodiceFiscale;
            r.COGNOME     = e.Cognome;
            r.DISAMB_POST = e.DisambPost;
            r.DISAMB_PRE  = e.DisambPre;
            r.FLG_IPA     = e.IsIPA.ToString();
            r.NOTE        = e.Note;
            r.NOME        = (string.IsNullOrEmpty(e.Nome)) ? e.Ufficio : e.Nome;
            r.P_IVA       = e.PartitaIVA;
            r.SITO_WEB    = e.SitoWeb;
            if (!isInsert)
            {
                r.ID_REFERRAL = (decimal)e.IdReferral;
            }
            else
            {
                r.ID_PADRE        = e.IdPadre;
                r.REFERRAL_TYPE   = e.ReferralType.ToString();
                r.RAGIONE_SOCIALE = e.RagioneSociale;
                r.REF_ID_ADDRESS  = e.RefIdAddress;
                r.FLG_IPA         = Convert.ToInt16(e.IsIPA).ToString();
                r.UFFICIO         = e.Ufficio;
                r.IPA_DN          = e.IPAdn;
                r.IPA_ID          = e.IPAId;
                r.DISAMB_PRE      = e.DisambPre;
                r.DISAMB_POST     = e.DisambPost;
                r.REF_ORG         = e.RefOrg;
                r.AFF_IPA         = e.AffIPA;
            }
            return(r);
        }
Exemplo n.º 2
0
 public void Insert(SendMail.Model.RubricaMapping.RubricaContatti entity)
 {
     using (var dbcontext = new FAXPECContext())
     {
         using (var dbContextTransaction = dbcontext.Database.BeginTransaction())
         {
             try
             {
                 if (entity.Entita != null)
                 {
                     RUBR_ENTITA e = DaoSQLServerDBHelper.MapToRubrEntita(entity.Entita, true);
                     dbcontext.RUBR_ENTITA.Add(e);
                     entity.Entita.IdReferral = (long)e.ID_REFERRAL;
                     entity.RefIdReferral     = (long)e.ID_REFERRAL;
                     RUBR_CONTATTI c = DaoSQLServerDBHelper.MapToRubrContatti(entity, true);
                     entity.IdContact = (long)c.ID_CONTACT;
                     dbcontext.RUBR_CONTATTI.Add(c);
                     dbcontext.SaveChanges();
                     dbContextTransaction.Commit();
                 }
                 else if (entity.Entita == null && entity.RefIdReferral != null)
                 {
                     RUBR_CONTATTI c = DaoSQLServerDBHelper.MapToRubrContatti(entity, true);
                     entity.IdContact = (long)c.ID_CONTACT;
                     dbcontext.RUBR_CONTATTI.Add(c);
                     int righe = dbcontext.SaveChanges();
                     dbContextTransaction.Commit();
                 }
                 else if (entity.Entita == null && entity.RefIdReferral == null)
                 {
                     dbContextTransaction.Rollback();
                     ManagedException mEx = new ManagedException("Errore nell'inserimento del contatto per il contatto " + entity.Mail + " >> ERR_C014 >> Dettagli Errore:  Mancano riferimenti entità",
                                                                 "SQL_ERR_C014", string.Empty, string.Empty, null);
                     ErrorLogInfo err = new ErrorLogInfo(mEx);
                     _log.Error(err);
                     throw mEx;
                 }
             }
             catch (Exception ex)
             {
                 dbContextTransaction.Rollback();
                 if (!ex.GetType().Equals(typeof(ManagedException)))
                 {
                     ManagedException mEx = new ManagedException(ex.Message,
                                                                 "SQL_ERR_C013", string.Empty, string.Empty, ex);
                     ErrorLogInfo err = new ErrorLogInfo(mEx);
                     _log.Error(err);
                     throw mEx;
                 }
                 else
                 {
                     throw ex;
                 }
             }
         }
     }
 }