Exemple #1
0
        public SystemValidationModel Edit(InventariosEditViewModel viewModel)
        {
            var inventario = GetById(viewModel.Id);

            inventario.Estado = GetEstado(inventario);
            _context.Entry(inventario).State = EntityState.Modified;
            foreach (var detalle in viewModel.DetalleInventario)
            {
                var item = inventario.DetalleInventario.FirstOrDefault(x => x.Id == detalle.Id);
                item.StockActual           = detalle.StockActual;
                item.StockEncontrado       = detalle.StockEncontrado;
                _context.Entry(item).State = EntityState.Modified;
            }


            if (inventario.Estado == Constants.InventarioEstado.Terminado)
            {
                UpdateStock(viewModel); inventario.UsuarioFinId = viewModel.UsuarioId;
            }


            var success    = _context.SaveChanges() > 0;
            var validation = new SystemValidationModel()
            {
                Id      = inventario.Id,
                Message = success ? "Se ha guardado correctamente el inventario" : "No se pudo guardar el inventario",
                Success = success
            };

            return(validation);
        }
Exemple #2
0
        private void UpdateStock(InventariosEditViewModel viewModel)
        {
            var productosIds      = viewModel.DetalleInventario.Select(x => x.ProductoId).ToList();
            var productosSucursal = _productos.GetProductoSucursal(productosIds, viewModel.SucursalId);

            foreach (var productoSucural in productosSucursal)
            {
                var inventarioDetalle = viewModel.DetalleInventario.FirstOrDefault(x => x.ProductoId == productoSucural.ProductoId);
                productoSucural.Stock = inventarioDetalle.StockEncontrado;
                _context.Entry(productoSucural).State = EntityState.Modified;
            }
        }
Exemple #3
0
        public IActionResult View(int id)
        {
            var viewModel = new InventariosEditViewModel()
            {
                SucursalId = SucursalId, UsuarioId = UserId
            };

            var inventario = _inventario.GetById(id);


            viewModel.DetalleInventario = GetDetalleInventarioView(inventario);
            viewModel = Mapper.Map(inventario, viewModel);

            return(View(viewModel));
        }