示例#1
0
        private OracleParameter[] MapObjectToParams(RubricaContatti r, bool isInsert)
        {
            OracleParameter[] oparams;
            if (isInsert)
            {
                oparams = new OracleParameter[9];
            }
            else
            {
                oparams = new OracleParameter[8];
            }

            oparams[0] = new OracleParameter("pMAIL", OracleDbType.NVarchar2, r.Mail, ParameterDirection.Input);
            oparams[1] = new OracleParameter("pTELEFONO", OracleDbType.NVarchar2, r.Telefono, ParameterDirection.Input);
            oparams[2] = new OracleParameter("pFAX", OracleDbType.NVarchar2, r.Fax, ParameterDirection.Input);
            oparams[3] = new OracleParameter("pFLGPEC", OracleDbType.Int64, Convert.ToInt64(r.IsPec), ParameterDirection.Input);
            oparams[4] = new OracleParameter("pSOURCE", OracleDbType.NVarchar2, r.Source, ParameterDirection.Input);
            oparams[5] = new OracleParameter("pNOTE", OracleDbType.NVarchar2, r.Note, ParameterDirection.Input);
            oparams[6] = new OracleParameter("pCONTACT_REF", OracleDbType.NVarchar2, r.ContactRef, ParameterDirection.Input);
            if (isInsert)
            {
                oparams[7] = new OracleParameter("pIDCONTACT", OracleDbType.Int64, r.IdContact, ParameterDirection.Output);
                oparams[8] = new OracleParameter("pREFIDREFERRAL", OracleDbType.Int64, r.RefIdReferral, ParameterDirection.Input);
            }
            else
            {
                oparams[7] = new OracleParameter("pIDCONTACT", OracleDbType.Int64, r.IdContact, ParameterDirection.Input);
            }

            return(oparams);
        }
        public RubricaContattiType(RubricaContatti r)
            : base(r)
        {
            if (r == null || r.IsValid == false)
            {
                return;
            }

            this.AFF_IPAIsNull         = !(r.AffIPA.HasValue);
            this.ID_CONTACTIsNull      = !(r.IdContact.HasValue);
            this.REF_ID_REFERRALIsNull = !(r.RefIdReferral.HasValue);

            this.m_FLG_IPA       = Convert.ToInt32(r.IsIPA).ToString();
            this.m_FLG_PEC       = Convert.ToInt16(r.IsPec);
            this.m_FLG_PECIsNull = false;
            this.m_TIPO_REF      = r.TipoContatto.ToString();
            if (r.MappedAppsId == null)
            {
                this.m_MAPPED_APPS = MappedAppsListType.Null;
            }
            else
            {
                this.m_MAPPED_APPS             = new MappedAppsListType();
                this.m_MAPPED_APPS.MappedApps  = r.MappedAppsId.ToArray();
                this.m_MAPPED_APPS.StatusArray = new OracleTypes.OracleUdtStatus[r.MappedAppsId.Count];
                Array.ForEach(this.m_MAPPED_APPS.StatusArray, x => x = OracleTypes.OracleUdtStatus.NotNull);
            }
        }
示例#3
0
        //TODO:inserire il parametro applicazione invece del booleano
        public void UpdateRubrContatti(RubricaContatti cont, bool setAppMappings)
        {
            IContattoDao dao = getDaoContext().DaoImpl.ContattoDao;

            dao.Update(cont);
            if (setAppMappings)
            {
                UpdateContattoAppMappings(cont);
            }
        }
示例#4
0
        internal static RubricaContatti MapToRubricaContatti(IDataRecord dr)
        {
            RubricaContatti rc = new RubricaContatti();

            if (dr.IsDBNull("ID_CONTACT"))
            {
                rc.IdContact = null;
            }
            else
            {
                rc.IdContact = dr.GetInt64("ID_CONTACT");
            }
            rc.Mail     = dr.GetString("MAIL");
            rc.Fax      = dr.GetString("FAX");
            rc.Telefono = dr.GetString("TELEFONO");
            if (dr.IsDBNull("REF_ID_REFERRAL"))
            {
                rc.RefIdReferral = null;
            }
            else
            {
                rc.RefIdReferral = dr.GetInt64("REF_ID_REFERRAL");
            }
            rc.Source = dr.GetString("SOURCE");
            rc.IsIPA  = false;
            if (!dr.IsDBNull("FLG_IPA"))
            {
                rc.IsIPA = Convert.ToBoolean(int.Parse(dr.GetString("FLG_IPA")));
            }
            rc.IPAdn = dr.GetString("IPA_DN");
            if (dr.IsDBNull("IPA_ID"))
            {
                rc.IPAId = null;
            }
            else
            {
                rc.IPAId = dr.GetString("IPA_ID");
            }
            rc.Note       = dr.GetString("NOTE");
            rc.ContactRef = dr.GetString("CONTACT_REF");
            if (dr.IsDBNull("AFF_IPA"))
            {
                rc.AffIPA = null;
            }
            else
            {
                rc.AffIPA = (short)dr.GetInt32("AFF_IPA");
            }
            rc.IsPec = false;
            if (!dr.IsDBNull("FLG_PEC"))
            {
                rc.IsPec = Convert.ToBoolean(dr.GetInt32("FLG_PEC"));
            }
            return(rc);
        }
示例#5
0
 public void InsertRubrContatti(RubricaContatti cont, bool setAppMappings)
 {
     using (IContattoDao dao = getDaoContext().DaoImpl.ContattoDao)
     {
         dao.Insert(cont);
         if (setAppMappings)
         {
             UpdateContattoAppMappings(cont);
         }
     }
 }
示例#6
0
 public void InsertRubrContatti(RubricaContatti cont, bool setAppMappings)
 {
     using (ContattoSQLDb dao = new ContattoSQLDb())
     {
         dao.Insert(cont);
         if (setAppMappings)
         {
             UpdateContattoAppMappings(cont);
         }
     }
 }
示例#7
0
        public void UpdateContattoAppMappings(RubricaContatti cont)
        {
            IContactsApplicationMappingDao dao1 = getDaoContext().DaoImpl.ContactsApplicationMappingDao;
            long refOrg = default(long);

            if (cont.Entita == null)
            {
                refOrg = cont.RefIdReferral ?? default(long);
            }
            else
            {
                refOrg = cont.Entita.RefOrg ?? cont.Entita.IdReferral.Value;
            }
            dao1.setDefaultContact(cont.T_MappedAppID, refOrg, cont.IdContact.Value);
        }
示例#8
0
 public void UpdateContattoAppMappings(RubricaContatti cont)
 {
     using (ContactsApplicationMappingSQLDb dao = new ContactsApplicationMappingSQLDb())
     {
         long refOrg = default(long);
         if (cont.Entita == null)
         {
             refOrg = cont.RefIdReferral ?? default(long);
         }
         else
         {
             refOrg = cont.Entita.RefOrg ?? cont.Entita.IdReferral.Value;
         }
         dao.setDefaultContact(cont.T_MappedAppID, refOrg, cont.IdContact.Value);
     }
 }
示例#9
0
        public SendMail.Model.RubricaMapping.RubricaContatti GetById(long id)
        {
            RubricaContatti c = null;

            using (var dbcontext = new FAXPECContext())
            {
                try
                {
                    RUBR_CONTATTI v          = dbcontext.RUBR_CONTATTI.Where(x => x.ID_CONTACT == id).First();
                    var           ListTitoli = (from t in dbcontext.RUBR_CONTATTI_BACKEND
                                                where t.REF_ID_CONTATTO == v.ID_CONTACT
                                                select t.COMUNICAZIONI_TITOLI.ID_TITOLO).ToList();
                    c = AutoMapperConfiguration.MapToRubrContatti(v, ListTitoli);
                } catch (Exception e)
                {
                    throw e;
                }
            }
            return(c);
        }
示例#10
0
        internal static RUBR_CONTATTI MapToRubrContatti(RubricaContatti entity, bool isInsert)
        {
            RUBR_CONTATTI oparams = new RUBR_CONTATTI
            {
                MAIL            = entity.Mail,
                TELEFONO        = entity.Telefono,
                FAX             = entity.Fax,
                FLG_PEC         = Convert.ToInt64(entity.IsPec),
                SOURCE          = entity.Source,
                NOTE            = entity.Note,
                CONTACT_REF     = entity.ContactRef,
                REF_ID_REFERRAL = (decimal)entity.RefIdReferral,
                FLG_IPA         = (entity.AffIPA == null) ? "0" : entity.AffIPA.ToString()
            };

            if (!isInsert)
            {
                oparams.ID_CONTACT = (decimal)entity.IdContact;
            }

            return(oparams);
        }
示例#11
0
        //click sul bottone della formview dei contatti: gestisce update ed inserimento
        protected void ContactsFormView_ItemCommand(object sender, FormViewCommandEventArgs e)
        {
            RubricaEntita        rubEnt      = Session["EntSession"] as RubricaEntita;
            RubricaContatti      contact     = new RubricaContatti();
            RubricaEntitaService rubrService = new RubricaEntitaService();


            #region "Gestione Inseret/update contatto"
            if (e.CommandName.Equals("Update"))
            {
                int idCnt = Int32.Parse(((HiddenField)ContactsFormView.FindControl("hfIdContact")).Value);
                contact = rubEnt.Contatti.SingleOrDefault(x => x.IdContact == idCnt);
            }


            if ((e.CommandName.Equals("Insert") && hidInsertType.Value.Equals("Insert_c")) || e.CommandName.Equals("Update"))
            {
                if ((e.CommandName.Equals("Insert")))
                {
                    contact.RefIdReferral = rubEnt.IdReferral;
                }

                //funzione per il controllo di inserimento di contatti già inseriti
                if (contact != null && ContactControls(contact.IdContact) == false) //caso in cui non supera i controlli
                {
                    if (e.CommandName == "Update")                                  //ricarico i dati precedenti in caso di update
                    {
                        DataContactView(Int32.Parse(((HiddenField)ContactsFormView.FindControl("hfIdContact")).Value));
                    }
                    else //svuoto i campi in caso di insert
                    {
                        (ContactsFormView.FindControl("TextMail") as TextBox).Text     = "";
                        (ContactsFormView.FindControl("TextTelefono") as TextBox).Text = "";
                        (ContactsFormView.FindControl("TextFax") as TextBox).Text      = "";
                    }
                    return;
                }

                try
                {
                    contact.Telefono   = ((TextBox)ContactsFormView.FindControl("TextTelefono")).Text;
                    contact.Mail       = ((TextBox)ContactsFormView.FindControl("TextMail")).Text;
                    contact.Fax        = ((TextBox)ContactsFormView.FindControl("TextFax")).Text;
                    contact.ContactRef = ((TextBox)ContactsFormView.FindControl("TextRef")).Text;
                    contact.Note       = ((TextBox)ContactsFormView.FindControl("TextNote")).Text;
                    contact.IsPec      = ((CheckBox)ContactsFormView.FindControl("chkPec")).Checked;
                    contact.AffIPA     = 0;
                    if (contact.IsPec == false)
                    {
                        foreach (MailPecForCheck val in Enum.GetValues(typeof(MailPecForCheck)))
                        {
                            if (contact.Mail.Contains("@" + val.ToString() + "."))
                            {
                                contact.IsPec = true;
                            }
                        }
                    }
                }
                catch
                {
                    ((BasePage)this.Page).info.AddMessage("Attenzione: si è verificato un errore", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return;
                }

                if (contact.Telefono == "" && contact.Mail == "" && contact.Fax == "")
                {
                    ((BasePage)this.Page).info.AddMessage("Inserire almeno un parametro", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return;
                }

                if (contact.Mail == "" && contact.IsPec == true)
                {
                    ((BasePage)this.Page).info.AddMessage("Inserire indirizzo email valido", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    contact.IsPec = false;
                    return;
                }

                if (contact.Telefono == "")
                {
                    contact.Telefono = null;
                }
                if (contact.Mail == "")
                {
                    contact.Mail = null;
                }
                if (contact.Fax == "")
                {
                    contact.Fax = null;
                }
                if (contact.ContactRef == "")
                {
                    contact.ContactRef = null;
                }
                if (contact.Note == "")
                {
                    contact.Note = null;
                }

                if (e.CommandName == "Update")
                {
                    try
                    {
                        //metodo per l'update
                        ContattoService contattoService = new ContattoService();
                        contattoService.UpdateRubrContatti(contact, false);
                    }
                    catch (Exception)
                    {
                        ((BasePage)this.Page).info.AddMessage("Aggiornamento non riuscito: Errore in banca dati", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                        return;
                    }
                    ((BasePage)this.Page).info.AddMessage("Contatto modificato", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.INFO);
                }
                else if (e.CommandName == "Insert")
                {
                    try
                    {
                        //metodo per l'insert
                        ContattoService contattoService = new ContattoService();
                        contattoService.InsertRubrContatti(contact, false);
                    }
                    catch (Exception ex)
                    {
                        ((BasePage)this.Page).info.AddMessage("Inserimento non riuscito: Errore in banca dati dettagli: " + ex.Message, Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                        return;
                    }
                    ((BasePage)this.Page).info.AddMessage("Contatto inserito", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.INFO);
                }
            }
            #endregion


            #region "Insert di un nuovo gruppo o di un nuovo ufficio"

            if ((e.CommandName.Equals("Insert") && hidInsertType.Value.Equals("Insert_u")))
            {
                RubricaEntita newEnt = new RubricaEntita();
                newEnt.Ufficio = ((TextBox)ContactsFormView.FindControl("TextUfficio")).Text;
                newEnt.IdPadre = rubEnt.IdReferral;
                newEnt.RefOrg  = (rubEnt.RefOrg == null ? rubEnt.IdReferral : rubEnt.RefOrg);
                if (rubEnt.ReferralType.ToString().StartsWith("PA"))
                {
                    newEnt.ReferralType = EntitaType.PA_UFF;
                }
                else if (rubEnt.ReferralType.ToString().StartsWith("AZ"))
                {
                    newEnt.ReferralType = EntitaType.AZ_UFF;
                }
                try
                {
                    //metodo per l'insert
                    rubrService.Insert(newEnt);
                }
                catch (Exception e0)
                {
                    ((BasePage)this.Page).info.AddMessage("Inserimento non riuscito: " + e0.Message, Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return;
                }
                ((BasePage)this.Page).info.AddMessage("Gruppo inserito", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.INFO);
                ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "reload_local_tree", "ShowTree(config.tree);", true);
            }
            else if ((e.CommandName.Equals("Insert") && hidInsertType.Value.Equals("Insert_g")))
            {
                RubricaEntita newEnt = new RubricaEntita();

                newEnt.Ufficio = ((TextBox)ContactsFormView.FindControl("TextGruppo")).Text;
                newEnt.IdPadre = rubEnt.IdReferral;
                newEnt.RefOrg  = (rubEnt.RefOrg == null ? rubEnt.IdReferral : rubEnt.RefOrg);
                if (rubEnt.ReferralType.ToString().StartsWith("PA"))
                {
                    newEnt.ReferralType = EntitaType.PA_GRP;
                }
                else if (rubEnt.ReferralType.ToString().StartsWith("AZ"))
                {
                    newEnt.ReferralType = EntitaType.AZ_GRP;
                }
                try
                {
                    //metodo per l'insert
                    rubrService.Insert(newEnt);
                }
                catch (Exception e1)
                {
                    ((BasePage)this.Page).info.AddMessage("Inserimento non riuscito: " + e1.Message, Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return;
                }
                ((BasePage)this.Page).info.AddMessage("Ufficio inserito", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.INFO);
                ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "reload_local_tree", "ShowTree();", true);
            }


            #endregion
            hfCurrentID = contact.IdContact ?? -1;
            long idEntita = long.Parse((EntFormView.FindControl("hfIdEntita") as HiddenField).Value);
            EntFormViewDataSource = rubrService.GetRubricaEntitaCompleteById(idEntita);
            rubEnt = EntFormViewDataSource;
            switch (rubEnt.Contatti.Count)
            {
            case 0:
                gvContacts.Visible = true;
                gvContacts.DataBind();
                ContactsFormView.DataBind();
                break;

            default:
                if (hfCurrentID == -1)
                {
                    OnContactsPagerIndexChanged("", 0);
                }
                else
                {
                    int index = rubEnt.Contatti.IndexOf(rubEnt.Contatti.First(x => x.IdContact == hfCurrentID));
                    OnContactsPagerIndexChanged("", index / PagerSize);
                }
                if (rubEnt.Contatti.Count <= PagerSize)
                {
                    gvContacts.BottomPagerRow.Visible = false;
                }
                break;
            }
            ContactsFormView.Visible = false;
        }