/// <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) { } }
public RecordWriteUpModel(int indexs, int types, int counts, MedicalRecordWriteUp controls, DataTable tables) { indexField = indexs; typeField = types; countField = counts; controlField = controls; tableField = tables; }
/// <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; } }
/// <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); } }
/// <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); } }