public async Task <ActionResult <UnitGroupWithSpecificationModel> > GetUnitGroupByIdAsync(int groupId) { UnitGroupDTO group = await _unitGroupFacade.GetUnitGroupByIdAsync <UnitGroupDTO>(groupId); if (group == null) { return(BadRequest()); } return(Utils.Convert(group)); }
public async Task <IActionResult> MyUnits(int unitGroupID) { Log.Called(nameof(MyUnits), $"groupID={unitGroupID}"); var units = new List <UnitFullDTO>(); var currentGroup = new UnitGroupNameDTO(); var groups = await _ugFacade.GetUnitGroupsByUserIdAsync <UnitGroupNameDTO>(UserInfoManager.UserId); if (unitGroupID != 0) { currentGroup = await _ugFacade.GetUnitGroupByIdAsync <UnitGroupNameDTO>(unitGroupID); units = await _unitFacade.GetUnitsByGroupIdAsync <UnitFullDTO>(unitGroupID); } else { // User did not select UG, but has some if (groups.Any()) { currentGroup = groups.First(); units = await _unitFacade.GetUnitsByGroupIdAsync <UnitFullDTO>(currentGroup.Id); } } var dto = new UnitsOverviewDTO { UserId = UserInfoManager.UserId, Groups = groups, CurrentGroup = currentGroup, UnitsInGroup = units }; Log.Info($"DTO: UID={dto.UserId}, curr_group={currentGroup.Name}, units={units.Count}"); return(View(dto)); }
private async Task <bool> CanUserVisitPage(int groupId) { var group = await _unitGroupFacade.GetUnitGroupByIdAsync <UnitGroupDTO>(groupId); return(group != null && UserInfoManager.CanUserAccessPage(group.OwnerId)); }