コード例 #1
0
        //Esta clase se encarga de llenar el dropdownlist de cuentas de destino basado en la cuenta de origen elegida.
        private void CargarCuentasDestino()
        {
            ddnCuentaDestino.Items.Clear();
            string idCuentaOrigen = ddnCuentaOrigen.SelectedItem.Value;

            //Se valida que la cuenta de origen haya sido seleccionada.
            if (idCuentaOrigen == "")
            {
                ddnCuentaDestino.Items.Add(new ListItem("Seleccione una cuenta de destino"));
                ddnCuentaDestino.DataBind();
            }
            else
            {
                using (SistemaBancarioEntities bd = new SistemaBancarioEntities())
                {
                    var listaCuentasDestino = (from c in bd.spConsultaCuentaDestino(int.Parse(idCuentaOrigen))
                                               select c).ToList();

                    ddnCuentaDestino.Items.Add(new ListItem("Seleccione una cuenta de destino"));
                    foreach (var cuentas in listaCuentasDestino)
                    {
                        var item = new ListItem(cuentas.numeroCuenta, cuentas.idCuenta.ToString());
                        ddnCuentaDestino.Items.Add(item);
                    }
                    ddnCuentaDestino.DataBind();
                }
            }
        }
コード例 #2
0
        //Este proceso cargar las listas del formulario
        protected void Page_Load(object sender, EventArgs e)
        {
            if (this.IsPostBack == false)
            {
                Usuario objUsuario = (Usuario)Session["Usuario"];
                int     idPersona  = objUsuario.idPersona;

                using (SistemaBancarioEntities bd = new SistemaBancarioEntities())
                {
                    var listaTiposMovimientos = (from m in bd.spConsultaTiposCajero()
                                                 select m).ToList();
                    ddnTipoMovimiento.Items.Add(new ListItem("Seleccione un tipo"));

                    foreach (var tipos in listaTiposMovimientos)
                    {
                        var item = new ListItem(tipos.nombre, tipos.idTipoMovimiento.ToString());
                        ddnTipoMovimiento.Items.Add(item);
                    }
                    ddnTipoMovimiento.DataBind();

                    var listaCuentas = (from c in bd.spConsultaCuentas(idPersona)
                                        select c).ToList();

                    ddnCuentas.Items.Add(new ListItem("Seleccione una cuenta"));
                    foreach (var cuentas in listaCuentas)
                    {
                        var item = new ListItem(cuentas.numeroCuenta, cuentas.idCuenta.ToString());
                        ddnCuentas.Items.Add(item);
                    }
                    ddnCuentas.DataBind();
                }
            }
        }
コード例 #3
0
        protected void btnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                //Almacena los datos de los valores del formulario
                string  numeroCuenta = txtCuenta.Text;
                Usuario objUsuario   = (Usuario)Session["Usuario"];
                int     idPersona    = objUsuario.idPersona;

                //Abre una conexion a la base de datos para  insertar la cuenta
                using (SistemaBancarioEntities bd = new SistemaBancarioEntities())
                {
                    var cuenta = (from c in bd.spConsultaCuentaPorNumero(numeroCuenta)
                                  select c).FirstOrDefault();

                    if (cuenta != null)
                    {
                        lblMensaje.Text = "La cuenta a crear ya existe en la base de datos";
                    }
                    else
                    {
                        bd.spCrearCuentas(idPersona, numeroCuenta, DateTime.Now);
                        bd.SaveChanges();
                        lblMensaje.Text = "Se ha creado la cuenta exitosamente";
                        txtCuenta.Text  = " ";
                    }
                }
            }
            catch
            {
                lblMensaje.Text = "Ha ocurrido un error";
            }
        }
コード例 #4
0
        //Este proceso se encarga de ejecutar la acción de realizar la transferencia
        protected void btnEjecutar_Click(object sender, EventArgs e)
        {
            try
            {
                //Se valida que el usuario haya selecciodo una opcion
                if (ddnCuentaOrigen.SelectedIndex == 0 || ddnCuentaDestino.SelectedIndex == 0)
                {
                    lblMensaje.Text = "Debe seleccionar una opcion en ambas listas";
                }
                else
                {
                    int monto = int.Parse(txtMonto.Text);

                    //Se valida que el monto no sea mayor o igual a 250 mil colones
                    if (monto >= 250000)
                    {
                        lblMensaje.Text = "Solo se permiten transferencias menores a 250 mil colones";
                    }
                    else
                    {
                        //Si el monto es inferior a 250 mil colones se procede a insertar en la base de datos
                        using (SistemaBancarioEntities bd = new SistemaBancarioEntities())
                        {
                            var cuenta = (from c in bd.spConsultaCuentaPorNumero(ddnCuentaOrigen.SelectedItem.Text)
                                          select c).FirstOrDefault();

                            //Si el saldo de la cuenta es menor a lo que se desea transferir no se permite
                            if (cuenta.saldo < monto)
                            {
                                lblMensaje.Text = "El monto a transferir es mayor al saldo de la cuenta";
                            }
                            else
                            {
                                int idCuentaOrigen  = int.Parse(ddnCuentaOrigen.SelectedItem.Value);
                                int idCuentaDestino = int.Parse(ddnCuentaDestino.SelectedItem.Value);

                                bd.spInsertaTransferencias(idCuentaOrigen, idCuentaDestino, monto, DateTime.Now);
                                bd.spInsertaMovimiento(idCuentaOrigen, 3, (monto * -1), DateTime.Now);
                                bd.spInsertaMovimiento(idCuentaDestino, 4, monto, DateTime.Now);
                                bd.spActualizaCuenta((monto * -1), idCuentaOrigen, DateTime.Now);
                                bd.spActualizaCuenta(monto, idCuentaDestino, DateTime.Now);
                                bd.SaveChanges();

                                lblMensaje.Text = "La transferencia se ha efectuado exitosamente";
                                txtMonto.Text   = "";
                                ddnCuentaOrigen.SelectedIndex  = 0;
                                ddnCuentaDestino.SelectedIndex = 0;
                            }
                        }
                    }
                }
            }
            catch
            {
            }
        }
コード例 #5
0
        // Este proceso se encarga de obtener la lista de cuentas del usuario de sesion que se recibe,
        protected void Page_Load(object sender, EventArgs e)
        {
            int idCuenta = int.Parse(Request.QueryString["id"]);

            using (SistemaBancarioEntities bd = new SistemaBancarioEntities())
            {
                var listaMovimientos = (from m in bd.spConsultaMovimientos(idCuenta)
                                        select m).ToList();

                grdListaMovimientos.DataSource = listaMovimientos;
                grdListaMovimientos.DataBind();
            }
        }
コード例 #6
0
        protected void Page_Load(object sender, EventArgs e)
        {
            Usuario objUsuario = (Usuario)Session["Usuario"];

            using (SistemaBancarioEntities bd = new SistemaBancarioEntities())
            {
                var detalleCuentas = (from c in bd.spConsultaCuentas(objUsuario.idPersona)
                                      select c).ToList();

                grdMovimientos.DataSource = detalleCuentas;
                grdMovimientos.DataBind();
            }
        }
コード例 #7
0
        // En este proceso se crear la variable de entorno para iniciar sesion y validarla con la base de datos.
        protected void btnEntrar_Click(object sender, EventArgs e)
        {
            Usuario objUsuario = new Usuario();

            objUsuario.usuario = txtUsuario.Text;
            objUsuario.clave   = txtClave.Text;

            Session["Login"] = objUsuario;

            Usuario objUsuario2 = (Usuario)Session["Login"];

            try
            {
                using (SistemaBancarioEntities db = new SistemaBancarioEntities())
                {
                    var usuario = (from u in db.spConsultaUsuarios(objUsuario2.usuario, objUsuario2.clave)
                                   select u).FirstOrDefault();

                    if (usuario.idPersona != 0)
                    {
                        Usuario objUsuario3 = new Usuario();
                        objUsuario3.idPersona      = usuario.idPersona;
                        objUsuario3.nombreCompleto = usuario.nombreCompleto;
                        objUsuario3.cedula         = usuario.cedula;
                        Session["Usuario"]         = objUsuario3;
                        Response.Redirect("~/Pages/ConsultarMovimientos.aspx");
                    }
                    else
                    {
                        lblMensaje.Text = "Los datos digitados no son los correctos";
                    }
                }
            }
            catch
            {
                lblMensaje.Text = "Ha ocurrido un error";
            }
        }
コード例 #8
0
        //Este proceso se encarga de llenar las listas
        protected void Page_Load(object sender, EventArgs e)
        {
            if (this.IsPostBack == false)
            {
                Usuario objUsuario = (Usuario)Session["Usuario"];
                int     idPersona  = objUsuario.idPersona;

                using (SistemaBancarioEntities bd = new SistemaBancarioEntities())
                {
                    var listaCuentasUsuario = (from m in bd.spConsultaCuentas(objUsuario.idPersona)
                                               select m).ToList();
                    ddnCuentaOrigen.Items.Add(new ListItem("Seleccione una cuenta de origen"));

                    foreach (var cuentas in listaCuentasUsuario)
                    {
                        var item = new ListItem(cuentas.numeroCuenta, cuentas.idCuenta.ToString());
                        ddnCuentaOrigen.Items.Add(item);
                    }
                    ddnCuentaOrigen.DataBind();
                }
                ddnCuentaDestino.Items.Add(new ListItem("Seleccione una cuenta de destino"));
                ddnCuentaDestino.DataBind();
            }
        }
コード例 #9
0
        // Este proceso ejecuta el proceso
        protected void btnEjecutar_Click(object sender, EventArgs e)
        {
            try
            {
                int    idTipoMovimiento = int.Parse(ddnTipoMovimiento.SelectedValue);
                int    idCuenta         = int.Parse(ddnCuentas.SelectedValue);
                int    monto            = int.Parse(txtMonto.Text);
                string numeroCuenta     = ddnCuentas.SelectedItem.Text;
                //Se define como 1 si es deposito o 2 si es retiro
                if (ddnTipoMovimiento.SelectedIndex == 0 || ddnCuentas.SelectedIndex == 0)
                {
                    lblMensaje.Text = "Debe seleccionar una opcion en ambas listas";
                }
                else
                {
                    //Valida si el tipo de movimiento es deposito
                    if (idTipoMovimiento == 1)
                    {
                        if (monto > 0 && monto <= 500000)
                        {
                            using (SistemaBancarioEntities bd = new SistemaBancarioEntities())
                            {
                                bd.spInsertaMovimiento(idCuenta, idTipoMovimiento, monto, DateTime.Now);
                                bd.spActualizaCuenta(monto, idCuenta, DateTime.Now);
                                bd.SaveChanges();
                            }
                            lblMensaje.Text = "Se ha realizado el deposito exitosamente";
                            txtMonto.Text   = "";
                            ddnTipoMovimiento.SelectedIndex = 0;
                            ddnCuentas.SelectedIndex        = 0;
                        }
                        else
                        {
                            lblMensaje.Text = "El monto no puede ser igual a cero o montos mayores a 500 mil colones.";
                        }
                    }
                    else
                    {//Realiza el proceso al no ser deposito, por ende es un retiro
                        using (SistemaBancarioEntities bd = new SistemaBancarioEntities())
                        {
                            var cuentas = (from c in bd.spConsultaCuentaPorNumero(numeroCuenta)
                                           select c).FirstOrDefault();

                            if (cuentas.saldo > monto)
                            {
                                monto = (monto * -1);
                                bd.spInsertaMovimiento(idCuenta, idTipoMovimiento, monto, DateTime.Now);
                                bd.spActualizaCuenta(monto, idCuenta, DateTime.Now);
                                bd.SaveChanges();
                                lblMensaje.Text = "Se ha realizado el retiro exitosamente";
                                txtMonto.Text   = "";
                                ddnTipoMovimiento.SelectedIndex = 0;
                                ddnCuentas.SelectedIndex        = 0;
                            }
                            else
                            {
                                lblMensaje.Text = "Saldo insuficiente para la transacción";
                            }
                        }
                    }
                }
            }
            catch
            {
                lblMensaje.Text = "Ha ocurrido un error";
            }
        }