Ejemplo n.º 1
0
        public ActionResult AgregarDevolucionSinTicket(DevolucionSinTicketAgregarViewModel devolucionSinTicketVM)
        {
            if (devolucionSinTicketVM.ArticuloID == 0)
            {
                ViewBag.Error = "Debe seleccionar un Artículo";
                return(View("Agregar", devolucionSinTicketVM));
            }
            //Vuelvo a calcular el monto, porque el usuario pudo haber cambiado los datos luego de
            //presionar el boton "calcular monto"
            var Articulo = _articulosServicios.GetOne(devolucionSinTicketVM.ArticuloID);

            devolucionSinTicketVM.Monto = Articulo.PrecioActualVenta * devolucionSinTicketVM.Cantidad;

            var DevolucionSinTicket = devolucionSinTicketVM.Mapear();

            //Registrar la DevolucionSinTicket
            if (!_devolucionesSinTicketServicios.Add(DevolucionSinTicket))
            {
                ViewBag.Error = "No se pudo agregar la Nota de Crédito, vuelva a intentarlo";
                return(View("Agregar", devolucionSinTicketVM));
            }

            //Sumar al Stock si corresponde
            if (devolucionSinTicketVM.RegresaAlStock)
            {
                int SucursalID            = int.Parse(System.Web.HttpContext.Current.Session["SucursalActual"].ToString());
                var StockArticuloSucursal = _stockArticuloSucursalServicios.GetOneBySucursal(devolucionSinTicketVM.ArticuloID, SucursalID);

                StockArticuloSucursal.StockActual += devolucionSinTicketVM.Cantidad;

                _stockArticuloSucursalServicios.Update(StockArticuloSucursal);
            }

            //Registrar el monto en una variable de sesion
            System.Web.HttpContext.Current.Session["SaldoAFavor"] = devolucionSinTicketVM.Monto;

            return(RedirectToAction("Agregar", "Ventas"));
        }
Ejemplo n.º 2
0
        private List <StockArticuloSucursalViewModel> MapearStockArticuloSucursales(Articulo art)
        {
            var sucursales = _sucursalesServicios.GetAll();
            List <StockArticuloSucursalViewModel> listaVM = new List <StockArticuloSucursalViewModel>();

            foreach (var suc in sucursales)
            {
                StockArticuloSucursalViewModel sVM = new StockArticuloSucursalViewModel();
                sVM.ArticuloID   = art.Id;
                sVM.Articulo     = art;
                sVM.Sucursal     = suc;
                sVM.SucursalID   = suc.Id;
                sVM.StockAgregar = 0;
                sVM.StockActual  = _stockArticuloSucursalServicios.GetOneBySucursal(art.Id, suc.Id).StockActual;
                listaVM.Add(sVM);
            }

            return(listaVM);
        }