/// <summary> /// 设置医嘱打印中医嘱内容 content_or_prn /// </summary> /// <param name="ordDataDTO">医嘱数据对象</param> private void setOrdPrintContent(OrdPrintDataDTO ordDataDTO, bool isSubOr) { // 获取当前打印数据对应的格式化字符串 string format = cfgViewModel.GetRenderStr(ordDataDTO.Fg_long, ordDataDTO.Sd_srvtp); // 将OrdPrintDataDTO中属性按照格式化字符串进行数据转换 string renderResult = RenderUtil.Render(format, ordDataDTO); ordDataDTO.Content_or_prn = (isSubOr ? "---" : "") + renderResult; }
/// <summary> /// 获取重整标记行对应的OrdPrintDO对象 /// </summary> /// <param name="ordPrintDataDTO">第一条待打印数据,用来完善重整标记行数据</param> /// <returns></returns> private OrdPrintDO getOrdPrintDOReset(OrdPrintDataDTO ordPrintDataDTO) { OrdPrintDO ordPrintDO = new OrdPrintDO(); BeanUtils.CopyProerties(ordPrintDataDTO, ordPrintDO, propertiesReset); ordPrintDO.Fg_reformrow = true; ordPrintDO.Content_or_prn = cfgViewModel.GetResetRowContent(true); return(ordPrintDO); }
/// <summary> /// 将医嘱待打印数据对象转换为医嘱打印的数据对象 /// </summary> /// <param name="ordDataDTO">医嘱待打印数据对象</param> /// <returns>医嘱打印的数据对象</returns> private OrdPrintDO convertOrdPrintData(OrdPrintDataDTO ordDataDTO, bool isSubOr) { OrdPrintDO ordPrintDO = new OrdPrintDO(); // 格式好医嘱内容 this.setOrdPrintContent(ordDataDTO, isSubOr); // 属性复制是先排除医生、核对护士签字 // 进行属性拷贝 string[] properties = new string[propertiesSign.Length + propertiesSignStop.Length]; propertiesSign.CopyTo(properties, 0); propertiesSignStop.CopyTo(properties, propertiesSign.Length); BeanUtils.CopyProerties(ordDataDTO, ordPrintDO, properties); // 设置生效日期,停止日期,医生护士签字 this.setOrdPrintDatetime(ordDataDTO, ordPrintDO); return(ordPrintDO); }
/// <summary> /// 设置医嘱生效时间、停止时间 /// </summary> /// <param name="ordDataDTO"></param> /// <param name="ordPrintDO"></param> private void setOrdPrintDatetime(OrdPrintDataDTO ordDataDTO, OrdPrintDO ordPrintDO) { // 设置医嘱的生效时间 FDateTime dtEffe = ordPrintDO.Dt_effe; if (dtEffe != null) { DateTime dateTime = dtEffe.ToTarget; ordPrintDO.Dt_effe_m = dateTime.Month.ToString(); ordPrintDO.Dt_effe_d = dateTime.Day.ToString(); ordPrintDO.Dt_effe_t = dateTime.TimeOfDay.ToString(); } // 判断是否需要打印签字人(签署医生、核对护士) if (cfgViewModel.IsPrintSignatory()) { BeanUtils.SetProerties(ordDataDTO, ordPrintDO, propertiesSign); } // 当停止核对结束后打印停止时间 if (ordPrintDO.Fg_chk_stop == FBoolean.True) { // 设置医嘱的停止时间 ordPrintDO.Dt_end = ordDataDTO.Dt_end; FDateTime dtEnd = ordPrintDO.Dt_end; DateTime dateTime = dtEnd.ToTarget; ordPrintDO.Dt_end_m = dateTime.Month.ToString(); ordPrintDO.Dt_end_d = dateTime.Day.ToString(); ordPrintDO.Dt_end_t = dateTime.TimeOfDay.ToString(); // 判断是否需要打印签字人(停止医生、停止核对护士) if (cfgViewModel.IsPrintSignatory()) { BeanUtils.SetProerties(ordDataDTO, ordPrintDO, propertiesSignStop); } } }