public override void Refresh() { this.BeginUpdate(); this.Nodes.Clear(); if (manager == null) { manager = new Neusoft.HISFC.BizLogic.Registration.Register(); } ArrayList al = new ArrayList();//患者列表 //节点说明: 本区患者\待接诊患者\转入患者\转出患者\出院登记患者 //显示本护理站在院的患者 al.Add("本区患者|" + EnumPatientType.In.ToString()); addPatientList(al, Neusoft.HISFC.Models.Base.EnumInState.I, EnumPatientType.In); //显示本护理站待接珍患者 al.Add("待接诊患者|" + EnumPatientType.Arrive.ToString()); addPatientList(al, Neusoft.HISFC.Models.Base.EnumInState.R, EnumPatientType.Arrive); // {1C0814FA-899B-419a-94D1-789CCC2BA8FF} //显示本护理站出关登记的患者 al.Add("出关登记患者|" + EnumPatientType.PreOut.ToString()); addPatientList(al, Neusoft.HISFC.Models.Base.EnumInState.P, EnumPatientType.PreOut); al.Add("留观转住院|" + EnumPatientType.PreIn.ToString()); addPatientList(al, Neusoft.HISFC.Models.Base.EnumInState.E, EnumPatientType.PreIn); //显示本护理站出院登记的患者 al.Add("留观结束患者|" + EnumPatientType.Out.ToString()); addPatientList(al, Neusoft.HISFC.Models.Base.EnumInState.B, EnumPatientType.Out); addPatientList(al, Neusoft.HISFC.Models.Base.EnumInState.C, EnumPatientType.Out); //显示所有患者列表 this.SetPatient(al); this.EndUpdate(); base.Refresh(); }
public void AddAllData(System.Collections.ArrayList alData) { if (alData.Count <= 0) { return; } #region 患者信息赋值 Neusoft.HISFC.Models.Pharmacy.ApplyOut tempApply = alData[0] as Neusoft.HISFC.Models.Pharmacy.ApplyOut; string clinicNO = tempApply.PatientNO; Neusoft.HISFC.BizLogic.Registration.Register registerManager = new Neusoft.HISFC.BizLogic.Registration.Register(); Neusoft.HISFC.Models.Registration.Register register = registerManager.GetByClinic(clinicNO); foreach (Neusoft.HISFC.Models.Pharmacy.ApplyOut temp in alData) { temp.UseTime = temp.Operation.ApplyOper.OperTime; temp.PatientNO = register.PID.CardNO; temp.User02 = register.Name; } #endregion if (this.ucInject == null) { this.ucInject = new ucZLInjectList(); } this.ucInject.AddAllData(alData); //对打印标签的情况 对数据按组合分组 ComboSort comboSort = new ComboSort(); alData.Sort(comboSort); ArrayList alGroupApplyOut = new ArrayList(); ArrayList alCombo = new ArrayList(); string privCombo = "-1"; #region 标签打印 foreach (Neusoft.HISFC.Models.Pharmacy.ApplyOut info in alData) { if (privCombo == "-1" || (privCombo == info.CombNO && info.CombNO != "")) { alCombo.Add(info.Clone()); privCombo = info.CombNO; continue; } else //不同处方号 { alGroupApplyOut.Add(alCombo); privCombo = info.CombNO; alCombo = new ArrayList(); alCombo.Add(info.Clone()); } } if (alCombo.Count > 0) { alGroupApplyOut.Add(alCombo); } this.alGroupCompound = alGroupApplyOut; #endregion }
private int Save() { int returnValue = this.valid(); if (returnValue < 0) { return(-1); } Neusoft.HISFC.BizLogic.Registration.Register regMgr = new Neusoft.HISFC.BizLogic.Registration.Register(); Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); Neusoft.FrameWork.Models.NeuObject myObj = new Neusoft.FrameWork.Models.NeuObject(); Neusoft.FrameWork.Models.NeuObject myDeptObj = new Neusoft.FrameWork.Models.NeuObject(); for (int i = 0; i < this.cmbDoct.alItems.Count; i++) { Neusoft.FrameWork.Models.NeuObject obj = this.cmbDoct.alItems[i] as Neusoft.FrameWork.Models.NeuObject; if (obj.ID == this.cmbDoct.Tag.ToString()) { myObj.ID = obj.ID; myObj.Name = obj.Name; break; } } if (this.cmbDept.SelectedItem != null) { myDeptObj = this.cmbDept.SelectedItem as Neusoft.FrameWork.Models.NeuObject; } //if (this.cmbDoct.SelectedItem != null) //{ // myObj = this.cmbDoct.SelectedItem as Neusoft.FrameWork.Models.NeuObject; //} //else //{ // myObj.ID = ""; // myObj.Name = ""; //} if (isUpdateRegDt) { this.myRegObj.DoctorInfo.SeeDate = regMgr.GetDateTimeFromSysDateTime(); } returnValue = regMgr.UpdateDeptAndDoct(this.myRegObj.ID, this.cmbDept.Tag.ToString(), this.cmbDept.Text, myObj.ID, myObj.Name, this.myRegObj.DoctorInfo.SeeDate.ToString()); if (returnValue < 0) { MessageBox.Show("换科失败!" + regMgr.Err); Neusoft.FrameWork.Management.PublicTrans.RollBack(); return(-1); } returnValue = regMgr.CancelTriage(this.myRegObj.ID); if (returnValue < 0) { MessageBox.Show("取消分诊失败!" + regMgr.Err); Neusoft.FrameWork.Management.PublicTrans.RollBack(); } Neusoft.FrameWork.Management.PublicTrans.Commit(); MessageBox.Show("换科成功!"); this.alDeptOrDoct.Add(myDeptObj); this.alDeptOrDoct.Add(myObj); return(1); }
/// <summary> /// 根据病历号获取挂号记录 /// [参数1: string QueryString - 查询条件值] /// [参数2: ArrayList alRegister - 返回的挂号数组] /// [参数3: QueryType queryType - 查询方式] /// [参数4: OperateType operateType - 是否模糊查询] /// [参数5: bool boolRegisterDate - 是否有时间限制] /// [返回: int,1-成功,-1-失败] /// </summary> /// <param name="QueryString">查询条件值</param> /// <param name="alRegister">返回的挂号数组</param> /// <param name="queryType">查询方式</param> /// <param name="operateType">是否模糊查询</param> /// <param name="boolRegisterDate">是否有时间限制</param> /// <returns>1-成功,-1-失败</returns> public int GetRegisterList(string QueryString, ArrayList alRegister, ucRegInfoQuery.QueryType queryType, ucRegInfoQuery.OperateType operateType, bool boolRegisterDate, DateTime dtFrom, DateTime dtTo) { // 返回值 int intReturn = 0; // SELECT语句 string SELECT = ""; // WHERE语句 string WHERE = ""; // OTHERWHERE语句 string OTHERWHERE = ""; // SQL语句 string SQL = ""; // // 获取SQL语句 // intReturn = this.Sql.GetSql("Local.Clinic.Function.Report.GetRegisterListByCardCode.Select", ref SELECT); if (intReturn == -1) { this.Err = "获取SQL语句Local.Clinic.Function.Report.GetRegisterListByCardCode.Select失败!" + "\n" + this.Err; return(-1); } // 判断是否是模糊查询 if (operateType.Equals(ucRegInfoQuery.OperateType.LikeQuery)) { switch (queryType) { case ucRegInfoQuery.QueryType.CardCode: intReturn = this.Sql.GetSql("Registration.Register.Query.ByCardCode.Like", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.ByCardCode.Like失败!" + "\n" + this.Err; return(-1); } break; case ucRegInfoQuery.QueryType.PatientName: intReturn = this.Sql.GetSql("Registration.Register.Query.ByPatientName.Like", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.ByPatientName.Like失败!" + "\n" + this.Err; return(-1); } break; case ucRegInfoQuery.QueryType.PactCode: intReturn = this.Sql.GetSql("Registration.Register.Query.ByPactCode.Like", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.ByPactCode.Like失败!" + "\n" + this.Err; return(-1); } break; case ucRegInfoQuery.QueryType.SeeDepartment: intReturn = this.Sql.GetSql("Registration.Register.Query.BySeeDepartment.Like", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.BySeeDepartment.Like失败!" + "\n" + this.Err; return(-1); } break; case ucRegInfoQuery.QueryType.SeeDoctor: intReturn = this.Sql.GetSql("Registration.Register.Query.BySeeDoctor.Like", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.BySeeDoctor.Like失败!" + "\n" + this.Err; return(-1); } break; case ucRegInfoQuery.QueryType.MedicareCode: intReturn = this.Sql.GetSql("Registration.Register.Query.ByMedicareCode.Like", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.ByMedicareCode.Like失败!" + "\n" + this.Err; return(-1); } break; case ucRegInfoQuery.QueryType.InvoiceCode: intReturn = this.Sql.GetSql("Registration.Register.Query.ByInvoiceCode.Like", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.ByInvoiceCode.Like失败!" + "\n" + this.Err; return(-1); } break; } } else { switch (queryType) { case ucRegInfoQuery.QueryType.CardCode: intReturn = this.Sql.GetSql("Registration.Register.Query.ByCardCode", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.ByCardCode失败!" + "\n" + this.Err; return(-1); } break; case ucRegInfoQuery.QueryType.PatientName: intReturn = this.Sql.GetSql("Registration.Register.Query.ByPatientName", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.ByPatientName失败!" + "\n" + this.Err; return(-1); } break; case ucRegInfoQuery.QueryType.PactCode: intReturn = this.Sql.GetSql("Registration.Register.Query.ByPactCode", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.ByPactCode失败!" + "\n" + this.Err; return(-1); } break; case ucRegInfoQuery.QueryType.SeeDepartment: intReturn = this.Sql.GetSql("Registration.Register.Query.BySeeDepartment", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.BySeeDepartment失败!" + "\n" + this.Err; return(-1); } break; case ucRegInfoQuery.QueryType.SeeDoctor: intReturn = this.Sql.GetSql("Registration.Register.Query.BySeeDoctor", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.BySeeDoctor失败!" + "\n" + this.Err; return(-1); } break; case ucRegInfoQuery.QueryType.MedicareCode: intReturn = this.Sql.GetSql("Registration.Register.Query.ByMedicareCode", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.ByMedicareCode失败!" + "\n" + this.Err; return(-1); } break; case ucRegInfoQuery.QueryType.InvoiceCode: intReturn = this.Sql.GetSql("Registration.Register.Query.ByInvoiceCode", ref WHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.ByInvoiceCode失败!" + "\n" + this.Err; return(-1); } break; } } if (boolRegisterDate) { intReturn = this.Sql.GetSql("Registration.Register.Query.ByRegDate", ref OTHERWHERE); if (intReturn == -1) { this.Err = "获取SQL语句Registration.Register.Query.ByRegDate失败!" + "\n" + this.Err; return(-1); } } // 合并SQL语句 SQL = SELECT + " " + WHERE + " " + OTHERWHERE; #region 匹配SQL语句 try { if (boolRegisterDate) { SQL = string.Format(SQL, QueryString, dtFrom, dtTo); } else { SQL = string.Format(SQL, QueryString); } } catch { this.Err = "匹配SQL语句失败!"; return(-1); } #endregion // // 执行SQL语句 // intReturn = this.ExecQuery(SQL); if (intReturn == -1) { this.Err = "执行SQL语句失败!" + "\n" + this.Err; return(-1); } // // 根据查询的门诊号,查询患者挂号实体,形成最终查询结果 // 原来只有下面一行,但是在DB2里不行,改了 //this.GetRegisterByClinicCode( alRegister ); // 循环获取 List <string> alClinic = new List <string>(); while (this.Reader.Read()) { // 门诊号 string clinicCode = this.Reader[0].ToString(); alClinic.Add(clinicCode); } this.Reader.Close(); // 挂号业务层 Neusoft.HISFC.BizLogic.Registration.Register function = new Neusoft.HISFC.BizLogic.Registration.Register(); // 挂号实体 Neusoft.HISFC.Models.Registration.Register register = new Neusoft.HISFC.Models.Registration.Register(); foreach (string s in alClinic) { register = function.GetByClinic(s); if (register != null) { alRegister.Add(register); } } // // 成功返回 // return(1); }