示例#1
0
        //获得病人信息
        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);
        }
示例#2
0
        /// <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());
            }
        }
示例#3
0
        //获得病人信息
        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);
            }
        }