コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }
コード例 #3
0
        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);
        }