// GET: Warehouses/Details/5 public async Task <IActionResult> Details(Guid?id) { if (id == null) { return(NotFound()); } Warehouse warehouse; if (User.UserRole().Contains("Admin")) { warehouse = await _bll.WarehouseService .FirstOrDefaultAsync(id.Value); } else { warehouse = await _bll.WarehouseService .FirstOrDefaultAsync(id.Value, User.UserGuidId()); } if (warehouse == null) { return(NotFound()); } var vm = new WarehouseItemsViewModel { Warehouse = warehouse }; return(View(vm)); }
public async Task <IActionResult> AddItemsToWarehouse(WarehouseItemsViewModel vm) { foreach (var itemId in vm.Items !) { var newItem = _bll.ItemInWarehouseService.Add(new ItemInWarehouse { Id = Guid.NewGuid(), ItemId = itemId, WarehouseId = vm.Warehouse.Id, ItemsInStock = 1 }); } await _bll.SaveChangesAsync(); return(RedirectToAction("Details", new { id = vm.Warehouse.Id })); }
// Get public async Task <IActionResult> AddItemsToWarehouse(Guid?warehouseId) { if (warehouseId == null) { return(NotFound()); } var warehouse = User.UserRole().Contains("Admin") ? await _bll.WarehouseService.FirstOrDefaultAsync(warehouseId.Value) : await _bll.WarehouseService.FirstOrDefaultAsync(warehouseId.Value, User.UserGuidId()); var items = User.UserRole().Contains("Admin") ? await _bll.ItemService.AllAsync() : await _bll.ItemService.AllAsync(User.UserGuidId()); // get list of items which not in warehouse items = items.Where(i => { var boole = true; foreach (var warehouseItem in warehouse.WarehouseItems !) { if (i.Id == warehouseItem.ItemId) { boole = false; } } return(boole); } ); var vm = new WarehouseItemsViewModel { Warehouse = warehouse, ItemsSelectList = new MultiSelectList(items, nameof(Item.Id), nameof(Item.Name)) }; return(View(vm)); }