コード例 #1
0
ファイル: Captura.aspx.cs プロジェクト: DiazFuApp/DiazFU
        //EVENTO PARA AUTORIZAR EL PRESTAMO
        protected void bAutorizar_Click(object sender, EventArgs e)
        {
            int IDUsuarioActual = 0;

            int.TryParse(((Usuarios)Session["Usuario"]).Id.ToString(), out IDUsuarioActual);
            int ID = int.Parse(Request.QueryString["id"].ToString());

            App_Code.Entidades.PrestamosGrupales Prestamo = new App_Code.Entidades.PrestamosGrupales
            {
                Id        = ID,
                IdUsuario = IDUsuarioActual
            };
            Prestamo.ConsultarID();
            Prestamo.CantidadOtorgada = float.Parse(tb_CantidadAOtorgar.Text);
            Prestamo.Interes          = 7;
            Prestamo.IdEstatus        = 4;
            Prestamo.Anticipo         = (Prestamo.CantidadOtorgada * float.Parse("0.10"));
            Prestamo.IdUsuario        = IDUsuarioActual;
            Prestamo.Actualizar();
            int CantidadPagos = int.Parse(ddl_Plazos.SelectedValue);

            App_Code.Entidades.Pagos Pago = new App_Code.Entidades.Pagos
            {
                IdPrestamo     = ID,
                IdTipoPrestamo = 2,
            };
            IntegrantesGrupos Clientes = new IntegrantesGrupos
            {
                IdGrupo = Prestamo.IdGrupo
            };

            using (DataSet dsClientes = Clientes.ConsultarTodo())
            {
                float MontoPorCliente = ((Prestamo.CantidadOtorgada * (1 + (Prestamo.Interes / 100))) - (Prestamo.CantidadOtorgada * float.Parse("0.10"))) / dsClientes.Tables[0].Rows.Count;
                foreach (DataRow Fila in dsClientes.Tables[0].Rows)
                {
                    for (int i = 1; i <= CantidadPagos; i++)
                    {
                        Pago.Plazo     = i.ToString() + "/" + CantidadPagos.ToString();
                        Pago.IdCliente = int.Parse(Fila["idCliente"].ToString());
                        int Plazo = int.Parse(Pago.Plazo.Substring(0, Pago.Plazo.IndexOf('/')));
                        Pago.FechaProgramada = DateTime.Now.AddDays(Plazo * 7);
                        Pago.MontoAPagar     = MontoPorCliente / CantidadPagos;
                        Pago.IdUsuario       = IDUsuarioActual;
                        Pago.Agregar();
                    }
                }
            }
            Session["Alerta"] = Herramientas.Alerta("Operación existosa!", "Préstamo autorizado correctamente.", 3);
            Response.Redirect("Listado.aspx");
        }
コード例 #2
0
ファイル: Captura.aspx.cs プロジェクト: DiazFuApp/DiazFU
        //EVENTO PARA ENTREGAR EL PRÉSTAMO
        protected void bEntregar_Click(object sender, EventArgs e)
        {
            int IDUsuarioActual = 0;

            int.TryParse(((Usuarios)Session["Usuario"]).Id.ToString(), out IDUsuarioActual);
            int ID = int.Parse(Request.QueryString["id"].ToString());

            App_Code.Entidades.PrestamosGrupales Prestamo = new App_Code.Entidades.PrestamosGrupales
            {
                Id        = ID,
                IdUsuario = IDUsuarioActual
            };
            Prestamo.ConsultarID();
            Prestamo.IdEstatus    = 5;
            Prestamo.FechaEntrega = DateTime.Now;
            Prestamo.IdUsuario    = IDUsuarioActual;
            Prestamo.Actualizar();

            App_Code.Entidades.Pagos Pagos = new App_Code.Entidades.Pagos
            {
                IdPrestamo     = ID,
                IdTipoPrestamo = 2
            };
            using (DataSet dsPagos = Pagos.ConsultarTodo())
            {
                foreach (DataRow Fila in dsPagos.Tables[0].Rows)
                {
                    App_Code.Entidades.Pagos Pago = new App_Code.Entidades.Pagos
                    {
                        Id        = int.Parse(Fila["id"].ToString()),
                        IdUsuario = IDUsuarioActual
                    };
                    Pago.ConsultarID();
                    Pago.IdEstatus = 7;
                    Pago.Actualizar();
                }
            }
            Session["Alerta"] = Herramientas.Alerta("Operación existosa!", "Préstamo entregado correctamente.", 3);
            Response.Redirect("Listado.aspx");
        }
コード例 #3
0
ファイル: Pagos.aspx.cs プロジェクト: DiazFuApp/DiazFU
        /// <summary>
        /// EVENTO PARA REALIZAR EL PAGO DEL GRUPO
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void bPagar_Click(object sender, EventArgs e)
        {
            if (ValidarInformacion())
            {
                int IdUsuarioActual = 0;
                int.TryParse(((Usuarios)Session["Usuario"]).Id.ToString(), out IdUsuarioActual);
                int IDPrestamoGrupal = int.Parse(Request.QueryString["id"].ToString());
                foreach (RepeaterItem Item in r_Clientes.Items)
                {
                    int   IDCliente = int.Parse(((HiddenField)Item.FindControl("hf_IdCliente")).Value);
                    float Monto     = float.Parse(((TextBox)Item.FindControl("tb_Monto")).Text.Replace("$", ""));
                    float Morosidad = float.Parse("0.00");
                    if (Monto > 0.00)
                    {
                        App_Code.Entidades.Pagos PagosCliente = new App_Code.Entidades.Pagos
                        {
                            IdPrestamo     = IDPrestamoGrupal,
                            IdTipoPrestamo = 2,
                            IdCliente      = IDCliente,
                            IdUsuario      = IdUsuarioActual
                        };
                        using (DataSet dsPagos = PagosCliente.ConsultarProximosPagos())
                        {
                            foreach (DataRow fila in dsPagos.Tables[0].Rows)
                            {
                                if (Monto > 0.00)
                                {
                                    //VALIDACIÓN DEL ÚLTIMO REGISTRO
                                    //ESTO PARA AGREGAR LA MOROSIDAD AL PAGO PARA LIQUIDAR EL ADEUDO
                                    if (fila == dsPagos.Tables[0].Rows[dsPagos.Tables[0].Rows.Count - 1])
                                    {
                                        Morosidad = float.Parse(((TextBox)Item.FindControl("tb_Morosidad")).Text.Replace("$", ""));
                                    }

                                    App_Code.Entidades.Pagos Pago = new App_Code.Entidades.Pagos
                                    {
                                        Id        = int.Parse(fila["id"].ToString()),
                                        IdUsuario = IdUsuarioActual
                                    };
                                    Pago.ConsultarID();
                                    //ASIGNAR TIPO DE PAGO
                                    Pago.TipoPago = ddl_TipoPago.SelectedValue;
                                    Monto        += Pago.MontoPagado;

                                    //CALCULO DEL MONTO
                                    if (Pago.MontoAPagar <= Monto)
                                    {
                                        Pago.MontoPagado = Pago.MontoAPagar;
                                        if (Morosidad > 0.00)
                                        {
                                            Pago.MontoPagado += Morosidad;
                                        }
                                        Pago.IdEstatus = 6;
                                        Monto         -= Pago.MontoAPagar;
                                    }
                                    else
                                    {
                                        Pago.MontoPagado = Monto;
                                        Monto           -= Monto;
                                    }

                                    //CALCULO DE MOROSIDAD
                                    Pago.FechaPago = DateTime.Now;
                                    if (Pago.FechaProgramada < DateTime.Now)
                                    {
                                        double totalDias = Math.Ceiling((DateTime.Now - Pago.FechaProgramada).TotalDays);
                                        Pago.Morosidad = float.Parse(totalDias.ToString()) * float.Parse("50.00");
                                    }
                                    Pago.Actualizar();
                                }
                            }
                        }
                    }
                }

                //BUSQUEDA DE PAGOS PENDIENTES DEL PRESTAMO
                App_Code.Entidades.Pagos Pagos = new App_Code.Entidades.Pagos()
                {
                    IdPrestamo     = IDPrestamoGrupal,
                    IdTipoPrestamo = 2
                };
                using (DataSet PagosPendientes = Pagos.ConsultarProximosPagos())
                {
                    //CAMBIO DE ESTATUS DEL PRESTAMO A PAGADO
                    if (PagosPendientes.Tables[0].Rows.Count == 0)
                    {
                        App_Code.Entidades.PrestamosGrupales Prestamo = new App_Code.Entidades.PrestamosGrupales
                        {
                            Id        = IDPrestamoGrupal,
                            IdUsuario = IdUsuarioActual
                        };
                        Prestamo.ConsultarID();
                        Prestamo.IdEstatus = 6;
                        Prestamo.Actualizar();
                    }
                }

                Session["Alerta"] = Herramientas.Alerta("Operación existosa!", "Pagos realizados correctamente.", 3);
                Response.Redirect("Listado.aspx");
            }
        }