PrescriptionForm.cs 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. using Newtonsoft.Json.Linq;
  2. using PTMedicalInsurance.Business;
  3. using PTMedicalInsurance.FormSetter;
  4. using PTMedicalInsurance.Helper;
  5. using PTMedicalInsurance.Variables;
  6. using System;
  7. using System.Collections.Generic;
  8. using System.ComponentModel;
  9. using System.Data;
  10. using System.Drawing;
  11. using System.Linq;
  12. using System.Text;
  13. using System.Threading.Tasks;
  14. using System.Windows.Forms;
  15. namespace PTMedicalInsurance.Forms
  16. {
  17. public partial class PrescriptionForm : Form
  18. {
  19. private GridViewSetter grdSetter = new GridViewSetter();
  20. HisMainBusiness hBus = new HisMainBusiness();
  21. public PrescriptionForm()
  22. {
  23. InitializeComponent();
  24. grdSetter.SetHeaderTextOfHistoryAdmInfo(dgvAdm);
  25. grdSetter.SetHeaderTextOfHistoryPrescription(dgvHistory);
  26. }
  27. private void PrescriptionForm_Load(object sender, EventArgs e)
  28. {
  29. this.txtName.Text = Global.pat.name;
  30. this.txtNo.Text = Global.pat.certNO;
  31. this.loadAdmInfo();
  32. }
  33. private void loadAdmInfo()
  34. {
  35. string sqlStr = "select a.MdtrtID,a.PatientName,a.CertificateNO as PsnCertNO,a.Gender as Gend,b.AttendDoctorNO,a.SettlementDate,b.RegDate,b.ChiefPhyDocName,a.Adm_Dr,a.Age,'' as PsnType, '' as EmpName,'' as AdmInDepName,'' as AdmBed,'' as MainDiagName,'' as OpertName,'' as insuplcAdmdvs,'' as sZTSM FROM BS_MedInsuSettlement a inner join BS_MedInsuRegisterInfo b on a.MdtrtID=b.insuRegID WHERE a.Hospital_Dr=" + Global.inf.hospitalDr+" and b.ChiefPhyDocName ='"+Global.user.name+"' and b.RegDate>='"+DateTime.Now.ToString("yyyy-MM-dd")+"'";
  36. JObject joSqlstr = new JObject();
  37. joSqlstr.Add("sqlStr", sqlStr);
  38. joSqlstr.Add("Type", "MedInsuHosPInfo");
  39. JArray jaParam = new JArray();
  40. jaParam.Add(joSqlstr);
  41. JObject joSettlQuery = new JObject();
  42. joSettlQuery.Add("params", jaParam);
  43. joSettlQuery.Add("code", "09010059");
  44. InvokeHelper invoker = new InvokeHelper();
  45. JObject joRtn = invoker.invokeInsuService(joSettlQuery.ToString(), "查询结算信息");
  46. JArray ja = JArray.Parse(JsonHelper.getDestValue(joRtn, "result.data"));
  47. if (ja?.Count > 0) {
  48. DataTable dt = ja.ToObject<DataTable>();
  49. dgvAdm.DataSource = dt;
  50. }
  51. }
  52. public void initList(JArray joData)
  53. {
  54. DataTable dtData = (DataTable)joData.ToObject(typeof(DataTable));
  55. dgvHistory.DataSource = dtData;
  56. }
  57. private void btnQuery_Click(object sender, EventArgs e)
  58. {
  59. if (dgvAdm.SelectedIndex < 0) {
  60. MessageBox.Show("请先选择就诊信息");
  61. return;
  62. }
  63. DataGridViewCellCollection dgvc = dgvAdm.Rows[dgvAdm.SelectedIndex].Cells;
  64. if (dgvc == null || dgvc.Count<1) {
  65. return;
  66. }
  67. JArray list = hBus.QueryPatientPrescription(
  68. dgvc["PatientName"].Value.ToString(),
  69. dgvc["PsnCertNO"].Value.ToString(),
  70. dgvc["AttendDoctorNO"].Value.ToString(),
  71. dgvc["MdtrtID"].Value.ToString());
  72. if (list?.Count > 0)
  73. {
  74. initList(list);
  75. }
  76. else {
  77. MessageBox.Show("没有查询到任何记录!");
  78. }
  79. }
  80. private void dgvAdm_SelectIndexChange(object sender, int index)
  81. {
  82. if (index < 0)
  83. {
  84. return;
  85. }
  86. if (dgvAdm.SelectedRows?.Count < 1)
  87. {
  88. return;
  89. }
  90. DataGridViewCellCollection dgvc = dgvAdm.SelectedRows[0].Cells;
  91. txtName.Text = dgvc["PatientName"].Value.ToString();
  92. txtNo.Text = dgvc["PsnCertNO"].Value.ToString();
  93. txtDoctorNo.Text = dgvc["AttendDoctorNO"].Value.ToString();
  94. txtAdmID.Text = dgvc["MdtrtID"].Value.ToString();
  95. }
  96. }
  97. }