public async Task <HQClient> GetHeadquarterClientByID(Guid clientID) { HQClient logicHQClient = await santaContext.Clients .Select(client => new HQClient() { clientID = client.ClientId, email = client.Email, nickname = client.Nickname, clientName = client.ClientName, isAdmin = client.IsAdmin, hasAccount = client.HasAccount, clientStatus = Mapper.MapStatus(client.ClientStatus), answeredSurveys = client.SurveyResponses.Select(r => r.Survey.SurveyId).Distinct().ToList(), assignments = client.ClientRelationXrefSenderClients.Count(), senders = client.ClientRelationXrefRecipientClients.Count(), notes = client.Notes.Count(), tags = client.ClientTagXrefs.Select(tagXref => new Logic.Objects.Tag() { tagID = tagXref.TagId, tagName = tagXref.Tag.TagName, }).ToList(), }).AsNoTracking().FirstOrDefaultAsync(c => c.clientID == clientID); return(logicHQClient); }
public static AllowedAssignmentMeta MapAllowedAssignmentMeta(HQClient logicHQClient) { AllowedAssignmentMeta logicAllowedAssignmentMeta = new AllowedAssignmentMeta() { clientMeta = Mapper.MapClientMeta(logicHQClient), tags = logicHQClient.tags, totalSenders = logicHQClient.senders, totalAssignments = logicHQClient.assignments }; return(logicAllowedAssignmentMeta); }
public static ClientMeta MapClientMeta(HQClient logicHQClient) { Logic.Objects.ClientMeta logicMeta = new ClientMeta() { clientId = logicHQClient.clientID, clientName = logicHQClient.clientName, clientNickname = logicHQClient.nickname, hasAccount = logicHQClient.hasAccount, isAdmin = logicHQClient.isAdmin }; return(logicMeta); }