public ActionResult EditorAjax(int id, string casememberId) { bool hasAccess = workerroleactionpermissionnewRepository.HasPermission(CurrentLoggedInWorkerRoleIDs, Constants.Areas.CaseManagement, Constants.Controllers.CaseAssessment, Constants.Actions.Edit, true); if (!hasAccess) { WebHelper.CurrentSession.Content.ErrorMessage = "You are not eligible to do this action"; return(RedirectToAction(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty })); } CaseAssessment caseassessment = null; if (id > 0) { //find an existing caseassessment from database caseassessment = caseassessmentRepository.Find(id); if (caseassessment == null) { //throw an exception if id is provided but data does not exist in database return(new HttpStatusCodeResult(System.Net.HttpStatusCode.NotFound, "Case Member Assessment not found")); } } else { //create a new instance if id is not provided caseassessment = new CaseAssessment(); caseassessment.CaseMemberID = casememberId.ToInteger(true); } //return the html of editor to display on popup return(Content(this.RenderPartialViewToString(Constants.PartialViews.EditorPopUp, caseassessment))); }
public ActionResult Create(int caseId, int?caseMemberID) { bool hasAccess = workerroleactionpermissionnewRepository.HasPermission(CurrentLoggedInWorkerRoleIDs, Constants.Areas.CaseManagement, Constants.Controllers.CaseAssessment, Constants.Actions.Create, true); if (!hasAccess) { WebHelper.CurrentSession.Content.ErrorMessage = "You are not eligible to do this action"; return(RedirectToAction(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty })); } //create a new instance of caseassessment CaseAssessment caseassessment = new CaseAssessment(); caseassessment.CaseID = caseId; caseassessment.DocumentedByID = CurrentLoggedInWorker.ID; caseassessment.StartDate = DateTime.Now; caseassessment.DischargeDate = DateTime.Now; caseassessment.MemberStatusID = 1; if (caseMemberID.HasValue && caseMemberID.Value > 0) { caseassessment.CaseMemberID = caseMemberID.Value; CaseMember caseMember = casememberRepository.Find(caseassessment.CaseMemberID); if (caseMember != null) { ViewBag.DisplayID = caseMember.DisplayID; } } else { Case varCase = caseRepository.Find(caseId); if (varCase != null) { ViewBag.DisplayID = varCase.DisplayID; } } WebHelper.CurrentSession.Content.Data = null; //return view result return(View(caseassessment)); }
public ActionResult View(int id, int caseId, int?caseMemberID) { bool hasAccess = workerroleactionpermissionnewRepository.HasPermission(CurrentLoggedInWorkerRoleIDs, Constants.Areas.CaseManagement, Constants.Controllers.CaseAssessment, Constants.Actions.Edit, true); if (!hasAccess) { WebHelper.CurrentSession.Content.ErrorMessage = "You are not eligible to do this action"; return(RedirectToAction(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty })); } //find the existing caseassessment from database CaseAssessment caseassessment = caseassessmentRepository.Find(id); caseassessment.CaseID = caseId; //if (caseassessment.AssessmentTypeID == 3) //{ // return RedirectToAction(Constants.Actions.Termination, Constants.Controllers.CaseAssessment, new { Id = caseassessment.ID, CaseID = caseassessment.CaseID, CaseMemberID = caseassessment.CaseMemberID }); //} WebHelper.CurrentSession.Content.Data = caseassessmentlivingconditionRepository.FindAllByCaseAssessmentID(id).ToList(); if (caseassessment.CaseMemberID > 0) { CaseMember caseMember = casememberRepository.Find(caseassessment.CaseMemberID); if (caseMember != null) { ViewBag.DisplayID = caseMember.DisplayID; } } else { Case varCase = caseRepository.Find(caseassessment.CaseID); if (varCase != null) { ViewBag.DisplayID = varCase.DisplayID; } } //return editor view return(View(caseassessment)); }
public ActionResult DeleteAjax(int id) { BaseModel statusModel = new BaseModel(); if (!workerroleactionpermissionnewRepository.HasPermission(CurrentLoggedInWorkerRoleIDs, Constants.Areas.CaseManagement, Constants.Controllers.CaseAssessment, Constants.Actions.Delete, true)) { statusModel.ErrorMessage = "You are not eligible to do this action"; return(Json(new { success = true, url = Url.Action(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty }) })); } //find the caseassessment in database CaseAssessment caseassessment = caseassessmentRepository.Find(id); if (caseassessment == null) { //set error message if it does not exist in database caseassessment = new CaseAssessment(); caseassessment.ErrorMessage = "CaseAssessment not found"; } else { try { //<JL:Comment:No need to check access again on post. On edit we are already checking permission.> //if (caseassessment.CreatedByWorkerID != CurrentLoggedInWorker.ID && CurrentLoggedInWorkerRoleIDs.IndexOf(1) == -1 && (CurrentLoggedInWorkerRoleIDs.IndexOf(SiteConfigurationReader.RegionalManagerRoleID) == -1)) //{ // WebHelper.CurrentSession.Content.ErrorMessage = "You are not eligible to do this action"; // return Json(new { success = true, url = Url.Action(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty }) }); // //return RedirectToAction(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty }); //} //</JL:Comment:07/08/2017> //delete caseassessment from database caseassessmentRepository.Delete(caseassessment); caseassessmentRepository.Save(); //set success message caseassessment.SuccessMessage = "Case Member Assessment has been deleted successfully"; } catch (CustomException ex) { caseassessment.ErrorMessage = ex.UserDefinedMessage; } catch (Exception ex) { if (ex.Message == "Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded. See http://go.microsoft.com/fwlink/?LinkId=472540 for information on understanding and handling optimistic concurrency exceptions.") { caseassessment.SuccessMessage = "Case Member Assessment has been deleted successfully"; } else { ExceptionManager.Manage(ex); caseassessment.ErrorMessage = Constants.Messages.UnhandelledError; } } } //return action status in json to display on a message bar if (caseassessment.ErrorMessage.IsNotNullOrEmpty()) { return(Json(new { success = false, data = this.RenderPartialViewToString(Constants.PartialViews.Alert, caseassessment) })); } else { return(Json(new { success = true, data = this.RenderPartialViewToString(Constants.PartialViews.Alert, caseassessment) })); } }
public ActionResult SaveAjax(CaseAssessment caseassessment) { //id=0 means add operation, update operation otherwise bool isNew = caseassessment.ID == 0; //validate data if (ModelState.IsValid) { try { //<JL:Comment:No need to check access again on post. On edit we are already checking permission.> //if (caseassessment.ID > 0 && caseassessment.CreatedByWorkerID != CurrentLoggedInWorker.ID && CurrentLoggedInWorkerRoleIDs.IndexOf(1) == -1 && (CurrentLoggedInWorkerRoleIDs.IndexOf(SiteConfigurationReader.RegionalManagerRoleID) == -1)) //{ // WebHelper.CurrentSession.Content.ErrorMessage = "You are not eligible to do this action"; // return Json(new { success = true, url = Url.Action(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty }) }); // //return RedirectToAction(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty }); //} //</JL:Comment:07/08/2017> //set the id of the worker who has added/updated this record caseassessment.LastUpdatedByWorkerID = CurrentLoggedInWorker.ID; //call repository function to save the data in database caseassessmentRepository.InsertOrUpdate(caseassessment); caseassessmentRepository.Save(); //set status message if (isNew) { caseassessment.SuccessMessage = "Case Member Assessment has been added successfully"; } else { caseassessment.SuccessMessage = "Case Member Assessment has been updated successfully"; } } catch (CustomException ex) { caseassessment.ErrorMessage = ex.UserDefinedMessage; } catch (Exception ex) { ExceptionManager.Manage(ex); caseassessment.ErrorMessage = Constants.Messages.UnhandelledError; } } else { foreach (var modelStateValue in ViewData.ModelState.Values) { foreach (var error in modelStateValue.Errors) { caseassessment.ErrorMessage = error.ErrorMessage; break; } if (caseassessment.ErrorMessage.IsNotNullOrEmpty()) { break; } } } //return the status message in json if (caseassessment.ErrorMessage.IsNotNullOrEmpty()) { return(Json(new { success = false, data = this.RenderPartialViewToString(Constants.PartialViews.Alert, caseassessment) })); } else { return(Json(new { success = true, data = this.RenderPartialViewToString(Constants.PartialViews.Alert, caseassessment) })); } }
public ActionResult Index([DataSourceRequest(Prefix = "Grid")] DataSourceRequest dsRequest, CaseAssessment searchCaseAssessment, int caseId, int?caseMemberId) { var varCase = caseRepository.Find(caseId); bool hasAccess = workerroleactionpermissionnewRepository.HasPermission(caseId, CurrentLoggedInWorkerRoleIDs, CurrentLoggedInWorker.ID, varCase.ProgramID, varCase.RegionID, varCase.SubProgramID, varCase.JamatkhanaID, Constants.Areas.CaseManagement, Constants.Controllers.CaseAssessment, Constants.Actions.Index, true); if (!hasAccess) { WebHelper.CurrentSession.Content.ErrorMessage = "You are not eligible to do this action"; return(RedirectToAction(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty })); } searchCaseAssessment.CaseID = caseId; if (caseMemberId.HasValue && caseMemberId.Value > 0) { searchCaseAssessment.CaseMemberID = caseMemberId.Value; CaseMember caseMember = casememberRepository.Find(searchCaseAssessment.CaseMemberID); if (caseMember != null) { ViewBag.DisplayID = caseMember.DisplayID; } } else { if (varCase == null) { varCase = caseRepository.Find(caseId); } if (varCase != null) { ViewBag.DisplayID = varCase.DisplayID; } } searchCaseAssessment.HasPermissionToCreate = workerroleactionpermissionnewRepository.HasPermission(CurrentLoggedInWorkerRoleIDs, Constants.Areas.CaseManagement, Constants.Controllers.CaseAssessment, Constants.Actions.Create, true); return(View(searchCaseAssessment)); }
public ActionResult Termination(CaseAssessment caseassessment, int?id, int caseMemberId, int caseId) { caseassessment.AssessmentTypeID = 3; caseassessment.LastUpdatedByWorkerID = CurrentLoggedInWorker.ID; try { if (caseassessment.CaseMemberID > 0) { if (casesmartgoalRepository.HasOpenSmartGoal(caseassessment.CaseMemberID)) { throw new CustomException("You can't discharge this Family or Family Member because the Family or Family Member has open goals."); } } //validate data if (ModelState.IsValid) { //<JL:Comment:No need to check access again on post. On edit we are already checking permission.> //if (caseassessment.ID > 0 && caseassessment.CreatedByWorkerID != CurrentLoggedInWorker.ID && CurrentLoggedInWorkerRoleIDs.IndexOf(1) == -1 && (CurrentLoggedInWorkerRoleIDs.IndexOf(SiteConfigurationReader.RegionalManagerRoleID) == -1)) //{ // WebHelper.CurrentSession.Content.ErrorMessage = "You are not eligible to do this action"; // return RedirectToAction(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty }); // } //</JL:Comment:07/08/2017> caseassessment.QualityOfLifeIDs = string.Empty; caseassessment.NextAssessmentDate = DateTime.Today; //call the repository function to save in database caseassessmentRepository.InsertOrUpdate(caseassessment, Request.Form); caseassessmentRepository.Save(); CaseMember caseMember = casememberRepository.Find(caseassessment.CaseMemberID); if (caseMember != null) { caseMember.MemberStatusID = caseassessment.MemberStatusID; casememberRepository.UpdateAndSave(caseMember); } //redirect to list page after successful operation return(RedirectToAction(Constants.Views.Index, new { caseId = caseassessment.CaseID })); } else { foreach (var modelStateValue in ViewData.ModelState.Values) { foreach (var error in modelStateValue.Errors) { caseassessment.ErrorMessage = error.ErrorMessage; break; } if (caseassessment.ErrorMessage.IsNotNullOrEmpty()) { break; } } } } catch (CustomException ex) { caseassessment.ErrorMessage = ex.UserDefinedMessage; } catch (Exception ex) { ExceptionManager.Manage(ex); caseassessment.ErrorMessage = Constants.Messages.UnhandelledError; } List <CaseAssessment> assessmentList = caseassessmentRepository.FindAllByCaseMemberID(caseassessment.CaseMemberID); List <LookupBaseModel> presentingProblems = new List <LookupBaseModel>(); List <LookupBaseModel> underlyingProblems = new List <LookupBaseModel>(); List <LookupBaseModel> generalComments = new List <LookupBaseModel>(); foreach (CaseAssessment assessment in assessmentList) { if (assessment.PresentingProblem.IsNotNullOrEmpty()) { presentingProblems.Add(new LookupBaseModel() { Name = assessment.PresentingProblem, CreateDate = assessment.StartDate }); } if (assessment.UnderlyingProblem.IsNotNullOrEmpty()) { underlyingProblems.Add(new LookupBaseModel() { Name = assessment.UnderlyingProblem, CreateDate = assessment.StartDate }); } if (assessment.GeneralComments.IsNotNullOrEmpty()) { generalComments.Add(new LookupBaseModel() { Name = assessment.GeneralComments, CreateDate = assessment.StartDate }); } } ViewBag.PresentingProblem = presentingProblems; ViewBag.UnderlyingProblem = underlyingProblems; ViewBag.GeneralComments = generalComments; List <CaseAssessmentLivingCondition> assessmentQOLList = caseassessmentlivingconditionRepository.FindAllByCaseMemberID(caseassessment.CaseMemberID); if (assessmentQOLList == null) { assessmentQOLList = new List <CaseAssessmentLivingCondition>(); } ViewBag.ImmediateNeeds = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 6); ViewBag.Education = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 3); ViewBag.Health = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 4); ViewBag.Housing = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 5); ViewBag.IncomeLivelihood = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 7); ViewBag.AssetsProduction = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 1); ViewBag.DignitySelfRespect = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 2); ViewBag.SocialSupport = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 8); //return view with error message if operation is failed if (caseassessment.CaseMemberID > 0) { CaseMember caseMember = casememberRepository.Find(caseassessment.CaseMemberID); if (caseMember != null) { ViewBag.DisplayID = caseMember.DisplayID; } } else { Case varCase = caseRepository.Find(caseassessment.CaseID); if (varCase != null) { ViewBag.DisplayID = varCase.DisplayID; } } return(View(caseassessment)); }
public ActionResult Termination(int?id, int caseId, int?caseMemberId) { var varCase = caseRepository.Find(caseId); bool hasAccess = workerroleactionpermissionnewRepository.HasPermission(caseId, CurrentLoggedInWorkerRoleIDs, CurrentLoggedInWorker.ID, varCase.ProgramID, varCase.RegionID, varCase.SubProgramID, varCase.JamatkhanaID, Constants.Areas.CaseManagement, Constants.Controllers.CaseAssessment, Constants.Actions.Termination, true); if (!hasAccess) { WebHelper.CurrentSession.Content.ErrorMessage = "You are not eligible to do this action"; return(RedirectToAction(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty })); } if (!caseMemberId.HasValue || caseMemberId <= 0) { CaseMember caseMember = casememberRepository.All.FirstOrDefault(item => item.CaseID == caseId); if (caseMember != null) { caseMemberId = caseMember.ID; } else { caseMemberId = 0; } } //find the existing caseassessment from database CaseAssessment caseassessment = null; if (id.HasValue && id.Value > 0) { caseassessment = caseassessmentRepository.Find(id.Value); } if (caseassessment == null) { caseassessment = new CaseAssessment(); } caseassessment.CaseID = caseId; if (caseMemberId.HasValue && caseMemberId > 0) { caseassessment.CaseMemberID = caseMemberId.Value; } List <CaseAssessment> assessmentList = caseassessmentRepository.FindAllByCaseMemberID(caseMemberId.Value); List <LookupBaseModel> presentingProblems = new List <LookupBaseModel>(); List <LookupBaseModel> underlyingProblems = new List <LookupBaseModel>(); List <LookupBaseModel> generalComments = new List <LookupBaseModel>(); foreach (CaseAssessment assessment in assessmentList) { if (assessment.PresentingProblem.IsNotNullOrEmpty()) { presentingProblems.Add(new LookupBaseModel() { Name = assessment.PresentingProblem, CreateDate = assessment.StartDate }); } if (assessment.UnderlyingProblem.IsNotNullOrEmpty()) { underlyingProblems.Add(new LookupBaseModel() { Name = assessment.UnderlyingProblem, CreateDate = assessment.StartDate }); } if (assessment.GeneralComments.IsNotNullOrEmpty()) { generalComments.Add(new LookupBaseModel() { Name = assessment.GeneralComments, CreateDate = assessment.StartDate }); } } ViewBag.PresentingProblem = presentingProblems; ViewBag.UnderlyingProblem = underlyingProblems; ViewBag.GeneralComments = generalComments; List <CaseAssessmentLivingCondition> assessmentQOLList = caseassessmentlivingconditionRepository.FindAllByCaseMemberID(caseMemberId.Value); if (assessmentQOLList == null) { assessmentQOLList = new List <CaseAssessmentLivingCondition>(); } ViewBag.ImmediateNeeds = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 6); ViewBag.Education = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 3); ViewBag.Health = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 4); ViewBag.Housing = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 5); ViewBag.IncomeLivelihood = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 7); ViewBag.AssetsProduction = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 1); ViewBag.DignitySelfRespect = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 2); ViewBag.SocialSupport = assessmentQOLList.Where(item => item.QualityOfLifeCategoryID == 8); //return editor view if (caseassessment.ID == 0) { caseassessment.AssessmentTypeID = 3; caseassessment.DocumentedByID = CurrentLoggedInWorker.ID; caseassessment.StartDate = DateTime.Now; caseassessment.DischargeDate = DateTime.Now; caseassessment.MemberStatusID = 14; caseassessment.CaseMemberID = caseMemberId.Value; caseassessment.CaseID = caseId; caseassessment.RiskTypeID = 1; caseassessment.NextAssessmentDate = DateTime.Now; } if (caseassessment.CaseMemberID > 0) { CaseMember caseMember = casememberRepository.Find(caseassessment.CaseMemberID); if (caseMember != null) { ViewBag.DisplayID = caseMember.DisplayID; } } else { if (varCase == null) { varCase = caseRepository.Find(caseassessment.CaseID); } if (varCase != null) { ViewBag.DisplayID = varCase.DisplayID; } } return(View(caseassessment)); }
public ActionResult Edit(CaseAssessment caseassessment, int caseId, int?caseMemberID) { caseassessment.LastUpdatedByWorkerID = CurrentLoggedInWorker.ID; try { if (caseassessment.StartDate > caseassessment.EndDate) { throw new CustomException("Start date can't be greater than end date."); } caseassessment.QualityOfLifeIDs = Request.Form["QualityOfLifeIDs"].ToString(true); //validate data if (ModelState.IsValid) { //<JL:Comment:No need to check access again on post. On edit we are already checking permission.> //List<CaseWorker> caseworker = caseworkerRepository.FindAllByCaseID(caseId).Where(x => x.WorkerID == CurrentLoggedInWorker.ID).ToList(); //if ((caseworker == null || caseworker.Count() == 0) && caseassessment.ID > 0 && caseassessment.CreatedByWorkerID != CurrentLoggedInWorker.ID && CurrentLoggedInWorkerRoleIDs.IndexOf(1) == -1 && (CurrentLoggedInWorkerRoleIDs.IndexOf(SiteConfigurationReader.RegionalManagerRoleID) == -1)) //{ // WebHelper.CurrentSession.Content.ErrorMessage = "You are not eligible to do this action"; // //return Json(new { success = true, url = Url.Action(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty }) }); // return RedirectToAction(Constants.Actions.AccessDenied, Constants.Controllers.Home, new { Area = String.Empty }); //} //</JL:Comment:07/08/2017> //call the repository function to save in database caseassessmentRepository.InsertOrUpdate(caseassessment, Request.Form); caseassessmentRepository.Save(); //redirect to list page after successful operation //return RedirectToAction(Constants.Views.Index, new { caseId = caseassessment.CaseID, CaseMemberID=caseassessment.CaseMemberID }); return(RedirectToAction(Constants.Views.Index, new { caseId = caseassessment.CaseID })); } else { foreach (var modelStateValue in ViewData.ModelState.Values) { foreach (var error in modelStateValue.Errors) { caseassessment.ErrorMessage = error.ErrorMessage; break; } if (caseassessment.ErrorMessage.IsNotNullOrEmpty()) { break; } } } } catch (CustomException ex) { caseassessment.ErrorMessage = ex.UserDefinedMessage; } catch (Exception ex) { ExceptionManager.Manage(ex); caseassessment.ErrorMessage = Constants.Messages.UnhandelledError; } try { List <CaseAssessmentLivingCondition> selectedCaseAssessmentLivingConditionList = new List <CaseAssessmentLivingCondition>(); string[] arraySelectedQOL = caseassessment.QualityOfLifeIDs.ToStringArray(',', true); if (arraySelectedQOL != null && arraySelectedQOL.Length > 0) { foreach (string qolID in arraySelectedQOL) { CaseAssessmentLivingCondition newCaseAssessmentLivingCondition = new CaseAssessmentLivingCondition() { QualityOfLifeID = qolID.ToInteger(true), CaseAssessmentID = caseassessment.ID, LastUpdateDate = DateTime.Now, LastUpdatedByWorkerID = caseassessment.LastUpdatedByWorkerID, }; newCaseAssessmentLivingCondition.Note = Request.Form["txtQualityOfLifeIDs" + qolID].ToString(true); selectedCaseAssessmentLivingConditionList.Add(newCaseAssessmentLivingCondition); } } WebHelper.CurrentSession.Content.Data = selectedCaseAssessmentLivingConditionList; if (caseassessment.CaseMemberID > 0) { CaseMember caseMember = casememberRepository.Find(caseassessment.CaseMemberID); if (caseMember != null) { ViewBag.DisplayID = caseMember.DisplayID; } } else { Case varCase = caseRepository.Find(caseassessment.CaseID); if (varCase != null) { ViewBag.DisplayID = varCase.DisplayID; } } } catch { } //return view with error message if the operation is failed return(View(caseassessment)); }
public ActionResult Create(CaseAssessment caseassessment, int caseId, int?caseMemberID) { caseassessment.LastUpdatedByWorkerID = CurrentLoggedInWorker.ID; try { if (caseassessment.StartDate > caseassessment.EndDate) { throw new CustomException("Start date can't be greater than end date."); } caseassessment.QualityOfLifeIDs = Request.Form["QualityOfLifeIDs"].ToString(true); //validate data if (ModelState.IsValid) { //call the repository function to save in database caseassessmentRepository.InsertOrUpdate(caseassessment, Request.Form); caseassessmentRepository.Save(); //redirect to list page after successful operation return(RedirectToAction(Constants.Views.Index, new { caseId = caseassessment.CaseID, CaseMemberID = caseassessment.CaseMemberID })); } else { foreach (var modelStateValue in ViewData.ModelState.Values) { foreach (var error in modelStateValue.Errors) { caseassessment.ErrorMessage = error.ErrorMessage; break; } if (caseassessment.ErrorMessage.IsNotNullOrEmpty()) { break; } } } } catch (CustomException ex) { caseassessment.ErrorMessage = ex.UserDefinedMessage; } catch (Exception ex) { ExceptionManager.Manage(ex); caseassessment.ErrorMessage = Constants.Messages.UnhandelledError; } List <CaseAssessmentLivingCondition> selectedCaseAssessmentLivingConditionList = new List <CaseAssessmentLivingCondition>(); string[] arraySelectedQOL = caseassessment.QualityOfLifeIDs.ToStringArray(',', true); if (arraySelectedQOL != null && arraySelectedQOL.Length > 0) { foreach (string qolID in arraySelectedQOL) { CaseAssessmentLivingCondition newCaseAssessmentLivingCondition = new CaseAssessmentLivingCondition() { QualityOfLifeID = qolID.ToInteger(true), CaseAssessmentID = caseassessment.ID, LastUpdateDate = DateTime.Now, LastUpdatedByWorkerID = caseassessment.LastUpdatedByWorkerID, }; newCaseAssessmentLivingCondition.Note = Request.Form["txtQualityOfLifeIDs" + qolID].ToString(true); selectedCaseAssessmentLivingConditionList.Add(newCaseAssessmentLivingCondition); } } WebHelper.CurrentSession.Content.Data = selectedCaseAssessmentLivingConditionList; if (caseassessment.CaseMemberID > 0) { CaseMember caseMember = casememberRepository.Find(caseassessment.CaseMemberID); if (caseMember != null) { ViewBag.DisplayID = caseMember.DisplayID; } } else { Case varCase = caseRepository.Find(caseassessment.CaseID); if (varCase != null) { ViewBag.DisplayID = varCase.DisplayID; } } //return view with error message if operation is failed return(View(caseassessment)); }