Ejemplo n.º 1
0
        //public bool ObtieneSeccionesEmail()
        //{
        //    iErr = 0;
        //    vwCfdCartasReclamacionDeuda carta = new vwCfdCartasReclamacionDeuda(_Conexion.ConnStr);
        //    carta.Where.Letter_type.Value = 3;
        //    carta.Where.Letter_type.Operator = WhereParameter.Operand.Equal;
        //    carta.Where.Ltrrptnm.Conjuction = WhereParameter.Conj.And;
        //    carta.Where.Ltrrptnm.Value = _Param.emailCarta;
        //    carta.Where.Ltrrptnm.Operator = WhereParameter.Operand.Equal;
        //    sMsj = "";
        //    try
        //    {
        //        if (!carta.Query.Load())
        //        {
        //            sMsj = "No está configurada la plantilla de la carta " + _Param.emailCarta + ". Ingrese esta plantilla en GP Tarjetas > ventas > Collection Letters.";
        //            iErr++;
        //            return false;
        //        }
        //        else
        //        {
        //            _asunto = carta.CN_Email_Subject;
        //            _cuerpo = carta.CN_Letter_Text;
        //        }
        //        return true;
        //    }
        //    catch (Exception eSe)
        //    {
        //        sMsj = "Contacte al administrador. No se pudo consultar la base de datos. [SeccionesEmail] " + eSe.Message;
        //        iErr++;
        //        return false;
        //    }

        //}

        //public DireccionesEmail ObtieneDirecciones(string custnmbr)
        //{
        //    iErr = 0;
        //    sMsj = string.Empty;
        //    vwCfdClienteDireccionesCorreo dirCorreo = new vwCfdClienteDireccionesCorreo(_Conexion.ConnStr);     //direcciones de correo de los clientes
        //    dirCorreo.Where.CUSTNMBR.Value = custnmbr;
        //    dirCorreo.Where.CUSTNMBR.Operator = WhereParameter.Operand.Equal;
        //    DireccionesEmail dir = new DireccionesEmail("", "", "");
        //    try
        //    {
        //        if (!dirCorreo.Query.Load())
        //        {
        //            sMsj = "El cliente no tiene direcciones de correo registradas.";
        //            iErr++;
        //            return dir;
        //        }
        //        else
        //        {
        //            dir.mailTo = dirCorreo.EmailTo;
        //            dir.mailCC = dirCorreo.EmailCC;
        //            dir.mailCCO = dirCorreo.EmailCCO;
        //        }
        //        return dir;
        //    }
        //    catch (Exception edc)
        //    {
        //        sMsj = "Contacte al administrador. No se pudo consultar la base de datos. [ObtieneDireccionesDeCorreo] " + edc.Message;
        //        iErr++;
        //        return dir;
        //    }

        //}

        public bool ProcesaMensaje(string idFactura, string rutaYNombreArchivo)
        {
            iErr = 0;
            sMsj = string.Empty;
            List <string> Adjunto = new List <string>();

            //dir = new DireccionesEmail(_emailTo, _emailCC, _emailCCO);

            if (iErr == 0)
            {
                if (_Param.emite)
                {
                    Adjunto.Add(rutaYNombreArchivo.Replace(".xml", "." + _Param.emailAdjEmite));    //xml o zip
                }
                if (_Param.imprime)
                {
                    Adjunto.Add(rutaYNombreArchivo.Replace(".xml", "." + _Param.emailAdjImprm));    //pdf
                }
                if (!_motorDeCorreo.SendMessage(_emailTo, _Param.emailAccount,
                                                _asunto.Trim() + " (" + idFactura + ")", _cuerpo,
                                                _emailCC, _emailCCO, _Param.replyto, Adjunto))
                {
                    iErr++;
                    sMsj = _motorDeCorreo.ultimoMensaje;
                }
            }

            return(iErr == 0);
        }
Ejemplo n.º 2
0
        public bool ProcesaMensaje(string custnmbr, string idFactura, string rutaYNombreArchivo)
        {
            iErr = 0;
            sMsj = string.Empty;
            List <string>    Adjunto = new List <string>();
            DireccionesEmail dir     = ObtieneDirecciones(custnmbr);

            if (iErr == 0)
            {
                if (_Param.emite)
                {
                    Adjunto.Add(rutaYNombreArchivo.Replace(".xml", ".cliente." + _Param.emailAdjEmite));    //xml o zip
                }
                if (_Param.imprime)
                {
                    Adjunto.Add(rutaYNombreArchivo.Replace(".xml", "." + _Param.emailAdjImprm));    //pdf
                }
                if (!_motorDeCorreo.SendMessage(Utiles.Derecha(dir.mailTo, dir.mailTo.Length - 1), _Param.emailAccount,
                                                _asunto.Trim() + " (" + idFactura + ")", _cuerpo,
                                                Utiles.Derecha(dir.mailCC, dir.mailCC.Length - 1),
                                                Utiles.Derecha(dir.mailCCO, dir.mailCCO.Length - 1),
                                                _Param.replyto, Adjunto))
                {
                    iErr++;
                    sMsj = _motorDeCorreo.ultimoMensaje;
                }
            }

            return(iErr == 0);
        }
Ejemplo n.º 3
0
        public bool ProcesaEnvioMail(EmailSmtp mail, string custnmbr, string docId, short Soptype, string Sopnumbe, string nombreCliente,
                                     string eBinarioActual, string eBinarioNuevo, string Mensaje,
                                     string asunto, string cuerpo)
        {
            cfdReglasFacturaXml doc     = new cfdReglasFacturaXml(_Conexion, _Param); //log de facturas xml emitidas y anuladas
            List <string>       Adjunto = new List <string>();
            DireccionesEmail    dir     = this.ObtieneDirecciones(custnmbr);
            string nombreArchivo        = Utiles.FormatoNombreArchivo(docId + Sopnumbe + "_" + custnmbr, nombreCliente, 20);

            //Si hay error al obtener direcciones, no continuar
            if (ultimoMensaje.Equals(string.Empty))
            {
                if (_Param.emite)
                {
                    Adjunto.Add(Mensaje.Replace("Almacenado en ", "") + "." + _Param.emailAdjEmite);    //xml o zip
                }
                if (_Param.imprime)
                {
                    Adjunto.Add(Mensaje.Replace("Almacenado en ", "") + "." + _Param.emailAdjImprm);    //pdf
                }
                if (mail.SendMessage(Utiles.Derecha(dir.mailTo, dir.mailTo.Length - 1), _Param.emailAccount,
                                     asunto.Trim() + " (" + nombreArchivo + ")", cuerpo,
                                     Utiles.Derecha(dir.mailCC, dir.mailCC.Length - 1),
                                     Utiles.Derecha(dir.mailCCO, dir.mailCCO.Length - 1),
                                     _Param.replyto, Adjunto))
                {
                    doc.RegistraLogDeArchivoXML(Soptype, Sopnumbe, "E-mail enviado.", "0", _Conexion.Usuario, "", "enviado", eBinarioNuevo, "E-mail enviado el " + DateTime.Today.ToString());
                }
                else
                {
                    numMensajeError++;
                }
            }
            else
            {
                numMensajeError++;
            }
            ultimoMensaje = ultimoMensaje + mail.ultimoMensaje + doc.ultimoMensaje;

            return(ultimoMensaje.Equals(string.Empty));
        }