private GroupSummary MapToGroupSummary(ScampUserGroupMbrship groupMembership) { return(new GroupSummary { Id = groupMembership.Id, Name = groupMembership.Name, }); }
private UserSummary MapToSummary(ScampUserGroupMbrship docDbUser) { return(new UserSummary { Id = docDbUser.Id, Name = docDbUser.Name, isManager = docDbUser.isManager }); }
public async Task <IActionResult> Get(string groupId, string userId) { //TODO: add in group admin/manager authorization check //if (!await CurrentUserCanViewGroup(group)) // return new HttpStatusCodeResult(403); // Forbidden //} // get group details var tmpUser = await _userRepository.GetUserById(userId); if (tmpUser == null) // group not found, return appropriately { return(HttpNotFound()); } ScampUserGroupMbrship tmpGroup = tmpUser.GroupMembership.FirstOrDefault(g => g.Id == groupId); if (tmpGroup == null) // user not found in group, return appropriately { return(new HttpStatusCodeResult(204)); // nothing found } // build return view List <ScampResourceSummary> rtnView = new List <ScampResourceSummary>(); foreach (ScampUserGroupResources resourceRef in tmpGroup.Resources) { // get resource usage var rscState = await _volatileStorageController.GetResourceState(resourceRef.Id); ScampResourceSummary tmpSummary = new ScampResourceSummary() { Id = resourceRef.Id, Name = resourceRef.Name, State = rscState.State, totUnitsUsed = rscState.UnitsUsed }; rtnView.Add(tmpSummary); } return(new ObjectResult(rtnView) { StatusCode = 200 }); }