public List <DC_NursingPlanEval> GetHisNursingPlanByDate(long feeNo, string starDate, string endDate) { List <DC_NursingPlanEval> result = new List <DC_NursingPlanEval>(); var PlanList = unitOfWork.GetRepository <DC_NURSEINGPLANEVAL>().dbSet.Where(x => x.FEENO == feeNo); if (!string.IsNullOrEmpty(starDate)) { DateTime beginDate = DateTime.Parse(starDate); PlanList = PlanList.Where(x => x.EVALDATE >= beginDate); } if (!string.IsNullOrEmpty(endDate)) { DateTime finishDate = DateTime.Parse(starDate); PlanList = PlanList.Where(x => x.EVALDATE <= finishDate); } List <DC_NURSEINGPLANEVAL> list = PlanList.ToList(); foreach (DC_NURSEINGPLANEVAL plan in list) { DC_NursingPlanEval nursingPlan = new DC_NursingPlanEval(); Mapper.CreateMap <DC_NURSEINGPLANEVAL, DC_NursingPlanEval>(); Mapper.Map(plan, nursingPlan); List <DC_EvalQuetionModel> questionModel = new List <DC_EvalQuetionModel>(); List <DC_EVALQUESTION> question = new List <DC_EVALQUESTION>(); question.AddRange(plan.DC_EVALQUESTION); Mapper.CreateMap <DC_EVALQUESTION, DC_EvalQuetionModel>(); Mapper.Map(question, questionModel); List <DC_RegCplModel> regCplModel = new List <DC_RegCplModel>(); List <DC_REGCPL> regCpl = new List <DC_REGCPL>(); regCpl.AddRange(plan.DC_REGCPL); regCpl.ForEach(x => { DC_RegCplModel cpl = new DC_RegCplModel(); List <KMHC.SLTC.Business.Entity.DC.Model.NSCPLACTIVITY> activityModel = new List <Entity.DC.Model.NSCPLACTIVITY>(); List <DC_NSCPLACTIVITY> activity = new List <DC_NSCPLACTIVITY>(); activity.AddRange(x.DC_NSCPLACTIVITY); Mapper.CreateMap <DC_REGCPL, DC_RegCplModel>(); Mapper.Map(x, cpl); Mapper.CreateMap <DC_NSCPLACTIVITY, NSCPLACTIVITY>(); Mapper.Map(activity, activityModel); cpl.NsCplActivity = activityModel; regCplModel.Add(cpl); }); nursingPlan.evalQuetion = questionModel; nursingPlan.regCpl = regCplModel; result.Add(nursingPlan); } return(result); }
public DC_NursingPlanEval GetNursingPlan(long feeNo) { DC_NursingPlanEval nursingPlan = new DC_NursingPlanEval(); var maxEvalPlan = unitOfWork.GetRepository <DC_NURSEINGPLANEVAL>().dbSet.Where(x => x.FEENO == feeNo).OrderByDescending(x => x.EVALNUMBER).FirstOrDefault(); if (maxEvalPlan != null) { Mapper.CreateMap <DC_NURSEINGPLANEVAL, DC_NursingPlanEval>(); Mapper.Map(maxEvalPlan, nursingPlan); List <DC_EvalQuetionModel> questionModel = new List <DC_EvalQuetionModel>(); List <DC_EVALQUESTION> question = new List <DC_EVALQUESTION>(); question.AddRange(maxEvalPlan.DC_EVALQUESTION); Mapper.CreateMap <DC_EVALQUESTION, DC_EvalQuetionModel>(); Mapper.Map(question, questionModel); List <DC_RegCplModel> regCplModel = new List <DC_RegCplModel>(); List <DC_REGCPL> regCpl = new List <DC_REGCPL>(); regCpl.AddRange(maxEvalPlan.DC_REGCPL); regCpl.ForEach(x => { DC_RegCplModel cpl = new DC_RegCplModel(); List <KMHC.SLTC.Business.Entity.DC.Model.NSCPLACTIVITY> activityModel = new List <Entity.DC.Model.NSCPLACTIVITY>(); List <DC_NSCPLACTIVITY> activity = new List <DC_NSCPLACTIVITY>(); activity.AddRange(x.DC_NSCPLACTIVITY); Mapper.CreateMap <DC_REGCPL, DC_RegCplModel>(); Mapper.Map(x, cpl); Mapper.CreateMap <DC_NSCPLACTIVITY, NSCPLACTIVITY>(); Mapper.Map(activity, activityModel); cpl.NsCplActivity = activityModel; regCplModel.Add(cpl); }); nursingPlan.evalQuetion = questionModel; nursingPlan.regCpl = regCplModel; } return(nursingPlan); }
public BaseResponse <DC_MultiteamCarePlanRecModel> QueryTransdisciplinaryRef(long feeNo) { BaseResponse <DC_MultiteamCarePlanRecModel> response = new BaseResponse <DC_MultiteamCarePlanRecModel>(); DC_MultiteamCarePlanRecModel data = new DC_MultiteamCarePlanRecModel(); List <DC_MultiteamCarePlanModel> carePlan = new List <DC_MultiteamCarePlanModel>(); int currentEvalNum = 1; var maxPlanRec = unitOfWork.GetRepository <DC_MULTITEAMCAREPLANREC>().dbSet.Where(x => x.FEENO == feeNo).OrderByDescending(x => x.EVALNUMBER).FirstOrDefault(); if (maxPlanRec != null) { currentEvalNum = maxPlanRec.EVALNUMBER.HasValue ? maxPlanRec.EVALNUMBER.Value + 1 : 1; } DC_MultiteamCarePlanRecModel basicInfo = (from ip in unitOfWork.GetRepository <DC_IPDREG>().dbSet.Where(x => x.FEENO == feeNo && x.IPDFLAG == "I") join re in unitOfWork.GetRepository <DC_REGFILE>().dbSet on ip.REGNO equals re.REGNO select new DC_MultiteamCarePlanRecModel { FEENO = ip.FEENO, REGNO = re.REGNO, NURSEAIDES = ip.NURSEAIDES, DISEASEINFO = re.DISEASEINFO, ECOLOGICALMAP = re.ECOLOGICALMAP }).FirstOrDefault(); data = basicInfo; data.EVALNUMBER = currentEvalNum; SwRegEvalPlan swPlan = GetSocialWokerPlan(feeNo); DC_NursingPlanEval nursingPlan = GetNursingPlan(feeNo); DC_MultiteaMcarePlanEvalModel evalModel = new DC_MultiteaMcarePlanEvalModel(); Mapper.CreateMap <SwRegEvalPlan, DC_MultiteaMcarePlanEvalModel>(); Mapper.Map(swPlan, evalModel); DateTime now = DateTime.Now; evalModel.DISEASEINFO = data.DISEASEINFO; evalModel.ECOLOGICALMAP = data.ECOLOGICALMAP; evalModel.CHECKDATE = now; evalModel.CHECKEDBY = SecurityHelper.CurrentPrincipal.EmpNo; data.CHECKDATE = now; data.CHECKEDBY = SecurityHelper.CurrentPrincipal.EmpNo; if (nursingPlan.evalQuetion != null && nursingPlan.evalQuetion.Count > 0) { data.NurEvalDate = nursingPlan.EVALDATE.HasValue ? nursingPlan.EVALDATE.Value.ToShortDateString() : ""; data.NurEvalNum = nursingPlan.EVALNUMBER; for (int i = 0; i < nursingPlan.evalQuetion.Count; i++) { if (nursingPlan.evalQuetion[i].QUESTIONCODE == "ADL") { evalModel.ADLSCORE = nursingPlan.evalQuetion[i].SCORE == null ? "" : nursingPlan.evalQuetion[i].SCORE.ToString(); } else if (nursingPlan.evalQuetion[i].QUESTIONCODE == "GDS") { evalModel.GODSSCORE = nursingPlan.evalQuetion[i].SCORE == null ? "" : nursingPlan.evalQuetion[i].SCORE.ToString(); } else if (nursingPlan.evalQuetion[i].QUESTIONCODE == "IADL") { evalModel.IADLSCORE = nursingPlan.evalQuetion[i].SCORE == null ? "" : nursingPlan.evalQuetion[i].SCORE.ToString(); } else if (nursingPlan.evalQuetion[i].QUESTIONCODE == "MMSE") { evalModel.MMSESCORE = nursingPlan.evalQuetion[i].SCORE == null ? "" : nursingPlan.evalQuetion[i].SCORE.ToString(); } } } if (swPlan.TaskGoalsStrategyModel != null && swPlan.TaskGoalsStrategyModel.Count > 0) { data.SWEvalDate = swPlan.EVALDATE.HasValue ? swPlan.EVALDATE.Value.ToShortDateString() : ""; data.SWEvalNum = swPlan.EVALNUMBER; List <DC_MultiteamCarePlanModel> swCarePlan = (from task in swPlan.TaskGoalsStrategyModel.AsEnumerable() select new DC_MultiteamCarePlanModel { MAJORTYPE = "社工", QUESTIONTYPE = task.QUESTIONTYPE, ACTIVITY = task.PLANACTIVITY }).ToList(); carePlan.AddRange(swCarePlan); } if (nursingPlan.regCpl != null && nursingPlan.regCpl.Count > 0) { List <DC_MultiteamCarePlanModel> nursingCarePlan = (from task in nursingPlan.regCpl.AsEnumerable() select new DC_MultiteamCarePlanModel { MAJORTYPE = "护理", QUESTIONTYPE = task.CPDIA, ACTIVITY = task.NsCplActivity.Select(x => x.CplActivity).ToList().Join() }).ToList(); carePlan.AddRange(nursingCarePlan); } data.PlanEval = evalModel; data.CarePlan = carePlan; response.Data = data; return(response); }