private ActionResult PostCancel(PregnancyChecklistIndex model) { PregnancyChecklistItemResult opResult = this.DashboardRepository.Checklist.GetPregnancyItem(model.Patient.Dfn, model.SelectedItemIen); if (!opResult.Success) { this.Error(opResult.Message); } else { PregnancyChecklistItem item = opResult.Item; BrokerOperationResult updateResult = this.DashboardRepository.Checklist.CancelPregnancyItem(item); if (!updateResult.Success) { this.Error(updateResult.Message); } else { // *** Update the next checklist date *** BrokerOperationResult result = ChecklistUtility.UpdateNextDates(this.DashboardRepository, item.PatientDfn, item.PregnancyIen); if (!result.Success) { this.Error("Error updating next dates: " + result.Message); } } } return(RedirectToAction("PregnancyIndex", new { dfn = model.Patient.Dfn, pregIen = model.Pregnancy.Ien, page = model.Paging.CurrentPage })); }
private ActionResult PostDeletePregItem(PregnancyChecklistIndex model) { if (string.IsNullOrWhiteSpace(model.SelectedItemIen)) { this.Error("Please select an item to delete"); } else { BrokerOperationResult result = this.DashboardRepository.Checklist.DeletePregnancyItem(model.Patient.Dfn, model.SelectedItemIen); if (!result.Success) { this.Error(result.Message); } else { this.Information("The item has been deleted"); // *** Update the next checklist date *** BrokerOperationResult updResult = ChecklistUtility.UpdateNextDates(this.DashboardRepository, model.Patient.Dfn, model.Pregnancy.Ien); if (!updResult.Success) { this.Error("Error updating next dates: " + updResult.Message); } } } return(RedirectToAction("PregnancyIndex", new { dfn = model.Patient.Dfn, pregIen = model.Pregnancy.Ien })); }
public ActionResult PregnancyIndexPost(PregnancyChecklistIndex model) { ActionResult returnResult; switch (model.PostOperation) { case PregnancyChecklistOperation.Complete: returnResult = PostComplete(model); break; case PregnancyChecklistOperation.InProgress: returnResult = PostInProgress(model); break; case PregnancyChecklistOperation.Cancel: returnResult = PostCancel(model); break; case PregnancyChecklistOperation.AddDefault: returnResult = PostAddDefault(model); break; case PregnancyChecklistOperation.Delete: returnResult = PostDeletePregItem(model); break; default: returnResult = RedirectToAction("PregnancyIndex", new { dfn = model.Patient.Dfn, pregIen = model.Pregnancy.Ien, page = model.Paging.CurrentPage }); break; } return(returnResult); }
public ActionResult PregnancyIndex(string dfn, string pregIen, string page) { PregnancyChecklistIndex model = new PregnancyChecklistIndex(); model.Patient = this.CurrentPatient; // TODO: In future add ability to view checklist for a specific pregnancy passed in as parameter // Add a pregnancy selection and display //PregnancyDetails preg = PregnancyUtilities.GetWorkingPregnancy(this.DashboardRepository, dfn, pregIen); PregnancyDetails preg = PregnancyUtilities.GetWorkingPregnancy(this.DashboardRepository, dfn, ""); if (preg == null) { model.NoPregnancies = true; } else { if ((preg.EDD == DateTime.MinValue) && (preg.EndDate == DateTime.MinValue)) { model.NoPregnancyDate = true; } model.Pregnancy = preg; //PregnancyChecklistItemsResult result = this.DashboardRepository.Checklist.GetPregnancyItems(dfn, preg.Ien, ""); //if (!result.Success) // this.Error(result.Message); //else //{ // model.Items = new PregnancyChecklistItemList(); // model.Items.AddRange(result.Items); // model.Items.AddPregnancyDates(preg.EDD, preg.EndDate); // model.Items.Sort(delegate(PregnancyChecklistItem x, PregnancyChecklistItem y) // { // return x.DueDate.CompareTo(y.DueDate); // }); //} PregnancyChecklistItemsResult result = ChecklistUtility.GetSortedPregnancyChecklist(this.DashboardRepository, dfn, preg, DsioChecklistCompletionStatus.Unknown); if (!result.Success) { this.Error(result.Message); } else { model.Items.AddRange(result.Items); } } // TODO: Paging... return(View(model)); }
private ActionResult PostComplete(PregnancyChecklistIndex model) { // *** Update completion status for a pregnancy checklist item *** // *** Create default return action *** ActionResult returnResult = RedirectToAction("PregnancyIndex", new { dfn = model.Patient.Dfn, pregIen = model.Pregnancy.Ien, page = model.Paging.CurrentPage }); // *** Get the item *** PregnancyChecklistItemResult getResult = this.DashboardRepository.Checklist.GetPregnancyItem(model.Patient.Dfn, model.SelectedItemIen); if (!getResult.Success) { this.Error(getResult.Message); } else { // *** Should only be one *** PregnancyChecklistItem item = getResult.Item; BrokerOperationResult opResult; if (item.ItemType == DsioChecklistItemType.MccCall) { if (string.IsNullOrWhiteSpace(item.CompletionLink)) { returnResult = RedirectToAction("Create", "PatientContact", new { @dfn = model.Patient.Dfn, @callType = item.Link, @checkIen = item.Ien }); } else { returnResult = RedirectToAction("Edit", "PatientContact", new { @dfn = model.Patient.Dfn, @noteIen = item.CompletionLink, @checkIen = item.Ien }); } } else { opResult = CompleteItem(item); if (opResult.Success) { this.Information(opResult.Message); } else { this.Error(opResult.Message); } } } return(returnResult); }
private ActionResult PostInProgress(PregnancyChecklistIndex model) { PregnancyChecklistItemResult opResult = this.DashboardRepository.Checklist.GetPregnancyItem(model.Patient.Dfn, model.SelectedItemIen); if (!opResult.Success) { this.Error(opResult.Message); } else { PregnancyChecklistItem item = opResult.Item; BrokerOperationResult updateResult = this.DashboardRepository.Checklist.SetPregnancyItemInProgress(item); if (!updateResult.Success) { this.Error(updateResult.Message); } } return(RedirectToAction("PregnancyIndex", new { dfn = model.Patient.Dfn, pregIen = model.Pregnancy.Ien, page = model.Paging.CurrentPage })); }
private ActionResult PostAddDefault(PregnancyChecklistIndex model) { BrokerOperationResult result = this.DashboardRepository.Checklist.AddDefaultPregnancyItems(model.Patient.Dfn, model.Pregnancy.Ien); if (!result.Success) { this.Error(result.Message); } else { // *** Update the next checklist date *** BrokerOperationResult updResult = ChecklistUtility.UpdateNextDates(this.DashboardRepository, model.Patient.Dfn, model.Pregnancy.Ien); if (!updResult.Success) { this.Error("Error updating next dates: " + updResult.Message); } this.Information("The default items have been added to the patient's checklist"); } return(RedirectToAction("PregnancyIndex", new { dfn = model.Patient.Dfn, pregIen = model.Pregnancy.Ien, page = model.Paging.CurrentPage })); }