Ejemplo n.º 1
0
 /// <summary>
 /// 通过实体获取已存在的RecordWriteUpModel实体,设置当前显示的窗体
 /// </summary>
 public void UserControlDB(int index)
 {
     try
     {
         foreach (RecordWriteUpModel rc in listAll)
         {
             if (rc.Index == index)
             {
                 if (rc.MyControl == null)
                 {
                     MedicalRecordWriteUp medicalrecordbrowse = new MedicalRecordWriteUp(rc.Index, rc.Type, rc.MyDataTable);
                     rc.MyControl      = medicalrecordbrowse;
                     rc.MyControl.Dock = DockStyle.Fill;
                     tabControl.TabPages[rc.Index].Controls.Add(medicalrecordbrowse);
                     rc.MyControl.OnButtonClick += new MedicalRecordWriteUp.MyControlWriteupEventHandler(OnButtonClick);
                     RefreshInformation(rc.Index, rc.Count);
                 }
                 else
                 {
                     rc.MyControl.Dock = DockStyle.Fill;
                     tabControl.TabPages[index].Controls.Add(rc.MyControl);
                     rc.MyControl.OnButtonClick += new MedicalRecordWriteUp.MyControlWriteupEventHandler(OnButtonClick);
                     RefreshInformation(rc.Index, rc.Count);
                 }
                 break;
             }
         }
     }
     catch (Exception ex)
     {
     }
 }
Ejemplo n.º 2
0
 public RecordWriteUpModel(int indexs, int types, int counts, MedicalRecordWriteUp controls, DataTable tables)
 {
     indexField   = indexs;
     typeField    = types;
     countField   = counts;
     controlField = controls;
     tableField   = tables;
 }
Ejemplo n.º 3
0
        /// <summary>
        /// 显示病历信息方法
        /// </summary>
        private void ShowEmrMessage()
        {
            try
            {
                foreach (RecordWriteUpModel re in listAll)
                {
                    if (re.Index == this.tabControl.SelectedTabPageIndex)
                    {
                        MedicalRecordWriteUp mf = re.MyControl;
                        DevExpress.XtraGrid.Views.Grid.GridView dbGridView = mf.dbGridView;
                        if (dbGridView.RowCount > 0)
                        {
                            int[] list = dbGridView.GetSelectedRows();
                            if (list.Length > 0)
                            {
                                string status = dbGridView.GetRowCellValue(list[0], "STATUS").ToString();
                                //调用病历查看窗口,进行病历的查询
                                if (status.Equals("2"))
                                {
                                    string noofinpat = dbGridView.GetRowCellValue(list[0], "NOOFINPAT").ToString();
                                    //  LoadEmrContent(noofinpat);
                                    decimal syxh = decimal.Parse(noofinpat);
                                    if (syxh < 0)
                                    {
                                        return;
                                    }
                                    if (syxh < 0)
                                    {
                                        return;
                                    }

                                    if (HasBaby(noofinpat))
                                    {
                                        ChoosePatOrBaby choosepat = new ChoosePatOrBaby(SqlUtil.App, noofinpat);
                                        choosepat.StartPosition = FormStartPosition.CenterParent;
                                        if (choosepat.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                                        {
                                            SqlUtil.App.ChoosePatient(decimal.Parse(choosepat.NOOfINPAT));
                                            SqlUtil.App.LoadPlugIn("DrectSoft.Core.MainEmrPad.dll", DS_BaseService.GetUCEmrInputPath());
                                        }
                                    }
                                    else
                                    {
                                        SqlUtil.App.ChoosePatient(syxh);
                                        SqlUtil.App.LoadPlugIn("DrectSoft.Core.MainEmrPad.dll", DS_BaseService.GetUCEmrInputPath());
                                    }
                                }
                            }
                        }
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="flag"></param>
        private void OpenCommandDialog(int flag)
        {
            try
            {
                foreach (RecordWriteUpModel re in listAll)
                {
                    if (re.Index == this.tabControl.SelectedTabPageIndex)
                    {
                        MedicalRecordWriteUp mf = re.MyControl;
                        DevExpress.XtraGrid.Views.Grid.GridView dbGridView = mf.dbGridView;
                        if (dbGridView.RowCount > 0)
                        {
                            int refresh     = 0;
                            int tabIndex    = 0;
                            int StatusCount = 0;
                            if (flag < 0)
                            {
                                MedicalRecordApplyBack medicalRecordApply = new MedicalRecordApplyBack();
                                medicalRecordApply.ShowDialog();
                                refresh  = medicalRecordApply.m_iCommandFlag;
                                tabIndex = medicalRecordApply.m_iTabIndex;

                                //2是提交,0是草稿
                            }
                            else
                            {
                                InitializeApplyList(dbGridView);
                                if (this.m_listObject.Count > 0)
                                {
                                    WriteUpObject obj = (WriteUpObject)m_listObject[0];
                                    MedicalRecordApplyBackEditAndDelay medicalRecordApply = new MedicalRecordApplyBackEditAndDelay(obj, flag);
                                    medicalRecordApply.ShowDialog();
                                    refresh  = medicalRecordApply.m_iCommandFlag;
                                    tabIndex = medicalRecordApply.m_iTabIndex;
                                }
                            }
                            //刷新数据
                            if (refresh > 0)
                            {
                                if (tabIndex == 2)
                                {
                                    int[] list = dbGridView.GetSelectedRows();
                                    dbGridView.DeleteRow(list[0]);
                                    StatusCount++;
                                }

                                switch (flag)
                                {
                                case -1:    //申请
                                    foreach (RecordWriteUpModel rd in listAll)
                                    {
                                        if (rd.Index == 2)
                                        {
                                            if (rd.MyControl == null)
                                            {
                                                UserControlDB(rd.Index);
                                            }
                                            rd.MyControl.GetInitDB(true);
                                            rd.MyDataTable = rd.MyControl.User_Table;
                                            rd.Count       = rd.MyControl.User_Table.Rows.Count;
                                            RefreshInformation(rd.Index, rd.Count);
                                        }
                                    }
                                    break;

                                case 0:    //编辑
                                    foreach (RecordWriteUpModel rd in listAll)
                                    {
                                        if (rd.Index == 2)
                                        {
                                            if (rd.MyControl == null)
                                            {
                                                UserControlDB(rd.Index);
                                            }
                                            rd.MyControl.GetInitDB(true);
                                            rd.MyDataTable = rd.MyControl.User_Table;
                                            rd.Count       = rd.MyControl.User_Table.Rows.Count;
                                            RefreshInformation(rd.Index, rd.Count);
                                        }
                                    }
                                    break;

                                case 1:
                                    foreach (RecordWriteUpModel rd in listAll)
                                    {
                                        if (rd.Index == 0)
                                        {
                                            if (rd.MyControl == null)
                                            {
                                                UserControlDB(rd.Index);
                                            }
                                            rd.MyControl.GetInitDB(true);
                                            rd.MyDataTable = rd.MyControl.User_Table;
                                            rd.Count       = rd.MyControl.User_Table.Rows.Count;
                                            RefreshInformation(rd.Index, rd.Count);
                                        }
                                        else if (rd.Index == 3)
                                        {
                                            if (rd.MyControl == null)
                                            {
                                                UserControlDB(rd.Index);
                                            }
                                            rd.MyControl.GetInitDB(true);
                                            rd.MyDataTable = rd.MyControl.User_Table;
                                            rd.Count       = rd.MyControl.User_Table.Rows.Count;
                                            RefreshInformation(rd.Index, rd.Count);
                                        }
                                    }
                                    break;    //申请延期事件
                                }
                                re.MyControl.GetInitDB(true);
                                re.Count = re.Count - StatusCount;
                                re.MyControl.dbGridView = dbGridView;
                                RefreshInformation(re.Index, re.Count);
                                break;
                            }
                        }
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                MyMessageBox.Show(1, ex);
            }
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 初始化,自定义窗体,和TabControl项数据
        /// </summary>
        private void InitUserControl()
        {
            try
            {
                m_WaitDialog = new DevExpress.Utils.WaitDialogForm("正在查询数据...", "请稍等");
                int index = this.tabControl.SelectedTabPageIndex;
                if (listAll.Count == 0)
                {
                    int st = 0;
                    for (int i = 0; i < this.tabControl.TabPages.Count; i++)
                    {
                        switch (i)
                        {
                        case 0:
                            st = 0;
                            break;

                        case 1:
                            st = 2;
                            break;

                        case 2:
                            st = 1;
                            break;

                        case 3:
                            st = 3;
                            break;

                        case 4:
                            st = 5;
                            break;

                        case 5:
                            st = 4;
                            break;

                        default:
                            st = 0;
                            break;
                        }
                        DataTable table     = GetInitDB(i, st);
                        int       rowscount = table.Rows.Count;
                        RefreshInformation(i, rowscount);
                        if (i == index)
                        {
                            MedicalRecordWriteUp medicalrecordbrowse = new MedicalRecordWriteUp(i, st, table);
                            medicalrecordbrowse.Dock = DockStyle.Fill;
                            listAll.Add(new RecordWriteUpModel(i, st, rowscount, medicalrecordbrowse, table));
                            tabControl.TabPages[i].Controls.Add(medicalrecordbrowse);
                            medicalrecordbrowse.OnButtonClick += new MedicalRecordWriteUp.MyControlWriteupEventHandler(OnButtonClick);
                        }
                        else
                        {
                            listAll.Add(new RecordWriteUpModel(i, st, rowscount, null, table));
                        }
                    }
                }
                else
                {
                    UserControlDB(index);
                }
                m_WaitDialog.Close();
            }
            catch (Exception ex)
            {
                m_WaitDialog.Close();
                MyMessageBox.Show(1, ex);
            }
        }