/// <summary> /// 获取挂号科室和合同单位 /// </summary> /// <param name="argRegister">返回的挂号实体</param> public int SetPactAndRegDept(ref Neusoft.HISFC.Models.Registration.Register argRegister) { Neusoft.HISFC.BizProcess.Integrate.Terminal.Result result = new Result(); // 业务 Neusoft.HISFC.BizProcess.Integrate.Terminal.Confirm confirmIntegrate = new Neusoft.HISFC.BizProcess.Integrate.Terminal.Confirm(); // 合同单位实体 Neusoft.HISFC.Models.Base.PactInfo pact = new PactInfo(); // 科室实体 Neusoft.HISFC.Models.Base.Department dept = new Neusoft.HISFC.Models.Base.Department(); // 获取合同单位信息 result = confirmIntegrate.GetPact(ref pact, argRegister.Pact.ID); if (result != Result.Success) { Neusoft.FrameWork.Management.Language.Msg("获取合同单位失败。" + confirmIntegrate.Err); return(-1); } argRegister.Pact = pact; // 获取科室信息 result = confirmIntegrate.GetDept(ref dept, argRegister.DoctorInfo.Templet.Dept.ID); if (result != Result.Success) { Neusoft.FrameWork.Management.Language.Msg("获取科室信息失败。" + confirmIntegrate.Err); return(-1); } argRegister.DoctorInfo.Templet.Dept = dept; return(1); }
/// <summary> /// 插入科室信息 /// </summary> /// <param name="info"></param> /// <returns></returns> public int Insert(Neusoft.HISFC.Models.Base.Department info) { string sql = ""; if (this.Sql.GetSql("Department.InsertDept", ref sql) == -1) { return(-1); } try { #region donggq--20101124--{0DC97329-2084-4c3d-9BA4-91AEB8F6FCE7} sql = string.Format(sql, info.ID, info.Name, info.SpellCode, info.WBCode, info.EnglishName, info.DeptType.ID, Convert.ToInt32(info.IsRegDept), Convert.ToInt32(info.IsStatDept), info.SpecialFlag, ((int)info.ValidState).ToString(), info.SortID, this.Operator.ID, info.UserCode, info.ShortName, info.Memo); #endregion } catch (Exception ex) { this.ErrCode = ex.Message; this.Err = "接口错误!" + ex.Message; this.WriteErr(); return(-1); } return(this.ExecNoQuery(sql)); }
/// <summary> /// 取科室部分信息 /// </summary> /// <param name="sql"></param> /// <returns></returns> private ArrayList myGetDepartmentIn(string sql) { if (this.ExecQuery(sql) == -1) { return(null); } ArrayList result = new ArrayList(); while (this.Reader.Read()) { Neusoft.HISFC.Models.Base.Department dept = new Neusoft.HISFC.Models.Base.Department(); try { dept.ID = (string)this.Reader[0]; dept.Name = (string)this.Reader[12]; dept.SpellCode = (string)this.Reader[2]; dept.WBCode = (string)this.Reader[3]; //病区简称 dept.Memo = this.Reader[1].ToString(); result.Add(dept); } catch {} } this.Reader.Close(); return(result); }
/// <summary> /// 根据sql语句取科室列表 /// </summary> /// <param name="sql">执行Sql语句获取科室信息</param> /// <returns>成功返回科室数组 失败返回null</returns> private ArrayList ExecSqlForDepartmentLis(string sql) { if (this.ExecQuery(sql) == -1) { return(null); } ArrayList result = new ArrayList(); try { while (this.Reader.Read()) { Neusoft.HISFC.Models.Base.Department dept = new Neusoft.HISFC.Models.Base.Department(); dept.ID = (string)this.Reader[0]; dept.Name = (string)this.Reader[1]; dept.SpellCode = this.Reader[2].ToString(); dept.WBCode = this.Reader[3].ToString(); dept.DeptType.ID = this.Reader[5].ToString(); dept.Memo = (string)this.Reader[5]; dept.IsRegDept = Neusoft.FrameWork.Function.NConvert.ToBoolean(this.Reader[6]); dept.IsStatDept = Neusoft.FrameWork.Function.NConvert.ToBoolean(this.Reader[7]); dept.SpecialFlag = this.Reader[8].ToString(); dept.ValidState = (Neusoft.HISFC.Models.Base.EnumValidState)Convert.ToInt32(this.Reader[9]); dept.SortID = Neusoft.FrameWork.Function.NConvert.ToInt32(this.Reader[10]); //自定义码 dept.UserCode = this.Reader[11].ToString(); //病区简称 dept.ShortName = this.Reader[12].ToString(); //if (this.Reader.FieldCount > 13) //{ // dept.Remark = this.Reader[13].ToString(); // dept.OwnCode.ID = this.Reader[14].ToString(); //} result.Add(dept); } } catch (Exception e) { this.Err = e.Message; return(null); } finally { this.Reader.Close(); } return(result); }
/// <summary> /// 显示业务明细 /// [参数: ArrayList alDetail - 业务明细数组] /// </summary> /// <param name="terminalConfirmDetailList">业务明细数组</param> private void DisplayDetail(ArrayList terminalConfirmDetailList) { // 员工实体 Neusoft.HISFC.Models.Base.Employee employee = new Employee(); // 科室实体 Neusoft.HISFC.Models.Base.Department department = new Neusoft.HISFC.Models.Base.Department(); // 业务层 Neusoft.HISFC.BizProcess.Integrate.Terminal.Confirm confirmIntegrate = new Neusoft.HISFC.BizProcess.Integrate.Terminal.Confirm(); // 清空 this.neuSpreadItemDetail_SheetItemDetail.RowCount = 0; foreach (Neusoft.HISFC.Models.Terminal.TerminalConfirmDetail tempConfirmDetail in terminalConfirmDetailList) { // 增加一行新记录 this.neuSpreadItemDetail_SheetItemDetail.AddRows(this.neuSpreadItemDetail_SheetItemDetail.RowCount, 1); // 取增加的行号 this.row = this.neuSpreadItemDetail_SheetItemDetail.RowCount - 1; // 状态 if (tempConfirmDetail.Status.ID.Equals("0")) { this.neuSpreadItemDetail_SheetItemDetail.Cells[this.row, (int)DetailField.Status].Text = "正常"; } else { this.neuSpreadItemDetail_SheetItemDetail.Cells[this.row, (int)DetailField.Status].Text = "取消"; } // 执行科室 confirmIntegrate.GetDept(ref department, tempConfirmDetail.Apply.Item.ConfirmOper.Dept.ID); this.neuSpreadItemDetail_SheetItemDetail.Cells[this.row, (int)DetailField.ConfirmDepartment].Text = department.Name; // 执行时间 this.neuSpreadItemDetail_SheetItemDetail.Cells[this.row, (int)DetailField.ConfirmTime].Text = tempConfirmDetail.Apply.ConfirmOperEnvironment.OperTime.ToString(); // 确认人 confirmIntegrate.GetEmployee(ref employee, tempConfirmDetail.Apply.ConfirmOperEnvironment.ID); this.neuSpreadItemDetail_SheetItemDetail.Cells[this.row, (int)DetailField.ConfirmEmployee].Text = employee.Name; this.neuSpreadItemDetail_SheetItemDetail.Columns[(int)DetailField.FreeQty].Visible = false; // 隐藏这列,如果发生多次确认后退费,次数不准,之所以保留是为了便与根据旧发票号查询当时的情况 // 确认数量 this.neuSpreadItemDetail_SheetItemDetail.Cells[this.row, (int)DetailField.ConfirmQty].Text = tempConfirmDetail.Apply.Item.ConfirmedQty.ToString(); // 剩余数量 this.neuSpreadItemDetail_SheetItemDetail.Cells[this.row, (int)DetailField.FreeQty].Text = tempConfirmDetail.FreeCount.ToString(); // 保存Tag为实体 this.neuSpreadItemDetail_SheetItemDetail.Rows[this.row].Tag = tempConfirmDetail; } }
/// <summary> /// 根据统计分类编码,父级科室编码提取其所有下级节点科室信息。 /// </summary> /// <param name="statCode">统计大类编码</param> /// <param name="parDeptCode">父级科室编码</param> /// <returns></returns> public ArrayList LoadChildrenUnionDept(string statCode, string parDeptCode) { string sql = ""; if (this.Sql.GetSql("Manager.DepartmentStatManager.LoadChildrenUnionDept", ref sql) == -1) { return(null); } try { sql = string.Format(sql, statCode, parDeptCode); } catch (Exception ex) { this.ErrCode = ex.Message; this.Err = " " + ex.Message; this.WriteErr(); return(null); } //执行sql语句 if (this.ExecQuery(sql) == -1) { return(null); } ArrayList list = new ArrayList(); Neusoft.HISFC.Models.Base.Department dept = null; while (this.Reader.Read()) { dept = new Neusoft.HISFC.Models.Base.Department(); dept.ID = this.Reader[0].ToString(); //0科室编码 dept.Name = this.Reader[1].ToString(); //1科室名称 dept.SpellCode = this.Reader[2].ToString(); //2拼音码 dept.WBCode = this.Reader[4].ToString(); //3五笔码 dept.DeptType.ID = this.Reader[4].ToString(); //4科室类型 dept.User01 = dept.DeptType.ID.ToString(); //科室类型编码 dept.User02 = dept.DeptType.Name; //科室类型名称 list.Add(dept); } this.Reader.Close(); return(list); }
/// <summary> /// 根据sql语句取科室列表 /// </summary> /// <param name="sql"></param> /// <returns></returns> private ArrayList myGetDepartment(string sql) { if (this.ExecQuery(sql) == -1) { return(null); } ArrayList result = new ArrayList(); while (this.Reader.Read()) { Neusoft.HISFC.Models.Base.Department dept = new Neusoft.HISFC.Models.Base.Department(); dept.ID = (string)this.Reader[0]; dept.Name = (string)this.Reader[1]; try { dept.SpellCode = (string)this.Reader[2]; } catch {} try { dept.WBCode = (string)this.Reader[3]; } catch {} //dept.DeptType = new DepartmentType(); dept.DeptType.ID = (string)this.Reader[5]; dept.IsRegDept = Neusoft.FrameWork.Function.NConvert.ToBoolean(this.Reader[6]); dept.IsStatDept = Neusoft.FrameWork.Function.NConvert.ToBoolean(this.Reader[7]); dept.SpecialFlag = this.Reader[8].ToString(); dept.ValidState = (Neusoft.HISFC.Models.Base.EnumValidState)Convert.ToInt32(this.Reader[9]); if (!(this.Reader.IsDBNull(10))) { dept.SortID = Neusoft.FrameWork.Function.NConvert.ToInt32(this.Reader[10]); } //自定义码 dept.UserCode = this.Reader[11].ToString(); //病区简称 dept.ShortName = this.Reader[12].ToString(); result.Add(dept); } this.Reader.Close(); return(result); }
/// <summary> /// 更新科室信息 /// </summary> /// <param name="info"></param> /// <returns></returns> public int Update(Neusoft.HISFC.Models.Base.Department info) { string sql = ""; if (this.Sql.GetSql("Department.UpdateDept", ref sql) == -1) { return(-1); } // UPDATE com_department // SET dept_name='{1}', // spell_code='{2}', // wb_code='{3}', // dept_ename='{4}', // dept_type='{5}', // regdept_flag='{6}', // tatdept_flag='{7}', // dept_pro='{8}', // valid_state='{9}', // sort_id= {10}, // oper_code = '{11}', // oper_date = sysdate // WHERE dept_code='{0}' try { #region donggq--20101124--{0DC97329-2084-4c3d-9BA4-91AEB8F6FCE7} sql = string.Format(sql, info.ID, info.Name, info.SpellCode, info.WBCode, info.EnglishName, info.DeptType.ID, Convert.ToInt32(info.IsRegDept), Convert.ToInt32(info.IsStatDept), info.SpecialFlag, ((int)info.ValidState).ToString(), info.SortID, this.Operator.ID, info.UserCode, info.ShortName, info.Memo); #endregion } catch (Exception ex) { this.ErrCode = ex.Message; this.Err = "接口错误!" + ex.Message; this.WriteErr(); return(-1); } return(this.ExecNoQuery(sql)); }
/// <summary> /// 获得科室根据病区(分诊用) /// </summary> /// <param name="NurseStation">病区</param> /// <returns>科室列表</returns> public ArrayList GetDeptFromNurseStationForArray(NeuObject NurseStation) { ArrayList al = new ArrayList(); string sql = ""; if (this.Sql.GetSql("Manager.Department.GetDeptFromNurseStationForArray", ref sql) == -1) { return(al); } try { sql = string.Format(sql, "14", NurseStation.ID); } catch { this.Err = "Manager.Department.GetDeptFromNurseStationForArray的参数错误!"; this.WriteErr(); return(al); } if (this.ExecQuery(sql) == -1) { return(al); } while (this.Reader.Read()) { Neusoft.HISFC.Models.Base.Department dept = new Neusoft.HISFC.Models.Base.Department(); dept.ID = this.Reader[0].ToString(); dept.Name = this.Reader[1].ToString(); dept.SpellCode = this.Reader[2].ToString(); dept.WBCode = this.Reader[3].ToString(); if (dept.ID != "AAAA") { //不是根 al.Add(dept); } } this.Reader.Close(); return(al); }
/// <summary> /// 显示申请单 /// [参数: ArrayList alApply - 申请单数组] /// </summary> /// <param name="alApply">申请单数组</param> private void DisplayApply(ArrayList alApply) { // 业务层 Neusoft.HISFC.BizProcess.Integrate.Terminal.Confirm confirmIntegrate = new Neusoft.HISFC.BizProcess.Integrate.Terminal.Confirm(); // 员工实体 Neusoft.HISFC.Models.Base.Employee employee = new Employee(); // 科室实体 Neusoft.HISFC.Models.Base.Department department = new Neusoft.HISFC.Models.Base.Department(); this.neuSpreadItem_SheetItem.RowCount = 0; foreach (Neusoft.HISFC.Models.Terminal.TerminalApply tempTerminalApply in alApply) { // 增加一行 this.neuSpreadItem_SheetItem.AddRows(this.neuSpreadItem_SheetItem.RowCount, 1); // 当前行号 this.row = this.neuSpreadItem_SheetItem.RowCount - 1; // 状态 if (tempTerminalApply.ItemStatus.Equals("1")) { this.neuSpreadItem_SheetItem.Cells[this.row, (int)ApplyField.Status].Text = "未执行"; } else { if (tempTerminalApply.AlreadyConfirmCount == 0) { this.neuSpreadItem_SheetItem.Cells[this.row, (int)ApplyField.Status].Text = "未执行"; } else { this.neuSpreadItem_SheetItem.Cells[this.row, (int)ApplyField.Status].Text = "已执行"; } } // 项目名称 this.neuSpreadItem_SheetItem.Cells[this.row, (int)ApplyField.ItemName].Text = tempTerminalApply.Item.Item.Name; // 开立数量 this.neuSpreadItem_SheetItem.Cells[this.row, (int)ApplyField.Qty].Text = tempTerminalApply.Item.Item.Qty.ToString(); // 剩余数量 this.neuSpreadItem_SheetItem.Cells[this.row, (int)ApplyField.FreeQty].Text = (tempTerminalApply.Item.Item.Qty - tempTerminalApply.AlreadyConfirmCount).ToString(); // 开立医生 confirmIntegrate.GetEmployee(ref employee, tempTerminalApply.Item.Order.Doctor.ID); this.neuSpreadItem_SheetItem.Cells[this.row, (int)ApplyField.Doctor].Text = employee.Name; // 开立科室 confirmIntegrate.GetDept(ref department, tempTerminalApply.Item.ExecOper.Dept.ID); this.neuSpreadItem_SheetItem.Cells[this.row, (int)ApplyField.Department].Text = department.Name; // 保存Tag为实体 this.neuSpreadItem_SheetItem.Rows[this.row].Tag = tempTerminalApply; // 患者姓名 this.neuTextBoxName.Text = tempTerminalApply.Patient.Name; } if (alApply.Count > 0) { Neusoft.HISFC.Models.Terminal.TerminalApply tempTerminalApply = (Neusoft.HISFC.Models.Terminal.TerminalApply)alApply[0]; if (tempTerminalApply.PatientType == "1" || tempTerminalApply.PatientType == "4" || tempTerminalApply.PatientType == "5") { //门诊 或体检患者 Neusoft.HISFC.Models.Registration.Register obj = new Neusoft.HISFC.Models.Registration.Register(); obj = confirmMgr.GetByClinic(tempTerminalApply.Patient.PID.ID); if (obj == null) { MessageBox.Show("获取患者基本信息失败"); return; } tempTerminalApply.Patient.Sex.ID = obj.Sex.ID; } else if (tempTerminalApply.PatientType == "2") {//住院 } else if (tempTerminalApply.PatientType == "3") { //急诊 } if (tempTerminalApply.Patient.Sex.ID == null) { //this.neuTextBoxSex.Text = "未知"; } else if (tempTerminalApply.Patient.Sex.ID.Equals("M")) { this.neuTextBoxSex.Text = "男"; } else if (tempTerminalApply.Patient.Sex.ID.Equals("F")) { this.neuTextBoxSex.Text = "女"; } else { this.neuTextBoxSex.Text = "未知"; } } }
/// <summary> /// 通过科室编码获得科室名称 /// </summary> /// <param name="id"></param> /// <returns></returns> public Neusoft.HISFC.Models.Base.Department GetDeptmentById(string id) { string sql = ""; if (this.Sql.GetSql("Department.SelectDepartmentByID", ref sql) == -1) { return(null); } try { sql = string.Format(sql, id); } catch (Exception ex) { this.ErrCode = ex.Message; this.Err = "接口错误!" + ex.Message; this.WriteErr(); return(null); } if (this.ExecQuery(sql) == -1) { return(null); } if (this.Reader.Read()) { Neusoft.HISFC.Models.Base.Department dept = new Neusoft.HISFC.Models.Base.Department(); dept.ID = (string)this.Reader[0]; dept.Name = (string)this.Reader[1]; if (!(this.Reader.IsDBNull(2))) { dept.SpellCode = this.Reader.GetString(2); } if (!(this.Reader.IsDBNull(3))) { dept.WBCode = this.Reader.GetString(3); } if (!(this.Reader.IsDBNull(4))) { dept.EnglishName = this.Reader.GetString(4); } //dept.DeptType = new DepartmentType(); dept.DeptType.ID = (string)this.Reader[5]; if (!(this.Reader.IsDBNull(6))) { if (this.Reader[6].ToString() == "0") { dept.IsRegDept = false; //Convert.ToBoolean(this.Reader[6]); } else { dept.IsRegDept = true; } } if (!(this.Reader.IsDBNull(7))) { // dept.IsRegDept = Convert.ToBoolean(this.Reader[7]); if (this.Reader[7].ToString() == "0") { dept.IsStatDept = false; } else { dept.IsStatDept = true; } } dept.SpecialFlag = this.Reader[8].ToString(); dept.ValidState = (Neusoft.HISFC.Models.Base.EnumValidState)Convert.ToInt32(this.Reader[9]); if (!(this.Reader.IsDBNull(10))) { dept.SortID = Neusoft.FrameWork.Function.NConvert.ToInt32(this.Reader[10].ToString()); } //自定义码 dept.UserCode = this.Reader[11].ToString(); dept.ShortName = this.Reader[12].ToString(); this.Reader.Close(); return(dept); } return(null); }
/// <summary> /// 初始化控件 /// </summary> /// <param name="alFrequency"></param> /// <param name="alDept"></param> public virtual void InitControl(ArrayList alFrequency, ArrayList alDept, ArrayList alUsage) { Neusoft.HISFC.BizProcess.Integrate.Manager d = new Neusoft.HISFC.BizProcess.Integrate.Manager(); try { if (alDept == null) { #region donggq----{B61CBB5F-32C1-4b85-B58E-B10024C0BDCA} alDept = new ArrayList(); //alDept = d.GetDepartment(); //原来的 ArrayList tmp = d.GetDepartment(); for (int i = 0; i < tmp.Count; i++) { Neusoft.HISFC.Models.Base.Department dept = tmp[i] as Neusoft.HISFC.Models.Base.Department; if (dept != null) { string type = dept.DeptType.ID.ToString(); if (!string.IsNullOrEmpty(type)) { if (type == "C" || type == "I" || type == "OP" || type == "P" || type == "T") { alDept.Add(dept); } } } } #endregion } this.cmbExeDept.AddItems(alDept); this.cmbExeDept.IsListOnly = true; if (alFrequency == null) { alFrequency = HISFC.Components.Order.Classes.Function.HelperFrequency.ArrayObject; } this.cmbFrequency.ShowID = true; this.cmbFrequency.AddItems(alFrequency); this.cmbFrequency.IsListOnly = true; //初始化用法 this.cmbUsage1.AddItems(HISFC.Components.Order.Classes.Function.HelperUsage.ArrayObject); this.cmbUsage2.AddItems(this.cmbUsage1.alItems); this.cmbUsage1.IsListOnly = true; this.cmbUsage2.IsListOnly = true; //初始化样本类型/检查部位 this.txtSample.AddItems(HISFC.Components.Order.Classes.Function.HelperSample.ArrayObject); } catch { } this.txtDoseOnce.KeyPress += new KeyPressEventHandler(ItemKeyPress); this.txtFu.KeyPress += new KeyPressEventHandler(ItemKeyPress); this.cmbFrequency.KeyPress += new KeyPressEventHandler(ItemKeyPress); this.cmbUsage1.KeyPress += new KeyPressEventHandler(ItemKeyPress); this.cmbUsage2.KeyPress += new KeyPressEventHandler(ItemKeyPress); this.txtMinUnit.KeyPress += new KeyPressEventHandler(ItemKeyPress); this.cmbMemo1.KeyPress += new KeyPressEventHandler(ItemKeyPress); this.cmbMemo2.KeyPress += new KeyPressEventHandler(ItemKeyPress); this.cmbMemo3.KeyPress += new KeyPressEventHandler(ItemKeyPress); //处理鼠标离开后的备注刷新 this.cmbMemo1.TextChanged += new EventHandler(Mouse_Leave); this.cmbMemo2.TextChanged += new EventHandler(Mouse_Leave); this.cmbMemo3.TextChanged += new EventHandler(Mouse_Leave); this.txtSample.TextChanged += new EventHandler(Mouse_Leave); this.cmbExeDept.SelectedIndexChanged += new EventHandler(Mouse_Leave); this.cmbUsage1.SelectedIndexChanged += new EventHandler(Mouse_Leave); this.cmbUsage2.SelectedIndexChanged += new EventHandler(Mouse_Leave); this.cmbMemo1.TextChanged += new EventHandler(Mouse_Leave); this.cmbMemo2.TextChanged += new EventHandler(Mouse_Leave); this.cmbMemo3.TextChanged += new EventHandler(Mouse_Leave); this.txtDoseOnce.TextChanged += new EventHandler(Mouse_Leave); this.txtMinUnit.TextChanged += new EventHandler(Mouse_Leave); this.txtFu.TextChanged += new EventHandler(Mouse_Leave); this.cmbFrequency.SelectedIndexChanged += new EventHandler(cmbFrequency_SelectedIndexChanged); this.cmbExeDept.KeyPress += new KeyPressEventHandler(ItemKeyPress); this.chkEmerce.CheckedChanged += new EventHandler(CheckedChanged); this.chkDrugEmerce.CheckedChanged += new EventHandler(CheckedChanged); // {78F4ED37-7A2E-4e57-8D88-F2DA9C702673} xupan this.txtSample.KeyPress += new KeyPressEventHandler(ItemKeyPress); // end }