Esempio n. 1
0
        public ActionResult Editar(int id)
        {
            var result = db.View_Lista_Leads.FirstOrDefault(w => w.ContactoId == id);

            try
            {
                var resultVars = from x in db.View_Lista_Leads
                                 where x.ContactoId == id
                                 select x;

                int DesarrolloId = 0;
                int subCanalID   = 0;
                foreach (var item in resultVars)
                {
                    DesarrolloId = item.DesarrolloId;
                    subCanalID   = item.SubCanalId;
                }

                // Desarrollo
                ViewBag.DesarrolloId = new SelectList(db.Desarrollo.OrderBy(w => w.DesarrolloNombre), "DesarrolloId", "DesarrolloNombre", DesarrolloId);


                // ZONA
                ViewBag.ZonaID = new SelectList(db.Zona.OrderBy(w => w.ZonaNombre), "ZonaId", "ZonaNombre");

                //Campaña
                // Falta el catalogo de campaña

                // subcanals
                ViewBag.SubCanalId = new SelectList(db.SubCanales.OrderBy(w => w.SubCanalNombre), "SubCanalId", "SubCanalNombre", subCanalID);

                // OBTIENE DATOS REALES

                var datos_reales = from x in db.DatosReales
                                   where x.ContactoId == id
                                   select x;

                DatosReales datReales = new DatosReales();
                foreach (var item in datos_reales)
                {
                    string contactId = item.ContactoId.ToString();

                    datReales.DatosRealesId   = item.DatosRealesId;
                    datReales.ContactoId      = Int32.Parse(!String.IsNullOrEmpty(contactId) && !String.IsNullOrWhiteSpace(contactId) ? contactId : "0");
                    datReales.Nombre          = item.Nombre;
                    datReales.ApellidoPaterno = item.ApellidoPaterno;
                    datReales.ApellidoMaterno = item.ApellidoMaterno;
                    datReales.Telefono        = item.Telefono;
                    datReales.Correo          = item.Correo;
                }

                ViewBag.DatosReales = datReales;
            }
            catch (Exception ex)
            {
            }

            return(View(result));
        }
Esempio n. 2
0
        public ActionResult DatosReales(View_Lista_Leads modelo, int id, string nombreReal, string aPaternoReal, string aMaternoReal, string telefonoReal, string emailReal)
        {
            try
            {
                var contacto           = db.Contactos.FirstOrDefault(w => w.ContactoId == id);
                int EstautusBidaActual = contacto.EstatusBIDA;


                contacto.CanalId        = 1;
                contacto.SubCanalId     = modelo.SubCanalId;
                contacto.DesarrolloId   = modelo.DesarrolloId;
                contacto.NombreContacto = (modelo.NombreContacto == null) ? string.Empty : modelo.NombreContacto;
                contacto.Apellidos      = modelo.Apellidos;
                contacto.Telefono       = modelo.Telefono;
                contacto.Correo         = modelo.Correo;
                contacto.Facebook       = modelo.Facebook;

                if (EstautusBidaActual != 1)
                {
                    contacto.EstatusBIDA = 5;
                }


                db.SaveChanges();

                // agrega datos reales
                DatosReales datosReales = new DatosReales();

                datosReales.ContactoId      = id;
                datosReales.Nombre          = nombreReal;
                datosReales.ApellidoPaterno = aPaternoReal;
                datosReales.ApellidoMaterno = aMaternoReal;
                datosReales.Telefono        = telefonoReal;
                datosReales.Correo          = emailReal;

                db.DatosReales.Add(datosReales);
                db.SaveChanges();

                return(RedirectToAction("Interaccion", "Host", new { id = id }));
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(RedirectToAction("Interaccion", "Host", new { id = id }));
            }
        }
Esempio n. 3
0
        public string agregaDatosReales(int id, string Nombre, string APaterno, string AMaterno, string Telefono, string correo)
        {
            DatosReales datosReales = new DatosReales();

            datosReales.ContactoId      = id;
            datosReales.Nombre          = Nombre;
            datosReales.ApellidoPaterno = APaterno;
            datosReales.ApellidoMaterno = AMaterno;
            datosReales.Telefono        = Telefono;
            datosReales.Correo          = correo;

            db.DatosReales.Add(datosReales);
            db.SaveChanges();

            db.Dispose();
            db = null;

            return("Ok");
        }
Esempio n. 4
0
        public string AsignarContacto(int ContactoID, int DesarrolloId = 0)
        {
            try
            {
                // Busca

                carrusel_asignacion Carrusel_asignacion = new carrusel_asignacion();

                string   Constr  = WebConfigurationManager.ConnectionStrings["ConStr"].ToString();
                ADO_Core objAdo  = new ADO_Core(Constr);
                string   sqlStat = String.Format("Exec sp_carruselAsignacion {0}, {1}", DesarrolloId, 1);

                SqlDataReader dr        = objAdo.GetDataReader(sqlStat);
                bool          encuentra = false;

                if (dr.HasRows)
                {
                    dr.Read();
                    Boolean.TryParse(dr["encuentra"].ToString(), out encuentra);

                    if (encuentra)
                    {
                        string epId = dr["EPId"].ToString();

                        Carrusel_asignacion.encuentra  = encuentra;
                        Carrusel_asignacion.EPId       = Int32.Parse(!String.IsNullOrEmpty(epId) && !String.IsNullOrWhiteSpace(epId) ? epId : "0");
                        Carrusel_asignacion.Nombre     = dr["Nombre"].ToString();
                        Carrusel_asignacion.Email      = dr["Email"].ToString();
                        Carrusel_asignacion.PartyId    = long.Parse(dr["PartyId"].ToString());
                        Carrusel_asignacion.ResourceId = long.Parse(dr["ResourceId"].ToString());
                    }
                }

                if (encuentra)
                {
                    string Usuario_ID = Session["Usuario_ID"].ToString();

                    // guarda registro en la tabla Asignacion
                    Asignacion asignacion = new Asignacion();

                    asignacion.ContactoId      = ContactoID;
                    asignacion.EPId            = Carrusel_asignacion.EPId;
                    asignacion.UsuarioHOST     = Usuario_ID;
                    asignacion.FechaAsignacion = DateTime.Now;

                    db.Asignacion.Add(asignacion);
                    db.SaveChanges();


                    // invoca el web service
                    DatosReales datosReales = new DatosReales();
                    var         resultdr    = db.DatosReales.FirstOrDefault(w => w.ContactoId == ContactoID);

                    string campo1            = "@XZYContaToSales#";
                    string Nombre            = resultdr.Nombre;
                    string ApellidoPaterno   = resultdr.ApellidoPaterno;
                    string ApellidoMaterno   = resultdr.ApellidoMaterno;
                    string CanalCaptacion    = "1";
                    string SubcanalCaptacion = string.Empty;
                    string TelefonoMovil     = resultdr.Telefono;
                    string CorreoElectonico  = resultdr.Correo;
                    string Desarrollo        = string.Empty;
                    long   OwnerPartyId      = Carrusel_asignacion.PartyId;
                    long   ResourceId        = Carrusel_asignacion.ResourceId;

                    // obtien datos del contacto
                    var DatosContacto = db.View_Datos_Contacto.FirstOrDefault(w => w.ContactoId == ContactoID);

                    CanalCaptacion    = DatosContacto.CanalNombre;
                    SubcanalCaptacion = DatosContacto.SubCanalNombre;
                    Desarrollo        = DatosContacto.DesarrolloNombre;


                    // Consume el web service
                    hu_web_service.SoaClient isoac = new hu_web_service.SoaClient();
                    var result_ws = isoac.crearContactoRespondersV2(campo1, Nombre, ApellidoPaterno, ApellidoMaterno, CanalCaptacion, SubcanalCaptacion, TelefonoMovil, CorreoElectonico, Desarrollo, OwnerPartyId, ResourceId);;

                    if (result_ws.Contains("Error al crear contacto"))
                    {
                        // guarda notificacion para el EP en la tabla
                        AgregaMensageParaEP(result_ws);
                        return("Bad");
                    }
                    else
                    {
                        // Actualiza el estatusBIDA del contacto
                        var contactoD = db.Contactos.FirstOrDefault(w => w.ContactoId == ContactoID);
                        contactoD.EstatusBIDA = 6;

                        db.SaveChanges();


                        // avisa notificacion al contacto
                        bool notifica = notificaconContacto_Genrente(ContactoID, "Se asigno un proyecto");
                    }
                }
                else if (!encuentra)
                {
                    bool notifica = notificaconContacto_Genrente(ContactoID, "No se pudo asignar el proyecto");
                }

                return("Ok");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return("Bad");
            }
        }
Esempio n. 5
0
        public ActionResult Interactuar_ni(int id, int pSubCanalId, string pSubCanal)
        {
            // pagina de regreso
            // ViewBag.Regreso = back;

            ViewBag.MedioDeContacto = pSubCanal;
            ViewBag.SubCanal_ID     = pSubCanalId;


            ViewBag.DisableWhatsApp = "disabled='disabled'";
            if (pSubCanalId == 1)
            {
                ViewBag.DisableWhatsApp = "";
            }


            ViewBag.SubCanalx = 1; // whatsapp

            //if (tel == 1)
            //    ViewBag.SubCanalx = 2; // Telefono


            // id = InteraccionId
            ViewBag.ID = id;

            ViewBag.botonDisabled = "disabled";

            // subcanals
            ViewBag.SubCanalId = new SelectList(db.SubCanales.Where(w => w.CanalId == 1).OrderBy(w => w.SubCanalNombre), "SubCanalId", "SubCanalNombre", pSubCanalId);



            // Causa no Interesado
            ViewBag.CausaNoInterId = new SelectList(db.CausaNoInter.OrderBy(w => w.CausaNoInterNombre), "CausaNoInterId", "CausaNoInterNombre");



            // causa no interes
            ViewBag.CausaNoInterId = new SelectList(db.CausaNoInter.OrderBy(w => w.CausaNoInterNombre), "CausaNoInterId", "CausaNoInterNombre");



            ViewBag.Telefono = 0;
            //if(tel == 1)
            //    ViewBag.Telefono = 1;



            // Lee datos del CONTACTO
            int Desarrollo_Id = 0;
            int subCanalId    = 0;
            int contactoId    = 0;

            // obtenet el contactoId
            // var contactId = db.InteraccionesContacto.Where(w => w.ContactoId == id).FirstOrDefault();
            var contactId = db.Contactos.Where(w => w.ContactoId == id).FirstOrDefault();

            contactoId = contactId.ContactoId;

            Interaccion interaccion = new Interaccion();

            var DatLead = from x in db.View_Datos_Contacto
                          where x.ContactoId == contactoId
                          select x;
            int EstatusBIDA      = 0;
            int SubEstatusBIDAId = 0;

            foreach (var item in DatLead)
            {
                interaccion.id = id;
                interaccion.NombreContactoCompleto = item.NombreContacto + " " + item.Apellidos;
                EstatusBIDA      = item.EstatusBIDA;
                Desarrollo_Id    = item.DesarrolloId;
                subCanalId       = item.SubCanalId;
                SubEstatusBIDAId = (int)item.SubEstatusBIDAId;
            }

            ViewBag.SubEstatusBIDAId = SubEstatusBIDAId;
            ViewBag.Desarrollo_Id    = Desarrollo_Id;
            ViewBag.Subcanal         = subCanalId;



            if (EstatusBIDA == 5)
            {
                ViewBag.botonDisabled = "";
            }


            ViewBag.ContactoNombre = interaccion.NombreContactoCompleto;
            ViewBag.EstatusBida    = EstatusBIDA;

            // Lee datos reales del Lead
            var datReal = from x in db.DatosReales
                          where x.ContactoId == id
                          select x;

            foreach (var item in datReal)
            {
                interaccion.NombreReal          = item.Nombre;
                interaccion.ApellidoPaternoReal = item.ApellidoPaterno;
                interaccion.ApellidoMaternoReal = item.ApellidoMaterno;
                interaccion.TelefonoReal        = item.Telefono;
                interaccion.CorreoReal          = item.Correo;
            }


            // lee interaccion final
            // var interacc = db.Interacciones.OrderByDescending(w => w.InteraccionId).FirstOrDefault(w => w.ContactoId == contactoId && w.InteraccionId == id);
            var interacc = db.Interacciones.OrderByDescending(w => w.InteraccionId).FirstOrDefault(w => w.ContactoId == contactoId);

            if (interacc != null)
            {
                interaccion.Descripcion         = interacc.Descripcion;
                interaccion.ResumenConversacion = interacc.Comentarios;
            }

            // OBTIENE DATOS REALES
            ViewBag.TieneDatosRales = 0;

            var datos_reales = from x in db.DatosReales
                               where x.ContactoId == id
                               select x;

            DatosReales datReales = new DatosReales();

            foreach (var item in datos_reales)
            {
                datReales.DatosRealesId   = item.DatosRealesId;
                datReales.ContactoId      = Convert.ToInt32(item.ContactoId);
                datReales.Nombre          = item.Nombre;
                datReales.ApellidoPaterno = item.ApellidoPaterno;
                datReales.ApellidoMaterno = item.ApellidoMaterno;
                datReales.Telefono        = item.Telefono;
                datReales.Correo          = item.Correo;

                ViewBag.TieneDatosRales = 1;
            }

            ViewBag.DatosReales = datReales;

            // estatus
            ViewBag.EstatusBIDAId = new SelectList(db.EstatusBIDA.Where(w => w.EstatusBIDAId < 3).OrderBy(w => w.EstatusBidaNombre), "EstatusBIDAId", "EstatusNombre", EstatusBIDA);



            // lee datos del contacto
            var rsContacto       = db.Contactos.Where(w => w.ContactoId == id).FirstOrDefault();
            int DesarrolloID     = rsContacto.DesarrolloId;
            int DesarrolloModelo = rsContacto.DesarrolloId;


            // Desarrollo
            ViewBag.DesarrolloId = new SelectList(db.Desarrollo.OrderBy(w => w.DesarrolloNombre), "DesarrolloId", "DesarrolloNombre", DesarrolloID);

            // Modelo
            ViewBag.DesarrolloModeloId = new SelectList(db.DesarrolloModelo.OrderBy(w => w.DesarrolloModeloNombre), "DesarrolloModeloId", "DesarrolloModeloNombre", DesarrolloModelo);

            return(View(interaccion));
        }