Esempio n. 1
0
        /// <summary>
        /// P18个护理记录
        /// </summary>
        /// <param name="doc"></param>
        private void P18Operation(WordDocument doc)
        {
            long feeNo = 8;
            IReportManageService       reportManageService       = IOCContainer.Instance.Resolve <IReportManageService>();
            INursingWorkstationService nursingWorkstationService = IOCContainer.Instance.Resolve <INursingWorkstationService>();
            IDictManageService         dictManageService         = IOCContainer.Instance.Resolve <IDictManageService>();
            var residentInfo = reportManageService.GetResidentInfo(feeNo);
            BaseRequest <NursingRecFilter> nursingRecFilter = new BaseRequest <NursingRecFilter>();

            nursingRecFilter.CurrentPage = 1;
            nursingRecFilter.PageSize    = 1000;
            nursingRecFilter.Data.FeeNo  = feeNo;
            var response = nursingWorkstationService.QueryNursingRec(nursingRecFilter);

            doc.ReplaceText("Org", residentInfo.Org);
            doc.ReplaceText("Name", residentInfo.Name);
            doc.ReplaceText("Sex", residentInfo.Sex);
            doc.ReplaceText("Age", residentInfo.Age.ToString());
            doc.ReplaceText("FeeNo", residentInfo.FeeNo.ToString());
            doc.ReplaceText("Floor", residentInfo.Floor);
            doc.ReplaceText("RoomNo", residentInfo.RoomNo);

            CodeFilter codeFilter = new CodeFilter();

            codeFilter.ItemTypes = new string[] { "J00.005" };
            var dict = (List <CodeValue>)dictManageService.QueryCode(codeFilter).Data;

            DataTable dt = new DataTable();

            dt.Columns.Add("c1");
            dt.Columns.Add("c2");
            dt.Columns.Add("c3");
            dt.Columns.Add("c4");
            if (response.Data != null)
            {
                foreach (var item in response.Data)
                {
                    var dr       = dt.NewRow();
                    var findItem = dict.Find(it => it.ItemType == "J00.005" && it.ItemCode == item.ClassType);
                    dr["c1"] = item.RecordDate.HasValue ? Util.ToTwDate(item.RecordDate.Value) : "";
                    dr["c2"] = string.Format("{0} {1}{2}", item.RecordDate.HasValue ? item.RecordDate.Value.ToString("HH:mm") : "", item.ClassType, findItem != null ? findItem.ItemName : "");
                    dr["c3"] = item.Content;
                    dr["c4"] = item.RecordNameBy;
                    dt.Rows.Add(dr);
                }
            }
            doc.FillTable(0, dt, "", "", 2);
            dt.Dispose();
        }
        /// <summary>
        /// 护理记录
        /// </summary>
        /// <param name="templateName"></param>
        /// <param name="startDateStr"></param>
        /// <param name="endDateStr"></param>
        /// <param name="feeNo"></param>
        /// <param name="classType"></param>
        public void DowdloadP18(string templateName, string startDateStr, string endDateStr, string feeNo, string classType, string floorId, string printOrder)
        {
            using (WordDocument doc = new WordDocument())
            {
                //加载模板
                doc.LoadModelDoc(templateName);
                var carelist = GetCareP18(startDateStr, endDateStr, feeNo, classType, floorId);
                if (carelist != null && carelist.Count > 0)
                {
                    List <string> list = new List <string>();
                    foreach (var item in carelist)
                    {
                        list.Add(item.FEENO.ToString());
                    }

                    var feenolist = list.Distinct().ToList();

                    if (feenolist != null && feenolist.Count > 0)
                    {
                        foreach (var item in feenolist)
                        {
                            doc.NewPartDocument();
                            IReportManageService       reportManageService       = IOCContainer.Instance.Resolve <IReportManageService>();
                            INursingWorkstationService nursingWorkstationService = IOCContainer.Instance.Resolve <INursingWorkstationService>();
                            IDictManageService         dictManageService         = IOCContainer.Instance.Resolve <IDictManageService>();
                            var residentInfo = carePlanservice.GetExportResidentInfo(Convert.ToInt64(item));
                            if (residentInfo != null)
                            {
                                doc.ReplacePartText("Org", residentInfo.Org ?? "");
                                doc.ReplacePartText("Name", residentInfo.Name ?? "");
                                doc.ReplacePartText("Sex", residentInfo.Sex ?? "未填");
                                doc.ReplacePartText("Age", residentInfo.Age.HasValue ? residentInfo.Age.ToString() : "");
                                doc.ReplacePartText("FeeNo", residentInfo.ResidentNo);
                                doc.ReplacePartText("Floor", residentInfo.Floor ?? "");
                                doc.ReplacePartText("RoomNo", residentInfo.RoomNo ?? "");
                            }
                            else
                            {
                                doc.ReplacePartText("Org", "");
                                doc.ReplacePartText("Name", "");
                                doc.ReplacePartText("Sex", "未填");
                                doc.ReplacePartText("Age", "");
                                doc.ReplacePartText("FeeNo", "");
                                doc.ReplacePartText("Floor", "");
                                doc.ReplacePartText("RoomNo", "");
                            }

                            BaseRequest <NursingRecFilter> nursingRecFilter = new BaseRequest <NursingRecFilter>();
                            nursingRecFilter.CurrentPage    = 1;
                            nursingRecFilter.PageSize       = 1000;
                            nursingRecFilter.Data.PrintFlag = true;
                            nursingRecFilter.Data.FeeNo     = (Convert.ToInt64(item));
                            nursingRecFilter.Data.Order     = printOrder;
                            var response = nursingWorkstationService.QueryNursingRec(nursingRecFilter);
                            response.Data = response.Data.Where(o => o.ClassType == classType).ToList();
                            DateTime?startDate = null;
                            DateTime?endDate   = null;
                            if (startDateStr != "")
                            {
                                startDate = Convert.ToDateTime(startDateStr);
                            }
                            if (endDateStr != "")
                            {
                                endDate = Convert.ToDateTime(endDateStr).AddDays(1).AddMilliseconds(-1);
                            }

                            if (startDate.HasValue && response.Data != null)
                            {
                                response.Data = response.Data.Where(m => m.RecordDate >= startDate.Value).ToList();
                            }
                            if (endDate.HasValue && response.Data != null)
                            {
                                response.Data = response.Data.Where(m => m.RecordDate <= endDate.Value).ToList();
                            }
                            CodeFilter codeFilter = new CodeFilter {
                                ItemTypes = new string[] { "J00.005" }
                            };
                            var dict = (List <CodeValue>)dictManageService.QueryCode(codeFilter).Data;

                            DataTable dt = new DataTable();
                            dt.Columns.Add("c1");
                            dt.Columns.Add("c2");
                            dt.Columns.Add("c3");
                            dt.Columns.Add("c4");
                            if (response.Data != null)
                            {
                                foreach (var careitem in response.Data)
                                {
                                    var dr       = dt.NewRow();
                                    var findItem = dict.Find(it => it.ItemType == "J00.005" && it.ItemCode == careitem.ClassType);
                                    dr["c1"] = careitem.RecordDate.HasValue ?Convert.ToDateTime(careitem.RecordDate.Value).ToString("yyyy-MM-dd") : "";
                                    dr["c2"] = string.Format("{0} {1}{2}", careitem.RecordDate.HasValue ? careitem.RecordDate.Value.ToString("HH:mm") : "", careitem.ClassType, findItem != null ? findItem.ItemName : "");
                                    dr["c3"] = careitem.Content;
                                    dr["c4"] = careitem.RecordNameBy;
                                    dt.Rows.Add(dr);
                                }
                            }

                            doc.MultiFillTable(0, dt, "", "", 1);
                            doc.AddPartDocument();
                            dt.Dispose();
                        }

                        if (!doc.IsDocNull())
                        {
                            Util.DownloadFile(doc.SaveMarkDoc("护理记录"));
                        }
                    }
                }
            }
        }
Esempio n. 3
0
        protected override void Operation(WordDocument doc)
        {
            long Id = ParamId;
            IReportManageService           reportManageService       = IOCContainer.Instance.Resolve <IReportManageService>();
            INursingWorkstationService     nursingWorkstationService = IOCContainer.Instance.Resolve <INursingWorkstationService>();
            IDictManageService             dictManageService         = IOCContainer.Instance.Resolve <IDictManageService>();
            ICarePlanReportService         carePlanservice           = IOCContainer.Instance.Resolve <ICarePlanReportService>();
            BaseRequest <NursingRecFilter> nursingRecFilter          = new BaseRequest <NursingRecFilter>();

            nursingRecFilter.CurrentPage = 1;
            nursingRecFilter.PageSize    = 1000;
            // nursingRecFilter.Data.PrintFlag = true;
            nursingRecFilter.Data.Id = Id;
            var response     = nursingWorkstationService.QueryNursingRec(nursingRecFilter);
            var residentInfo = carePlanservice.GetExportResidentInfo(response.Data[0].FeeNo.Value);

            if (residentInfo != null)
            {
                doc.ReplaceText("Org", residentInfo.Org ?? "");
                doc.ReplaceText("Name", residentInfo.Name ?? "");
                doc.ReplaceText("Sex", residentInfo.Sex ?? "未填");
                doc.ReplaceText("Age", residentInfo.Age.HasValue ? residentInfo.Age.ToString() : "");
                doc.ReplaceText("FeeNo", residentInfo.ResidentNo);
                doc.ReplaceText("Floor", residentInfo.Floor ?? "");
                doc.ReplaceText("RoomNo", residentInfo.RoomNo ?? "");
            }
            else
            {
                doc.ReplaceText("Org", "");
                doc.ReplaceText("Name", "");
                doc.ReplaceText("Sex", "未填");
                doc.ReplaceText("Age", "");
                doc.ReplaceText("FeeNo", "");
                doc.ReplaceText("Floor", "");
                doc.ReplaceText("RoomNo", "");
            }
            CodeFilter codeFilter = new CodeFilter {
                ItemTypes = new string[] { "J00.005" }
            };
            var       dict = (List <CodeValue>)dictManageService.QueryCode(codeFilter).Data;
            DataTable dt   = new DataTable();

            dt.Columns.Add("c1");
            dt.Columns.Add("c2");
            dt.Columns.Add("c3");
            dt.Columns.Add("c4");
            if (response.Data != null)
            {
                foreach (var item in response.Data)
                {
                    var dr       = dt.NewRow();
                    var findItem = dict.Find(it => it.ItemType == "J00.005" && it.ItemCode == item.ClassType);
                    dr["c1"] = item.RecordDate.HasValue ? item.RecordDate.Value.ToString("yyyy-MM-dd") : "";
                    dr["c2"] = string.Format("{0} {1}{2}", item.RecordDate.HasValue ? item.RecordDate.Value.ToString("HH:mm") : "", item.ClassType, findItem != null ? findItem.ItemName : "");
                    dr["c3"] = item.Content;
                    dr["c4"] = item.RecordNameBy;
                    dt.Rows.Add(dr);
                }
            }
            doc.FillTable(0, dt, "", "", 1);
            dt.Dispose();
        }