//获得病人信息 private void GetBrxx(string mzh, int klx, string kh, string fph, string brxm) { Dqcf.brxxid = Guid.Empty; Dqcf.ghxxid = Guid.Empty; txtmzh.Text = ""; lblxm.Text = ""; txtkh.Text = ""; lblgzdw.Text = ""; lbllxdh.Text = ""; lblbrlx.Text = ""; lblmzh.Text = ""; lblkh.Text = ""; lblklx.Text = ""; lblklx.Tag = "0"; lblzd.Text = ""; if (klx == 0 && kh.Trim() != "") { MessageBox.Show("请选择卡类型", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } if (klx != 0 && kh.Trim() == "" && mzh.Trim() == "" && (fph.Trim() == "" || fph == "0") && brxm == "") { return; //Add By Zj 2012-08-01 如果不加病人姓名为空的判断 就会造成 在这个判断直接Return的情况 } if (mzh.Trim() == "" && kh.Trim() == "" && fph.Trim() == "" && brxm.Trim() == "") { return; } Tab = null; DataTable tbmx = (DataTable)dataGridView1.DataSource; tbmx = null; //挂号有效天数 //if (Convertor.IsNumeric(ConfigGhts.Config)==false){MessageBox.Show("参数3001的值必须是数值型");return;} string _mzh = Fun.returnMzh(mzh, InstanceForm.BDatabase); string _kh = kh.Trim() == "" ? "" : Fun.returnKh(klx, kh, InstanceForm.BDatabase); if (kh.Trim() != "") { string ssq = "select * from YY_KDJB where klx=" + klx + " and kh='" + _kh.Trim() + "' and ZFBZ=0 "; DataTable tbk = InstanceForm.BDatabase.GetDataTable(ssq); if (tbk.Rows.Count == 0) { MessageBox.Show("没有找到卡信息,请确认卡号是否正确或卡没有作废"); return; } if (tbk.Rows.Count > 1) { MessageBox.Show("找到多张同时有效的卡,请和系统管理员联系"); return; } //if (Convert.ToInt16(tbk.Rows[0]["sdbz"]) == 1) //{ // MessageBox.Show("这张卡已被锁定,不能消费.请先激活","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning); // return; //} lblxm.Text = tbk.Rows[0]["ckrxm"].ToString(); Dqcf.brxxid = new Guid(tbk.Rows[0]["brxxid"].ToString()); } string tabghxx = " mz_ghxx"; if (rdols.Checked == true) { tabghxx = " mz_ghxx_h "; } string ssql = "select * from ( select (case when bqxghbz=1 then '已销号' else '' end) 状态,(select name from jc_brlx where code=brlx) 病人类型,blh 门诊号,brxm 姓名,dbo.FUN_ZY_SEEKSEXNAME(xb) 性别,dbo.fun_zy_age(csrq,3,getdate()) 年龄,dbo.fun_getdeptname(ghks) 挂号科室,ghks,dbo.fun_getempname(ghys) 挂号医生 ,ghys,(select top 1 type_name from jc_doctor_type where type_id=ghjb) 挂号级别,ghsj 挂号时间,zdmc 诊断,dbo.fun_getempname(jzys) 接诊医生,jzys ,dbo.fun_getdeptname(jzks) 接诊科室,jzks,jzsj 接诊时间,ghxxid,a.brxxid,gzdw 工作单位,gzdwdh 联系电话,jtdz 家庭地址,jtdh 家庭电话,brlxfs 本人联系方式,(select klxmc from JC_KLX where klx=c.klx) 卡类型,c.KLX,c.KH 卡号,c.kdjid,a.pym,a.wbm from YY_BRXX a inner join " + tabghxx + " b on a.brxxid=b.brxxid left join YY_KDJB c on b.kdjid=c.kdjid and zfbz=0 "; ssql = ssql + ") a where a.brxxid is not null "; if (kh.Trim() != "") { ssql = ssql + " and kdjid in(select kdjid from YY_KDJB where klx=" + klx + " and kh='" + _kh.Trim() + "' and ZFBZ=0 ) "; } if (brxm.Trim() != "") { ssql = ssql + " and (姓名 like '%" + brxm + "%' or a.pym='" + brxm + "' or a.wbm='" + brxm + "') "; } if (mzh.Trim() != "" && kh.Trim() == "") { ssql = ssql + " and 门诊号='" + _mzh + "' "; } if (fph != "" && fph != "0") { string table_fp = "mz_fpb"; //if (rdols.Checked == true) Modify By ZJ 2012-08-13 在后面替换 //table_fp = "mz_fpb"; ssql = ssql + " and ghxxid in(select ghxxid from " + table_fp + " where fph= '" + fph + "' ) "; } //begin add by wangzhi 2010-09-17 11:36am if (dtpBegin.Checked) { ssql += " and a.挂号时间>='" + dtpBegin.Value.ToString("yyyy-MM-dd ") + " 00:00:00' "; } if (dtpEnd.Checked) { ssql += " and a.挂号时间<='" + dtpEnd.Value.ToString("yyyy-MM-dd ") + " 23:59:59' "; } //end add ssql = ssql + " order by 挂号时间 desc"; DataTable tb = TrasenFrame.Forms.FrmMdiMain.Database.GetDataTable(ssql); if (tb.Rows.Count == 0 && Dqcf.brxxid != Guid.Empty) { MessageBox.Show("没有找到病人看病记录,请确认就诊时间是否设置正确", "确认", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (tb.Rows.Count == 0) { string sssql = ssql.Replace("mz_fpb", "mz_fpb_h");//Add By Zj 2012-08-13 tb = TrasenFrame.Forms.FrmMdiMain.Database.GetDataTable(sssql); if (tb.Rows.Count == 0) { MessageBox.Show("没有找到病人信息", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); txtmzh.Focus(); return; } } if (tb.Rows.Count == 0) { return; } DataRow row = null; if (tb.Rows.Count > 0) { row = tb.Rows[0]; } string _brxm = brxm == "" ? "" : brxm; string _fph = fph == "" ? "" : fph; if (tb.Rows.Count > 1) { if (chkSelectGHJL.Checked) { //如果有多次就诊记录并且要弹出选择框 Frmghjl f = new Frmghjl(_menuTag, _chineseName, _mdiParent); tb.TableName = "tb"; f.dataGridView1.DataSource = tb; f.ShowDialog(); if (f.Bok == false) { return; } row = f.ReturnRow; txtmzh.Enabled = true; ShowPatientInfo(row); Dqcf.brxxid = new Guid(row["brxxid"].ToString()); Dqcf.ghxxid = new Guid(row["ghxxid"].ToString()); Tab = SelectCf("", Dqcf.ghxxid, _fph, Guid.Empty); } else { ShowPatientInfo(tb.Rows[0]); lblmzh.Text = ""; txtmzh.Text = ""; txtmzh.Enabled = false; lblzd.Text = ""; Tab = null; for (int i = 0; i < tb.Rows.Count; i++) { DataTable tbTemp = SelectCf("", new Guid(tb.Rows[i]["ghxxid"].ToString()), _fph, Guid.Empty); if (Tab == null) { Tab = tbTemp.Copy(); } else { Tab.Merge(tbTemp); } } } } else { row = tb.Rows[0]; ShowPatientInfo(row); txtmzh.Enabled = true; ShowPatientInfo(row); Dqcf.brxxid = new Guid(row["brxxid"].ToString()); Dqcf.ghxxid = new Guid(row["ghxxid"].ToString()); Tab = SelectCf("", Dqcf.ghxxid, _fph, Guid.Empty); } AddPresc(Tab); }
/// <summary> /// 获取病人信息 /// </summary> /// <param name="mzh"></param> /// <param name="klx"></param> /// <param name="kh"></param> /// <param name="fph"></param> /// <param name="brxm"></param> private void GetBrxx(string mzh, int klx, string kh, string fph, string brxm) { if (klx == 0 && kh.Trim() != "") { MessageBox.Show("请选择卡类型", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } if (klx != 0 && kh.Trim() == "" && mzh.Trim() == "" && (fph.Trim() == "" || fph == "0") && brxm == "") { return; //Add By Zj 2012-08-01 如果不加病人姓名为空的判断 就会造成 在这个判断直接Return的情况 } if (mzh.Trim() == "" && kh.Trim() == "" && fph.Trim() == "" && brxm.Trim() == "") { return; } string _mzh = Fun.returnMzh(mzh, InstanceForm.BDatabase); string _kh = kh.Trim() == "" ? "" : Fun.returnKh(klx, kh, InstanceForm.BDatabase); if (kh.Trim() != "") { string ssq = "select * from YY_KDJB where klx=" + klx + " and kh='" + _kh.Trim() + "' and ZFBZ=0 "; DataTable tbk = InstanceForm.BDatabase.GetDataTable(ssq); if (tbk.Rows.Count == 0) { MessageBox.Show("没有找到卡信息,请确认卡号是否正确或卡没有作废"); return; } if (tbk.Rows.Count > 1) { MessageBox.Show("找到多张同时有效的卡,请和系统管理员联系"); return; } } string tabghxx = " mz_ghxx"; string ssql = "select * from ( select (case when bqxghbz=1 then '已销号' else '' end) 状态,(select name from jc_brlx where code=brlx) 病人类型,blh 门诊号,brxm 姓名,dbo.FUN_ZY_SEEKSEXNAME(xb) 性别,dbo.fun_zy_age(csrq,3,getdate()) 年龄,dbo.fun_getdeptname(ghks) 挂号科室,ghks,dbo.fun_getempname(ghys) 挂号医生 ,ghys,(select top 1 type_name from jc_doctor_type where type_id=ghjb) 挂号级别,ghsj 挂号时间,zdmc 诊断,dbo.fun_getempname(jzys) 接诊医生,jzys ,dbo.fun_getdeptname(jzks) 接诊科室,jzks,jzsj 接诊时间,ghxxid,a.brxxid,gzdw 工作单位,gzdwdh 联系电话,jtdz 家庭地址,jtdh 家庭电话,brlxfs 本人联系方式,(select klxmc from JC_KLX where klx=c.klx) 卡类型,c.KLX,c.KH 卡号,c.kdjid,a.pym,a.wbm from YY_BRXX a inner join " + tabghxx + " b on a.brxxid=b.brxxid left join YY_KDJB c on b.kdjid=c.kdjid and zfbz=0 "; ssql = ssql + ") a where a.brxxid is not null "; if (kh.Trim() != "") { ssql = ssql + " and kdjid in(select kdjid from YY_KDJB where klx=" + klx + " and kh='" + _kh.Trim() + "' and ZFBZ=0 ) "; } if (brxm.Trim() != "") { ssql = ssql + " and (姓名 like '%" + brxm + "%' or a.pym='" + brxm + "' or a.wbm='" + brxm + "') "; } if (mzh.Trim() != "" && kh.Trim() == "") { ssql = ssql + " and 门诊号='" + _mzh + "' "; } if (fph != "" && fph != "0") { string table_fp = "mz_fpb"; ssql = ssql + " and ghxxid in(select ghxxid from " + table_fp + " where fph= '" + fph + "' ) "; } ssql = ssql + " order by 挂号时间 desc"; DataTable tb = TrasenFrame.Forms.FrmMdiMain.Database.GetDataTable(ssql); if (tb.Rows.Count == 0) { MessageBox.Show("没有找到病人看病记录,请确认就诊时间是否设置正确", "确认", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (tb.Rows.Count == 0) { string sssql = ssql.Replace("mz_fpb", "mz_fpb_h");//Add By Zj 2012-08-13 tb = TrasenFrame.Forms.FrmMdiMain.Database.GetDataTable(sssql); if (tb.Rows.Count == 0) { MessageBox.Show("没有找到病人信息", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); txtmzh.Focus(); return; } } if (tb.Rows.Count == 0) { return; } DataRow row = null; if (tb.Rows.Count > 0) { row = tb.Rows[0]; } string _brxm = brxm == "" ? "" : brxm; string _fph = fph == "" ? "" : fph; ts_mz_class.MZ_TF_Record _TfApply = new MZ_TF_Record(); if (tb.Rows.Count > 1) { //如果有多次就诊记录并且要弹出选择框 Frmghjl f = new Frmghjl(_menuTag, _chineseName, _mdiParent); tb.TableName = "tb"; f.dataGridView1.DataSource = tb; f.ShowDialog(); if (f.Bok == false) { return; } row = f.ReturnRow; txtmzh.Enabled = true; ShowPatientInfo(row); brxxid = new Guid(row["brxxid"].ToString()); ghxxid = new Guid(row["ghxxid"].ToString()); } else { row = tb.Rows[0]; ShowPatientInfo(row); txtmzh.Enabled = true; ShowPatientInfo(row); brxxid = new Guid(row["brxxid"].ToString()); ghxxid = new Guid(row["ghxxid"].ToString()); } }
//获得病人信息 private void GetBrxx(string mzh, int klx, string kh, string fph, string brxm) { try { Dqcf.brxxid = Guid.Empty; Dqcf.ghxxid = Guid.Empty; txtmzh.Text = ""; txtxm.Text = ""; lblnl.Text = ""; lblxb.Text = ""; txtkh.Text = ""; lblgzdw.Text = ""; lbllxfs.Text = ""; lblcfhj.Text = ""; lblyblx.Text = ""; lbldylx.Text = ""; lblbz.Text = ""; if (klx == 0 && kh.Trim() != "") { MessageBox.Show("请选择卡类型", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } if (klx != 0 && kh.Trim() == "" && mzh.Trim() == "" && fph.Trim() == "") { return; } DataTable Tab = null; if (mzh.Trim() == "" && kh.Trim() == "" && fph.Trim() == "" && brxm.Trim() == "") { return; } DataTable tbmx = (DataTable)dataGridView1.DataSource; tbmx = null; //挂号有效天数 //if (Convertor.IsNumeric(ConfigGhts.Config)==false){MessageBox.Show("参数3001的值必须是数值型");return;} string _mzh = Fun.returnMzh(mzh, InstanceForm.BDatabase); string _kh = kh.Trim() == "" ? "" : Fun.returnKh(klx, kh, InstanceForm.BDatabase); if (kh.Trim() != "") { string ssq = "select * from YY_KDJB where klx=" + klx + " and kh='" + _kh.Trim() + "' and ZFBZ=0 "; DataTable tbk = InstanceForm.BDatabase.GetDataTable(ssq); if (tbk.Rows.Count == 0) { MessageBox.Show("没有找到卡信息,请确认卡号是否正确或卡没有作废"); return; } if (tbk.Rows.Count > 1) { MessageBox.Show("找到多张同时有效的卡,请和系统管理员联系"); return; } if (Convert.ToInt16(tbk.Rows[0]["sdbz"]) == 1) { MessageBox.Show("这张卡已被锁定,不能消费.请先激活", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } txtxm.Text = tbk.Rows[0]["ckrxm"].ToString(); Dqcf.brxxid = new Guid(tbk.Rows[0]["brxxid"].ToString()); } string ssql = @"select * from ( select (select name from jc_brlx where code=brlx) 病人类型,blh 门诊号,brxm 姓名, dbo.FUN_ZY_SEEKSEXNAME(xb) 性别,dbo.fun_zy_age(csrq,3,getdate()) 年龄,dbo.fun_getdeptname(ghks) 挂号科室,ghks, dbo.fun_getempname(ghys) 挂号医生 ,ghys,(select top 1 type_name from jc_doctor_type where type_id=ghjb) 挂号级别, ghsj 挂号时间,zdmc 诊断,dbo.fun_getempname(jzys) 接诊医生,jzys ,dbo.fun_getdeptname(jzks) 接诊科室,jzks,jzsj 接诊时间, ghxxid,a.brxxid,gzdw 工作单位,gzdwdh 联系电话,jtdz 家庭地址,jtdh 家庭电话,brlxfs 本人联系方式, (select klxmc from JC_KLX where klx=c.klx) 卡类型,c.KLX,c.KH 卡号,c.kdjid,a.pym,a.wbm , dbo.fun_getYblxmc(a.yblx) as yblx, sfzh ,yb.cblx,yb.yllb from YY_BRXX a inner join mz_ghxx b on a.brxxid=b.brxxid left join YY_KDJB c on b.kdjid=c.kdjid and zfbz=0 and bqxghbz=0 left join ( select brxxid,cblx,'' as yllb from MZ_YBJSB_CZTLYB union all select brxxid,cblx,yllb from MZ_YBJSB_HNSYB union all select brxxid,cblx,yllb from MZ_YBJSB_SYB union all select brxxid,cblx,yllb from MZ_YBJSB_CXYB ) yb on a.brxxid = yb.brxxid " ; ssql = ssql + ") a where a.brxxid is not null "; if (kh.Trim() != "") { ssql = ssql + " and kdjid in(select kdjid from YY_KDJB where klx=" + klx + " and kh='" + _kh.Trim() + "' and ZFBZ=0 ) "; } if (brxm.Trim() != "") { ssql = ssql + " and (姓名 like '%" + brxm + "%' or a.pym='" + brxm + "' or a.wbm='" + brxm + "') "; } if (mzh.Trim() != "" && kh.Trim() == "") { ssql = ssql + " and 门诊号='" + _mzh + "' "; } if (fph != "") { string table_fp = "mz_fpb"; // if (rdols.Checked == true) table_fp = "mz_fpb_h"; ssql = ssql + " and ghxxid in(select ghxxid from " + table_fp + " where fph= '" + fph + "' ) "; } ssql = ssql + " order by 挂号时间 desc"; DataTable tb = InstanceForm.BDatabase.GetDataTable(ssql); if (tb.Rows.Count == 0 && Dqcf.brxxid != Guid.Empty) { MessageBox.Show("没有找到病人看病记录", "确认", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (tb.Rows.Count == 0 && mzh.Trim() != "") { MessageBox.Show("没有找到病人信息", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); txtmzh.Focus(); return; } DataRow row = null; if (tb.Rows.Count == 1) { row = tb.Rows[0]; } if (tb.Rows.Count > 1) { Frmghjl f = new Frmghjl(_menuTag, _chineseName, _mdiParent); tb.TableName = "tb"; f.dataGridView1.DataSource = tb; f.ShowDialog(); if (f.Bok == false) { return; } row = f.ReturnRow; } if (tb.Rows.Count == 0) { return; } txtmzh.Text = row["门诊号"].ToString(); // lblmzh.Text = row["门诊号"].ToString(); txtxm.Text = row["姓名"].ToString(); txtkh.Text = row["卡号"].ToString(); //lblkh.Text = row["卡号"].ToString(); //lblklx.Text = row["卡类型"].ToString(); //lblklx.Tag = row["klx"].ToString(); if (Convertor.IsNull(row["klx"], "0") != "0") { cmbklx.SelectedValue = row["klx"].ToString(); } lblxb.Text = row["性别"].ToString(); lblnl.Text = row["年龄"].ToString(); lblyblx.Text = row["yblx"].ToString(); lbldylx.Text = row["yllb"].ToString(); txtsfzh.Text = row["sfzh"].ToString(); lblcblx.Text = row["cblx"].ToString(); lblgzdw.Text = row["工作单位"].ToString(); if (lblgzdw.Text.Trim() == "") { lblgzdw.Text = row["家庭地址"].ToString(); } lbllxfs.Text = row["联系电话"].ToString(); if (lbllxfs.Text.Trim() == "") { lbllxfs.Text = row["家庭电话"].ToString(); } if (lbllxfs.Text.Trim() == "") { lbllxfs.Text = row["本人联系方式"].ToString(); } //lblbrlx.Text = row["病人类型"].ToString(); lblzdmc.Text = Convertor.IsNull(row["诊断"], ""); Dqcf.brxxid = new Guid(row["brxxid"].ToString()); Dqcf.ghxxid = new Guid(row["ghxxid"].ToString()); string _brxm = brxm == "" ? "" : brxm; string _fph = fph == "" ? "" : fph; Tab = GetPresc(Dqcf.brxxid, Dqcf.ghxxid, "", _menuTag.Jgbm); AddPresc(Tab); } catch (Exception ex) { MessageBox.Show(ex.Message); } }