AdmissionRegistration.cs 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. using PTMedicalInsurance.Variables;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.ComponentModel;
  5. using System.Data;
  6. using System.Drawing;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. using System.Windows.Forms;
  11. namespace PTMedicalInsurance.Business.Core.Forms.DischargeAudit
  12. {
  13. public partial class AdmissionRegistration : Form
  14. {
  15. private Form mainForm;
  16. private string err;
  17. private GridViewSetter grdSetter = new GridViewSetter();
  18. // 定义一个公共事件
  19. public event EventHandler SaveClicked;
  20. public DataTable DtDisease { get; set; }
  21. public DataTable DtDiseaseType { get; set; }
  22. public DataTable DtInsuranceType { get; set; }
  23. public DataTable DtMedicalType { get; set; }
  24. public DataTable DtOperation { get; set; }
  25. public DataTable DtSettlementWay { get; set; }
  26. //险种
  27. public string insuType { get; set; }
  28. public string insuTypeName { get; set; }
  29. //医疗类别
  30. public string med_type { get; set; }
  31. public string med_type_name { get; set; }
  32. //诊断
  33. public string diseCodg { get; set; }
  34. public string diseName { get; set; }
  35. //手术
  36. public string oprn_oprt_code { get; set; }
  37. public string oprn_oprt_name { get; set; }
  38. //病种
  39. public string dise_type_code { get; set; }
  40. public string dise_type_name { get; set; }
  41. //结算方式
  42. public string psn_setlway { get; set; }
  43. public string psn_setlway_name { get; set; }
  44. //提示
  45. public string HintText
  46. {
  47. get { return lbHint.Text; }
  48. set
  49. {
  50. if (lbHint.InvokeRequired)
  51. {
  52. lbHint.Invoke(new Action(() => lbHint.Text = value));
  53. }
  54. else
  55. {
  56. lbHint.Text = value;
  57. }
  58. }
  59. }
  60. private bool isHintVisible;
  61. public bool IsHintVisible
  62. {
  63. get { return isHintVisible; }
  64. set
  65. {
  66. if (isHintVisible != value)
  67. {
  68. isHintVisible = value;
  69. if (lbHint.InvokeRequired)
  70. {
  71. lbHint.Invoke(new Action(() =>
  72. {
  73. lbHint.Visible = isHintVisible;
  74. }));
  75. }
  76. else
  77. {
  78. lbHint.Visible = isHintVisible;
  79. }
  80. }
  81. }
  82. }
  83. private DataTable dtDiagnose;
  84. public DataTable DtDiagnose
  85. {
  86. get { return dtDiagnose; }
  87. set
  88. {
  89. dtDiagnose = value;
  90. dgvDiagnose.DataSource = dtDiagnose;
  91. }
  92. }
  93. public string personAccountUsedFlag = "-1";
  94. public string halfwaySettlementFlag = "-1";
  95. public AdmissionRegistration()
  96. {
  97. InitializeComponent();
  98. }
  99. public AdmissionRegistration(Form frm)
  100. {
  101. InitializeComponent();
  102. InitForm(frm);
  103. //InitComboxDatasource();
  104. }
  105. public void InitComboxDatasource()
  106. {
  107. grdSetter.SetDBLKCombox(ref dblkcbxDisease, DtDisease);
  108. grdSetter.SetDBLKCombox(ref dblkcbxDiseaseType, DtDiseaseType);
  109. grdSetter.SetDBLKCombox(ref dblkcbxInsuranceType, DtInsuranceType);
  110. grdSetter.SetDBLKCombox(ref dblkcbxMedicalType, DtMedicalType);
  111. grdSetter.SetDBLKCombox(ref dblkcbxOperation, DtOperation);
  112. //grdSetter.SetDBLKCombox(ref dblkcbxSettelmentWay, DtSettlementWay);
  113. }
  114. private void InitForm(Form frm)
  115. {
  116. mainForm = frm;
  117. CheckForIllegalCrossThreadCalls = false;
  118. // 禁用关闭按钮
  119. this.FormBorderStyle = FormBorderStyle.None;
  120. // 隐藏标题栏
  121. this.ControlBox = false;
  122. // 其他可能需要的配置
  123. if (mainForm != this)
  124. {
  125. this.TopLevel = false;
  126. this.Dock = DockStyle.Fill; // 根据需要设置 Dock 属性
  127. }
  128. else
  129. {
  130. this.WindowState = FormWindowState.Maximized;
  131. }
  132. }
  133. private void dblkcbxInsuranceType_AfterSelector(object sender, PTControl.AfterSelectorEventArgs e)
  134. {
  135. DataGridViewRow row = e.Value as DataGridViewRow;
  136. DataRowView dataRow = row.DataBoundItem as DataRowView;
  137. insuType = dataRow["Code"].ToString().Trim();
  138. insuTypeName = dataRow["Name"].ToString().Trim();
  139. }
  140. private void dblkcbxMedicalType_AfterSelector(object sender, PTControl.AfterSelectorEventArgs e)
  141. {
  142. DataGridViewRow row = e.Value as DataGridViewRow;
  143. DataRowView dataRow = row.DataBoundItem as DataRowView;
  144. med_type = dataRow["Code"].ToString().Trim();
  145. med_type_name = dataRow["Name"].ToString().Trim();
  146. Global.pat.medType = med_type;
  147. }
  148. private void dblkcbxDisease_AfterSelector(object sender, PTControl.AfterSelectorEventArgs e)
  149. {
  150. DataGridViewRow row = e.Value as DataGridViewRow;
  151. DataRowView dataRow = row.DataBoundItem as DataRowView;
  152. diseCodg = dataRow["Code"].ToString().Trim();
  153. diseName = dataRow["Name"].ToString().Trim();
  154. }
  155. private void dblkcbxOperation_AfterSelector(object sender, PTControl.AfterSelectorEventArgs e)
  156. {
  157. DataGridViewRow row = e.Value as DataGridViewRow;
  158. DataRowView dataRow = row.DataBoundItem as DataRowView;
  159. oprn_oprt_code = dataRow["Code"].ToString().Trim();
  160. oprn_oprt_name = dataRow["Name"].ToString().Trim();
  161. }
  162. private void dblkcbxSettelmentWay_AfterSelector(object sender, PTControl.AfterSelectorEventArgs e)
  163. {
  164. DataGridViewRow row = e.Value as DataGridViewRow;
  165. DataRowView dataRow = row.DataBoundItem as DataRowView;
  166. psn_setlway = dataRow["Code"].ToString().Trim();
  167. psn_setlway_name = dataRow["Name"].ToString().Trim();
  168. }
  169. private void dblkcbxDiseaseType_AfterSelector(object sender, PTControl.AfterSelectorEventArgs e)
  170. {
  171. DataGridViewRow row = e.Value as DataGridViewRow;
  172. DataRowView dataRow = row.DataBoundItem as DataRowView;
  173. dise_type_code = dataRow["Code"].ToString().Trim();
  174. dise_type_name = dataRow["Name"].ToString().Trim();
  175. }
  176. private void btSave_Click(object sender, EventArgs e)
  177. {
  178. SaveClicked?.Invoke(this, e);
  179. }
  180. }
  181. }