Browse Source

feat: 增加DRG报表打印

zhengjie 1 year ago
parent
commit
56c8aeab41

+ 9 - 0
Business/Other/SettleBillPrintProcess.cs

@@ -43,5 +43,14 @@ namespace PTMedicalInsurance.Business
 
             return IrisReturn("", null);
         }
+
+
+        public CallResult PrintByInsu(JObject joInParam)
+        {
+            SettlementChecklist frmSettlList = new SettlementChecklist();
+            frmSettlList.ShowDrgPrint();
+            frmSettlList.ShowDialog();
+            return IrisReturn("成功", null);
+        }
     }
 }

+ 92 - 1
Forms/SettlementChecklist.cs

@@ -16,6 +16,9 @@ using FastReport;
 using Newtonsoft.Json;
 using System.Threading;
 using PTMedicalInsurance.Business;
+using Spire.Pdf;
+using System.IO;
+using Spire.Pdf.Print;
 
 namespace PTMedicalInsurance.Forms
 {
@@ -30,6 +33,7 @@ namespace PTMedicalInsurance.Forms
         private string hospitalAreaCode;
 
         private bool disposed = false;
+        private bool showDrgPrint = false;
 
         Thread thread_test;
 
@@ -171,7 +175,10 @@ namespace PTMedicalInsurance.Forms
             dgvSettlRecord.DataSource = dt;
         }
 
-
+        public void ShowDrgPrint()
+        {
+            showDrgPrint = true;
+        }
 
         private void SettlementChecklist_Load(object sender, EventArgs e)
         {
@@ -189,6 +196,13 @@ namespace PTMedicalInsurance.Forms
 
             cbxInterface.SelectedValueChanged += new EventHandler(cbxInterface_SelectedValueChanged);
 
+            btnDrgPrint.Visible = false;
+            if(showDrgPrint)
+            {
+                btnPrint.Visible = false;
+                btnDrgPrint.Visible = true;
+            }
+
         }
 
         private void cbxInterface_SelectedValueChanged(object sender, EventArgs e)
@@ -638,6 +652,83 @@ namespace PTMedicalInsurance.Forms
       
             Dispose();
         }
+
+        private void btnDrgPrint_Click(object sender, EventArgs e)
+        {
+            if (dgvSettlRecord.RowCount <= 0)
+            {
+                MessageBox.Show("请先查询结算数据!");
+                return;
+            }
+
+            try
+            {
+                int i = dgvSettlRecord.CurrentRow.Index;
+                DataTable dt = (DataTable)dgvSettlRecord.DataSource;
+                string psnNo = dt.Rows[i]["PersonnelNO"].ToString();
+                string SettlementID = dt.Rows[i]["SettlementID"].ToString();
+                JObject joRtn = GetDRGReport(psnNo, SettlementID);
+                if (JsonHelper.parseCenterRtnValue(joRtn, out string errMsg) != 0)
+                {
+                    MessageBox.Show("获取报表内容失败:" + errMsg);
+                    return;
+                }
+
+                string reportData = JsonHelper.getDestValue(joRtn, "output.setl_print");
+                if (!string.IsNullOrEmpty(reportData))
+                {
+                    PrintBase64Pdf(reportData);
+                }
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show(ex.Message);
+                return;
+            }
+        }
+
+        private JObject GetDRGReport(string psnNo,string setleId)
+        {
+            dynamic joInput = new JObject();
+            dynamic joParams = new JObject();
+            joParams.businesstype = "1";
+            joParams.psnno = psnNo;
+            joParams.setlid = setleId;
+            joInput.data = joParams;
+            return invoker.invokeCenterService(TradeEnum.PrintDrgReport, joInput);
+        }
+
+        public void PrintBase64Pdf(string base64Pdf)
+        {
+            string pdfFile = System.Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + "\\bill.pdf";
+            byte[] bytes = Convert.FromBase64String(base64Pdf);
+            try
+            {
+                using (PdfDocument doc = new PdfDocument())
+                {
+                    File.WriteAllBytes(pdfFile, bytes);
+                    doc.LoadFromFile(pdfFile);
+
+                    PrintersForm printers = new PrintersForm();
+                    if (printers.ShowDialog() == DialogResult.OK)
+                    {
+                        PdfPrintSettings settings = new PdfPrintSettings();
+                        settings.PrinterName = printers.PrinterName;
+                        settings.Landscape = printers.Landscape;
+                        doc.Print(settings);
+                    }
+
+                }
+            }
+            finally
+            {
+                if (File.Exists(pdfFile))
+                {
+                    File.Delete(pdfFile);
+                }
+            }
+        }
+
     }
 
     // Root myDeserializedClass = JsonConvert.DeserializeObject<Root>(myJsonResponse);

+ 77 - 65
Forms/SettlementChecklist.designer.cs

@@ -28,12 +28,11 @@
         /// </summary>
         private void InitializeComponent()
         {
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SettlementChecklist));
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
             this.panel1 = new System.Windows.Forms.Panel();
             this.dgvSettlRecord = new Sunny.UI.UIDataGridView();
             this.pgSettlRecod = new Sunny.UI.UIPagination();
@@ -47,20 +46,19 @@
             this.gbInterface = new Sunny.UI.UIGroupBox();
             this.cbxInterface = new Sunny.UI.UIComboBox();
             this.btnQuery = new Sunny.UI.UIButton();
+            this.btnDrgPrint = new Sunny.UI.UIButton();
             this.btnPrint = new Sunny.UI.UIButton();
             this.rbgBillType = new Sunny.UI.UIRadioButtonGroup();
             this.rbgAdmType = new Sunny.UI.UIRadioButtonGroup();
             this.gbDateTime = new Sunny.UI.UIGroupBox();
             this.dpED = new Sunny.UI.UIDatetimePicker();
             this.dpST = new Sunny.UI.UIDatetimePicker();
-            this.report1 = new FastReport.Report();
             this.panel1.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.dgvSettlRecord)).BeginInit();
             this.uiPanel1.SuspendLayout();
             this.gbExactLocate.SuspendLayout();
             this.gbInterface.SuspendLayout();
             this.gbDateTime.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.report1)).BeginInit();
             this.SuspendLayout();
             // 
             // panel1
@@ -70,55 +68,58 @@
             this.panel1.Controls.Add(this.uiPanel1);
             this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
             this.panel1.Location = new System.Drawing.Point(0, 0);
+            this.panel1.Margin = new System.Windows.Forms.Padding(4);
             this.panel1.Name = "panel1";
-            this.panel1.Size = new System.Drawing.Size(1194, 535);
+            this.panel1.Size = new System.Drawing.Size(1689, 802);
             this.panel1.TabIndex = 1;
             // 
             // dgvSettlRecord
             // 
             this.dgvSettlRecord.AllowUserToAddRows = false;
             this.dgvSettlRecord.AllowUserToDeleteRows = false;
-            dataGridViewCellStyle11.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(243)))), ((int)(((byte)(255)))));
-            this.dgvSettlRecord.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle11;
+            dataGridViewCellStyle6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(243)))), ((int)(((byte)(255)))));
+            this.dgvSettlRecord.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle6;
             this.dgvSettlRecord.BackgroundColor = System.Drawing.Color.White;
             this.dgvSettlRecord.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
-            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle12.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(160)))), ((int)(((byte)(255)))));
-            dataGridViewCellStyle12.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            dataGridViewCellStyle12.ForeColor = System.Drawing.Color.White;
-            dataGridViewCellStyle12.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle12.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvSettlRecord.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle12;
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle7.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(160)))), ((int)(((byte)(255)))));
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            dataGridViewCellStyle7.ForeColor = System.Drawing.Color.White;
+            dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvSettlRecord.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle7;
             this.dgvSettlRecord.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
-            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle13.BackColor = System.Drawing.SystemColors.Window;
-            dataGridViewCellStyle13.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            dataGridViewCellStyle13.ForeColor = System.Drawing.SystemColors.ControlText;
-            dataGridViewCellStyle13.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle13.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
-            this.dgvSettlRecord.DefaultCellStyle = dataGridViewCellStyle13;
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle8.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle8.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            dataGridViewCellStyle8.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle8.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle8.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvSettlRecord.DefaultCellStyle = dataGridViewCellStyle8;
             this.dgvSettlRecord.Dock = System.Windows.Forms.DockStyle.Fill;
             this.dgvSettlRecord.EnableHeadersVisualStyles = false;
             this.dgvSettlRecord.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.dgvSettlRecord.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(160)))), ((int)(((byte)(255)))));
             this.dgvSettlRecord.Location = new System.Drawing.Point(0, 0);
+            this.dgvSettlRecord.Margin = new System.Windows.Forms.Padding(4);
             this.dgvSettlRecord.Name = "dgvSettlRecord";
-            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle14.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(243)))), ((int)(((byte)(255)))));
-            dataGridViewCellStyle14.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            dataGridViewCellStyle14.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
-            dataGridViewCellStyle14.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(160)))), ((int)(((byte)(255)))));
-            dataGridViewCellStyle14.SelectionForeColor = System.Drawing.Color.White;
-            dataGridViewCellStyle14.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvSettlRecord.RowHeadersDefaultCellStyle = dataGridViewCellStyle14;
-            dataGridViewCellStyle15.BackColor = System.Drawing.Color.White;
-            dataGridViewCellStyle15.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.dgvSettlRecord.RowsDefaultCellStyle = dataGridViewCellStyle15;
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle9.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(243)))), ((int)(((byte)(255)))));
+            dataGridViewCellStyle9.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            dataGridViewCellStyle9.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
+            dataGridViewCellStyle9.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(160)))), ((int)(((byte)(255)))));
+            dataGridViewCellStyle9.SelectionForeColor = System.Drawing.Color.White;
+            dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvSettlRecord.RowHeadersDefaultCellStyle = dataGridViewCellStyle9;
+            this.dgvSettlRecord.RowHeadersWidth = 62;
+            dataGridViewCellStyle10.BackColor = System.Drawing.Color.White;
+            dataGridViewCellStyle10.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.dgvSettlRecord.RowsDefaultCellStyle = dataGridViewCellStyle10;
             this.dgvSettlRecord.RowTemplate.Height = 23;
             this.dgvSettlRecord.SelectedIndex = -1;
-            this.dgvSettlRecord.Size = new System.Drawing.Size(1194, 382);
+            this.dgvSettlRecord.Size = new System.Drawing.Size(1689, 573);
             this.dgvSettlRecord.StripeOddColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(243)))), ((int)(((byte)(255)))));
             this.dgvSettlRecord.TabIndex = 3;
             this.dgvSettlRecord.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0);
@@ -127,15 +128,15 @@
             // 
             this.pgSettlRecod.Dock = System.Windows.Forms.DockStyle.Bottom;
             this.pgSettlRecod.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.pgSettlRecod.Location = new System.Drawing.Point(0, 382);
-            this.pgSettlRecod.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
-            this.pgSettlRecod.MinimumSize = new System.Drawing.Size(1, 1);
+            this.pgSettlRecod.Location = new System.Drawing.Point(0, 573);
+            this.pgSettlRecod.Margin = new System.Windows.Forms.Padding(6, 8, 6, 8);
+            this.pgSettlRecod.MinimumSize = new System.Drawing.Size(2, 2);
             this.pgSettlRecod.Name = "pgSettlRecod";
             this.pgSettlRecod.PagerCount = 13;
             this.pgSettlRecod.RectSides = System.Windows.Forms.ToolStripStatusLabelBorderSides.None;
             this.pgSettlRecod.ShowJumpButton = false;
             this.pgSettlRecod.ShowText = false;
-            this.pgSettlRecod.Size = new System.Drawing.Size(1194, 31);
+            this.pgSettlRecod.Size = new System.Drawing.Size(1689, 46);
             this.pgSettlRecod.TabIndex = 2;
             this.pgSettlRecod.Text = "uiPagination1";
             this.pgSettlRecod.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
@@ -148,17 +149,18 @@
             this.uiPanel1.Controls.Add(this.gbExactLocate);
             this.uiPanel1.Controls.Add(this.gbInterface);
             this.uiPanel1.Controls.Add(this.btnQuery);
+            this.uiPanel1.Controls.Add(this.btnDrgPrint);
             this.uiPanel1.Controls.Add(this.btnPrint);
             this.uiPanel1.Controls.Add(this.rbgBillType);
             this.uiPanel1.Controls.Add(this.rbgAdmType);
             this.uiPanel1.Controls.Add(this.gbDateTime);
             this.uiPanel1.Dock = System.Windows.Forms.DockStyle.Bottom;
             this.uiPanel1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.uiPanel1.Location = new System.Drawing.Point(0, 413);
-            this.uiPanel1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
-            this.uiPanel1.MinimumSize = new System.Drawing.Size(1, 1);
+            this.uiPanel1.Location = new System.Drawing.Point(0, 619);
+            this.uiPanel1.Margin = new System.Windows.Forms.Padding(6, 8, 6, 8);
+            this.uiPanel1.MinimumSize = new System.Drawing.Size(2, 2);
             this.uiPanel1.Name = "uiPanel1";
-            this.uiPanel1.Size = new System.Drawing.Size(1194, 122);
+            this.uiPanel1.Size = new System.Drawing.Size(1689, 183);
             this.uiPanel1.TabIndex = 4;
             this.uiPanel1.Text = null;
             this.uiPanel1.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
@@ -170,7 +172,7 @@
             this.btnClose.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
             this.btnClose.Cursor = System.Windows.Forms.Cursors.Hand;
             this.btnClose.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.btnClose.Location = new System.Drawing.Point(1009, 78);
+            this.btnClose.Location = new System.Drawing.Point(907, 78);
             this.btnClose.MinimumSize = new System.Drawing.Size(1, 1);
             this.btnClose.Name = "btnClose";
             this.btnClose.Size = new System.Drawing.Size(134, 32);
@@ -185,7 +187,7 @@
             this.btnDesign.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
             this.btnDesign.Cursor = System.Windows.Forms.Cursors.Hand;
             this.btnDesign.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.btnDesign.Location = new System.Drawing.Point(850, 78);
+            this.btnDesign.Location = new System.Drawing.Point(748, 78);
             this.btnDesign.MinimumSize = new System.Drawing.Size(1, 1);
             this.btnDesign.Name = "btnDesign";
             this.btnDesign.Size = new System.Drawing.Size(134, 32);
@@ -207,7 +209,7 @@
             this.gbExactLocate.MinimumSize = new System.Drawing.Size(1, 1);
             this.gbExactLocate.Name = "gbExactLocate";
             this.gbExactLocate.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0);
-            this.gbExactLocate.Size = new System.Drawing.Size(184, 122);
+            this.gbExactLocate.Size = new System.Drawing.Size(184, 183);
             this.gbExactLocate.TabIndex = 23;
             this.gbExactLocate.Text = "精确定位";
             this.gbExactLocate.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
@@ -268,7 +270,7 @@
             this.gbInterface.MinimumSize = new System.Drawing.Size(1, 1);
             this.gbInterface.Name = "gbInterface";
             this.gbInterface.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0);
-            this.gbInterface.Size = new System.Drawing.Size(154, 122);
+            this.gbInterface.Size = new System.Drawing.Size(154, 183);
             this.gbInterface.TabIndex = 22;
             this.gbInterface.Text = "接口选择";
             this.gbInterface.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
@@ -295,7 +297,7 @@
             this.btnQuery.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
             this.btnQuery.Cursor = System.Windows.Forms.Cursors.Hand;
             this.btnQuery.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.btnQuery.Location = new System.Drawing.Point(850, 23);
+            this.btnQuery.Location = new System.Drawing.Point(748, 23);
             this.btnQuery.MinimumSize = new System.Drawing.Size(1, 1);
             this.btnQuery.Name = "btnQuery";
             this.btnQuery.Size = new System.Drawing.Size(134, 32);
@@ -305,12 +307,27 @@
             this.btnQuery.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0);
             this.btnQuery.Click += new System.EventHandler(this.btnQuery_Click_1);
             // 
+            // btnDrgPrint
+            // 
+            this.btnDrgPrint.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnDrgPrint.Cursor = System.Windows.Forms.Cursors.Hand;
+            this.btnDrgPrint.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.btnDrgPrint.Location = new System.Drawing.Point(911, 24);
+            this.btnDrgPrint.MinimumSize = new System.Drawing.Size(1, 1);
+            this.btnDrgPrint.Name = "btnDrgPrint";
+            this.btnDrgPrint.Size = new System.Drawing.Size(134, 32);
+            this.btnDrgPrint.TabIndex = 18;
+            this.btnDrgPrint.Text = "DRG打印";
+            this.btnDrgPrint.TipsFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.btnDrgPrint.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0);
+            this.btnDrgPrint.Click += new System.EventHandler(this.btnDrgPrint_Click);
+            // 
             // btnPrint
             // 
             this.btnPrint.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
             this.btnPrint.Cursor = System.Windows.Forms.Cursors.Hand;
             this.btnPrint.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.btnPrint.Location = new System.Drawing.Point(1009, 23);
+            this.btnPrint.Location = new System.Drawing.Point(911, 24);
             this.btnPrint.MinimumSize = new System.Drawing.Size(1, 1);
             this.btnPrint.Name = "btnPrint";
             this.btnPrint.Size = new System.Drawing.Size(134, 32);
@@ -333,7 +350,7 @@
             this.rbgBillType.MinimumSize = new System.Drawing.Size(1, 1);
             this.rbgBillType.Name = "rbgBillType";
             this.rbgBillType.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0);
-            this.rbgBillType.Size = new System.Drawing.Size(88, 122);
+            this.rbgBillType.Size = new System.Drawing.Size(88, 183);
             this.rbgBillType.TabIndex = 24;
             this.rbgBillType.Text = "票据类型";
             this.rbgBillType.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
@@ -352,7 +369,7 @@
             this.rbgAdmType.MinimumSize = new System.Drawing.Size(1, 1);
             this.rbgAdmType.Name = "rbgAdmType";
             this.rbgAdmType.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0);
-            this.rbgAdmType.Size = new System.Drawing.Size(88, 122);
+            this.rbgAdmType.Size = new System.Drawing.Size(88, 183);
             this.rbgAdmType.TabIndex = 21;
             this.rbgAdmType.Text = "就诊类型";
             this.rbgAdmType.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
@@ -369,7 +386,7 @@
             this.gbDateTime.MinimumSize = new System.Drawing.Size(1, 1);
             this.gbDateTime.Name = "gbDateTime";
             this.gbDateTime.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0);
-            this.gbDateTime.Size = new System.Drawing.Size(226, 122);
+            this.gbDateTime.Size = new System.Drawing.Size(226, 183);
             this.gbDateTime.TabIndex = 20;
             this.gbDateTime.Text = "起止时间";
             this.gbDateTime.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
@@ -413,18 +430,13 @@
             this.dpST.Value = new System.DateTime(2022, 5, 22, 14, 3, 13, 266);
             this.dpST.ZoomScaleRect = new System.Drawing.Rectangle(0, 0, 0, 0);
             // 
-            // report1
-            // 
-            this.report1.NeedRefresh = false;
-            this.report1.ReportResourceString = resources.GetString("report1.ReportResourceString");
-            this.report1.Tag = null;
-            // 
             // SettlementChecklist
             // 
-            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
+            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 18F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-            this.ClientSize = new System.Drawing.Size(1194, 535);
+            this.ClientSize = new System.Drawing.Size(1689, 802);
             this.Controls.Add(this.panel1);
+            this.Margin = new System.Windows.Forms.Padding(4);
             this.Name = "SettlementChecklist";
             this.Text = "结算单打印";
             this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.SettlementChecklist_FormClosed);
@@ -435,7 +447,6 @@
             this.gbExactLocate.ResumeLayout(false);
             this.gbInterface.ResumeLayout(false);
             this.gbDateTime.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.report1)).EndInit();
             this.ResumeLayout(false);
 
         }
@@ -462,5 +473,6 @@
         private FastReport.Report report1;
         private Sunny.UI.UIButton btnClose;
         private Sunny.UI.UIButton btnDesign;
+        private Sunny.UI.UIButton btnDrgPrint;
     }
 }

+ 0 - 10
Forms/SettlementChecklist.resx

@@ -117,14 +117,4 @@
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
-  <metadata name="report1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
-    <value>17, 17</value>
-  </metadata>
-  <data name="report1.ReportResourceString" xml:space="preserve">
-    <value>&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;Report ScriptLanguage="CSharp" ReportInfo.Created="07/20/2022 15:48:06" ReportInfo.Modified="07/21/2022 19:55:24" ReportInfo.CreatorVersion="2020.3.7.0"&gt;
-  &lt;Dictionary/&gt;
-&lt;/Report&gt;
-</value>
-  </data>
 </root>

+ 5 - 0
InsuBusiness.cs

@@ -599,6 +599,11 @@ namespace PTMedicalInsurance
                             printFastReport();
                             return JsonHelper.setIrisReturnValue(0, "", null).ToString();
                         }
+                    case "DrgPrint":
+                        {
+                            CallResult result = new SettleBillPrintProcess().PrintByInsu(JObject.Parse(InParam));
+                            return result.Data;
+                        }
                     case "Log"://日志
                         {
                             MessageBox.Show(businessType);

+ 3 - 0
Variables/TradeEnum.cs

@@ -472,6 +472,9 @@ namespace PTMedicalInsurance
         [Trade("5960", "历史处方查询")]
         HistoryPrescriptionQuery,
 
+        [Trade("9160", "DRG报表打印")]
+        PrintDrgReport,
+
         #endregion
 
         /// <summary>