public bool realizarTransferencia(TransferenciaModels transferencia) { try { CuentaModels origen = transferencia.cuenta_origen; CuentaModels destino = transferencia.cuenta_destino; //Comprueba montos if (transferencia.monto > origen.saldo) { return(false); } else { origen.saldo = origen.saldo - transferencia.monto; destino.saldo = destino.saldo + transferencia.monto; String queryDebito = string.Format("UPDATE dbo.CUENTA SET saldo = {0} where id_cuenta = {1} ", origen.saldo, origen.id_cuenta); serviceBD.Upd_New_DelUnValorQry(queryDebito); String queryCredito = string.Format("UPDATE dbo.CUENTA SET saldo = {0} where id_cuenta = {1} ", destino.saldo, destino.id_cuenta); serviceBD.Upd_New_DelUnValorQry(queryCredito); guardarTransferencia(transferencia); return(true); } } catch { return(false); } }
public void guardarTransferencia(TransferenciaModels transferencia) { String campos = "INSERT INTO dbo.TRANSFERENCIA(monto,fecha,id_cuenta_destino,id_cuenta_origen)"; String format = "MM/dd/yyyy"; String fecha = transferencia.fecha.ToString(format); String valores = string.Format(" VALUES({0},'{1}',{2},{3})", transferencia.monto, fecha, transferencia.cuenta_destino.id_cuenta, transferencia.cuenta_origen.id_cuenta); String query = campos + valores; serviceBD.Upd_New_DelUnValorQry(query); }
public ActionResult Transferir(String cuenta, String monto) { /* Respuesta */ String resultado = String.Empty; String mensaje = String.Empty; /* Realizar Transferencia */ TransferenciaModels transferencia = new TransferenciaModels(); transferencia.monto = double.Parse(monto.Trim()); TransferenciaService serT = new TransferenciaService(); DateTime hoy = DateTime.Today; transferencia.fecha = hoy; transferencia.cuenta_destino = serT.getCuenta(cuenta.Trim(), 0); transferencia.cuenta_origen = serT.getCuenta(Session["Usuario"].ToString(), 1); if (transferencia.cuenta_destino != null) { if (transferencia.cuenta_origen.saldo > transferencia.monto) { if (serT.realizarTransferencia(transferencia)) { resultado = "1"; mensaje = "Tranferencia realizada con exito"; } else { resultado = "0"; mensaje = "No se pudo realizar la transferencia, intente mas tarde."; } } else { resultado = "0"; mensaje = "No se pudo realizar la transferenci, el monto que desea transferir es mayor al Saldo actual."; } } else { resultado = "0"; mensaje = "No se pudó realizar la transferencia, Cuenta destino no existe."; } return(Json(new { resultado = resultado, msj = mensaje })); }
public void realizarTransferencia() { //Arrange TransferenciaModels transferencia = new TransferenciaModels(); transferencia.monto = 100.00; TransferenciaService serT = new TransferenciaService(); DateTime hoy = DateTime.Today; transferencia.fecha = hoy; transferencia.cuenta_destino = serT.getCuenta("500", 0); transferencia.cuenta_origen = serT.getCuenta("2", 1); bool esperado = true; //Acts bool resultado = serT.realizarTransferencia(transferencia); //Asert Assert.AreEqual(esperado, resultado); }
public static TransferenciaModels transferencia(TransferenciaModels t) { var configuracion = Config_StringDB.GetConfiguration(); using (SqlConnection sql = new SqlConnection(configuracion.GetSection("ConnectionStrings").GetSection("DefaultConnection11").Value)) { sql.Open(); using (SqlCommand cmd = new SqlCommand("sp_Transferencias", sql)) { cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.Add(new SqlParameter("@cuenta1", t.nrocuenta1)); cmd.Parameters.Add(new SqlParameter("@cuenta2", t.nrocuenta2)); cmd.Parameters.Add(new SqlParameter("@monto", t.monto)); cmd.ExecuteNonQuery(); } sql.Close(); return(t); } }
public TransferenciaModels Post([FromBody] TransferenciaModels t) { return(TransferenciaDomain.transferecia(t)); }
public static TransferenciaModels transferencia(TransferenciaModels t) { return(TransferenciaDAL.transferencia(t)); }