Exemplo n.º 1
0
        private void EnviaNotifCan(NominaItem sal)
        {
            if (View != null && View.ObjectSpace != null && sal != null)
            {
                Correo objCorreo = View.ObjectSpace.FindObject <Correo>(CriteriaOperator.Parse("Clave = 'cancel'"));

                if (objCorreo == null)
                {
                    objCorreo       = View.ObjectSpace.CreateObject <Correo>();
                    objCorreo.Clave = "cancel";
                }

                Correo objSend = View.ObjectSpace.FindObject <Correo>(CriteriaOperator.Parse("Clave = 'icpac'"));
                if (objSend != null)
                {
                    objCorreo.Cuenta       = objSend.Cuenta;
                    objCorreo.Identificdr  = objSend.Identificdr;
                    objCorreo.Passw        = objSend.Passw;
                    objCorreo.Puerto       = objSend.Puerto;
                    objCorreo.SegurdSSL    = objSend.SegurdSSL;
                    objCorreo.ServidorSMTP = objSend.ServidorSMTP;
                    objCorreo.Usuario      = objSend.Usuario;
                }



                objCorreo.Asunto   = string.Format("El documento {0}, se ha cancelado", sal.ReciboN);
                objCorreo.Mensaje1 = "Notificación de cancelación";

                Empleado pc  = sal.Empleado;
                Empresa  emp = sal.Session.FindObject <Empresa>(CriteriaOperator.Parse("Clave = 'icpac'"));

                if (pc != null && pc.Persona != null && pc.Persona.Direccion != null)
                {
                    pc.Persona.Direccion.Reload();
                }


                if (emp != null)
                {
                    objCorreo.Mensaje1 = "Estimado, le notificamos por este medio que el CFDI (Comprobante Fiscal Digital por Internet) con las siguientes características ha sido cancelado:<br>";
                }

                objCorreo.Mensaje2 = htmlCan(emp.Compania.Rfc, emp.Compania.Nombre, sal.Empleado.Persona.Rfc,
                                             sal.Empleado.Nombre, sal.ReciboN, String.Format("{0:yyyy-MM-ddTHH:mm:ss}", sal.FechaDoc),
                                             string.Format("{0}({1})", "egreso", "RECIBO"),
                                             string.Format("{0}, {1}", sal.Total.ToString("c2"), sal.Moneda.Clave));

                CorreoSend.MandaCorreo(objCorreo, pc.Persona.Direccion.Email, objCorreo.Asunto, objCorreo.Identificdr, null);
                objCorreo.Mensaje1     =
                    objCorreo.Mensaje2 = string.Empty;
            }
        }
Exemplo n.º 2
0
        private void EnviaC2(IList <Cliente> clientes, string idntfcdr, string asnt)
        {
            Anuncio obj = View.CurrentObject as Anuncio;
            Correo  cfg = obj.Session.FindObject <Correo>(null);
            Empresa emp = obj.Session.FindObject <Empresa>(null);

            if (obj != null && cfg != null)
            {
                CorreoBase objCorreo = View.ObjectSpace.CreateObject <CorreoBase>();

                objCorreo.Cuenta       = cfg.Cuenta;
                objCorreo.Identificdr  = cfg.Identificdr;
                objCorreo.Passw        = cfg.Passw;
                objCorreo.Puerto       = cfg.Puerto;
                objCorreo.SegurdSSL    = cfg.SegurdSSL;
                objCorreo.ServidorSMTP = cfg.ServidorSMTP;
                objCorreo.Usuario      = cfg.Usuario;

                objCorreo.Asunto   = idntfcdr; //  "Anuncio iCPAC";
                objCorreo.Mensaje1 = obj.Mensaje;

                //CorreoSend.MandaCorreo(cfg, "*****@*****.**", obj.Mensaje, "iCPAC");
                MemoryStream mLogo = null;
                if (emp != null && emp.Logo != null)
                {
                    JpegStorageConverter jpeg = new JpegStorageConverter();

                    Byte[] arr = jpeg.ConvertToStorageType(emp.Logo) as Byte[];
                    mLogo = new MemoryStream(arr);
                }

                // string paramValue = e.ParameterCurrentValue as string;
                CorreoSend.Client(objCorreo);
                // CorreoSend.MailMssg(objCorreo, objCorreo.Asunto, "iCPAC",  mLogo);

                /*
                 * if (!string.IsNullOrEmpty(ParamValue))
                 * {
                 *  IObjectSpace objectSpace = Application.CreateObjectSpace();
                 *  Cliente cli = objectSpace.FindObject<Cliente>(new BinaryOperator("Clave", Cliente.ClaveFto(ParamValue)));
                 *
                 *  List<string> arRcpt = new List<string>();
                 *  if (cli != null && cli.Compania != null && cli.Compania.Direccion != null &&
                 *      !string.IsNullOrEmpty(cli.Compania.Direccion.Email))
                 *  {
                 *      objCorreo.Mensaje1 = string.Format("{0}{1} <br/> <br />{2}",
                 *          !string.IsNullOrEmpty(cli.Als) ? cli.Als : string.Empty, Environment.NewLine, obj.Mensaje);
                 *
                 *      CorreoSend.MailMssg(objCorreo, objCorreo.Asunto, "iCPAC", mLogo);
                 *      arRcpt.Add(cli.Compania.Direccion.Email);
                 *      CorreoSend.MandaCorreo2(objCorreo, arRcpt);
                 *  }
                 * }
                 * else
                 * {*/
                IObjectSpace objectSpace = Application.CreateObjectSpace();

                /*
                 *  IList<Cliente> clientes = objectSpace.GetObjects<Cliente>
                 *      (new BinaryOperator("Status", EStatusPrvdClnt/ *StatusTipo* /.Activo));*/


                List <string> arRcpt = new List <string>();
                foreach (Cliente cli in clientes)
                {
                    if (cli != null && cli.Compania != null && cli.Compania.Direccion != null &&
                        !string.IsNullOrEmpty(cli.Compania.Direccion.Email))
                    {
                        if (cli.Status != Cap.Clientes.BusinessObjects.Generales.EStatusPrvdClnt.Suspendido /* Cap.Clientes.BusinessObjects.Generales.StatusTipo.Suspendido*/)
                        {
                            // CorreoSend.MandaCorreo2(objCorreo, cli.Compania.Direccion.Email);
                            if (!string.IsNullOrEmpty(cli.Als))
                            {
                                objCorreo.Mensaje1 = string.Format("{0}{1} <br/> <br />{2}", cli.Als, Environment.NewLine, obj.Mensaje);
                            }
                            else
                            {
                                objCorreo.Mensaje1 = obj.Mensaje;
                            }

                            arRcpt.Add(cli.Compania.Direccion.Email);

                            CorreoSend.MsgAltClear();
                            CorreoSend.MailMssg(objCorreo, objCorreo.Asunto,
                                                /*"iCPAC"*/ asnt, mLogo);
                            CorreoSend.MandaCorreo2(objCorreo, /*cli.Compania.Direccion.Email*/ arRcpt);

                            arRcpt.Clear();
                        }
                    }
                }

                /*
                 * if (arRcpt.Count > 0)
                 *  CorreoSend.MandaCorreo2(objCorreo, / *cli.Compania.Direccion.Email* /arRcpt);*/

                //}
                objCorreo.Mensaje1     =
                    objCorreo.Mensaje2 = string.Empty;

                if (mLogo != null)
                {
                    mLogo.Dispose();
                }
            }
        }
Exemplo n.º 3
0
        private void Correo(NominaItem fac)
        {
            if (View != null)
            {
                if (fac != null)
                {
                    Correo objCorreo = View.ObjectSpace.FindObject <Correo>(CriteriaOperator.Parse("Clave = 'icpac'"));

                    if (objCorreo != null)
                    {
                        string aux = NegocioNom.NamePdf(fac);
                        string asn = String.Format("{0}({1})", objCorreo.Asunto, Path.GetFileNameWithoutExtension(aux));

                        string       sn    = NegocioNom.SoloPdf(fac);
                        MemoryStream fmem  = new MemoryStream();
                        MemoryStream fmem1 = new MemoryStream();

                        fac.DElctrnc.Archivos[0].File.SaveToStream(fmem);
                        sn = Path.ChangeExtension(sn, ".xml");
                        // Set the stream position to the beginning of the stream.
                        fmem.Seek(0, SeekOrigin.Begin);
                        CorreoSend.AddFile(fmem,
                                           MediaTypeNames.Application.Soap, sn);

                        fac.DElctrnc.Archivos[1].File.SaveToStream(fmem1);
                        sn = Path.ChangeExtension(sn, ".pdf");
                        // Set the stream position to the beginning of the stream.
                        fmem1.Seek(0, SeekOrigin.Begin);
                        CorreoSend.AddFile(fmem1,
                                           MediaTypeNames.Application.Pdf, sn);

                        // CorreoSend.AddFile(aux, MediaTypeNames.Application.Pdf);

                        // CorreoSend.AddFile(aux, MediaTypeNames.Application.Soap);

                        /* No lo logre asi
                         * MemoryStream ms = new MemoryStream();
                         * emp.Logo.Save(ms, ImageFormat.Jpeg);*/
                        string mail = string.Empty;

                        fac.Empleado.Persona.Direccion.Reload();
                        if (!string.IsNullOrEmpty(Param.VntCfdi.SendCopy))
                        {
                            mail = string.Format("{0}, {1}", fac.Empleado.Persona.Direccion.Email, Param.VntCfdi.SendCopy);
                        }
                        else
                        {
                            mail = fac.Empleado.Persona.Direccion.Email;
                        }
                        if (CorreoSend.MandaCorreo(objCorreo, mail, asn, null, null))
                        {
                            fac.EnvioC = EnvioCorreo.Enviado;
                            Save       = true;

                            InCommited = true;
                            View.ObjectSpace.CommitChanges();
                            InCommited = false;
                        }
                    }
                }
            }
        }