public async Task <IActionResult> LogBook(int id) { var catalogsNeeededForUserToEntityAssignment = await _categoryService .GetAllLogBookAndNotLogBookCategories(id); var allNotAssignedCategories = catalogsNeeededForUserToEntityAssignment .AllNotEntityCategories.Select(x => new SelectableCategoryViewModel() { CategoryId = x.CategoryId, Name = x.Name, isSelected = false }).ToList(); var logBookCategories = catalogsNeeededForUserToEntityAssignment .EntityCategories; var logbook = await _entityService.GetLogBookByIdAsync(id); var logbookvm = _mapper.Map <LogBookViewModel>(logbook); var usersNeeededForUserToEntityAssignment = await _userEntityService .GetUsersNeededForUsersToEntityAsignmentAsync(id, "Manager"); var logBookUsers = usersNeeededForUserToEntityAssignment.EntityUsers; var allNotLogBookUsers = usersNeeededForUserToEntityAssignment .AllNotEntityUsers.Select(x => new SelectableUserViewModel() { Id = x.Id, Name = x.Name, isSelected = false }).ToList(); AdministerLogBookViewModel vm = new AdministerLogBookViewModel() { LogBook = logbookvm, AllUnassignedCategories = allNotAssignedCategories, LogBookCategories = logBookCategories, AllUnassignedManagers = allNotLogBookUsers, LogBookManagers = logBookUsers }; return(View(vm)); }
public async Task <IActionResult> AddCategoryToLogBook(AdministerLogBookViewModel model) { try { foreach (var category in model.AllUnassignedCategories) { if (category.isSelected) { await _userEntityService.AssignCategoryToLogbookAsync(model.LogBook.Id, category.CategoryId); } } return(RedirectToAction(nameof(LogBook), new { id = model.LogBook.Id })); } catch (ArgumentException ex) { this.ModelState.AddModelError("Error", ex.Message); return(View(nameof(LogBook), model)); } }
public async Task <IActionResult> AddManagerToLogBook(AdministerLogBookViewModel model) { try { foreach (var user in model.AllUnassignedManagers) { if (user.isSelected) { await _userEntityService.AssignUsersToEnityAsync(model.LogBook.Id, user.Id); } } return(RedirectToAction(nameof(LogBook), new { id = model.LogBook.Id })); } catch (ArgumentException ex) { this.ModelState.AddModelError("Error", ex.Message); return(View(nameof(LogBook), model)); } }