Example #1
0
        public IHttpActionResult Retirar([FromBody] Movimientos retirar)
        {
            Respuesta respuesta = new Respuesta();

            try
            {
                using (var db = new Bankcontext())
                {
                    var ncuenta = db.Cuenta.Where(x => x.NCuenta == retirar.NCuenta).FirstOrDefault();
                    if (ncuenta != null)
                    {
                        if (ncuenta.Valor >= retirar.Valor)
                        {
                            ncuenta.Valor = ncuenta.Valor - retirar.Valor;

                            db.SaveChanges();
                        }
                        else
                        {
                            log.Warn("La cantidad a retirar es superior a la cantidad disponible.");
                            respuesta.Estado = false;
                            respuesta.Msg    = "La cantidad a retirar es superior a la cantidad disponible.";
                            respuesta.Data   = null;
                            return(Ok(respuesta));
                        }

                        log.Info($"Se retiro ${retirar.Valor} de la cuenta {ncuenta.NCuenta}");
                        respuesta.Estado = true;
                        respuesta.Msg    = $"Se retiro ${retirar.Valor} de la cuenta {ncuenta.NCuenta}";
                        respuesta.Data   = retirar;
                        return(Ok(respuesta));
                    }
                    else
                    {
                        log.Warn("La cuenta no existe");
                        respuesta.Estado = false;
                        respuesta.Msg    = "La cuenta no existe";
                        respuesta.Data   = null;
                        return(Ok(respuesta));
                    }
                }
            }
            catch (Exception ex)
            {
                log.Error($"Error al consultar {ex.Message}");
                respuesta.Estado = false;
                respuesta.Msg    = "Error al retirar";
                respuesta.Data   = null;
                return(Ok(respuesta));
            }
        }
Example #2
0
        public IHttpActionResult CrearCuentaH([FromBody] CuentaAhorros nuevacuenta)
        {
            Respuesta respuesta = new Respuesta();

            try
            {
                Usuario nuevoUsuario = new Usuario()
                {
                    Nombre   = nuevacuenta.Nombre,
                    Apellido = nuevacuenta.Apellido
                };

                Cuenta nuevaCuenta = new Cuenta()
                {
                    Valor = nuevacuenta.Valor,
                };
                nuevoUsuario.Cuenta = nuevaCuenta;
                nuevaCuenta.Usuario = nuevoUsuario;

                using (var db = new Bankcontext())
                {
                    db.Usuario.Add(nuevoUsuario);
                    db.SaveChanges();
                }

                log.Info($"Secreo la cuenta del usuario {nuevoUsuario.Nombre}");
                respuesta.Estado = true;
                respuesta.Msg    = $"Se creo la cuenta {nuevoUsuario.Cuenta.NCuenta} al cliente {nuevoUsuario.Nombre} con un saldo de ${nuevoUsuario.Cuenta.Valor}";
                respuesta.Data   = nuevoUsuario;
                return(Ok(respuesta));
            }
            catch (Exception ex)
            {
                log.Error($"Error al consultar {ex.Message}");
                respuesta.Estado = false;
                respuesta.Msg    = "Erro al crear cuenta de ahorros";
                respuesta.Data   = null;
                return(Ok(respuesta));
            }
        }
Example #3
0
        public IHttpActionResult Consignar([FromBody] Movimientos consignar)
        {
            Respuesta respuesta = new Respuesta();

            try
            {
                using (var db = new Bankcontext())
                {
                    var ncuenta = db.Cuenta.Where(x => x.NCuenta == consignar.NCuenta).FirstOrDefault();
                    if (ncuenta != null)
                    {
                        ncuenta.Valor = ncuenta.Valor + consignar.Valor;

                        db.SaveChanges();

                        log.Info($"Se consigno ${consignar.Valor} a la cuenta {ncuenta.NCuenta}");
                        respuesta.Estado = true;
                        respuesta.Msg    = $"Se consigno ${consignar.Valor} a la cuenta {ncuenta.NCuenta}";
                        respuesta.Data   = consignar;
                        return(Ok(respuesta));
                    }
                    else
                    {
                        log.Warn("La cuenta no existe");
                        respuesta.Estado = false;
                        respuesta.Msg    = "La cuenta no existe";
                        respuesta.Data   = null;
                        return(Ok(respuesta));
                    }
                }
            }
            catch (Exception ex)
            {
                log.Error($"Error al consultar {ex.Message}");
                respuesta.Estado = false;
                respuesta.Msg    = "Error al consignar";
                respuesta.Data   = null;
                return(Ok(respuesta));
            }
        }
Example #4
0
        public IHttpActionResult TodosLosUsuarios()
        {
            Respuesta respuesta = new Respuesta();

            try
            {
                using (var db = new Bankcontext())
                {
                    db.Configuration.LazyLoadingEnabled = false;
                    var usuarios = db.Usuario.Include("Cuenta").Select(x => new Usuarios
                    {
                        IdUsuario = x.IdUsuario,
                        Nombre    = x.Nombre,
                        Apellido  = x.Apellido,
                        NCuenta   = x.Cuenta != null ? x.Cuenta.NCuenta : 0
                    }).ToList();
                    if (usuarios.Count() == 0)
                    {
                        respuesta.Estado = false;
                        respuesta.Msg    = "No hay datos";
                        respuesta.Data   = null;
                        return(Ok(respuesta));
                    }
                    log.Info("Se consulto la lista de usuarios");
                    respuesta.Estado = true;
                    respuesta.Msg    = "Se consulto la lista de usuarios";
                    respuesta.Data   = usuarios;
                    return(Ok(respuesta));
                }
            }
            catch (Exception ex)
            {
                log.Error($"Error al consultar {ex.Message}");
                respuesta.Estado = false;
                respuesta.Msg    = "Algo salio mal al traer la informaciĆ²n";
                respuesta.Data   = null;
                return(Ok(respuesta));
            }
        }
Example #5
0
        public IHttpActionResult ConsultarSaldo(int ncuenta)
        {
            Respuesta respuesta = new Respuesta();

            try
            {
                using (var db = new Bankcontext())
                {
                    var consultar = db.Cuenta.Where(x => x.NCuenta == ncuenta).FirstOrDefault();
                    if (consultar != null)
                    {
                        log.Info($"La cuenta {consultar.NCuenta} tiene un saldo de ${consultar.Valor}");
                        respuesta.Estado = true;
                        respuesta.Msg    = $"La cuenta {consultar.NCuenta} tiene un saldo de ${consultar.Valor}";
                        respuesta.Data   = null;
                        return(Ok(respuesta));
                    }
                    else
                    {
                        log.Warn("La cuenta no existe");
                        respuesta.Estado = false;
                        respuesta.Msg    = "La cuenta no existe";
                        respuesta.Data   = null;
                        return(Ok(respuesta));
                    }
                }
            }
            catch (Exception ex)
            {
                log.Error($"Error al consultar {ex.Message}");
                respuesta.Estado = false;
                respuesta.Msg    = "Error al consultar saldo.";
                respuesta.Data   = null;
                return(Ok(respuesta));
            }
        }