Пример #1
0
    private StringBuilder CargarPlantilla_CallCenter(CitasBE oDatos, Parametros.EstadoCita oTipoCita)
    {
        StringBuilder strBodyHTML = new StringBuilder();

        string strRutaPlantilla = String.Concat(this.path_server, "SRC_Operaciones\\", ConfigurationManager.AppSettings["PlantillaCorreoCallCenter"]);

        try
        {
            if (!(System.IO.File.Exists(strRutaPlantilla)))
            {
                strBodyHTML.Append("-1");
            }
            else
            {
                FileStream   stream = new FileStream(strRutaPlantilla, FileMode.Open, FileAccess.Read);
                StreamReader reader = new StreamReader(stream);

                string strTipoCita = string.Empty;
                switch (oTipoCita)
                {
                case Parametros.EstadoCita.REGISTRADA: strTipoCita = "Reserva"; break;

                case Parametros.EstadoCita.REPROGRAMADA: strTipoCita = "Reprogramacion"; break;

                case Parametros.EstadoCita.REASIGNADA: strTipoCita = "Asignación"; break;

                case Parametros.EstadoCita.ANULADA: strTipoCita = "Anulacion"; break;
                }

                string linea = null;

                while (reader.Peek() > -1)
                {
                    linea = reader.ReadLine().ToString();
                    linea = linea.Replace("{Asesor}", oDatos.no_asesor.Trim().ToUpper());
                    linea = linea.Replace("{TipoCita}", strTipoCita);
                    linea = linea.Replace("{FechaCita}", GetFechaLarga(oDatos.fe_prog).ToUpper());
                    linea = linea.Replace("{HoraCita}", FormatoHora(oDatos.ho_inicio_c));
                    linea = linea.Replace("{Cliente}", oDatos.no_cliente.Trim().ToUpper() + " " + oDatos.no_ape_paterno.Trim().ToUpper() + " " + oDatos.no_ape_materno.Trim().ToUpper());
                    linea = linea.Replace("{Servicio}", oDatos.no_servicio.ToUpper());
                    linea = linea.Replace("{TipoPlaca}", oParametros.N_Placa + ":");
                    linea = linea.Replace("{Placa}", oDatos.nu_placa.ToUpper());
                    linea = linea.Replace("{Marca}", oDatos.no_marca);
                    linea = linea.Replace("{Modelo}", oDatos.no_modelo);
                    strBodyHTML.Append(linea);
                }

                reader.Close();
            }
        }
        catch//(Exception ex)
        {
            strBodyHTML = new StringBuilder();
            strBodyHTML.Append("-1");
        }

        return(strBodyHTML);
    }
Пример #2
0
    public void EnviarCorreo_ClienteRegistro(ClienteBE oDatos, Parametros.EstadoCita oTipoCita)
    {
        CorreoElectronico oCorreoElectronico = new CorreoElectronico(System.Web.HttpContext.Current.Server.MapPath("~/"));
        bool flEnvio = oCorreoElectronico.EnviarMensajeCorreoRegistroCliente(oDatos);

        if (!flEnvio)
        {
            //"Error al enviar Correo-Cliente";
        }
    }
Пример #3
0
    public void EnviarCorreo_CallCenter(CitasBE oDatos, Parametros.EstadoCita oTipoCita)
    {
        CorreoElectronico oCorreoElectronico = new CorreoElectronico(System.Web.HttpContext.Current.Server.MapPath("~/"));
        bool flEnvio = oCorreoElectronico.EnviarMensajeCorreo(oDatos, oTipoCita, Parametros.PERSONA.CALL_CENTER);

        if (!flEnvio)
        {
            //"Error al enviar Correo-CallCenter";
        }
    }
Пример #4
0
    public StringBuilder CargarPlantilla_Cliente(CitasBE oDatos, Parametros.EstadoCita oTipoCita)
    {
        StringBuilder strBodyHTML = new StringBuilder();

        string strRutaPlantilla = Path.Combine(String.Concat(this.path_server, "SRC_Operaciones\\"), ConfigurationManager.AppSettings["PlantillaCorreo"].Replace("/", "\\"));

        string strVerNota = oDatos.fl_nota;

        try
        {
            if (!System.IO.File.Exists(strRutaPlantilla))
            {
                strBodyHTML.Append("-1");
            }
            else
            {
                FileStream   stream = new FileStream(strRutaPlantilla, FileMode.Open, FileAccess.Read);
                StreamReader reader = new StreamReader(stream);


                string strTipoCita = string.Empty;

                switch (oTipoCita)
                {
                case Parametros.EstadoCita.REGISTRADA: strTipoCita = "Reserva"; break;

                case Parametros.EstadoCita.REPROGRAMADA: strTipoCita = "Reprogramación"; break;

                case Parametros.EstadoCita.REASIGNADA: strTipoCita = "Asignación"; break;

                case Parametros.EstadoCita.ANULADA: strTipoCita = "Anulación"; break;
                }

                string strTextoPie      = oParametros.N_TextoPieCorreo;
                string strNumCallCenter = string.Empty;

                if (!oDatos.nid_taller_empresa.Equals(0))
                {
                    strTextoPie      = strTextoPie.Replace("{banco}", oDatos.no_banco);
                    strTextoPie      = strTextoPie.Replace("{num_cuenta}", oDatos.nu_cuenta);
                    strNumCallCenter = oDatos.nu_callcenter.Trim();
                }

                string linea = null;

                while (reader.Peek() > -1)
                {
                    linea = reader.ReadLine().ToString();
                    linea = linea.Replace("{Cliente}", oDatos.no_cliente.Trim().ToUpper() + " " + oDatos.no_ape_paterno.Trim().ToUpper() + " " + oDatos.no_ape_materno.Trim().ToUpper());
                    linea = linea.Replace("{TipoCita}", strTipoCita);
                    linea = linea.Replace("{TipoPlaca}", oParametros.N_Placa + ": ");
                    linea = linea.Replace("{NumPlaca}", oDatos.nu_placa.ToUpper());
                    linea = linea.Replace("{Marca}", oDatos.no_marca.ToUpper());
                    linea = linea.Replace("{Modelo}", oDatos.no_modelo.ToUpper());
                    linea = linea.Replace("{DiaHoraCita}", GetFechaLarga(oDatos.fe_prog) + " - " + FormatoHora(oDatos.ho_inicio_c));
                    linea = linea.Replace("{TextoAsesor}", oParametros.N_Asesor + ": ");
                    linea = linea.Replace("{Asesor}", oDatos.no_asesor);
                    linea = linea.Replace("{MovilAsesor}", oDatos.nu_telefono_a);
                    linea = linea.Replace("{Servicio}", oDatos.no_servicio.Trim().ToUpper());
                    linea = linea.Replace("{Taller}", oDatos.no_taller);
                    linea = linea.Replace("{TextoLocal}", oParametros.N_Local + ": ");
                    linea = linea.Replace("{PuntoRed}", oDatos.no_ubica);
                    linea = linea.Replace("{Direccion}", oDatos.di_ubica + " - " + oDatos.no_distrito.Trim());
                    linea = linea.Replace("{Telefono}", oDatos.nu_telefono_t);
                    linea = linea.Replace("{CodReserva}", oDatos.cod_reserva_cita);
                    linea = linea.Replace("{FormaRecordatorio}", "- Por Email");
                    linea = linea.Replace("{TextoPieCorreo}", strTextoPie);
                    linea = linea.Replace("{CallCenter}", strNumCallCenter);
                    linea = linea.Replace("{blLogo}", ((oParametros.SRC_MostrarLogo.Equals("1")) ? "block" : "none"));
                    linea = linea.Replace("{nu_taller}", oDatos.nu_telefono_t);

                    strBodyHTML.Append(linea);
                }

                reader.Close();
            }

            // Ocultar Etiquetas
            //--------------------------------
            if (strVerNota.Equals("0"))
            {
                strBodyHTML = Ocultar_Etiqueta(strBodyHTML, "SPAN_3");
            }
            if (oDatos.fl_entrega.Equals("1"))
            {
                strBodyHTML = Ocultar_Etiqueta(strBodyHTML, "SPAN_2");
            }
            if (oDatos.fl_entrega.Equals("1"))
            {
                strBodyHTML = Ocultar_Etiqueta(strBodyHTML, "SPAN_4");
            }
            if (oDatos.fl_entrega.Equals("0"))
            {
                strBodyHTML = Ocultar_Etiqueta(strBodyHTML, "SPAN_1");
            }
            //--------------------------------
            if (oDatos.fl_entrega.Equals("1"))
            {
                strBodyHTML = Ocultar_Etiqueta_2(strBodyHTML, "Envio_1");
            }
            if (oDatos.fl_entrega.Equals("1"))
            {
                strBodyHTML = Ocultar_Etiqueta_2(strBodyHTML, "Envio_2");
            }
            if (oDatos.fl_entrega.Equals("1"))
            {
                strBodyHTML = Ocultar_Etiqueta_2(strBodyHTML, "Envio_3");
            }
            if (oDatos.fl_entrega.Equals("0"))
            {
                strBodyHTML = Ocultar_Etiqueta(strBodyHTML, "SPAN_5");
            }
            if (!oDatos.nid_marca.ToString().Equals("12"))
            {
                strBodyHTML = Ocultar_Etiqueta_2(strBodyHTML, "trLogoApp");
            }
        }
        catch//(Exception ex)
        {
            strBodyHTML = new StringBuilder();
            strBodyHTML.Append("-2");
        }

        return(strBodyHTML);
    }
Пример #5
0
    public bool EnviarMensajeCorreo(CitasBE oDatos, Parametros.EstadoCita oTipoCita, Parametros.PERSONA oPersona)
    {
        bool  flEnvio = true;
        Int32 intResp = 0;

        mailSent = false;
        StringBuilder strHTML = new StringBuilder();

        switch (oPersona)
        {
        case Parametros.PERSONA.CLIENTE: strHTML = CargarPlantilla_Cliente(oDatos, oTipoCita); break;

        case Parametros.PERSONA.ASESOR: strHTML = CargarPlantilla_Asesor(oDatos, oTipoCita); break;

        case Parametros.PERSONA.CALL_CENTER: strHTML = CargarPlantilla_CallCenter(oDatos, oTipoCita); break;
        }

        //Validando retorno del HTML
        if (strHTML.ToString().Equals("-1") || strHTML.ToString().Equals("-2"))
        {
            //-1 Error al cargar la Plantilla
            //-2 Error al rellenar Plantilla

            intResp = Int32.Parse(strHTML.ToString());
            flEnvio = false;
        }
        else
        {
            System.Net.Mail.MailMessage oEmail = new System.Net.Mail.MailMessage();
            System.Net.Mail.SmtpClient  smtp   = new System.Net.Mail.SmtpClient();

            try
            {
                string strAsunto = string.Empty;
                switch (oTipoCita)
                {
                case Parametros.EstadoCita.REGISTRADA: strAsunto = "SubjectCitaReserv"; break;

                case Parametros.EstadoCita.REPROGRAMADA: strAsunto = "SubjectCitaReprog"; break;

                case Parametros.EstadoCita.REASIGNADA: strAsunto = "SubjectCitaAsigna"; break;

                case Parametros.EstadoCita.ANULADA: strAsunto = "SubjectCitaAnula"; break;
                }

                oEmail.From = new System.Net.Mail.MailAddress(ConfigurationManager.AppSettings["MailAddress"], ConfigurationManager.AppSettings["DisplayName"]);

                switch (oPersona)
                {
                case Parametros.PERSONA.CLIENTE:
                    if (!(oDatos.no_correo.Trim().ToString().Equals("")))
                    {
                        oEmail.To.Add(oDatos.no_correo.Trim());
                    }
                    if (!(oDatos.no_correo_trabajo.Trim().ToString().Equals("")))
                    {
                        oEmail.To.Add(oDatos.no_correo_trabajo.Trim());
                    }
                    if (!(oDatos.no_correo_alter.Trim().ToString().Equals("")))
                    {
                        oEmail.To.Add(oDatos.no_correo_alter.Trim());
                    }
                    break;

                case Parametros.PERSONA.ASESOR:
                    oEmail.To.Add(oDatos.no_correo_asesor.Trim());
                    break;

                case Parametros.PERSONA.CALL_CENTER:
                    oEmail.To.Add(oDatos.no_correo_callcenter.Trim());
                    break;
                }

                oEmail.Subject      = ConfigurationManager.AppSettings[strAsunto];
                oEmail.Body         = strHTML.ToString();
                oEmail.BodyEncoding = Encoding.GetEncoding("UTF-8");
                oEmail.IsBodyHtml   = true;
                oEmail.Priority     = System.Net.Mail.MailPriority.High;
                //oEmail.Bcc.Add(ConfigurationManager.AppSettings["MailBcc"]);
                smtp.Host        = ConfigurationManager.AppSettings["Host"];
                smtp.Port        = Convert.ToInt32(ConfigurationManager.AppSettings["Puerto"].ToString());
                smtp.Credentials = new System.Net.NetworkCredential(ConfigurationManager.AppSettings["UsuarioMail"].ToString(), ConfigurationManager.AppSettings["ClaveMail"].ToString());
                smtp.EnableSsl   = true;

                smtp.SendCompleted += new SendCompletedEventHandler(SendCompletedCallback);
                object userState = oEmail;
                try
                {
                    //smtp.Send(oEmail);
                    smtp.SendAsync(oEmail, userState);
                }
                catch (Exception ex)
                {
                    no_error = string.Format("{0}|{1}", ex.Message, (ex.InnerException != null ? ex.InnerException.Message : string.Empty));
                }
                finally
                {
                    /*if (!mailSent)
                     *  smtp.SendAsyncCancel();*/
                    //oEmail.Dispose();
                }
            }
            catch//(Exception ex)
            {
                flEnvio = false;
            }
            finally
            {
                oEmail = null;
                smtp   = null;
            }
        }

        return(flEnvio);
    }
Пример #6
0
    public bool EnviarMensajeCorreo(CitasBE oDatos, Parametros.EstadoCita oTipoCita, Parametros.PERSONA oPersona)
    {
        bool          flEnvio = true;
        Int32         intResp = 0;
        StringBuilder strHTML = new StringBuilder();

        switch (oPersona)
        {
        case Parametros.PERSONA.CLIENTE: strHTML = CargarPlantilla_Cliente(oDatos, oTipoCita); break;

        case Parametros.PERSONA.ASESOR: strHTML = CargarPlantilla_Asesor(oDatos, oTipoCita); break;

        case Parametros.PERSONA.CALL_CENTER: strHTML = CargarPlantilla_CallCenter(oDatos, oTipoCita); break;

        case Parametros.PERSONA.IMPRIMIR: strHTML = CargarPlantilla_Imprimir(oDatos, oTipoCita); break;
        }
        //Validando retorno del HTML
        if (strHTML.ToString().Equals("-1") || strHTML.ToString().Equals("-2"))
        {
            //-1 Error al cargar la Plantilla
            //-2 Error al rrellenar Plantilla
            intResp = Int32.Parse(strHTML.ToString());
            flEnvio = false;
        }
        else
        {
            MailMessage oEmail = new MailMessage();
            SmtpClient  smtp   = new SmtpClient();
            try
            {
                string strAsunto = string.Empty;
                switch (oTipoCita)
                {
                case Parametros.EstadoCita.REGISTRADA: strAsunto = "SubjectCitaReserv"; break;

                case Parametros.EstadoCita.CONFIRMADA: strAsunto = "SubjectCitaConfirma"; break;

                case Parametros.EstadoCita.REPROGRAMADA: strAsunto = "SubjectCitaReprog"; break;

                case Parametros.EstadoCita.REASIGNADA: strAsunto = "SubjectCitaAsigna"; break;

                case Parametros.EstadoCita.ANULADA: strAsunto = "SubjectCitaAnula"; break;
                }
                oEmail.From = new MailAddress(ConfigurationManager.AppSettings["MailAddress"], ConfigurationManager.AppSettings["DisplayName"]);


                switch (oPersona)
                {
                case Parametros.PERSONA.CLIENTE:
                    if (!(oDatos.no_correo.Trim().ToString().Equals("")))
                    {
                        oEmail.To.Add(oDatos.no_correo.Trim());
                    }
                    if (!(oDatos.no_correo_trabajo.Trim().ToString().Equals("")))
                    {
                        oEmail.To.Add(oDatos.no_correo_trabajo.Trim());
                    }

                    break;

                case Parametros.PERSONA.ASESOR:
                    oEmail.To.Add(oDatos.no_correo_asesor.Trim());
                    break;

                case Parametros.PERSONA.CALL_CENTER:
                    oEmail.To.Add(oDatos.no_correo_callcenter.Trim());
                    break;
                }
                System.Collections.Specialized.NameValueCollection nvc = (System.Collections.Specialized.NameValueCollection)ConfigurationManager.GetSection("groupAGP/sectionEmail");
                oEmail.Subject    = ConfigurationManager.AppSettings[strAsunto];
                oEmail.Body       = strHTML.ToString();
                oEmail.IsBodyHtml = true;
                oEmail.Priority   = System.Net.Mail.MailPriority.High;
                smtp.Host         = nvc[0].ToString();
                smtp.Port         = Int32.Parse(nvc[1].ToString());
                smtp.Credentials  = new System.Net.NetworkCredential(nvc[2].ToString(), nvc[3].ToString());
                smtp.EnableSsl    = true;

                smtp.SendCompleted += new SendCompletedEventHandler(SendCompletedCallback);
                object userState = oEmail;
                try
                {
                    //smtp.Send(oEmail);
                    smtp.SendAsync(oEmail, userState);
                }
                catch (Exception ex)
                {
                    no_error = string.Format("{0}|{1}", ex.Message, (ex.InnerException != null ? ex.InnerException.Message : string.Empty));
                    //System.Web.HttpContext.Current.Response.Write("1 > " + ex.Message);
                }
                finally
                { }
            }
            catch
            {
                flEnvio = false;
                //System.Web.HttpContext.Current.Response.Write("1 > " + ex.Message);
            }
            finally
            {
                oEmail = null;
                smtp   = null;
            }
        }
        return(flEnvio);
    }
Пример #7
0
    public StringBuilder CargarPlantilla_Cliente(CitasBE oDatos, Parametros.EstadoCita oTipoCita)
    {
        StringBuilder strBodyHTML      = new StringBuilder();
        string        strRutaPlantilla = Path.Combine(this.path_server, ConfigurationManager.AppSettings["PlantillaCorreo"]);

        try
        {
            if (!File.Exists(strRutaPlantilla))
            {
                strBodyHTML.Append("-1");
            }
            else
            {
                FileStream   stream         = new FileStream(strRutaPlantilla, FileMode.Open, FileAccess.Read);
                StreamReader reader         = new StreamReader(stream);
                string       flDatosRecorda = Parametros.GetValor(Parametros.PARM._14).ToString();
                string       strTipoCita    = string.Empty;
                switch (oTipoCita)
                {
                case Parametros.EstadoCita.REGISTRADA: strTipoCita = "Reserva"; break;

                case Parametros.EstadoCita.CONFIRMADA: strTipoCita = "Confirmación"; break;

                case Parametros.EstadoCita.REPROGRAMADA: strTipoCita = "Reprogramación"; break;

                case Parametros.EstadoCita.REASIGNADA: strTipoCita = "Asignación"; break;

                case Parametros.EstadoCita.ANULADA: strTipoCita = "Anulación"; break;
                }
                string strTextoPie      = Parametros.N_TextoPieCorreo;
                string strNumCallCenter = Parametros.N_TelefonoCallCenter;
                string strVerNota       = oDatos.fl_nota;
                string linea            = null;
                while (reader.Peek() > -1)
                {
                    linea = reader.ReadLine().ToString();
                    linea = linea.Replace("{Cliente}", oDatos.no_cliente.Trim().ToUpper() + " " + oDatos.no_ape_paterno.Trim().ToUpper() + " " + oDatos.no_ape_materno.Trim().ToUpper());
                    linea = linea.Replace("{TipoCita}", strTipoCita);
                    linea = linea.Replace("{TipoPlaca}", Parametros.N_Placa + ": ");
                    linea = linea.Replace("{NumPlaca}", oDatos.nu_placa.ToUpper());
                    linea = linea.Replace("{Marca}", oDatos.no_marca.ToUpper());
                    linea = linea.Replace("{Modelo}", oDatos.no_modelo.ToUpper());
                    linea = linea.Replace("{DiaHoraCita}", GetFechaLarga(Convert.ToDateTime(oDatos.fecha_prog)) + " - " + FormatoHora(oDatos.ho_inicio_c));
                    linea = linea.Replace("{TextoAsesor}", Parametros.N_Asesor + ": ");
                    linea = linea.Replace("{Asesor}", oDatos.no_asesor);
                    linea = linea.Replace("{MovilAsesor}", oDatos.nu_telefono_a);
                    linea = linea.Replace("{Servicio}", oDatos.no_servicio.Trim().ToUpper());
                    linea = linea.Replace("{Taller}", oDatos.no_taller);
                    linea = linea.Replace("{TextoLocal}", Parametros.N_Local + ": ");
                    linea = linea.Replace("{PuntoRed}", oDatos.no_ubica);
                    linea = linea.Replace("{Direccion}", oDatos.no_direccion_t + " - " + oDatos.no_distrito.Trim());
                    linea = linea.Replace("{Telefono}", oDatos.nu_telefono_t);
                    linea = linea.Replace("{CodReserva}", oDatos.cod_reserva_cita);
                    linea = linea.Replace("{FormaRecordatorio}", "- Por Email");
                    linea = linea.Replace("{TextoPieCorreo}", strTextoPie);
                    linea = linea.Replace("{UrlTaller}", oDatos.tx_url_taller.Trim());
                    linea = linea.Replace("{CallCenter}", strNumCallCenter);
                    linea = linea.Replace("{blVerNota}", strVerNota.Equals("1") ? "inline" : "none");
                    strBodyHTML.Append(linea);
                }

                reader.Close();
            }
        }
        catch //(Exception ex)
        {
            strBodyHTML = new StringBuilder();
            strBodyHTML.Append("-2");
        }
        return(strBodyHTML);
    }