Ejemplo n.º 1
0
        public ActionResult CrearTransaccion(tbTransaccionCaja transaccion)
        {
            dbHeredadesEntities db = new dbHeredadesEntities();
            int usuario            = Sesion.ObtenerCodigo();

            transaccion.codUsuario = Sesion.ObtenerCodigo();
            transaccion.fecha      = DateTime.Now;
            db.tbTransaccionCaja.Add(transaccion);
            if (transaccion.tipoTransaccion == 0)
            {
                CajaController.Sumar(transaccion.cantidad);
            }
            else
            {
                CajaController.Restar(transaccion.cantidad);
            }
            db.SaveChanges();
            switch (transaccion.tipoTransaccion)
            {
            case 0:
                return(RedirectToAction("Ingresos"));

            case 1:
                return(RedirectToAction("Gastos"));

            case 2:
                return(RedirectToAction("Retiros"));

            default:
                return(RedirectToAction("Index"));
            }
        }
Ejemplo n.º 2
0
        public ActionResult Pagar(FormCollection collection)
        {
            dbHeredadesEntities db = new dbHeredadesEntities();
            // creo objeto representante del pago
            tbPagoProveedor pago = new tbPagoProveedor
            {
                codProveedor = int.Parse(collection["codProveedor"]),
                codUsuario   = Sesion.ObtenerCodigo(),
                fecha        = DateTime.Now,
                pago         = decimal.Parse(collection["pago"]),
                descripcion  = collection["descripcion"],
                estado       = true
            };
            // llamo al proveedor para restarle la deuda
            tbProveedor proveedor = db.tbProveedor.Find(pago.codProveedor);

            proveedor.deuda -= pago.pago;
            //agrego el pago a la tabla y guardo cambios
            db.tbPagoProveedor.Add(pago);
            if (collection["rdFuente"] == "caja")
            {
                //el pago se debe de efectuar desde caja, de lo contrario no se resta nada de caja
                tbTransaccionCaja transaccionCaja = new tbTransaccionCaja
                {
                    tipoTransaccion = 1,
                    codUsuario      = Sesion.ObtenerCodigo(),
                    cantidad        = pago.pago,
                    fecha           = DateTime.Now,
                    descripcion     = "Pago a " + proveedor.proveedor
                };
                CajaController.Restar(pago.pago);
                db.tbTransaccionCaja.Add(transaccionCaja);
            }
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }