public CareTeamData GetCareTeam(DTO.GetCareTeamRequest request) { try { CareTeamData result = null; IRestClient client = new JsonServiceClient(); //[Route("/{Context}/{Version}/{ContractNumber}/Contacts/{ContactId}/CareTeams", "GET")] var url = Common.Helper.BuildURL(string.Format("{0}/{1}/{2}/{3}/Contacts/{4}/CareTeams", DDContactServiceUrl, "NG", request.Version, request.ContractNumber, request.ContactId), request.UserId); GetCareTeamDataResponse dataDomainResponse = client.Get <GetCareTeamDataResponse>(url); if (dataDomainResponse != null) { result = dataDomainResponse.CareTeamData; } return(result); } catch (Exception ex) { throw ex; } }
public CareTeam GetCareTeam(GetCareTeamRequest request) { CareTeam careTeam = null; if (request == null) { throw new ArgumentNullException("request"); } if (string.IsNullOrEmpty(request.ContactId)) { throw new ArgumentNullException("request.ContactId"); } try { CareTeamData careTeamData = EndpointUtil.GetCareTeam(request); if (careTeamData != null) { careTeam = Mapper.Map <CareTeam>(careTeamData); #region Populate Contact object for each care team member. if (careTeam.Members != null && careTeam.Members.Count > 0) { List <string> contactIds = careTeam.Members.Select(a => a.ContactId).ToList(); List <ContactData> contactsData = EndpointUtil.GetContactsByContactIds(contactIds, request.Version, request.ContractNumber, request.UserId); if (contactsData != null) { foreach (var member in careTeam.Members) { ContactData data = contactsData.FirstOrDefault(c => c.Id == member.ContactId); if (data == null) { throw new ApplicationException(string.Format("Contact card for a care team member with contact id = {0} was not found", member.ContactId)); } else { member.Contact = Mapper.Map <Contact>(data); } } } } #endregion } return(careTeam); } catch (Exception ex) { throw ex; } }
private CareTeamData BuildCareTeamData(MEContactCareTeam meCareTeam) { CareTeamData team = null; if (meCareTeam != null) { team = new CareTeamData { Id = meCareTeam.Id.ToString(), ContactId = meCareTeam.ContactId.ToString(), Members = BuildCareTeamMembers(meCareTeam.MeCareTeamMembers), CreatedOn = meCareTeam.RecordCreatedOn, CreatedById = meCareTeam.RecordCreatedBy.ToString(), UpdatedById = meCareTeam.UpdatedBy == null ? null : meCareTeam.UpdatedBy.ToString(), UpdatedOn = meCareTeam.LastUpdatedOn }; } return(team); }
public object GetCareTeamByContactId(string contactId) { CareTeamData careTeam = null; using (var ctx = new ContactCareTeamMongoContext(_dbName)) { var queries = new List <IMongoQuery> { MB.Query <MEContactCareTeam> .EQ(c => c.ContactId, ObjectId.Parse(contactId)), MB.Query <MEContactCareTeam> .EQ(c => c.DeleteFlag, false) }; var query = MB.Query.And(queries); var meCareTeam = ctx.CareTeam.Collection.FindOne(query); if (meCareTeam != null) { careTeam = BuildCareTeamData(meCareTeam); } } return(careTeam); }