private void Pagar_Clicked(object sender, EventArgs e) { if (Memoria.UsuarioActual.Saldo >= abono.ABO_CANTIDAD_MENSUAL) { //Proceder a pagar //Set values for Update Memoria.UsuarioActual.Saldo -= abono.ABO_CANTIDAD_MENSUAL; AbonoPorMes abonoPorMes = new AbonoPorMes { ABO_ID = abono.ABO_ID, ABEM_CANTIDAD_DEPOSITADA = abono.ABO_CANTIDAD_MENSUAL, ABEM_FECHA_DEPOSITADA = DateTime.Today }; abono.ABO_RESTANTE -= abono.ABO_CANTIDAD_MENSUAL; compra.COM_SIGUIENTE_PAGO = compra.COM_SIGUIENTE_PAGO.AddMonths(1); UsuarioController.UpdateUser(Memoria.UsuarioActual); //Updates AbonoRepository.UpdateAbono(abono); AbonoPorMesRepository.InsertarAbonoPorMes(abonoPorMes); CompraRepository.UpdateCompra(compra); Memoria.UsuarioActual = UsuarioController.GetUserByID(Memoria.UsuarioActual.UsuarioId); Alert("Realizado", "Abono realizado con exito", "Ok"); Application.Current.MainPage = new NavigationPage(new MenuPrincipalCliente()); } else { Alert("Alerta", "No posee los fondos suficientes", "Ok"); } }
public AbonoService() { string cadena = "Data Source=localhost:1521/xepdb1;User Id=sarasoft;Password=1234"; conexion = new OracleConnection(cadena); abonoRepositorio = new AbonoRepository(conexion); }
public AllAbonosPendientes() { InitializeComponent(); IEnumerable <Compra> compras = CompraRepository.GetAllComprasAbonosActivosByUserID(Memoria.UsuarioActual.UsuarioId); int count = 2; if (compras.Count() == 0) { lblInit.Text = "No hay Facturas con abonos Activos"; btnInit.IsEnabled = false; btnInit.IsVisible = false; lblInit.IsEnabled = true; lblInit.IsVisible = true; } else { lblInit.IsVisible = false; btnInit.IsVisible = true; } foreach (var compra in compras) { DinamicButton dinamicButton = new DinamicButton(); dinamicButton.DinamicValue = compra.COM_ID; dinamicButton.Text = "Ver"; dinamicButton.Clicked += new EventHandler(dinamicButton.SeeFactura); AllFacturasAbonoActivo.Children.Add(new Label { Text = compra.COM_ID.ToString() }, 0, count); AllFacturasAbonoActivo.Children.Add(new Label { Text = AbonoRepository.GetAbonoByCompraID(compra.COM_ID).ABO_RESTANTE.ToString() }, 1, count); AllFacturasAbonoActivo.Children.Add(new Label { Text = "$" + Math.Truncate(compra.COM_PRECIO_TOTAL).ToString() }, 2, count); AllFacturasAbonoActivo.Children.Add(dinamicButton, 3, count); count += 1; } }
public ViewResult Details(EstadoCuentaVM model) { var id = model.MovimientoId ; var action = model.CambioEstatusVM.Estatus; string comentario = model.CambioEstatusVM.Comentario != null ? model.CambioEstatusVM.Comentario.TrimEnd() : string.Empty ; AbonoRepository AbonoRepository; if (id > 0) { Movimiento Movimiento = repository.LoadById(id); if (Movimiento != null) { AbonoRepository = new AbonoRepository(repository.context);// Abono abono = AbonoRepository.LoadById(Movimiento.Id); if (abono != null) { if (Movimiento.IsAbono) { enumEstatusMovimiento nuevoEstatus = (enumEstatusMovimiento)Movimiento.Status; switch (action) { case "Cancelar": nuevoEstatus = enumEstatusMovimiento.Cancelado; break; case "Aplicar": nuevoEstatus = enumEstatusMovimiento.Aplicado; break; case "Rechazar": nuevoEstatus = enumEstatusMovimiento.Rechazado; break; } EstadoCuentaBR estadoCuentaBR = new EstadoCuentaBR(repository.context); // Movimiento.Status = (Int16)nuevoEstatus; abono.Status = (Int16)nuevoEstatus; estadoCuentaBR.ActualizarMovimiento(Movimiento.MovimientoId, nuevoEstatus, comentario); this.Succeed = estadoCuentaBR.Succeed; this.ValidationMessages = estadoCuentaBR.ValidationMessages; if (Succeed) { Succeed= repository.Save(); if (Succeed) { AddValidationMessage(enumMessageType.Succeed, "El movimiento ha sido " + nuevoEstatus.ToString() + " correctamente"); } else { //TODO: implemtar código que traiga mensajes del repositorio } } } else { //todo: Si no es abono que hacer? AddValidationMessage(enumMessageType.BRException, "No hay lógica para modificar este movimiento"); } } else { AddValidationMessage(enumMessageType.BRException, "No se encontró el Abono."); } } else { AddValidationMessage(enumMessageType.BRException, "No se encontró el movimiento."); } } else { AddValidationMessage(enumMessageType.BRException , "El movimiento no es válido."); } model = FillEstadoDeCuentaVM(id); return View(model); }
private void Facturar_Clicked(object sender, EventArgs e) { if (cb_Abono.IsChecked) { //Config abono, insert factura & insert abonoPorMes if (Memoria.UsuarioActual.Saldo >= Decimal.Parse(PrecioTotal.Text)) { Memoria.compra.US_ID = 0; Memoria.compra.COM_FECHA_COMPRA = DateTime.Today; Memoria.compra.COM_ESTADO = "Abonos"; Memoria.compra.COM_PRECIO_TOTAL = Decimal.Parse(PrecioTotal.Text); Memoria.compra.COM_INTERES = (Decimal.Parse(PrecioTotal.Text)); Memoria.compra.COM_SIGUIENTE_PAGO = DateTime.Today.AddMonths(1); int CompraID = CompraRepository.InsertAndReturn(Memoria.compra); List <CompraProductos> listTemp = new List <CompraProductos>(); foreach (var cp in Memoria.listaCarrito) { cp.COM_ID = CompraID; listTemp.Add(cp); } Memoria.listaCarrito = listTemp; IEnumerable <CompraProductos> list = Memoria.listaCarrito; CompraProductosRepository.InsertAll(list); Memoria.DinamicValue = CompraID; Abono abono = new Abono { COM_ID = 0, ABO_CANTIDAD_DE_MESES = Int32.Parse(CantidadDeMeses.Text), ABO_CANTIDAD_MENSUAL = Decimal.Parse(CantidadMensual.Text), ABO_RESTANTE = (Decimal.Parse(PrecioTotal.Text) - Decimal.Parse(CantidadMensual.Text)) }; int AbonoID = AbonoRepository.InsertAndReturn(abono); Memoria.UsuarioActual.Saldo -= Decimal.Parse(CantidadMensual.Text); AbonoPorMesRepository.InsertarAbonoPorMes(new AbonoPorMes { ABO_ID = AbonoID, ABEM_FECHA_DEPOSITADA = DateTime.Today, ABEM_CANTIDAD_DEPOSITADA = Decimal.Parse(CantidadMensual.Text) }); UsuarioController.UpdateUser(Memoria.UsuarioActual); Memoria.UsuarioActual = UsuarioController.GetUserByID(Memoria.UsuarioActual.UsuarioId); Memoria.State = "Create"; Memoria.DinamicValue = CompraID; Memoria.listaCarrito = new List <CompraProductos>(); Application.Current.MainPage = new NavigationPage(new Factura()); } else { Alert("Alerta", "No posee los fondos suficientes", "Ok"); } } else { //set Contado if (Memoria.UsuarioActual.Saldo >= Decimal.Parse(PrecioTotal.Text)) { Memoria.compra.US_ID = 0; Memoria.compra.COM_FECHA_COMPRA = DateTime.Today; Memoria.compra.COM_ESTADO = "Contado"; Memoria.compra.COM_SIGUIENTE_PAGO = DateTime.Today; Memoria.compra.COM_PRECIO_TOTAL = Decimal.Parse(PrecioTotal.Text); Memoria.compra.COM_INTERES = (Decimal.Parse(PrecioTotal.Text) * Decimal.Parse("0,3")); int CompraID = CompraRepository.InsertAndReturn(Memoria.compra); List <CompraProductos> listTemp = new List <CompraProductos>(); foreach (var cp in Memoria.listaCarrito) { cp.COM_ID = CompraID; listTemp.Add(cp); } Memoria.DinamicValue = CompraID; Memoria.listaCarrito = listTemp; IEnumerable <CompraProductos> list = Memoria.listaCarrito; CompraProductosRepository.InsertAll(list); Abono abono = new Abono { COM_ID = 0, ABO_CANTIDAD_DE_MESES = 1, ABO_CANTIDAD_MENSUAL = 0, ABO_RESTANTE = 0 }; int AbonoID = AbonoRepository.InsertAndReturn(abono); Memoria.UsuarioActual.Saldo -= Decimal.Parse(PrecioTotal.Text); AbonoPorMesRepository.InsertarAbonoPorMes(new AbonoPorMes { ABO_ID = AbonoID, ABEM_FECHA_DEPOSITADA = DateTime.Today, ABEM_CANTIDAD_DEPOSITADA = Decimal.Parse(PrecioTotal.Text) }); UsuarioController.UpdateUser(Memoria.UsuarioActual); Memoria.State = "Create"; Memoria.DinamicValue = CompraID; Memoria.UsuarioActual = UsuarioController.GetUserByID(Memoria.UsuarioActual.UsuarioId); Memoria.listaCarrito = new List <CompraProductos>(); Application.Current.MainPage = new NavigationPage(new Factura()); } else { Alert("Alerta", "No posee los fondos suficientes", "Ok"); } } }