public bool Reload(Ent4BannerDTO e) { mEnt4BannerDTO = e; if (mEnt4BannerDTO == null) { mDataSource.Clear(); return(false); } var sql = string.Format("a0.id_en='{0}'", e.Id_ent); var szCidiagAggDO = cidiagCrud.find(sql, "a0.createdtime desc", false); if (szCidiagAggDO.Length > 0) { SetCidiagAggDO(szCidiagAggDO.LastOrDefault()); } else { SetCidiagAggDO(CreateCidiagAggDO(this.mEnt4BannerDTO)); } mDataSource = (XapDataList <CiDiagItemDO>)GetCidiagAggDO().getCiDiagItemDO().ToArray(); return(szCidiagAggDO.Length > 0); }
public CiMedReferralViewModel(BaseContext c, Ent4BannerDTO e) { this.context = c; this.SetEnt4BannerDTO(e); medReferralDO = new MedReferralDO(); }
public override void HandleState(object sender, xap.rui.engine.DictionaryEventArgs e) { string uiEvent = e.Data[UIConst.UI_EVENT] as string; string newState = e.Data[UIConst.NEW_STATE] as string; switch (uiEvent) { case UIEvent.LOAD: this.ent4BannerDTO = (this.Context["PatientData"] as BannerData).Ent4BannerDTO; //树列表 DiCertificateTreeView leftView = userControl.GetConfig().GetInstance("leftView") as DiCertificateTreeView; if (leftView != null) { leftView.ent4BannerDTO = this.ent4BannerDTO; leftView.parentUserControl = this.Parent.Parent as XUserControl; } //编辑界面 DiCertificateEditView rightView = userControl.GetConfig().GetInstance("rightView") as DiCertificateEditView; if (rightView != null) { rightView.ent4BannerDTO = this.ent4BannerDTO; } userControl.Enabled = cof.viewEditState8EntSd(ent4BannerDTO.Entpattp); break; default: break; } }
public override void OnSelected(object sender, TargetEventArgs e) { if (!(sender is bannerOpdocstation)) { return; } BannerData bannerData = e.Object as BannerData; if (bannerData != null && bannerData.Ent4BannerDTO != null) { this.ent4BannerDTO = bannerData.Ent4BannerDTO; if (finishMode == null) { string idDep = this.Context.Dept.Id_dep; // 诊毕状态 0 无诊毕 可以去掉诊毕按钮,任何业务部受限制 // 1 仅诊毕 通过点击诊毕按钮,进行批量业务处理(是否处理按业务场景确定,比如是否修改诊毕状态,是否调用打印) // 2 诊毕撤回,严格控制诊毕后不允许做其他业务,只有进行撤回后才能继续 finishMode = this.Context.GetParam <string>(idDep, ICiOrdNSysParamConst.SYS_PARAM_OpThisPatVisitFinishMode); } } else { this.ent4BannerDTO = null; } }
//接诊时调用医保的共享数据 缓存在客户端 public String getMedicalsharingData(Ent4BannerDTO ent4Banner, BaseContext context, out string errMessage, string str) { ClincHistoryTradeInfo historyInfo = null; EachCommDTO eachCommDTO = new EachCommDTO(); eachCommDTO.Code_hp = ent4Banner.No_hp; eachCommDTO.Id_grp = context.Group.Id_grp; eachCommDTO.Id_org = context.Org.Id_org; eachCommDTO.Id_pat = ent4Banner.Id_pat; historyInfo = MedicalSharingCache.getMedicalData(ent4Banner.No_hp); if (historyInfo != null && historyInfo.SysInfo != null && historyInfo.SysInfo.ServerDateTime != null) { DateTime systemDateTime = LogicEx.GetInstance().GetSystemDateTime(); DateTime serverDateTime2 = (DateTime)historyInfo.SysInfo.ServerDateTime; System.TimeSpan timespan = systemDateTime.Subtract(serverDateTime2); if (timespan != null && timespan.TotalMinutes > 10) { historyInfo = service.GetClincHistoryInfo(eachCommDTO, out errMessage, str); //historyInfo = service.GetClincHistoryInfoByTest(); } } else { //historyInfo = service.GetClincHistoryInfoByTest(); // historyInfo = service.GetClincHistoryInfo(icno, out errMessage, str); historyInfo = service.GetClincHistoryInfo(eachCommDTO, out errMessage, str); } // ClincHistoryTradeInfo historyInfo = service.GetClincHistoryInfo(icno, out errMessage, str); // ClincHistoryTradeInfo historyInfo = service.GetClincHistoryInfoByTest();//测试数据 errMessage = ""; MedicalSharingCache.setMedicalSharingData(ent4Banner.No_hp, historyInfo, errMessage); return(""); }
public EmsPathgyViewModel(Ent4BannerDTO ent) : base(ent) { lstEmsPathgyItemDO = new XapDataList <EmsPathgyItemDO>(); uiEmsDTO.EmsType = EmsType.PATHGY; }
public OrderItemViewModel(Ent4BannerDTO ent4BannerDto, BaseContext context, bool isOutPress = false) { this.id_en = ent4BannerDto.Id_ent; this.code_entp = ent4BannerDto.Code_entp; this.context = context; if (isOutPress) {//出院带药 emsAppModeEnum = EmsAppModeEnum.OUTHEMSAPPMODE; } else if (EnDictCodeConst.SD_ENTP_INPATIENT == this.code_entp)//住院 { emsAppModeEnum = EmsAppModeEnum.IVEMSAPPMODE; } else {//门诊或其他 emsAppModeEnum = EmsAppModeEnum.SVEMSAPPMODE; } this.udidocService = XapServiceMgr.find <IUdidocCrudService>(); this.orderItemMService = XapServiceMgr.find <ICiorderMDOCrudService>(); this.maintainService = XapServiceMgr.find <ICiOrdMaintainService>(); this.entdiCrudService = XapServiceMgr.find <IEntdiCrudService>(); this.diagservice = XapServiceMgr.find <ICidiagCrudService>(); this.qryService = XapServiceMgr.find <ICiorderCrudService>(); this.bsservice = XapServiceMgr.find <IBsQueryService>(); this.ciOrderQryService = XapServiceMgr.find <ICiOrdQryService>(); this.bdHpUnlimitDrugDoCrudService = XapServiceMgr.find <IBdHpUnlimitDrugDOCrudService>(); OrderSequenceModel = this.ciOrderQryService.getOrderSequenceMode(); }
/// <summary> /// 获取banner信息患者 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public override void OnSelected(object sender, TargetEventArgs e) { if (!(sender is bannerOpdocstation)) { this.Enabled = false; return; } this.ent4BannerDTO = null; BannerData bannerData = e.Object as BannerData; if (bannerData != null && bannerData.Ent4BannerDTO != null) { this.ent4BannerDTO = bannerData.Ent4BannerDTO; string d = this.AnalysisPresResult(); } else { this.ent4BannerDTO = null; } //MainPointsEvent(); //this.ClearState(); }
public override void HandleState(object sender, DictionaryEventArgs eventArgs) { string uiEvent = eventArgs.Data[UIConst.UI_EVENT] as string; string newState = eventArgs.Data[UIConst.NEW_STATE] as string; switch (uiEvent) { case UIEvent.LOAD: Dictionary <string, object> dic = eventArgs.Data[UIConst.DATA] as Dictionary <string, object>; if (dic != null) { if (dic.Keys.Contains("PatientData")) { this.ent4BannerDto = (dic["PatientData"] as BannerData).Ent4BannerDTO; } } break; case "conscom": ConsComplete(); break; case "completesuccess": this.SetStatusInfo("完成会诊"); break; case "print": this.rptPrint(); break; default: break; } }
private void EntHistoryTabFrame_Load(object sender, EventArgs e) { this.BannerDTO = this.Context["ent4BannerDTO"] as Ent4BannerDTO; this.BaseContext = this.Context["context"] as BaseContext; xUserControl.Init(Application.StartupPath + "\\modules\\iihci\\ui\\opordertemplate\\Helper_pithy.xml"); this.OnInit(); }
public override void HandleState(object sender, DictionaryEventArgs eventArgs) { string uiEvent = eventArgs.Data[UIConst.UI_EVENT] as string; string newState = eventArgs.Data[UIConst.NEW_STATE] as string; switch (uiEvent) { case UIEvent.LOAD: Dictionary <string, Object> data = eventArgs.Data[UIConst.DATA] as Dictionary <string, Object>; if (data != null) { ent4BannerDto = (data["PatientData"] as BannerData).Ent4BannerDTO; if (ent4BannerDto != null) { this.Id_ent = ent4BannerDto.Id_ent; } this.OnLoadData(); } break; case UIEvent.ADD: // this.add(); break; case "ListSelected": this.LoadData(); break; default: break; } }
/// <summary> /// 通过服务id_srv和banner信息,获得服务关联的所有物品信息 /// </summary> /// <param name="id_srvs"></param> /// <param name="PatInfo"></param> /// <param name="isOutPres">出院带药</param>> /// <returns></returns> public static XapDataList <EmsOrDrug> getMMOfDrug(string id_srvs, Ent4BannerDTO PatInfo, bool isOutPres = false) { //通过患者信息拼接就诊上下文 CiEnContextDTO contextdto = CiEnContextUtil.GetCiEnContext(PatInfo); return(new OrderCardViewModel().GetOrDrugs(id_srvs, PatInfo.Id_hp, isOutPres == true?EnDictCodeConst.SD_ENTP_OUTPATIENT:PatInfo.Code_entp, contextdto)); }
/// <summary> /// Banner选择事件处理逻辑 /// </summary> /// <param name="sender"></param> /// <param name="bannerData"></param> /// <returns></returns> public override bool OnEventSelected(object sender, object bannerData) { base.OnEventSelected(sender, bannerData); if (bannerData == null) { //GetEmsView().SetDataPolicy(false); this.GetDefaultEmsView().GetViewModel().SetEnt4BannerDTO(null); return(true); } this.HandleCancelEmsEvent(); if (bannerData is BannerData) { this.ent4BannerDTO = (bannerData as BannerData).Ent4BannerDTO; //if (null != this.ent4BannerDTO && this.ent4BannerDTO.Sd_status == EnDictCodeConst.SD_ENSTATUS_OP_FINISH) { // this.GetDefaultEmsView().SetDataPolicy(false); //} } this.GetDefaultEmsView().GetViewModel().SetEnt4BannerDTO(this.ent4BannerDTO); return(true); }
/// <summary> /// 创建固定数据表格部件 /// </summary> // private void contructControls() // { // // if (!emsViewCache.ContainsKey("EmsDrugsTableViewCard")) // { // this.tableControl = new EmptyDrugSrvGridView(this); // // emsViewCache.Add("EmptyDrugSrvGridView", this.tableControl); // } // else // { // this.tableControl = emsViewCache["EmptyDrugSrvGridView"]; // } // } #endregion #region 父类继承区域 protected override void DisposeManaged() { if (tableControl != null) { tableControl.Dispose(); tableControl = null; } if (_defaultTableControl != null) { _defaultTableControl.Dispose(); _defaultTableControl = null; } rootView = null; // 患者就诊信息(来自于选中就诊患者时候) ent4BannerDTO = null; tableControl = null; orderDo = null; isFirstVisit = true; nOpOrValidTime = -1; isCreateEms = false; base.DisposeManaged(); }
/// <summary> /// 获取处方 /// </summary> /// <param name="ent4BannerDTO"></param> /// <param name="idOrs"></param> /// <returns></returns> private PresInfo GetPresInfo(CiEnContextDTO ctxDTO, List <string> idOrList) { Ent4BannerDTO ent4BannerDTO = ctxDTO.Ent4BannerDTO; // 获取本次就诊的已签署的药品医嘱以及ordIds 对应的医嘱 OrdRationalDrugDTO[] rationalDrugs = iCiOrdQryService.getRationalDrugDTOs(ent4BannerDTO, idOrList.ToArray()); PresInfo presInfo = new PresInfo(); // 设置医生患者信息 this.SetDoctorPresInfo(ctxDTO, ref presInfo); // 获取过敏史,生理状况 OverviewAggDO overivewAgg = this.GetAllergicHistory(ctxDTO.Id_pat); // 设置过敏史 this.SetAllergicHistory(ref presInfo, overivewAgg.getPiPatAlDO()); // 设置诊断 this.SetDiagnoses(ref presInfo, ctxDTO.Id_en); //设置生理状况 this.SetPhysiological(ref presInfo, overivewAgg.getPiPatPhyDO()); // 设置处方 this.SetPrescription(ref presInfo, rationalDrugs, idOrList); return(presInfo); }
/// <summary> /// 查询模板明细 /// </summary> /// <param name="BannerDTO"></param> /// <param name="id_ortmpls"></param> /// <returns></returns> public FMap getNewOrderTemplateDTO2(Ent4BannerDTO BannerDTO, string[] id_ortmpls) { remplRes = ciOrdQeryService.getOrTemplateCache(id_ortmpls, BaseEmsView.BaseEmsInfoContext["CiEnContextDTO"] as CiEnContextDTO); //string json = remplRes.serializeJson(); FMap map2 = new FMap(); if (remplRes != null) { map2 = remplRes.TemplItm; } //诊疗医疗单的开单模式赋值 if (map2 != null && BaseEmsView.BaseEmsInfoContext.ContainsKey(ICiOrdNSysParamConst.OPDiagTreatTmplOrOpenMode)) { foreach (string keyId in map2.Keys) { FArrayList list = map2[keyId] as FArrayList; foreach (NewOrderTemplateDTO templateDTO in list) { if (templateDTO.Ui_flag == "6")//治疗医疗单 { FArrayList itmdolist = templateDTO.Itemlist; foreach (OrTplNItmDO itmdo in itmdolist) { itmdo.Opdiagtreattmploropenmode = (string)BaseEmsView.BaseEmsInfoContext[ICiOrdNSysParamConst.OPDiagTreatTmplOrOpenMode]; } } } } } return(map2); }
/// <summary> /// 输出日志 /// </summary> /// <param name="context"></param> /// <param name="banner"></param> /// <param name="msg"></param> private static string GetWriteLog(string msg, BaseContext context, Ent4BannerDTO banner) { StringBuilder builder = new StringBuilder(); builder.Append("【CI】:" + msg); if (context != null) { builder.Append(";医生:" + context.User.Name + ";就诊部门ID:" + context.Dept.Id_dep); } if (banner != null) { builder.Append(";患者:" + banner.Name_pat + "; 就诊ID:" + banner.Id_ent + ";就诊类型:" + banner.Code_entp + ";初诊:" + banner.Fg_first); if (!string.IsNullOrEmpty(banner.Code_ent)) { builder.Append("; 就诊号:" + banner.Code_ent); } else { builder.Append(";病案号:" + banner.Code_amr_ip); } if (string.IsNullOrEmpty(banner.Id_hp)) { builder.Append("; ID_HP:[" + banner.Code_amr_ip + "]"); } if (banner.Fg_hpfundpay == FBoolean.True) { builder.Append("(基金支付)"); } } return(builder.ToString()); }
/// <summary> /// 获取banner信息患者 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public override void OnSelected(object sender, TargetEventArgs e) { if (!(sender is bannerOpdocstation)) { return; } BannerData bannerData = e.Object as BannerData; if (bannerData != null && bannerData.Ent4BannerDTO != null) { if (this.ent4BannerDTO != null && !this.ent4BannerDTO.Id_ent.Equals(bannerData.Ent4BannerDTO.Id_ent)) { List <string> founCode = new List <string>(); founCode.Add(AssistantConstant.FUN_CODE_CONTAGION_REPORT_CARD); XapEvents.CloseOtherFuncEvent(founCode); } this.ent4BannerDTO = bannerData.Ent4BannerDTO; this.SendOpRevokeEnActionStatus(this.ent4BannerDTO); } else { this.ent4BannerDTO = null; } }
public override void HandleState(object sender, DictionaryEventArgs eventArgs) { string uiEvent = eventArgs.Data[UIConst.UI_EVENT] as string; string newState = eventArgs.Data[UIConst.NEW_STATE] as string; switch (uiEvent) { case UIEvent.LOAD: Dictionary <string, object> dic = eventArgs.Data[UIConst.DATA] as Dictionary <string, object>; if (dic != null) { if (dic.Keys.Contains("PatientData")) { ent4BannerDto = (dic["PatientData"] as BannerData).Ent4BannerDTO; } if (dic.Keys.Contains("IsInHospitalStation")) { ent4BannerDto.Id_ent = dic["EncounterID"].ToString(); } // this.OnLoadData(); } break; case UIEvent.SAVE: this.Save(); break; case UIEvent.PRINT: this.print_view(); break; } }
/// <summary> /// 获取加载病历的环境参数 /// </summary> /// <returns></returns> private DictionaryEventArgs GetCiMrArgsDic(Dictionary <string, object> paramDic) { object bannerObj = paramDic[EmrEditorConst.PARAM_ENT4BANNERDTO]; Ent4BannerDTO ent4BannerDTO = bannerObj == null ? null : bannerObj as Ent4BannerDTO; if (ent4BannerDTO != null) { // 获取患者信息 EnEmrDTO enEmrDTO = iEnOutQryService.GetEntInfo4Mr(ent4BannerDTO.Id_ent); paramDic.Add("enEmrDTO", enEmrDTO); // 如果是诊闭状态,设置病历为只读状态 if (EnDictCodeConst.SD_ENSTATUS_OP_FINISH.Equals(ent4BannerDTO.Sd_status)) { paramDic.Add("readonly", true); } else { paramDic.Add("readonly", false); } } DictionaryEventArgs args = new DictionaryEventArgs(); foreach (string key in paramDic.Keys) { args.Data.Add(key, paramDic[key]); } return(args); }
/// <summary> /// 基于条件,查找匹配的医疗单的具体创建工厂对象; /// 针对住院的 /// </summary> /// <param name="srv">医疗服务对象</param> /// <returns></returns> public EmsFactoryBase GetEmsFactory(MedSrvDO srv, BaseContext context, Ent4BannerDTO bannerDto) { string srvType = srv.Sd_srvtp; if (srvType.Length < 4) { throw new Exception(string.Format("服务类型有误长度不足4位!目前是{0},请检查", srvType)); } EmsFactoryBase r = null; //缓存中没有,则实际获取,然后在缓存 SrvMatchEmsParamDTO dto = EmsMatchTool.GetSrvMatchEmsParamDTO(context.Org.Id_org, context.Group.Id_grp, context.Dept.Id_dep, context.PsnInfo.Id_psndoc, bannerDto.Code_entp, srv.Sd_srvtp, srv.Id_srv, EmsAppModeEnum.IVEMSAPPMODE); SrvMatchEmsRstDTO matchResult = this.GetSrvMatchEmsParamDTO(dto); if (matchResult == null) { throw new Exception( string.Format("服务类型{0}没有匹配到医疗单,请从检查医疗单维护节点检查配置信息", srvType)); } string funcStr = matchResult.Funcclassstr; if (funcStr == null || funcStr == "") { throw new Exception( string.Format("服务类型{0}对应的医疗单配置串为空,请从检查医疗单维护节点检查配置信息", srvType)); } r = this.GetEmsFactoryFromFuncStr(funcStr); return(r); }
/// <summary> /// 根据当前环境创建CiMrDO对象 /// ent4BannerDTO 通过传参方式,如果使用本地onSelected方法中获取Ent4BannerDTO,可能出现在本地onSelected方法执行前,已经执行到该方法 /// </summary> /// <returns></returns> private CiMrDO CreateCiMrDO(Ent4BannerDTO ent4BannerDTO) { CiMrDO ciMrDO = new CiMrDO(); // 当前已选患者,但未保存过病历时,通过当前环境参数构造病历对象 if (ent4BannerDTO != null) { // 获取当前登录用户所在院区及科室,这个两个参数确定调用哪个模板 UserDO user = this.Context.User; string idOrg = this.Context.Org.Id_org; string idDep = this.Context.Dept.Id_dep; ciMrDO.Createdby = user.Id_user; ciMrDO.Createdtime = DateTime.Now; ciMrDO.Id_emp = user.Id_user; // 患者当前科室 ciMrDO.Id_dep_pat = ent4BannerDTO.Id_dep_phy; // 就诊号 ciMrDO.Id_ent = ent4BannerDTO.Id_ent; // 就诊类型 ciMrDO.Code_entp = ent4BannerDTO.Code_entp; // 患者号 ciMrDO.Id_pat = ent4BannerDTO.Id_pat; // 经治医师 取当前登录人 ciMrDO.Id_treat_doctor = user.Id_user; // 医疗记录科室 (当前登录人科室) ciMrDO.Id_dep = ent4BannerDTO.Id_dep_phy; } return(ciMrDO); }
public override void HandleState(object sender, DictionaryEventArgs eventArgs) { var uiEvent = eventArgs.Data[UIConst.UI_EVENT] as string; var newState = eventArgs.Data[UIConst.NEW_STATE] as string; switch (uiEvent) { case UIEvent.REFRESH: LoadData(); break; case UIEvent.LOAD: var dic = eventArgs.Data[UIConst.DATA] as Dictionary <string, object>; if (dic != null) { if (dic.Keys.Contains("PatientData")) { ent4BannerDto = (dic["PatientData"] as BannerData).Ent4BannerDTO; } //if (dic.Keys.Contains("IsInHospitalStation")) //{ // patDo.Id_ent = dic["EncounterID"].ToString(); //} // this.OnLoadData(); } break; } }
/// <summary> /// 设置撤回按钮是否可操作 /// </summary> /// <param name="ent4BannerDTO"></param> private void SendOpRevokeEnActionStatus(Ent4BannerDTO ent4BannerDTO) { DictionaryEventArgs de = new DictionaryEventArgs(); string id_dep = this.Context.Dept.Id_dep; // 病历管理模式:医生打印=0,病案统一打印=1,无纸化模式=2,医生手写=3 string omrMgmtMd = this.Context.GetParam <string>(id_dep, ICiOrdNSysParamConst.SYS_PARAM_OMRMgmtMd); // 如果是无纸化模式(客户接受电子病历),不允许对已经诊闭病历进行撤回 if (EmrEditorConst.OMR_MGMT_MD_2.Equals(omrMgmtMd)) { de.Data.Add(UIConst.UI_EVENT, EmrEditorConst.OPREVOKEEN_ACTION_HIDDEN); } else { // 判断是否允许撤回 bool isAllowRevoke = emrViewModel.IsAllowRevoke(omrMgmtMd, ent4BannerDTO); //如果允许撤回将撤回按钮设置为可操作状态 if (isAllowRevoke) { de.Data.Add(UIConst.UI_EVENT, EmrEditorConst.OPREVOKEEN_ACTION_OPERABLE); } else { de.Data.Add(UIConst.UI_EVENT, EmrEditorConst.OPREVOKEEN_ACTION_READONLY); } } this.FireEventSent(this, de); }
public override void HandleState(object sender, DictionaryEventArgs eventArgs) { string uiEvent = eventArgs.Data[UIConst.UI_EVENT] as string; string newState = eventArgs.Data[UIConst.NEW_STATE] as string; switch (uiEvent) { case UIEvent.REFRESH: if (this.Created) { this.LoadData(); } break; case UIEvent.LOAD: this.createInstance(); Dictionary <string, object> dic = eventArgs.Data[UIConst.DATA] as Dictionary <string, object>; if (dic != null) { if (dic.Keys.Contains("PatientData")) { patDo = (dic["PatientData"] as BannerData).Ent4BannerDTO; } if (dic.Keys.Contains("IsInHospitalStation")) { patDo = (dic["PatientData"] as BannerData).Ent4BannerDTO; } } break; default: break; } }
/// <summary> /// 获取lis报告查看参数 /// </summary> /// <param name="ent4BannerDTO"></param> /// <returns>查看list报告参数</returns> public Dictionary <String, object> GetLisParamDic(Ent4BannerDTO ent4BannerDTO) { Dictionary <String, object> paramDic = new Dictionary <string, object>(); //paramDic.Add("funCode", LisFunCode); // 功能节点编码 //paramDic.Add("patientid", "000145102700"); // 患者ID //paramDic.Add("healthchecktimes", "9"); // 就诊次数 //if(paramDic != null) //return paramDic; paramDic.Add("funCode", LisFunCode); // 功能节点编码 paramDic.Add("patientid", ent4BannerDTO.Code_pat); // 患者ID if (BdFcDictCodeConst.SD_CODE_ENTP_IP.Equals(ent4BannerDTO.Code_entp)) // 住院 { InpatientDO inpatient = GetInpatient(ent4BannerDTO.Id_ent); // 住院属性 paramDic.Add("healthchecktimes", inpatient.Times_ip); // 就诊次数 } else if (BdFcDictCodeConst.SD_CODE_ENTP_OP.Equals(ent4BannerDTO.Code_entp) || BdFcDictCodeConst.SD_CODE_ENTP_ET.Equals(ent4BannerDTO.Code_entp)) { // 门诊、急诊 OutpatientDO outpatient = this.GetOutpatient(ent4BannerDTO.Id_ent); // 门诊属性 paramDic.Add("healthchecktimes", outpatient.Times_op); // 就诊次数 } else { // 其他类型就诊 } return(paramDic); }
public EntDiProveDO SetEntDiProveDO(Ent4BannerDTO patDo) { entDiProveDo.Id_ent = patDo.Id_ent; entDiProveDo.Id_pat = patDo.Id_pat; entDiProveDo.Id_dep = patDo.Id_dep_phy; //TimeSpan tsm = DateTime.Now - patDo.Dt_birth_pat.Value; //int age = (int)tsm.TotalDays/365; entDiProveDo.Age = patDo.Age; entDiProveDo.Name_dept = patDo.Name_dep_phy; entDiProveDo.Name_pat = patDo.Name_pat; entDiProveDo.Sd_sex = patDo.Name_sex; //entDiProveDo.Name_user = patDo.N entDiProveDo.Code_dep = patDo.Code_entp; entDiProveDo.Str_name_di = getDiInfo(patDo.Id_ent); //诊断 entDiProveDo.Dt_acpt = patDo.Dt_acpt; entDiProveDo.Dt_end = patDo.Dt_end; entDiProveDo.Name_emp = patDo.Name_emp_phy; entDiProveDo.Dt_diprove = DateTime.Now; entDiProveDo.Name_pat = patDo.Name_pat; entDiProveDo.Code_ent = patDo.Code_ent; return(entDiProveDo); }
/// <summary> /// 根据就诊状态和门诊病历管理模式确定撤回按钮是否可操作 /// </summary> /// <param name="omrMgmtMd">门诊病历管理模式:医生打印=0,病案统一打印=1,无纸化模式=2,医生手写=3</param> /// <param name="ent4BannerDTO">banner数据</param> /// <returns></returns> public bool IsAllowRevoke(string omrMgmtMd, Ent4BannerDTO ent4BannerDTO) { //判断是否为诊闭状态,如果是未诊闭状态,不可撤回 if (!EnDictCodeConst.SD_ENSTATUS_OP_FINISH.Equals(ent4BannerDTO.Sd_status)) { return(false); } // 诊闭后omrMgmtMd =0 可撤回,omrMgmtMd=1 如果病历已经打印不可撤回 // omrMgmtMd=2 病历不可撤回, 3 占时不考虑先按不可撤回 switch (omrMgmtMd) { case "0": return(true); case "1": // 如果病历已经打印,返回false,不允许撤回; return(!isMrPrinted(ent4BannerDTO.Id_ent)); case "2": return(false); case "3": break; } return(true); }
public void saveEmptyDI(Ent4BannerDTO patientsDTO) { DIDTO diDTO = new DIDTO(); FillDiInfo(diDTO, patientsDTO); try { CiEnContextDTO ciEnContextDto = CiEnContextUtil.GetCiEnContext(patientsDTO); SaveResult = mainService.SaveCiDiDtos(new DIDTO[] { diDTO }, "", ciEnContextDto); } catch (XapServiceException xapex) { if (xapex != null) { this.ShowMessage(xapex.Message); } else { this.ShowMessage("后台服务异常!"); } } catch { } }
/// <summary> /// 获取当前登录人未签署的药品 /// </summary> /// <param name="patDo"></param> /// <returns></returns> public CiOrderDO[] GetCiOrderDOsDrug(Ent4BannerDTO ent4BannerDTO) { String whereStr = String.Format(" ID_EN ='{0}' and CODE_ENTP ='{1}' and SD_SU_OR ='0' and ID_EMP_OR = '{2}' and SD_SRVTP like '0101%' ", ent4BannerDTO.Id_ent, ent4BannerDTO.Code_entp, this.context.PsnInfo.Id_psndoc); return(this.orderItemMService.find(whereStr, "", FBoolean.False)); }