Exemplo n.º 1
0
        // GET: Asset/Assign/5
        public async Task <IActionResult> Assign()
        {
            var employeeController = new EmployeeController(AssetManager);
            var employees          = await employeeController.GetEmployeesAsync();

            var assets              = AssetManager.GetAll();
            var employeeNumbers     = assets.Select(a => a.AssignedTo);
            var unassignedEmployees = employees.Where(e => employeeNumbers.All(es => es != e.EmployeeNumber)).ToList();
            var model = new AssetAssignViewModel();

            model.Employees = unassignedEmployees.Select(t =>
                                                         new SelectListItem
            {
                Text  = t.FirstName + " " + t.LastName,
                Value = t.EmployeeNumber
            });
            model.Desktops = assets.Where(a => a.AssetType.Id == 1 && a.AssignedTo == null).Select(a =>
                                                                                                   new SelectListItem
            {
                Text  = a.Description,
                Value = a.Id.ToString()
            });
            model.Laptops = assets.Where(a => a.AssetType.Id == 2 && a.AssignedTo == null).Select(a =>
                                                                                                  new SelectListItem
            {
                Text  = a.Description,
                Value = a.Id.ToString()
            });
            model.Tablets = assets.Where(a => a.AssetType.Id == 3 && a.AssignedTo == null).Select(a =>
                                                                                                  new SelectListItem
            {
                Text  = a.Description,
                Value = a.Id.ToString()
            });
            model.Monitors = assets.Where(a => a.AssetType.Id == 4 && a.AssignedTo == null).Select(a =>
                                                                                                   new SelectListItem
            {
                Text  = a.Description,
                Value = a.Id.ToString()
            });
            model.MobilePhones = assets.Where(a => a.AssetType.Id == 5 && a.AssignedTo == null).Select(a =>
                                                                                                       new SelectListItem
            {
                Text  = a.Description,
                Value = a.Id.ToString()
            });
            model.DeskPhones = assets.Where(a => a.AssetType.Id == 6 && a.AssignedTo == null).Select(a =>
                                                                                                     new SelectListItem
            {
                Text  = a.Description,
                Value = a.Id.ToString()
            });
            return(View(model));
        }
Exemplo n.º 2
0
        public ActionResult Assign(AssetAssignViewModel Assign)
        {
            try
            {
                foreach (var id in Assign.AssetIds)
                {
                    if (id != 0)
                    {
                        var asset = AssetManager.Find(id);
                        asset.AssignedTo = Assign.EmployeeNumber;
                        AssetManager.Assign(asset);
                    }
                }

                return(RedirectToAction(nameof(Index)));
            }
            catch
            {
                return(View("Error"));
            }
        }