public GetPatientTasksDataResponse GetTasks(GetPatientTasksDataRequest request) { try { var result = new GetPatientTasksDataResponse(); IGoalRepository taskRepo = Factory.GetRepository(request, RepositoryType.PatientTask); taskRepo.UserId = request.UserId; IGoalRepository goalRepo = Factory.GetRepository(request, RepositoryType.PatientGoal); // Get all the goals associated to the patient in the request object. if (!string.IsNullOrEmpty(request.PatientId)) { List <PatientGoalViewData> goalViewDataList = goalRepo.Find(request.PatientId) as List <PatientGoalViewData>; List <string> patientGoalIds = goalViewDataList.Select(a => a.Id).ToList(); if (patientGoalIds != null && patientGoalIds.Count > 0) { result.TasksData = (List <PatientTaskData>)taskRepo.Search(request, patientGoalIds); } } else { result.TasksData = (List <PatientTaskData>)taskRepo.Search(request, null); } return(result); } catch (Exception ex) { throw ex; } }
public static List <PatientTask> GetTasks(GetTasksRequest request) { List <PatientTask> tasks = null; try { //[Route("/{Context}/{Version}/{ContractNumber}/Goal/Tasks", "POST")] IRestClient client = new JsonServiceClient(); string url = Common.Helper.BuildURL(string.Format("{0}/{1}/{2}/{3}/Goal/Tasks", DDPatientGoalsServiceUrl, "NG", request.Version, request.ContractNumber), request.UserId); GetPatientTasksDataResponse ddResponse = client.Post <GetPatientTasksDataResponse>(url, new GetPatientTasksDataRequest { Context = "NG", ContractNumber = request.ContractNumber, Version = request.Version, UserId = request.UserId, StatusIds = request.StatusIds, PatientId = request.PatientId } as object); if (ddResponse != null && ddResponse.TasksData != null) { tasks = new List <PatientTask>(); List <PatientTaskData> dataList = ddResponse.TasksData; foreach (PatientTaskData n in dataList) { //Make a call to AttributeLibrary to get attributes details for Goal and Task. List <CustomAttribute> taskAttributesLibrary = GoalsEndpointUtil.GetAttributesLibraryByType(request, 2); PatientTask i = GoalsUtil.ConvertToTask(n, taskAttributesLibrary); tasks.Add(i); } } } catch { throw; } return(tasks); }
public GetPatientTasksDataResponse Post(GetPatientTasksDataRequest request) { GetPatientTasksDataResponse response = new GetPatientTasksDataResponse(); try { if (string.IsNullOrEmpty(request.UserId)) { throw new UnauthorizedAccessException("PatientGoalDD:Post()::Unauthorized Access"); } response = Manager.GetTasks(request); response.Version = request.Version; } catch (Exception ex) { CommonFormatter.FormatExceptionResponse(response, base.Response, ex); string aseProcessID = ConfigurationManager.AppSettings.Get("ASEProcessID") ?? "0"; Common.Helper.LogException(int.Parse(aseProcessID), ex); } return(response); }