public ActionResult EditSocialHistory( EditSocialHistoryModel editSocialHistoryModel ) { var requestDispatcher = _requestDispatcherFactory.CreateRequestDispatcher (); requestDispatcher.Add ( new SaveDtoRequest<SocialHistoryDto> { DataTransferObject = editSocialHistoryModel.SocialHistory } ); var response = requestDispatcher.Get<DtoResponse<SocialHistoryDto>> (); if ( response.Exception != null ) { ViewBag.ErrorMessage = "Errors occured when trying to save PHQ-2."; return View ( editSocialHistoryModel ); } editSocialHistoryModel.SocialHistory = response.DataTransferObject; return RedirectToAction ( "GetAllClinicalCasesWithActivitiesForSelectedClinicalCase", new { id = editSocialHistoryModel.PatientKey } ); }
// // GET: /PatientDashboard/ //public ActionResult GetAllActivitiesByClinicalCase(long id) //{ // //TODO: DI in costructor or use a Func<IRequestHandler> parameter in the constructor, bind the constructor parameter when set up in DI container // var requestDispatcherFactory = IoC.Container.Resolve<IRequestDispatcherFactory>(); // var patientId = id; // //Get the ClinicalCases by the patient key // var requestDispatcher = requestDispatcherFactory.CreateRequestDispatcher(); // requestDispatcher.Add(new GetAllClinicalCasesByPatientRequest { PatientKey = patientId }); // var getAllClinicalCasesByPatientResponse = requestDispatcher.Get<GetAllClinicalCasesByPatientResponse>(); // var clinicalCaseList = getAllClinicalCasesByPatientResponse.ClinicalCases; // var firstClinicalCase = clinicalCaseList.FirstOrDefault(); // IEnumerable<ActivityDto> activityDtos = null; // if (firstClinicalCase != null) // { // requestDispatcher = requestDispatcherFactory.CreateRequestDispatcher(); // requestDispatcher.Add(new GetAllActivitiesByClinicalCaseRequest() { ClinicalCaseKey = firstClinicalCase.Key }); // var getAllActivitiesByClinicalCaseResponse = requestDispatcher.Get<GetAllActivitiesByClinicalCaseResponse>(); // activityDtos = getAllActivitiesByClinicalCaseResponse.ActivityDtos; // } // return View(activityDtos); //} /// <summary> /// Edits the social history. /// </summary> /// <param name="id">The id.</param> /// <param name="patientId">The patient id.</param> /// <returns>A <see cref="System.Web.Mvc.ActionResult"/></returns> public ActionResult EditSocialHistory( long id, long patientId ) { var socialHistoryId = id; var requestDispatcher = _requestDispatcherFactory.CreateRequestDispatcher (); requestDispatcher.Add ( new GetDtoRequest<PatientSummaryDto> { Key = patientId } ); requestDispatcher.Add ( new GetDtoRequest<SocialHistoryDto> { Key = socialHistoryId } ); var getPatientSummaryResponse = requestDispatcher.Get<DtoResponse<PatientSummaryDto>> (); var patientSummary = getPatientSummaryResponse.DataTransferObject; var response = requestDispatcher.Get<DtoResponse<SocialHistoryDto>> (); var socialHistoryDto = response.DataTransferObject; var model = new EditSocialHistoryModel { PatientKey = patientSummary.Key, PatientName = patientSummary.DisplayName, SocialHistory = socialHistoryDto }; return View ( model ); }