예제 #1
0
        public ActionResult EnviarCorreoFromAWS(string abonoId, int abonoNro)
        {
            string idDecrypted = abonoId;
            //MiUtil.desEncriptar(abonoId);
            int intId = Convert.ToInt32(idDecrypted);


            ViewBag.abonoId = intId;


            ImpresionAbono ia = impresionAbono(intId);

            if (ia != null)
            {
                crearArchivo(intId, abonoNro);
                string file = nombreArchivo(intId, abonoNro);
                ViewBag.abonoId = abonoId;
                paramcorreo paramcorreo = (paramcorreo)db.paramcorreo.FirstOrDefault(em => em.EmpresaId == 1);
                if (paramcorreo != null)
                {
                    //  paramcorreos.ToList().Where(em => em.EmpresaId == empresaId);
                    //db.ParamCorreos.Find(empresaId);
                    empresa      empresa      = (empresa)db.empresa.Find(ia.EmpresaId);
                    EnviarCorreo enviarcorreo = new EnviarCorreo()
                    {
                        Empresa      = empresa.Nombre,
                        Servidor     = paramcorreo.Servidor,
                        Puerto       = paramcorreo.Puerto,
                        Usuario      = paramcorreo.Usuario,
                        Password     = paramcorreo.Password,
                        Destinatario = ia.EmailCliente,
                        Asunto       = "Comprobante de Abono",
                        Mensaje      = "Adjunto encontrara el comprobante de abono",
                        Adjunto      = file
                    };
                    return(View("EnviarCorreo", enviarcorreo));
                }
                else
                {
                    ViewBag.Layout     = 0;
                    ViewBag.action     = "index";
                    ViewBag.controller = "Home";
                    ViewBag.tipo       = "bg-warning";
                    ViewBag.mensaje    = "Debe definir los parametros de correo para poder enviar correos";
                    return(View("../Shared/Mensaje"));
                }
            }
            else
            {
                ViewBag.Layout     = 0;
                ViewBag.action     = "index";
                ViewBag.controller = "Home";
                ViewBag.tipo       = "bg-warning";
                ViewBag.mensaje    = "No es posible enviar comprobantes de abonos inactivos";
                return(View("../Shared/Mensaje"));
            }
        }
예제 #2
0
        public ImpresionAbono impresionAbono(int abonoId)
        {
            ImpresionAbono ia    = null;
            abono          abono = (abono)db.abono.Find(abonoId);

            if (abono.Estado)
            {
                cuota   cuota   = (cuota)db.cuota.Find(abono.CuotaId);
                credito credito = (credito)db.credito.Find(cuota.CreditoId);
                empresa empresa = (empresa)db.empresa.Find(credito.cliente.EmpresaId);
                ia                   = new ImpresionAbono();
                ia.LogoEmpresa       = "~/Uploads/Logos/" + empresa.LogoUrl;
                ia.EmpresaId         = empresa.EmpresaId;
                ia.EmpresaNit        = empresa.Nit;
                ia.EmpresaNombre     = empresa.Nombre;
                ia.ClienteNit        = credito.cliente.Nit;
                ia.ClienteNombre     = credito.cliente.Nombre;
                ia.EmailCliente      = credito.cliente.Email;
                ia.CreditoId         = credito.CreditoId;
                ia.CreditoNro        = credito.CreditoNro;
                ia.CreditoValor      = credito.Valor;
                ia.CreditoCantCuotas = credito.cuota.Count;
                ia.CuotaNro          = cuota.Numero;
                ia.CuotaValor        = cuota.AbonoCapital + cuota.AbonoInteres + MiUtil.nullTodecimal(cuota.AjusteAbonoCapital) + MiUtil.nullTodecimal(cuota.AjusteAbonoInteres);
                ia.AbonoId           = abonoId;
                ia.AbonoNro          = abono.AbonoNro;
                ia.AbonoFecha        = abono.Fecha;
                ia.AbonoValor        = abono.Valor;
                decimal?porcenInteres = cuota.porcentajeInteres();
                decimal?porcenCapital = cuota.porcentajeCapital();
                ia.AbonoInteres        = ia.AbonoValor * (porcenInteres / 100);
                ia.AbonoCapital        = ia.AbonoValor * (porcenCapital / 100);
                ia.CreditoSaldoInteres = credito.calcularTotalInteres() - credito.calcularAbonoInteres(abono.Fecha);
                ia.CreditoSaldoCapital = credito.calcularTotalCapital() - credito.calcularAbonoCapital(abono.Fecha);
                ia.TotalAbono          = ia.AbonoCapital + ia.AbonoInteres;
                ia.SaldoCuota          = cuota.calcularSaldoxCapital(abono.Fecha) + cuota.calcularSaldoxInteres(abono.Fecha);
                //ia.CuotaValor - ia.TotalAbono;
            }
            return(ia);
        }