public Balance GetBalance() { Billetera billetera = new Billetera(); using (BilleteraEntities billetrasEntities = new BilleteraEntities()) { var transacciones = billetrasEntities.Billeteras.ToList(); int retiro = 0; int deposito = 0; foreach (var transaccion in transacciones) { if (esRetiro(transaccion.operacion)) { retiro = retiro + transaccion.monto; } if (esDeposito(transaccion.operacion)) { deposito = deposito + transaccion.monto; } } int balances = calcularBalance(deposito, retiro); Balance bal = new Balance { balance = balances }; return(bal); } }
public IHttpActionResult AgregarTransaccion([FromBody] Billetera billetera) { if (esDeposito(billetera.operacion) is false && esRetiro(billetera.operacion) is false) { return(BadRequest()); } if (transaccionMayorACero(billetera.monto) is false) { return(BadRequest()); } if (esRetiro(billetera.operacion)) { var balance = GetBalance(); if (retiroEsMenorIgualBalance(balance.balance, billetera.monto) is false) { return(BadRequest()); } } if (ModelState.IsValid) { dbContext.Billeteras.Add(billetera); dbContext.SaveChanges(); return(Ok(billetera)); } else { return(BadRequest()); } }
public void IngresoNumeroNegativoConSaldoCero() { Billetera _billetera = Billetera.Instance; _billetera.Saldo = 0; Assert.AreEqual(0, _billetera.Ingreso(-2)); }
public void EgresoNumeroCincoConSaldoDiez() { Billetera _billetera = Billetera.Instance; _billetera.Saldo = 10; Assert.AreEqual(5, _billetera.Egreso(5)); }
public void EgresoNumeroDiezConSaldoCero() { Billetera _billetera = Billetera.Instance; _billetera.Saldo = 0; Assert.AreEqual(0, _billetera.Egreso(10)); }
public void IngresoNumeroDiezConSaldoDiez() { Billetera _billetera = Billetera.Instance; _billetera.Saldo = 10; Assert.AreEqual(20, _billetera.Ingreso(10)); }
public static Billetera obtenerBilletera(string id) { EcomonedasContexto db = new EcomonedasContexto(); Billetera billetera = db.Billetera. Where(p => p.Id_Billetera == id). First <Billetera>(); return(billetera); }
//PROY-24740 public ArrayList ObtenerBilleteraxPlan(string strListaPlan) { DAABRequest.Parameter[] arrParam = { new DAABRequest.Parameter("P_PLANES", DbType.String, 4000, ParameterDirection.Input), new DAABRequest.Parameter("P_CURSOR", DbType.Object, ParameterDirection.Output) }; arrParam[0].Value = strListaPlan; BDSISACT obj = new BDSISACT(BaseDatos.BD_SISACT); DAABRequest objRequest = obj.CreaRequest(); objRequest.CommandType = CommandType.StoredProcedure; objRequest.Command = string.Format("{0}{1}", BaseDatos.PKG_SISACT_EVALUACION_UNI, ".SP_PLAN_X_PRODUCTO"); objRequest.Parameters.AddRange(arrParam); ArrayList objLista = new ArrayList(); ArrayList objListaPlan = new ArrayList(); PlanBilletera objItem; Billetera objBilletera; string plan; IDataReader dr = null; try { dr = objRequest.Factory.ExecuteReader(ref objRequest).ReturnDataReader; while (dr.Read()) { plan = Funciones.CheckStr(dr["PLAN"]); objBilletera = new Billetera(Funciones.CheckInt(dr["PRODUCTO"]), Funciones.CheckStr(dr["DESCRIPCION"])); if (!objListaPlan.Contains(plan)) { objItem = new PlanBilletera(); objItem.Plan = plan; objItem.oBilletera = new ArrayList(); objItem.oBilletera.Add(objBilletera); objLista.Add(objItem); objListaPlan.Add(plan); } } } finally { if (dr != null && dr.IsClosed == false) { dr.Close(); } objRequest.Parameters.Clear(); objRequest.Factory.Dispose(); } return(objLista); }
//PROY-24740 public ArrayList ObtenerPlanesxBilletera(int flgSistema) { DAABRequest.Parameter[] arrParam = { new DAABRequest.Parameter("P_CONSULTA", DbType.Object, ParameterDirection.Output), new DAABRequest.Parameter("P_SISTEMA", DbType.Int16, ParameterDirection.Input) }; arrParam[1].Value = flgSistema; BDSISACT obj = new BDSISACT(BaseDatos.BD_SISACT); DAABRequest objRequest = obj.CreaRequest(); objRequest.CommandType = CommandType.StoredProcedure; objRequest.Command = string.Format("{0}{1}", BaseDatos.PKG_SISACT_EVALUACION_UNI, ".SP_CON_PLAN_BILLETERA"); objRequest.Parameters.AddRange(arrParam); ArrayList objLista = new ArrayList(); ArrayList objListaPlan = new ArrayList(); PlanBilletera objItem; Billetera objBilletera; string plan; IDataReader dr = null; try { dr = objRequest.Factory.ExecuteReader(ref objRequest).ReturnDataReader; while (dr.Read()) { plan = Funciones.CheckStr(dr["SOLV_CODIGO"]); objBilletera = new Billetera(Funciones.CheckInt(dr["PRCLV_CODIGO"]), 1); if (!objListaPlan.Contains(plan)) { objItem = new PlanBilletera(); objItem.Plan = plan; objItem.oBilletera = new ArrayList(); objItem.oBilletera.Add(objBilletera); objLista.Add(objItem); objListaPlan.Add(plan); } } } finally { if (dr != null && dr.IsClosed == false) { dr.Close(); } objRequest.Parameters.Clear(); objRequest.Factory.Dispose(); } return(objLista); }
//PROY-24740 public ArrayList ObtenerLCxBilletera(string strRiesgo, string strTipoDoc, string strNroDocumento, string essaludSunat, string strClienteNuevo, double dblLC) { DAABRequest.Parameter[] arrParam = { new DAABRequest.Parameter("P_RIESGO", DbType.String, ParameterDirection.Input), new DAABRequest.Parameter("P_TIPO_DOC", DbType.String, ParameterDirection.Input), new DAABRequest.Parameter("P_ESSALUD_SUNAT", DbType.String, ParameterDirection.Input), new DAABRequest.Parameter("P_CLIENTE_NUEVO", DbType.String, ParameterDirection.Input), new DAABRequest.Parameter("P_LC_DC", DbType.Double, ParameterDirection.Input), new DAABRequest.Parameter("C_PRODUCTO_LC", DbType.Object, ParameterDirection.Output) }; int i = 0; arrParam[i].Value = strRiesgo; ++i; arrParam[i].Value = strTipoDoc; ++i; arrParam[i].Value = essaludSunat; ++i; arrParam[i].Value = strClienteNuevo; ++i; arrParam[i].Value = dblLC; BDSISACT obj = new BDSISACT(BaseDatos.BD_SISACT); DAABRequest objRequest = obj.CreaRequest(); objRequest.CommandType = CommandType.StoredProcedure; objRequest.Command = string.Format("{0}{1}", BaseDatos.PKG_SISACT_EVALUACION_UNI, ".SP_CALCULO_LC_X_PRODUCTO"); objRequest.Parameters.AddRange(arrParam); ArrayList objLista = new ArrayList(); Billetera objItem; IDataReader dr = null; try { dr = objRequest.Factory.ExecuteReader(ref objRequest).ReturnDataReader; while (dr.Read()) { objItem = new Billetera(); objItem.idBilletera = Funciones.CheckInt(dr["PRODUCTO_COD"]); objItem.billetera = Funciones.CheckStr(dr["DESCRIPCION"]); objItem.monto = Funciones.CheckDbl(dr["PRODUCTO_LC"]); objLista.Add(objItem); } } finally { if (dr != null && dr.IsClosed == false) { dr.Close(); } objRequest.Parameters.Clear(); objRequest.Factory.Dispose(); } return(objLista); }
protected void Page_Load(object sender, EventArgs e) { string accioncarrito = Request.QueryString["accion"]; if (accioncarrito == "registro") { lblMensaje.Visible = true; lblMensaje.Text = "Cupon Obtenido con éxito"; } Usuario usuario2 = (Usuario)Session["usuario"]; Billetera billetera = BilleteraLN.obtenerBilletera(usuario2.Billetera.Id_Billetera); lblTotalEcomonedas.Text = billetera.Total_Disponible.ToString(); }
public ActionResult create(Billetera billeteras) { using (var billetera = new HttpClient()) { billetera.BaseAddress = new Uri(BaseUrl + "/api/Billeteras"); var postTask = billetera.PostAsJsonAsync <Billetera>("billeteras", billeteras); postTask.Wait(); var result = postTask.Result; if (result.IsSuccessStatusCode) { return(RedirectToAction("balance")); } } ModelState.AddModelError(string.Empty, "Error, contacta con el administrador"); return(View(billeteras)); }
public static bool ObtenerCupon(string id, int?valorCupon) { EcomonedasContexto db = new EcomonedasContexto(); var miBilletera = new Billetera(); miBilletera = db.Billetera.Where(u => u.Id_Billetera == id).FirstOrDefault <Billetera>(); miBilletera.Total_Canjeadas += valorCupon; // yo canjeo miBilletera.Total_Disponible -= valorCupon; //suma miBilletera.Total_Generada = miBilletera.Total_Canjeadas + miBilletera.Total_Disponible; db.SaveChanges(); return(true); }
//PROY-24740 public ArrayList ObtenerMontoFactxBilletera(string strNroDocumento, string strCadena) { DAABRequest.Parameter[] arrParam = { new DAABRequest.Parameter("P_LISTA_PLANES", DbType.String, 4000, ParameterDirection.Input), new DAABRequest.Parameter("C_PRODUCTO_FACT", DbType.Object, ParameterDirection.Output) }; arrParam[0].Value = strCadena; BDSISACT obj = new BDSISACT(BaseDatos.BD_SISACT); DAABRequest objRequest = obj.CreaRequest(); objRequest.CommandType = CommandType.StoredProcedure; objRequest.Command = string.Format("{0}{1}", BaseDatos.PKG_SISACT_EVALUACION_UNI, ".SP_CALCULO_FACTURA_X_PRODUCTO"); objRequest.Parameters.AddRange(arrParam); ArrayList objLista = new ArrayList(); Billetera objItem; IDataReader dr = null; try { dr = objRequest.Factory.ExecuteReader(ref objRequest).ReturnDataReader; while (dr.Read()) { objItem = new Billetera(); objItem.idBilletera = Funciones.CheckInt(dr["CODIGO"]); objItem.billetera = Funciones.CheckStr(dr["DESCRIPCION"]); objItem.monto = Funciones.CheckDbl(dr["VALOR"]); objLista.Add(objItem); } } finally { if (dr != null && dr.IsClosed == false) { dr.Close(); } objRequest.Parameters.Clear(); objRequest.Factory.Dispose(); } return(objLista); }
public static bool AgregarBilletera(string id, int Total_Canjeadas, int Total_Disponible) { EcomonedasContexto db = new EcomonedasContexto(); var miBilletera = new Billetera(); miBilletera = db.Billetera.Where(u => u.Id_Billetera == id).FirstOrDefault <Billetera>(); if (miBilletera == null) { //Creacion de la billetera miBilletera = new Billetera(); miBilletera.Id_Billetera = id; miBilletera.Total_Disponible = 0; miBilletera.Total_Generada = 0; miBilletera.Total_Canjeadas = 0; db.Billetera.Add(miBilletera); db.SaveChanges(); // Confirmacion return(true); } else { miBilletera.Total_Canjeadas += Total_Canjeadas; // yo canjeo miBilletera.Total_Disponible += Total_Disponible; //suma miBilletera.Total_Generada = miBilletera.Total_Canjeadas + miBilletera.Total_Disponible; } db.SaveChanges(); return(true); }
protected void linkAgregar_Click(object sender, EventArgs e) { Usuario usuario2 = (Usuario)Session["usuario"]; //Otra forma de obtener el id del producto ListViewDataItem fila = (ListViewDataItem)(sender as Control).Parent; HiddenField hi = (HiddenField)fila.FindControl("hiddenID"); int idCupon = Convert.ToInt32(hi.Value); if (idCupon != 0) { Cupon cupon = CuponLN.obtenerCupon(idCupon); Billetera billetera = BilleteraLN.obtenerBilletera(usuario2.Billetera.Id_Billetera); if (billetera.Total_Disponible >= cupon.Precio_Canje) { // Cambiamos la billetera BilleteraLN.ObtenerCupon(billetera.Id_Billetera, cupon.Precio_Canje); lblTotalEcomonedas.Text = billetera.Total_Disponible.ToString(); //Agregamos el cupon a la bd Cupon_UsuarioLN.registrarCupon_Usuario(usuario2.Id_Usuario, cupon.Id_Cupon, cupon.activo.Value); //Creamos un qr var txtQRCode = cupon.nombre + numeroAleatorio(); QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeData qrCodeData = qrGenerator.CreateQrCode(txtQRCode, QRCodeGenerator.ECCLevel.Q); QRCode qrCode = new QRCode(qrCodeData); Bitmap qrCodeImage = qrCode.GetGraphic(20); //guardamos la imagen var folder = "images/Qrs/"; var path = System.Web.HttpContext.Current.Server.MapPath(folder); qrCodeImage.Save(path + cupon.nombre + "qr.Jpeg", ImageFormat.Jpeg); //Asignamos la ruta de las imagenes System.Drawing.Image imagen = System.Drawing.Image.FromFile(Server.MapPath("~/images/cupones/" + cupon.imagen)); //Hacemos las imagenes en byte CanjeCupon Canje = new CanjeCupon(); Canje.cliente = usuario2.NombreCompleto; Canje.id = cupon.Id_Cupon; Canje.imagenQR = CanjeCuponLN.ImagenByte(qrCodeImage); Canje.imagenCupon = CanjeCuponLN.ImagenByte(imagen); Canje.nombreCupon = cupon.nombre; //llamamos al reporte LocalReport report = new LocalReport(); report.DataSources.Clear(); ReportDataSource rdc = new ReportDataSource("DataSet1", CanjeCuponLN.canjeCupon(Canje)); report.DataSources.Add(rdc); report.ReportPath = Server.MapPath("~/Reportes/CuponObtenido.rdlc"); report.EnableExternalImages = true; string FileName = "Cupon-" + cupon.nombre.Trim() + ".pdf"; string extension; string encoding; string mimeType; string[] streams; Warning[] warnings; Byte[] mybytes = report.Render("PDF", null, out extension, out encoding, out mimeType, out streams, out warnings); //for exporting to PDF using (FileStream fs = File.Create(Server.MapPath("~/images/DescargasCupones/") + FileName)) { fs.Write(mybytes, 0, mybytes.Length); } Response.Buffer = true; Response.ContentType = "application/pdf"; Response.AddHeader("content-disposition", "inline;filename=" + FileName + ".pdf"); Response.WriteFile(Server.MapPath(Path.Combine("~/images/DescargasCupones/" + FileName))); Response.End(); } else { lblMensaje.Visible = true; lblMensaje.Text = "Lo sentimos, no le alcanza para este cupón"; lblMensaje.ForeColor = Color.Red; } } }