public int UpdateChangeDept(Neusoft.HISFC.Models.RADT.Location info) { string strSql = ""; if (this.Sql.GetSql("Case.BaseDML.UpdateChangeDept", ref strSql) == -1) { return(-1); } try { object[] mm = GetInfo(info); if (mm == null) { this.Err = "业务层从实体中获取字符数组出错"; return(-1); } strSql = string.Format(strSql, mm); } catch (Exception ee) { this.Err = ee.Message; return(-1); } return(this.ExecNoQuery(strSql)); }
/// <summary> /// 插入科室变更表 /// </summary> /// <param name="info"></param> /// <returns></returns> public int InsertChangeDept(Neusoft.HISFC.Models.RADT.Location info) { string strSql = ""; if (this.Sql.GetSql("Case.BaseDML.InsertChangeDept", ref strSql) == -1) { return(-1); } try { //获取索引值 info.User03 = this.GetSequence("Case.BaseDML.InsertChangeDeptSequence"); if (info.Building == "" || info.Building == null) //操作员 { info.Building = this.Operator.ID; } object[] mm = GetInfo(info); if (mm == null) { this.Err = "业务层从实体中获取字符数组出错"; return(-1); } strSql = string.Format(strSql, mm); } catch (Exception ee) { this.Err = ee.Message; return(-1); } return(this.ExecNoQuery(strSql)); }
/// <summary> /// 获取修改过的信息 /// </summary> /// <returns></returns> private bool GetChangeInfo(DataTable tempTable, ArrayList list) { if (tempTable == null) { return(true); } try { Neusoft.HISFC.Models.RADT.Location info = null; foreach (DataRow row in tempTable.Rows) { info = new Neusoft.HISFC.Models.RADT.Location(); info.User02 = this.patient.ID; info.Dept.ID = row["科室编码"].ToString(); //0 info.Dept.Name = row["科室名称"].ToString(); //1 info.User01 = row["转科日期"].ToString(); //2 info.User03 = row["序号"].ToString(); //3 info.Floor = "0"; //在科日期 list.Add(info); } return(true); } catch (Exception ex) { MessageBox.Show(ex.Message); return(false); } }
/// <summary> /// 保存 /// </summary> /// <returns></returns> protected virtual int Save() { if (patient == null) { MessageBox.Show("请选择患者!", "提示"); return(-1); } #region 获得患者所在位置 Neusoft.HISFC.Models.RADT.Location newlocation = new Neusoft.HISFC.Models.RADT.Location(); newdeptObj = this.lblDept.Tag as NeuObject; newlocation.Dept.ID = newdeptObj.ID; newlocation.Dept.Name = newdeptObj.Name; bed = this.lblBed.Tag as Neusoft.HISFC.Models.Base.Bed; newlocation.Bed = bed; newlocation.NurseCell = bed.NurseStation; #endregion //Neusoft.FrameWork.Management.Transaction tran = new Neusoft.FrameWork.Management.Transaction(Neusoft.FrameWork.Management.Connection.Instance); Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); radtInteger.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); mamagerInteger.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); int resultValue = radtInteger.ChangeDept(patient, newlocation); if (resultValue < 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show(this.radtInteger.Err); return(-1); } Neusoft.FrameWork.Management.PublicTrans.Commit(); if (isFresh) { deptObj = this.txtdept.Tag as NeuObject; RefreshListPatient(deptObj); } GetBedByDeptCode(newdeptObj); #region addby xuewj 2010-3-15 Neusoft.HISFC.Models.RADT.PatientInfo p = patient.Clone(); p.PVisit.PatientLocation = newlocation; if (this.adt == null) { this.adt = Neusoft.FrameWork.WinForms.Classes.UtilInterface.CreateObject(this.GetType(), typeof(Neusoft.HISFC.BizProcess.Interface.IHE.IADT)) as Neusoft.HISFC.BizProcess.Interface.IHE.IADT; } if (this.adt != null) { adt.TransferPatient(p); } #endregion MessageBox.Show("转科、床成功!", "提示"); this.cmbDept.Tag = newdeptObj.ID; return(1); }
/// <summary> /// 更新或增加一条信息 /// </summary> /// <param name="info"></param> /// <returns></returns> public int InsertOrUpdate(Neusoft.HISFC.Models.RADT.Location info) { int rowCount = UpdateChangeDept(info); if (rowCount <= 0) { return(InsertChangeDept(info)); } return(rowCount); }
public ArrayList GetChangeDeptFromShiftApply(string inpatienNo, string strType) { string strSql = ""; ArrayList list = new ArrayList(); if (strType == "1") { if (this.Sql.GetSql("Case.BaseDML.GetChangeDeptFromShiftApply1", ref strSql) == -1) { return(null); } } if (strType == "2") { if (this.Sql.GetSql("Case.BaseDML.GetChangeDeptFromShiftApply2", ref strSql) == -1) { return(null); } } try { strSql = string.Format(strSql, inpatienNo); //查询 this.ExecQuery(strSql); Neusoft.HISFC.Models.RADT.Location info = null; while (this.Reader.Read()) { info = new Neusoft.HISFC.Models.RADT.Location(); info.Dept.ID = Reader[0].ToString(); //科室编码 info.Dept.Name = Reader[1].ToString(); //科室名称 info.User01 = Reader[2].ToString(); // 转科时间 if (strType == "2") { info.User03 = Reader[3].ToString(); //发生序号 info.Floor = Reader[4].ToString(); //在科天数 } list.Add(info); } this.Reader.Close(); } catch (Exception ee) { this.Err = ee.Message; if (!this.Reader.IsClosed) { this.Reader.Close(); } list = null; } return(list); }
/// <summary> /// 赋值 /// </summary> /// <param name="row"></param> /// <param name="info"></param> private void SetRow(Neusoft.HISFC.Models.RADT.Location info, DataRow row) { row["科室编码"] = info.Dept.ID; //0 row["科室名称"] = info.Dept.Name; //1 if (info.User01 == "") { row["转科日期"] = System.DateTime.Now; //2 } else { row["转科日期"] = info.User01; } row["序号"] = info.User03; }
/// <summary> /// 将患者信息显示在控件中 /// </summary> private void ShowPatientInfo() { this.txtPatientNo.Text = this.patientInfo.PID.PatientNO; //住院号 this.txtPatientNo.Tag = this.patientInfo.ID; //住院流水号 this.txtName.Text = this.patientInfo.Name; //患者姓名 this.txtSex.Text = this.patientInfo.Sex.Name; //性别 this.txtOldDept.Text = this.patientInfo.PVisit.PatientLocation.Dept.Name; //源科室名称 this.cmbBedNo.Text = this.patientInfo.PVisit.PatientLocation.Bed.ID.Length > 4 ? this.patientInfo.PVisit.PatientLocation.Bed.ID.Substring(4) : ""; //床号 //{F0BF027A-9C8A-4bb7-AA23-26A5F3539586} this.txtOldNurse.Text = this.patientInfo.PVisit.PatientLocation.NurseCell.Name; //定义患者Location实体 Neusoft.HISFC.Models.RADT.Location newLocation = new Neusoft.HISFC.Models.RADT.Location(); //取患者转科申请信息 newLocation = this.inpatient.QueryShiftNewLocation(this.patientInfo.ID, this.patientInfo.PVisit.PatientLocation.Dept.ID); this.patientInfo.User03 = newLocation.User03; if (this.patientInfo.User03 == null) { this.patientInfo.User03 = "1";//申请 } if (newLocation == null) { MessageBox.Show(this.inpatient.Err); return; } this.cmbNewDept.Tag = newLocation.Dept.ID; //新科室名称 //{F0BF027A-9C8A-4bb7-AA23-26A5F3539586} this.cmbNewNurse.Tag = newLocation.NurseCell.ID; this.txtNote.Text = newLocation.Memo; //备注 //如果没有转科申请,则清空新科室编码 if (newLocation.Dept.ID == "") { this.cmbNewDept.Text = null; } //{F0BF027A-9C8A-4bb7-AA23-26A5F3539586} if (newLocation.NurseCell.ID == "") { this.cmbNewNurse.Text = null; } if (this.patientInfo.User03 != null && this.patientInfo.User03 == "0") { this.label8.Visible = true; } else { this.label8.Visible = false; } }
/// <summary> /// 删除一行转科数据 /// </summary> /// <param name="info"></param> /// <returns></returns> public int DeleteChangeDept(Neusoft.HISFC.Models.RADT.Location info) { string strSql = ""; if (this.Sql.GetSql("Case.BaseDML.DeleteChangeDept", ref strSql) == -1) { return(-1); } try { //格式化字符串 strSql = string.Format(strSql, info.User02, info.User03); //user02 住院流水号 user03发生序号 } catch (Exception ee) { this.Err = ee.Message; return(-1); } return(this.ExecNoQuery(strSql)); }
private object[] GetInfo(Neusoft.HISFC.Models.RADT.Location info) { try { object[] s = new object[10]; s[0] = info.User02; //住院流水号 s[1] = info.User03; //发生序号 s[2] = info.Dept.ID; //科室编码 s[3] = info.Dept.Name; //科室名称 s[4] = info.User01; //转科时间 s[5] = "0"; //在科天数 //s[5] = info.Floor; //在科天数 s[6] = info.Building; //操作员 return(s); } catch (Exception ex) { this.Err = ex.Message; return(null); } }
/// <summary> /// 单人换床处理 /// </summary> /// <param name="a"></param> /// <param name="b"></param> /// <returns></returns> private int TransPatientToBed(int a, int b) { /*int parm = 0; * Neusoft.HISFC.Models.RADT.Location obj_location = new Neusoft.HISFC.Models.RADT.Location(); * Neusoft.HISFC.Models.RADT.PatientInfo obj_a; * * //取ListView中的床位和患者信息 * obj_a = (Neusoft.HISFC.Models.RADT.PatientInfo)this.lsvBedView.Items[a].Tag; * obj_location.Bed = (Neusoft.HISFC.Models.Base.Bed)this.lsvBedView.Items[b].Tag; * * //床号除去前四位 * string bedNo = obj_location.Bed.ID.Length > 4 ? obj_location.Bed.ID.Substring(4) : obj_location.Bed.ID; * * if (obj_location.Bed.Status.ID.ToString() == "W") * { * MessageBox.Show("床号为 [" + bedNo + " ]的床位状态为包床,不能占用!", "提示:"); * return -1; * } * else if (obj_location.Bed.Status.ID.ToString() == "C") * { * MessageBox.Show("床号为 [" + bedNo + " ]的床位状态为关闭,不能占用!", "提示:"); * return -1; * } * else if (obj_location.Bed.IsPrepay) * { * MessageBox.Show("床号为 [" + bedNo + " ]的床位已经预约,不能占用!", "提示:"); * return -1; * } * else if (!obj_location.Bed.IsValid) * { * MessageBox.Show("床号为 [" + bedNo + " ]的床位已经停用,不能占用!", "提示:"); * return -1; * } * // * if (MessageBox.Show("是否预将“" + obj_a.Name + "”转移到[" + bedNo + "]号床", "提示:", System.Windows.Forms.MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == System.Windows.Forms.DialogResult.No) return -1; * // * try * { * Neusoft.FrameWork.Management.Transaction SQLCA = new Neusoft.FrameWork.Management.Transaction(this.radtManager.Connection); * SQLCA.BeginTransaction(); * this.radtManager.SetTrans(SQLCA.Trans); * //单人换床处理 * parm = this.radtManager.TransferPatient(obj_a, obj_location); * if (parm == -1) * { * Neusoft.FrameWork.Management.PublicTrans.RollBack(); * this.Err = "换床失败!\n" + this.radtManager.Err; * return -1; * } * else if (parm == 0) * { * Neusoft.FrameWork.Management.PublicTrans.RollBack(); * this.Err = "换床失败! \n患者信息有变动或者已经出院,请刷新当前窗口"; * return -1; * } * * SQLCA.Commit(); * base.OnRefreshTree(); * * } * catch (Exception ex) * { * this.Err = ex.Message; * return -1; * } * return 1;*/ int parm = 0; Neusoft.HISFC.Models.RADT.Location obj_location = new Neusoft.HISFC.Models.RADT.Location(); Neusoft.HISFC.Models.Registration.Register obj_a; //取ListView中的床位和患者信息 obj_a = (Neusoft.HISFC.Models.Registration.Register) this.lsvBedView.Items[a].Tag; obj_location.Bed = (Neusoft.HISFC.Models.Base.Bed) this.lsvBedView.Items[b].Tag; //床号除去前四位 string bedNo = obj_location.Bed.ID.Length > 4 ? obj_location.Bed.ID.Substring(4) : obj_location.Bed.ID; if (obj_location.Bed.Status.ID.ToString() == "W") { MessageBox.Show("床号为 [" + bedNo + " ]的床位状态为包床,不能占用!", "提示:"); return(-1); } else if (obj_location.Bed.Status.ID.ToString() == "C") { MessageBox.Show("床号为 [" + bedNo + " ]的床位状态为关闭,不能占用!", "提示:"); return(-1); } else if (obj_location.Bed.IsPrepay) { MessageBox.Show("床号为 [" + bedNo + " ]的床位已经预约,不能占用!", "提示:"); return(-1); } else if (!obj_location.Bed.IsValid) { MessageBox.Show("床号为 [" + bedNo + " ]的床位已经停用,不能占用!", "提示:"); return(-1); } // if (MessageBox.Show("是否预将“" + obj_a.Name + "”转移到[" + bedNo + "]号床", "提示:", System.Windows.Forms.MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == System.Windows.Forms.DialogResult.No) { return(-1); } // try { Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); //Neusoft.FrameWork.Management.Transaction SQLCA = new Neusoft.FrameWork.Management.Transaction(this.radtManager.Connection); //SQLCA.BeginTransaction(); this.radtOutPatientManager.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); //单人换床处理 parm = this.radtOutPatientManager.TransferPatient(obj_a, obj_location); if (parm == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); this.Err = "换床失败!\n" + this.radtManager.Err; return(-1); } else if (parm == 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); this.Err = "换床失败! \n患者信息有变动或者已经出院,请刷新当前窗口"; return(-1); } Neusoft.FrameWork.Management.PublicTrans.Commit(); base.OnRefreshTree(); } catch (Exception ex) { this.Err = ex.Message; return(-1); } return(1); }
/// <summary> /// 加载前三次转科信息 /// </summary> /// <param name="list"></param> private void LoadChangeDept(ArrayList list) { Neusoft.HISFC.Models.RADT.Location firDept = null; Neusoft.HISFC.Models.RADT.Location secDept = null; Neusoft.HISFC.Models.RADT.Location thirDept = null; if (list == null) { return; } #region 转科信息的前三个在界面上显示 if (list.Count > 0) //有转科信息 { //转科信息的前三个在界面上显示 int j = 0; if (list.Count >= 3) { j = 3; } else { j = list.Count; } for (int i = 0; i < j; i++) { switch (i) { case 0: firDept = (Neusoft.HISFC.Models.RADT.Location)list[0]; break; case 1: secDept = (Neusoft.HISFC.Models.RADT.Location)list[1]; break; case 2: thirDept = (Neusoft.HISFC.Models.RADT.Location)list[2]; break; } } } #endregion #region 转科信息 if (firDept != null) { changeDeptFirstComboBox.Text = firDept.Dept.Name; changeDeptFirstComboBox.Tag = firDept.Dept.ID; System.DateTime dd = Neusoft.FrameWork.Function.NConvert.ToDateTime(firDept.User01); this.CYear2.Text = dd.Year.ToString(); this.CMon2.Text = dd.Month.ToString(); this.CDay2.Text = dd.Day.ToString(); } if (secDept != null) { changeDeptSecondComboBox.Text = secDept.Dept.Name; changeDeptSecondComboBox.Tag = secDept.Dept.ID; System.DateTime mm = Neusoft.FrameWork.Function.NConvert.ToDateTime(secDept.User01); this.CMon3.Text = mm.Month.ToString(); this.CDay3.Text = mm.Day.ToString(); } if (thirDept != null) { changeDeptThirdComboBox.Text = thirDept.Dept.Name; changeDeptThirdComboBox.Tag = thirDept.Dept.ID; System.DateTime cc = Neusoft.FrameWork.Function.NConvert.ToDateTime(thirDept.User01); this.CMon4.Text = cc.Month.ToString(); this.CDay4.Text = cc.Day.ToString(); } #endregion }
void Neusoft.HISFC.BizProcess.Interface.HealthRecord.HealthRecordInterface.ControlValue(Neusoft.HISFC.Models.HealthRecord.Base obj) { #region 赋值 Neusoft.HISFC.BizLogic.HealthRecord.Base baseDml = new Neusoft.HISFC.BizLogic.HealthRecord.Base(); Neusoft.HISFC.BizLogic.HealthRecord.DeptShift deptMger = new Neusoft.HISFC.BizLogic.HealthRecord.DeptShift(); Neusoft.HISFC.BizLogic.HealthRecord.Fee feeCaseMgr = new Neusoft.HISFC.BizLogic.HealthRecord.Fee(); Neusoft.HISFC.Models.HealthRecord.Base myItem = obj as Neusoft.HISFC.Models.HealthRecord.Base; this.payKindCbx.Tag = myItem.PatientInfo.Pact.PayKind.ID; //付费方式、 this.InpatientNO.Text = myItem.PatientInfo.PID.PatientNO; //住院号 this.medCardTextBox.Text = myItem.PatientInfo.SSN; //社保号 txtInHosNo.Text = myItem.PatientInfo.InTimes.ToString(); //入院次数 this.inpatientNOTextBox.Text = myItem.PatientInfo.ID; //住院流水号 this.nameTextBox.Text = myItem.PatientInfo.Name; //姓名 this.sexComboBox.Tag = myItem.PatientInfo.Sex.Name; //.ID;//性别 if (myItem.PatientInfo.Sex.ID.ToString() == "M") { sexBox.Text = "1"; } else if (myItem.PatientInfo.Sex.ID.ToString() == "F") { sexBox.Text = "2"; } //if(myItem.PatientInfo.MainDiagnose.ToString()!= null) this.inDiagComboBox.Text = myItem.PatientInfo.ClinicDiagnose.ToString(); //住院诊断 this.birYear.Text = myItem.PatientInfo.Birthday.Year.ToString(); //出生日期 this.birMon.Text = myItem.PatientInfo.Birthday.Month.ToString(); //出生日期 this.birDay.Text = myItem.PatientInfo.Birthday.Day.ToString(); //出生日期 this.ageTextBox.Text = this.inpatientManager.GetAge(myItem.PatientInfo.Birthday); //this.ageTextBox.Text = myItem.PatientInfo.Age;//年龄 this.marryComboBox.Tag = myItem.PatientInfo.MaritalStatus.ID;//婚姻状况 switch (myItem.PatientInfo.MaritalStatus.ID.ToString()) { case "M": marryTextBox.Text = "2"; break; case "W": marryTextBox.Text = "4"; break; case "A": marryTextBox.Text = "3"; break; case "D": marryTextBox.Text = "3"; break; case "R": marryTextBox.Text = "2"; break; case "S": marryTextBox.Text = "1"; break; } //marryTextBox.Text = myItem.PatientInfo.ClinicDiagnose.ToString();// MaritalStatus.ID.ToString(); this.workComboBox.Tag = myItem.PatientInfo.Profession.ID; //职业 this.birthInComboBox.Tag = myItem.PatientInfo.AreaCode; //出生地 this.nationComboBox.Tag = myItem.PatientInfo.Nationality.ID; //民族 this.districtComboBox.Text = myItem.PatientInfo.Country.ToString(); //国籍 this.inpatientNOTextBox.Text = myItem.PatientInfo.DIST; //籍贯 this.IDTextBox.Text = myItem.PatientInfo.IDCard; //身份证 this.workAdressTextBox.Text = myItem.PatientInfo.CompanyName;; //工作单位地址 this.workPhoneTextBox.Text = myItem.PatientInfo.PhoneBusiness; //工作单位电话 this.workZipTextBox.Text = myItem.PatientInfo.BusinessZip; //邮编 this.homeAdTextBox.Text = myItem.PatientInfo.AddressHome; //家庭住址 this.homeZipTextBox.Text = myItem.PatientInfo.HomeZip; //邮编 this.linkNameTextBox.Text = myItem.PatientInfo.Kin.Name; //联系人名称 //this.relationComboBox.Tag = myItem.PatientInfo.Kin.RelationLink;//联系人关系 this.relationComboBox.Text = myItem.PatientInfo.Kin.Relation.Name; this.linkAdressTextBox.Text = myItem.PatientInfo.Kin.RelationAddress; //联系人地址 有待考察; this.linkPhoneTextBox.Text = myItem.PatientInfo.Kin.RelationPhone; //联系人电话 有待考察; //由变更表获取 入院科室 Neusoft.HISFC.Models.RADT.Location indept = baseDml.GetDeptIn(myItem.PatientInfo.ID); if (indept != null) //入院科室 { //入院科室代码 inDeptComboBox.Tag = indept.Dept.ID; //入院科室名称 inDeptComboBox.Text = indept.Dept.Name; } else { this.inDeptComboBox.Tag = myItem.PatientInfo.PVisit.PatientLocation.Dept.ID; this.inDeptComboBox.Text = myItem.PatientInfo.PVisit.PatientLocation.Dept.Name; } //由变更表获取 出院科室 Neusoft.HISFC.Models.RADT.Location outDept = baseDml.GetDeptOut(myItem.PatientInfo.ID); if (outDept != null) { this.outDeptComboBox.Tag = outDept.Dept.ID; this.outDeptComboBox.Text = outDept.Dept.Name; } this.CYear2.Text = myItem.PatientInfo.PVisit.InTime.Year.ToString(); //入院时间 this.CMon2.Text = myItem.PatientInfo.PVisit.InTime.Month.ToString(); //入院时间 this.CDay2.Text = myItem.PatientInfo.PVisit.InTime.Day.ToString(); //入院时间 this.inCircsComboBox.Tag = myItem.PatientInfo.PVisit.Circs.ID; //入院情况 //出院时间不等于最小时间且患者状态为 出院登记状态 if (myItem.PatientInfo.PVisit.OutTime != System.DateTime.MinValue && myItem.PatientInfo.PVisit.InState.ID.ToString() == "B") { this.OutYear.Text = myItem.PatientInfo.PVisit.OutTime.Year.ToString(); //出院日期 this.OutMon.Text = myItem.PatientInfo.PVisit.OutTime.Month.ToString(); //出院日期 this.OutDay.Text = myItem.PatientInfo.PVisit.OutTime.Day.ToString(); //出院日期 } #region 暂时不用 打印的时候 不需要打印人员 // houseDocComboBox.Tag = myItem.PatientInfo.PVisit.AdmittingDoctor.ID ; // houseDocTextBox.Text = myItem.PatientInfo.PVisit.AdmittingDoctor.ID ; // //住院医师姓名 // houseDocComboBox.Text = myItem.PatientInfo.PVisit.AdmittingDoctor.Name; // //主治医师代码 // chargeDocComboBox.Tag = myItem.PatientInfo.PVisit.AttendingDoctor.ID; // chargeDocComboBox.Text = myItem.PatientInfo.PVisit.AttendingDoctor.Name; // chargeDocTextBox.Text = myItem.PatientInfo.PVisit.AttendingDoctor.ID; // //主任医师代码 // chiefDocComboBox.Tag = myItem.PatientInfo.PVisit.ConsultingDoctor.ID; // chiefDocComboBox.Text = myItem.PatientInfo.PVisit.ConsultingDoctor.Name; // chiefDocTextBox.Text = myItem.PatientInfo.PVisit.ConsultingDoctor.ID; // //科主任代码 // // info.PVisit.ReferringDoctor.ID // //进修医师代码 // refDocComboBox.Tag = myItem.RefresherDocd; // refDocTextBox.Text = myItem.RefresherDocd; // refDocComboBox.Text = myItem.RefresherDonm; // //研究生实习医师代码 // graDocComboBox.Tag = myItem.GraDocCode; // graDocComboBox.Text = myItem.GraDocName; // //实习医师代码 // praDocComboBox.Tag = myItem.PraDocCode; // praDocComboBox.Text = myItem.PraDocName; #endregion if (this.OutYear.Text != "1") { int inDays = (int)new System.TimeSpan(myItem.PatientInfo.PVisit.OutTime.Ticks - myItem.PatientInfo.PVisit.InTime.Ticks).TotalDays; if (inDays > 0) { this.inDaysTextBox.Text = inDays.ToString();//住院天数 } } else { this.inDaysTextBox.Text = ""; } this.inSourceComboBox.Tag = myItem.PatientInfo.PVisit.InSource.ID;//入院来源 #endregion ////保存转科信息的列表 //ArrayList changeDept = new ArrayList(); ////获取转科信息 //changeDept = deptMger.QueryChangeDeptFromShiftApply(myItem.PatientInfo.ID, "2"); //LoadChangeDept(changeDept); //ArrayList alOrg = new ArrayList(); //Neusoft.HISFC.BizLogic.HealthRecord.Diagnose diag = new Neusoft.HISFC.BizLogic.HealthRecord.Diagnose(); //alOrg = diag.QueryCaseDiagnose(myItem.PatientInfo.ID, "%", Neusoft.HISFC.Models.HealthRecord.EnumServer.frmTypes.DOC); }
/// <summary> /// 单人换床处理 /// </summary> /// <returns></returns> private int TransPatientToBed() { int parm = 0; Neusoft.HISFC.Models.RADT.Location obj_location = new Neusoft.HISFC.Models.RADT.Location(); Neusoft.HISFC.Models.RADT.PatientInfo obj_a; //取床位和患者信息 obj_a = this.mypatientinfo; obj_location.Bed = this.myBed; //床号除去前四位 string bedNo = obj_location.Bed.ID.Length > 4 ? obj_location.Bed.ID.Substring(4) : obj_location.Bed.ID; if (obj_location.Bed.Status.ID.ToString() == "W") { MessageBox.Show("床号为 [" + bedNo + " ]的床位状态为包床,不能占用!", "提示:"); return(-1); } else if (obj_location.Bed.Status.ID.ToString() == "C") { MessageBox.Show("床号为 [" + bedNo + " ]的床位状态为关闭,不能占用!", "提示:"); return(-1); } else if (obj_location.Bed.IsPrepay) { MessageBox.Show("床号为 [" + bedNo + " ]的床位已经预约,不能占用!", "提示:"); return(-1); } else if (!obj_location.Bed.IsValid) { MessageBox.Show("床号为 [" + bedNo + " ]的床位已经停用,不能占用!", "提示:"); return(-1); } else if (obj_location.Bed.Status.ID.ToString() == "I") { MessageBox.Show("床号为 [" + bedNo + " ]的床位状态为隔离,不能占用!", "提示:"); return(-1); } else if (obj_location.Bed.Status.ID.ToString() == "K") { MessageBox.Show("床号为 [" + bedNo + " ]的床位状态为污染,不能占用!", "提示:"); return(-1); } if (MessageBox.Show("是否预将“" + obj_a.Name + "”转移到[" + bedNo + "]号床", "提示:", System.Windows.Forms.MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == System.Windows.Forms.DialogResult.No) { return(-1); } try { Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); this.radtManager.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); //单人换床处理 parm = this.radtManager.TransferPatient(obj_a, obj_location); if (parm == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); this.Err = "换床失败!\n" + this.radtManager.Err; return(-1); } else if (parm == 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); this.Err = "换床失败! \n患者信息有变动或者已经出院,请刷新当前窗口"; return(-1); } Neusoft.FrameWork.Management.PublicTrans.Commit(); } catch (Exception ex) { this.Err = ex.Message; return(-1); } return(1); }
void Neusoft.HISFC.BizProcess.Interface.HealthRecord.HealthRecordInterface.ControlValue(Neusoft.HISFC.Models.HealthRecord.Base obj) { #region 赋值 Neusoft.HISFC.BizLogic.HealthRecord.Base baseDml = new Neusoft.HISFC.BizLogic.HealthRecord.Base(); Neusoft.HISFC.BizLogic.HealthRecord.DeptShift deptMger = new Neusoft.HISFC.BizLogic.HealthRecord.DeptShift(); Neusoft.HISFC.BizLogic.HealthRecord.Fee feeCaseMgr = new Neusoft.HISFC.BizLogic.HealthRecord.Fee(); Neusoft.HISFC.Models.HealthRecord.Base myItem = obj as Neusoft.HISFC.Models.HealthRecord.Base; this.payKindCbx.Text = GetPaykindForCaseFirst(myItem.PatientInfo.Pact.ID); // myItem.PatientInfo.Pact.Name;//.PayKind.ID;//付费方式、 this.cardNO.Text = myItem.PatientInfo.PID.CardNO; //门诊卡号 this.xNO.Text = myItem.XNum; //X光号 this.InpatientNO.Text = myItem.PatientInfo.PID.PatientNO; //住院号 this.medCardTextBox.Text = myItem.PatientInfo.SSN; //社保号 txtInHosNo.Text = myItem.PatientInfo.InTimes.ToString(); //入院次数 //this.inpatientNOTextBox.Text = myItem.PatientInfo.ID; //住院流水号 this.nameTextBox.Text = myItem.PatientInfo.Name; //姓名 this.sexComboBox.Text = myItem.PatientInfo.Sex.Name; //性别 if (myItem.PatientInfo.Sex.ID.ToString() == "M") { sexComboBox.Text = "1"; } else if (myItem.PatientInfo.Sex.ID.ToString() == "F") { sexComboBox.Text = "2"; } //if(myItem.PatientInfo.MainDiagnose.ToString()!= null) if (myItem.PatientInfo.ClinicDiagnose != null) { this.inDiagComboBox.Text = myItem.PatientInfo.ClinicDiagnose.ToString(); //住院诊断 } this.birYear.Text = myItem.PatientInfo.Birthday.Year.ToString(); //出生日期 this.birMon.Text = myItem.PatientInfo.Birthday.Month.ToString(); //出生日期 this.birDay.Text = myItem.PatientInfo.Birthday.Day.ToString(); //出生日期 this.ageTextBox.Text = this.inpatientManager.GetAge(myItem.PatientInfo.Birthday); //this.ageTextBox.Text = myItem.PatientInfo.Age;//年龄 //this.marryComboBox.Tag = myItem.PatientInfo.MaritalStatus.ID;//婚姻状况 switch (myItem.PatientInfo.MaritalStatus.ID.ToString()) { case "M": marryTextBox.Text = "2"; break; case "W": marryTextBox.Text = "4"; break; case "A": marryTextBox.Text = "3"; break; case "D": marryTextBox.Text = "3"; break; case "R": marryTextBox.Text = "2"; break; case "S": marryTextBox.Text = "1"; break; } //marryTextBox.Text = myItem.PatientInfo.ClinicDiagnose.ToString();// MaritalStatus.ID.ToString(); this.neuComboBox1.Tag = myItem.PatientInfo.Profession.ID; this.workComboBox.Text = this.neuComboBox1.Text; //this.workComboBox.Tag = myItem.PatientInfo.Profession.ID;//职业 //this.workComboBox.Text = myItem.PatientInfo.Profession.Name; this.birthInComboBox1.Tag = myItem.PatientInfo.AreaCode; //出生地 //this.birthInComboBox.Text = this.birthInComboBox1.Text; this.birthInComboBox.Text = myItem.PatientInfo.AreaCode; //出生地 //switch (myItem.PatientInfo.Nationality.ID.ToString()) //{ // case "1": // this.nationComboBox.Text = "汉族"; //} this.nationComboBox1.Tag = myItem.PatientInfo.Nationality.ID; //.ID;//民族 this.nationComboBox.Text = this.nationComboBox1.Text; //myItem.PatientInfo.Country.ToString(); this.districtComboBox.Text = myItem.PatientInfo.Country.ToString(); //国籍 //this.districtComboBox.Text = myItem.PatientInfo.DIST; //籍贯 this.IDTextBox.Text = myItem.PatientInfo.IDCard; //身份证 this.workAdressTextBox.Text = myItem.PatientInfo.AddressBusiness;; //工作单位地址 this.workPhoneTextBox.Text = myItem.PatientInfo.PhoneBusiness; //工作单位电话 this.workZipTextBox.Text = myItem.PatientInfo.BusinessZip; //邮编 this.homeAdTextBox.Text = myItem.PatientInfo.AddressHome; //家庭住址 this.homeZipTextBox.Text = myItem.PatientInfo.HomeZip; //邮编 this.linkNameTextBox.Text = myItem.PatientInfo.Kin.Name; //联系人名称 //this.relationComboBox.Tag = myItem.PatientInfo.Kin.RelationLink;//联系人关系 this.neuComboBox2.Tag = myItem.PatientInfo.Kin.Relation.ID; // PatientInfo.Kin.RelationLink; this.relationComboBox.Text = myItem.PatientInfo.Kin.Relation.Name; //联系人关系 //this.relationComboBox.Text = myItem.PatientInfo.Kin.Relation.Name; this.linkAdressTextBox.Text = myItem.PatientInfo.Kin.RelationAddress; //联系人地址 有待考察; this.linkPhoneTextBox.Text = myItem.PatientInfo.Kin.RelationPhone; //联系人电话 有待考察; //由变更表获取 入院科室 Neusoft.HISFC.Models.RADT.Location indept = baseDml.GetDeptIn(myItem.PatientInfo.ID); if (indept != null) //入院科室 { //入院科室代码 inDeptComboBox.Tag = indept.Dept.ID; //入院科室名称 inDeptComboBox.Text = indept.Dept.Name; } else { this.inDeptComboBox.Tag = myItem.PatientInfo.PVisit.PatientLocation.Dept.ID; this.inDeptComboBox.Text = myItem.PatientInfo.PVisit.PatientLocation.Dept.Name; } //由变更表获取 出院科室 Neusoft.HISFC.Models.RADT.Location outDept = baseDml.GetDeptOut(myItem.PatientInfo.ID); if (outDept != null) { this.outDeptComboBox.Tag = outDept.Dept.ID; this.outDeptComboBox.Text = outDept.Dept.Name; } this.CYear2.Text = myItem.PatientInfo.PVisit.InTime.Year.ToString(); //入院时间 this.CMon2.Text = myItem.PatientInfo.PVisit.InTime.Month.ToString(); //入院时间 this.CDay2.Text = myItem.PatientInfo.PVisit.InTime.Day.ToString(); //入院时间 this.neuLabel21.Text = myItem.PatientInfo.PVisit.Circs.ID; //入院情况 //出院时间不等于最小时间且患者状态为 出院登记状态 if (myItem.PatientInfo.PVisit.OutTime != System.DateTime.MinValue && myItem.PatientInfo.PVisit.InState.ID.ToString() == "B") { this.OutYear.Text = myItem.PatientInfo.PVisit.OutTime.Year.ToString(); //出院日期 this.OutMon.Text = myItem.PatientInfo.PVisit.OutTime.Month.ToString(); //出院日期 this.OutDay.Text = myItem.PatientInfo.PVisit.OutTime.Day.ToString(); //出院日期 } this.ClinicDiag.Text = myItem.ClinicDiag.Name; //门诊诊断 this.inDiagComboBox.Text = myItem.InHospitalDiag.Name; //入院诊断 #region 暂时不用 打印的时候 不需要打印人员 // houseDocComboBox.Tag = myItem.PatientInfo.PVisit.AdmittingDoctor.ID ; // houseDocTextBox.Text = myItem.PatientInfo.PVisit.AdmittingDoctor.ID ; // //住院医师姓名 // houseDocComboBox.Text = myItem.PatientInfo.PVisit.AdmittingDoctor.Name; // //主治医师代码 // chargeDocComboBox.Tag = myItem.PatientInfo.PVisit.AttendingDoctor.ID; // chargeDocComboBox.Text = myItem.PatientInfo.PVisit.AttendingDoctor.Name; // chargeDocTextBox.Text = myItem.PatientInfo.PVisit.AttendingDoctor.ID; // //主任医师代码 // chiefDocComboBox.Tag = myItem.PatientInfo.PVisit.ConsultingDoctor.ID; // chiefDocComboBox.Text = myItem.PatientInfo.PVisit.ConsultingDoctor.Name; // chiefDocTextBox.Text = myItem.PatientInfo.PVisit.ConsultingDoctor.ID; // //科主任代码 // // info.PVisit.ReferringDoctor.ID // //进修医师代码 // refDocComboBox.Tag = myItem.RefresherDocd; // refDocTextBox.Text = myItem.RefresherDocd; // refDocComboBox.Text = myItem.RefresherDonm; // //研究生实习医师代码 // graDocComboBox.Tag = myItem.GraDocCode; // graDocComboBox.Text = myItem.GraDocName; // //实习医师代码 // praDocComboBox.Tag = myItem.PraDocCode; // praDocComboBox.Text = myItem.PraDocName; #endregion //if (this.OutYear.Text != "1") //{ // int inDays = (int)new System.TimeSpan(myItem.PatientInfo.PVisit.OutTime.Ticks // - myItem.PatientInfo.PVisit.InTime.Ticks).TotalDays; // if (inDays > 0) // this.inDaysTextBox.Text = inDays.ToString();//住院天数 //} //else //{ // this.inDaysTextBox.Text = ""; //} this.inDaysTextBox.Text = myItem.InHospitalDays.ToString();//住院天数 //this.inSourceComboBox.Tag = myItem.PatientInfo.PVisit.InSource.ID;//入院来源 //诊断信息 Neusoft.HISFC.BizLogic.HealthRecord.Diagnose diag = new Neusoft.HISFC.BizLogic.HealthRecord.Diagnose(); ArrayList alDiag = new ArrayList(); //中日只能医生录入病案 alDiag = diag.QueryCaseDiagnose(myItem.PatientInfo.ID, "%", Neusoft.HISFC.Models.HealthRecord.EnumServer.frmTypes.DOC); if (alDiag.Count > 0) { Neusoft.HISFC.Models.HealthRecord.Diagnose diagNose = new Neusoft.HISFC.Models.HealthRecord.Diagnose(); //foreach (Neusoft.HISFC.Models.HealthRecord.Diagnose diagNose in alDiag) #region 诊断赋值 int row = 0; for (int i = 0; i < alDiag.Count; i++) { diagNose = alDiag[i] as Neusoft.HISFC.Models.HealthRecord.Diagnose; if (diagNose.DiagInfo.IsMain) { this.mainDiagICD.Text = diagNose.DiagInfo.ICD10.ID; this.MainDiagName.Text = diagNose.DiagInfo.ICD10.Name; switch (diagNose.DiagOutState) { case "1": this.MainDiag1.Text = "√"; break; case "2": this.MainDiag2.Text = "√"; break; case "3": this.MainDiag3.Text = "√"; break; case "4": this.MainDiag4.Text = "√"; break; case "5": this.MainDiag5.Text = "√"; break; } } else if (diagNose.DiagInfo.DiagType.ID == "6")//病理诊断 { this.txtDiagClPa.Text = diagNose.DiagInfo.ICD10.Name; } else if (diagNose.DiagInfo.DiagType.ID == "10")//门诊诊断 { this.ClinicDiag.Text = diagNose.DiagInfo.ICD10.Name; } else if (diagNose.DiagInfo.DiagType.ID == "11")//入院诊断 { this.inDiagComboBox.Text = diagNose.DiagInfo.ICD10.Name; } else if (diagNose.DiagInfo.DiagType.ID == "4") { this.txtInfectionPosition.Text += diagNose.DiagInfo.ICD10.Name + " "; } else { if (i > 6) { continue; } row = row + 1; switch (row) { case 1: this.otherDiagName1.Text = diagNose.DiagInfo.ICD10.Name; this.otherDiagCode1.Text = diagNose.DiagInfo.ICD10.ID; switch (diagNose.DiagOutState) { case "1": this.otherDiag11.Text = "√"; break; case "2": this.otherDiag12.Text = "√"; break; case "3": this.otherDiag13.Text = "√"; break; case "4": this.otherDiag14.Text = "√"; break; case "5": this.otherDiag15.Text = "√"; break; } break; case 2: this.otherDiagName2.Text = diagNose.DiagInfo.ICD10.Name; this.otherDiagCode2.Text = diagNose.DiagInfo.ICD10.ID; switch (diagNose.DiagOutState) { case "1": this.otherDiag21.Text = "√"; break; case "2": this.otherDiag22.Text = "√"; break; case "3": this.otherDiag23.Text = "√"; break; case "4": this.otherDiag24.Text = "√"; break; case "5": this.otherDiag25.Text = "√"; break; } break; case 3: this.otherDiagName3.Text = diagNose.DiagInfo.ICD10.Name; this.otherDiagCode3.Text = diagNose.DiagInfo.ICD10.ID; switch (diagNose.DiagOutState) { case "1": this.otherDiag31.Text = "√"; break; case "2": this.otherDiag32.Text = "√"; break; case "3": this.otherDiag33.Text = "√"; break; case "4": this.otherDiag34.Text = "√"; break; case "5": this.otherDiag35.Text = "√"; break; } break; case 4: this.otherDiagName4.Text = diagNose.DiagInfo.ICD10.Name; this.otherDiagCode4.Text = diagNose.DiagInfo.ICD10.ID; switch (diagNose.DiagOutState) { case "1": this.otherDiag41.Text = "√"; break; case "2": this.otherDiag42.Text = "√"; break; case "3": this.otherDiag43.Text = "√"; break; case "4": this.otherDiag44.Text = "√"; break; case "5": this.otherDiag45.Text = "√"; break; } break; case 5: this.otherDiagName5.Text = diagNose.DiagInfo.ICD10.Name; this.otherDiagCode5.Text = diagNose.DiagInfo.ICD10.ID; switch (diagNose.DiagOutState) { case "1": this.otherDiag51.Text = "√"; break; case "2": this.otherDiag52.Text = "√"; break; case "3": this.otherDiag53.Text = "√"; break; case "4": this.otherDiag54.Text = "√"; break; case "5": this.otherDiag55.Text = "√"; break; } break; case 6: this.otherDiagName6.Text = diagNose.DiagInfo.ICD10.Name; this.otherDiagCode6.Text = diagNose.DiagInfo.ICD10.ID; switch (diagNose.DiagOutState) { case "1": this.otherDiag61.Text = "√"; break; case "2": this.otherDiag62.Text = "√"; break; case "3": this.otherDiag63.Text = "√"; break; case "4": this.otherDiag64.Text = "√"; break; case "5": this.otherDiag65.Text = "√"; break; } break; case 7: this.otherDiagName7.Text = diagNose.DiagInfo.ICD10.Name; this.otherDiagCode7.Text = diagNose.DiagInfo.ICD10.ID; switch (diagNose.DiagOutState) { case "1": this.otherDiag71.Text = "√"; break; case "2": this.otherDiag72.Text = "√"; break; case "3": this.otherDiag73.Text = "√"; break; case "4": this.otherDiag74.Text = "√"; break; case "5": this.otherDiag75.Text = "√"; break; } break; } } } #endregion } //this.txtInfectionPosition.Text = myItem.InfectionPosition.Name;//感染部位名称 if (string.IsNullOrEmpty(myItem.FirstAnaphyPharmacy.Name))//药物过敏1 { myItem.FirstAnaphyPharmacy.Name = ""; } if (string.IsNullOrEmpty(myItem.SecondAnaphyPharmacy.Name))//药物过敏2 { myItem.SecondAnaphyPharmacy.Name = ""; } txtAnaphyFlag.Text = myItem.FirstAnaphyPharmacy.Name + " " + myItem.SecondAnaphyPharmacy.Name; if (string.IsNullOrEmpty(myItem.Hbsag)) { myItem.Hbsag = "00"; } if (string.IsNullOrEmpty(myItem.HcvAb)) { myItem.HcvAb = "00"; } if (string.IsNullOrEmpty(myItem.HivAb)) { myItem.HivAb = "00"; } if (string.IsNullOrEmpty(myItem.CePi)) { myItem.CePi = "00"; } if (string.IsNullOrEmpty(myItem.ClPa)) { myItem.ClPa = "00"; } if (string.IsNullOrEmpty(myItem.PiPo)) { myItem.PiPo = "00"; } if (string.IsNullOrEmpty(myItem.OpbOpa)) { myItem.OpbOpa = "00"; } if (string.IsNullOrEmpty(myItem.FsBl)) { myItem.FsBl = "00"; } this.HbsAg.Text = myItem.Hbsag.Substring(myItem.Hbsag.Length - 1); this.HCVAb.Text = myItem.HcvAb.Substring(myItem.Hbsag.Length - 1); this.HIVAb.Text = myItem.HivAb.Substring(myItem.Hbsag.Length - 1); this.txtCepi.Text = myItem.CePi.Substring(myItem.Hbsag.Length - 1); //门诊与出院 this.txtClPa.Text = myItem.ClPa.Substring(myItem.Hbsag.Length - 1); //临床_病理符合 this.txtPiPo.Text = myItem.PiPo.Substring(myItem.Hbsag.Length - 1); //入出_院符合 this.txtOpbOpa.Text = myItem.OpbOpa.Substring(myItem.Hbsag.Length - 1); //术前_后符合 this.txtFsBl.Text = myItem.FsBl.Substring(myItem.Hbsag.Length - 1); //放射_病理符合 this.txtSalvTimes.Text = myItem.SalvTimes.ToString(); //抢救次数 this.txtSuccTimes.Text = myItem.SuccTimes.ToString(); //成功次数 this.txtDeptChiefDonm.Text = myItem.PatientInfo.PVisit.ReferringDoctor.Name; //科主任 this.txtChiefDocName.Text = myItem.PatientInfo.PVisit.ConsultingDoctor.Name; //主任医师 this.txtChargeDocName.Text = myItem.PatientInfo.PVisit.AttendingDoctor.Name; //主治医师 this.RefresherDoc.Text = myItem.RefresherDoc.Name; //进修医生 this.txtGraDocName.Text = myItem.GraduateDoc.Name; //研究生实习医生 this.txtHouseDocName.Text = myItem.PatientInfo.PVisit.AdmittingDoctor.Name; //住院医师 this.txtPraDocCode.Text = myItem.PatientInfo.PVisit.TempDoctor.Name; //实习医师 this.txtCodingCode.Text = myItem.CodingOper.Name; //编码员 #endregion ////保存转科信息的列表 //ArrayList changeDept = new ArrayList(); ////获取转科信息 //changeDept = deptMger.QueryChangeDeptFromShiftApply(myItem.PatientInfo.ID, "2"); //LoadChangeDept(changeDept); //ArrayList alOrg = new ArrayList(); //Neusoft.HISFC.BizLogic.HealthRecord.Diagnose diag = new Neusoft.HISFC.BizLogic.HealthRecord.Diagnose(); //alOrg = diag.QueryCaseDiagnose(myItem.PatientInfo.ID, "%", Neusoft.HISFC.Models.HealthRecord.EnumServer.frmTypes.DOC); }