From 0c88dd19da8d6afdf7436e528801eb85b8a62c36 Mon Sep 17 00:00:00 2001 From: lxd <1004405501@qq.com> Date: Tue, 15 Apr 2025 11:49:58 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9330?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app.config | 2 +- deviceAnalysis.cs | 253 ++++++++++++++++++++++++++++--------------- mainForm.Designer.cs | 18 +-- mainForm.cs | 2 +- 4 files changed, 178 insertions(+), 97 deletions(-) diff --git a/app.config b/app.config index c26cfcc..46b9f70 100644 --- a/app.config +++ b/app.config @@ -86,6 +86,6 @@ - + diff --git a/deviceAnalysis.cs b/deviceAnalysis.cs index c2952cd..a31bac2 100644 --- a/deviceAnalysis.cs +++ b/deviceAnalysis.cs @@ -2795,30 +2795,29 @@ namespace FlyDockTool if (i + 15 > resulteArray.Length) break; string[] spArray = resulteArray[1].Trim().Split(' '); - string sampleNo1 = spArray[0].Replace("NO.", "").Replace("0", " ").Trim(); - + // string sampleNo1 = spArray[0].Replace("NO.", "").Replace("0", " ").Trim(); + string sampleNo1 = spArray[0].Trim().Replace("NO.", "").TrimStart('0'); // string sampleNo1 = spArray.Length > 2 ? spArray[2].Substring(0, 1).TrimStart('0') : "0"; // string sampleNo1 = resulteArray[2].Trim().Split(' ')[1]; .Replace("-", "0").TrimStart('0') //string testDate1 = jiexiDate(resulteArray[i + 1], resulteArray[i + 2]); string testDate1 = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); - examResultMode erm = new examResultMode(); - erm.machineCode = MachineCode; - erm.machineID = MachineID; - erm.sampleNo = sampleNo1; - erm.testDate = testDate1; - erm.chanelNo = "WBC";//项目代号 - erm.itemValue = resulteArray[i + 4].Replace("WBC", "").Replace("leu/uL", "").Trim().Split(' ')[0].Trim(); //项目结果 - erm.itemUnit = ""; - ermList.Add(erm); - examResultMode erm1 = new examResultMode(); - erm1.machineCode = MachineCode; - erm1.machineID = MachineID; - erm1.sampleNo = sampleNo1; - erm1.testDate = testDate1; - erm1.chanelNo = "KET";//项目代号 - erm1.itemValue = resulteArray[i + 5].Replace("KET", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); - erm1.itemUnit = ""; - ermList.Add(erm1); + examResultMode erm8 = new examResultMode(); + erm8.machineCode = MachineCode; + erm8.machineID = MachineID; + erm8.sampleNo = sampleNo1; + erm8.testDate = testDate1; + erm8.chanelNo = "pH";//项目代号 + if (resulteArray[i + 4].Contains("*")) + { + erm8.itemValue = resulteArray[i + 4].Replace("*pH", "").Trim().Split(' ')[0].Trim(); + } + else + { + erm8.itemValue = resulteArray[i + 4].Replace("pH", "").Trim().Split(' ')[0].Trim(); + } + + erm8.itemUnit = ""; + ermList.Add(erm8); examResultMode erm2 = new examResultMode(); erm2.machineCode = MachineCode; @@ -2826,94 +2825,176 @@ namespace FlyDockTool erm2.sampleNo = sampleNo1; erm2.testDate = testDate1; erm2.chanelNo = "NIT";//项目代号 - erm2.itemValue = resulteArray[i + 6].Replace("NIT", "").Replace("Neg", "").Trim().Split(' ')[0].Trim(); + if (resulteArray[i + 5].Contains("*")) + { + erm2.itemValue = resulteArray[i + 5].Replace("*NIT", "").Replace("Neg", "").Trim().Split(' ')[0].Trim(); + } + else + { + erm2.itemValue = resulteArray[i + 5].Replace("NIT", "").Replace("Neg", "").Trim().Split(' ')[0].Trim(); + } erm2.itemUnit = ""; ermList.Add(erm2); - examResultMode erm3 = new examResultMode(); - erm3.machineCode = MachineCode; - erm3.machineID = MachineID; - erm3.sampleNo = sampleNo1; - erm3.testDate = testDate1; - erm3.chanelNo = "URO";//项目代号 - erm3.itemValue = resulteArray[i + 7].Replace("URO", "").Replace("umol/L", "").Trim().Split(' ')[0].Trim(); - erm3.itemUnit = ""; - ermList.Add(erm3); - - examResultMode erm4 = new examResultMode(); - erm4.machineCode = MachineCode; - erm4.machineID = MachineID; - erm4.sampleNo = sampleNo1; - erm4.testDate = testDate1; - erm4.chanelNo = "BIL";//项目代号 - erm4.itemValue = resulteArray[i + 8].Replace("BIL", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); - erm4.itemUnit = ""; - ermList.Add(erm4); - - - examResultMode erm5 = new examResultMode(); - erm5.machineCode = MachineCode; - erm5.machineID = MachineID; - erm5.sampleNo = sampleNo1; - erm5.testDate = testDate1; - erm5.chanelNo = "PRO";//项目代号 - erm5.itemValue = resulteArray[i + 9].Replace("PRO", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); - erm5.itemUnit = ""; - ermList.Add(erm5); - - examResultMode erm6 = new examResultMode(); erm6.machineCode = MachineCode; erm6.machineID = MachineID; erm6.sampleNo = sampleNo1; erm6.testDate = testDate1; erm6.chanelNo = "GLU";//项目代号 - erm6.itemValue = resulteArray[i + 10].Replace("GLU", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + if (resulteArray[i + 6].Contains("*")) + { + erm6.itemValue = resulteArray[i + 6].Replace("*GLU", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + } + else + { + erm6.itemValue = resulteArray[i + 6].Replace("GLU", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + } erm6.itemUnit = ""; ermList.Add(erm6); - examResultMode erm10 = new examResultMode(); - erm10.machineCode = MachineCode; - erm10.machineID = MachineID; - erm10.sampleNo = sampleNo1; - erm10.testDate = testDate1; - erm10.chanelNo = "SG";//项目代号 - erm10.itemValue = resulteArray[i + 11].Replace("SG", "").Trim().Split(' ')[0].Trim(); - erm10.itemUnit = ""; - ermList.Add(erm10); - - - examResultMode erm7 = new examResultMode(); - erm7.machineCode = MachineCode; - erm7.machineID = MachineID; - erm7.sampleNo = sampleNo1; - erm7.testDate = testDate1; - erm7.chanelNo = "BLD";//项目代号 - erm7.itemValue = resulteArray[i + 12].Replace("BLD", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); - erm7.itemUnit = ""; - ermList.Add(erm7); - - examResultMode erm8 = new examResultMode(); - erm8.machineCode = MachineCode; - erm8.machineID = MachineID; - erm8.sampleNo = sampleNo1; - erm8.testDate = testDate1; - erm8.chanelNo = "pH";//项目代号 - erm8.itemValue = resulteArray[i + 13].Replace("pH", "").Trim().Split(' ')[0].Trim(); - erm8.itemUnit = ""; - ermList.Add(erm8); - examResultMode erm9 = new examResultMode(); erm9.machineCode = MachineCode; erm9.machineID = MachineID; erm9.sampleNo = sampleNo1; erm9.testDate = testDate1; erm9.chanelNo = "Vc";//项目代号 - erm9.itemValue = resulteArray[i + 14].Replace("*Vc", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + if (resulteArray[i + 7].Contains("*")) + { + erm9.itemValue = resulteArray[i + 7].Replace("*Vc", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + } + else + { + erm9.itemValue = resulteArray[i + 7].Replace("Vc", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + } + erm9.itemUnit = ""; ermList.Add(erm9); + examResultMode erm10 = new examResultMode(); + erm10.machineCode = MachineCode; + erm10.machineID = MachineID; + erm10.sampleNo = sampleNo1; + erm10.testDate = testDate1; + erm10.chanelNo = "SG";//项目代号 + if (resulteArray[i + 8].Contains("*")) + { + erm10.itemValue = resulteArray[i + 8].Replace("*SG", "").Trim().Split(' ')[0].Trim(); + } + else { + erm10.itemValue = resulteArray[i + 8].Replace("SG", "").Trim().Split(' ')[0].Trim(); + } + + erm10.itemUnit = ""; + ermList.Add(erm10); + examResultMode erm7 = new examResultMode(); + erm7.machineCode = MachineCode; + erm7.machineID = MachineID; + erm7.sampleNo = sampleNo1; + erm7.testDate = testDate1; + erm7.chanelNo = "BLD";//项目代号 + if (resulteArray[i + 9].Contains("*")) + { + erm7.itemValue = resulteArray[i + 9].Replace("*BLD", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + } + else + { + erm7.itemValue = resulteArray[i + 9].Replace("BLD", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + } + + erm7.itemUnit = ""; + ermList.Add(erm7); + + examResultMode erm5 = new examResultMode(); + erm5.machineCode = MachineCode; + erm5.machineID = MachineID; + erm5.sampleNo = sampleNo1; + erm5.testDate = testDate1; + erm5.chanelNo = "PRO";//项目代号 + if (resulteArray[i + 10].Contains("*")) + { + erm5.itemValue = resulteArray[i + 10].Replace("*PRO", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + } + else + { + erm5.itemValue = resulteArray[i + 10].Replace("PRO", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + } + + erm5.itemUnit = ""; + ermList.Add(erm5); + + examResultMode erm4 = new examResultMode(); + erm4.machineCode = MachineCode; + erm4.machineID = MachineID; + erm4.sampleNo = sampleNo1; + erm4.testDate = testDate1; + erm4.chanelNo = "BIL";//项目代号 + if (resulteArray[i + 11].Contains("*")) + { + erm4.itemValue = resulteArray[i + 11].Replace("*BIL", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + } + else + { + erm4.itemValue = resulteArray[i + 11].Replace("BIL", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + } + + erm4.itemUnit = ""; + ermList.Add(erm4); + + examResultMode erm3 = new examResultMode(); + erm3.machineCode = MachineCode; + erm3.machineID = MachineID; + erm3.sampleNo = sampleNo1; + erm3.testDate = testDate1; + erm3.chanelNo = "URO";//项目代号 + if (resulteArray[i + 12].Contains("*")) + { + erm3.itemValue = resulteArray[i + 12].Replace("*URO", "").Replace("umol/L", "").Trim().Split(' ')[0].Trim(); + } + else + { + erm3.itemValue = resulteArray[i + 12].Replace("URO", "").Replace("umol/L", "").Trim().Split(' ')[0].Trim(); + } + + erm3.itemUnit = ""; + ermList.Add(erm3); + + examResultMode erm1 = new examResultMode(); + erm1.machineCode = MachineCode; + erm1.machineID = MachineID; + erm1.sampleNo = sampleNo1; + erm1.testDate = testDate1; + erm1.chanelNo = "KET";//项目代号 + if (resulteArray[i + 13].Contains("*")) + { + erm1.itemValue = resulteArray[i + 13].Replace("*KET", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + } + else + { + erm1.itemValue = resulteArray[i + 13].Replace("KET", "").Replace("mg/dL", "").Trim().Split(' ')[0].Trim(); + } + erm1.itemUnit = ""; + ermList.Add(erm1); + + + examResultMode erm = new examResultMode(); + erm.machineCode = MachineCode; + erm.machineID = MachineID; + erm.sampleNo = sampleNo1; + erm.testDate = testDate1; + erm.chanelNo = "WBC";//项目代号 + if (resulteArray[i + 14].Contains("*")) + { + erm.itemValue = resulteArray[i + 14].Replace("*WBC", "").Replace("leu/uL", "").Trim().Split(' ')[0].Trim(); //项目结果 + } + else + { + erm.itemValue = resulteArray[i + 14].Replace("WBC", "").Replace("leu/uL", "").Trim().Split(' ')[0].Trim(); //项目结果 + } + + erm.itemUnit = ""; + ermList.Add(erm); //将结果提交到LIS系统 baseMsgModel bmm1 = apiOptions.CreateInstance().upLoadExamResult(ermList); diff --git a/mainForm.Designer.cs b/mainForm.Designer.cs index 85a623d..40682e3 100644 --- a/mainForm.Designer.cs +++ b/mainForm.Designer.cs @@ -57,9 +57,9 @@ this.groupBox2.Controls.Add(this.btn_start_or_stop); this.groupBox2.Dock = System.Windows.Forms.DockStyle.Top; this.groupBox2.Location = new System.Drawing.Point(0, 0); - this.groupBox2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); + this.groupBox2.Margin = new System.Windows.Forms.Padding(2); this.groupBox2.Name = "groupBox2"; - this.groupBox2.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2); + this.groupBox2.Padding = new System.Windows.Forms.Padding(2); this.groupBox2.Size = new System.Drawing.Size(738, 96); this.groupBox2.TabIndex = 1; this.groupBox2.TabStop = false; @@ -69,7 +69,7 @@ // button1 // this.button1.Location = new System.Drawing.Point(560, 55); - this.button1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); + this.button1.Margin = new System.Windows.Forms.Padding(2); this.button1.Name = "button1"; this.button1.Size = new System.Drawing.Size(132, 27); this.button1.TabIndex = 2; @@ -113,7 +113,7 @@ // this.btn_start_or_stop.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.btn_start_or_stop.Location = new System.Drawing.Point(54, 51); - this.btn_start_or_stop.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); + this.btn_start_or_stop.Margin = new System.Windows.Forms.Padding(2); this.btn_start_or_stop.Name = "btn_start_or_stop"; this.btn_start_or_stop.Size = new System.Drawing.Size(75, 31); this.btn_start_or_stop.TabIndex = 0; @@ -126,9 +126,9 @@ this.groupBox3.Controls.Add(this.txt_msg); this.groupBox3.Dock = System.Windows.Forms.DockStyle.Fill; this.groupBox3.Location = new System.Drawing.Point(0, 96); - this.groupBox3.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); + this.groupBox3.Margin = new System.Windows.Forms.Padding(2); this.groupBox3.Name = "groupBox3"; - this.groupBox3.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2); + this.groupBox3.Padding = new System.Windows.Forms.Padding(2); this.groupBox3.Size = new System.Drawing.Size(738, 395); this.groupBox3.TabIndex = 2; this.groupBox3.TabStop = false; @@ -141,7 +141,7 @@ this.txt_msg.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.txt_msg.ForeColor = System.Drawing.Color.GreenYellow; this.txt_msg.Location = new System.Drawing.Point(2, 16); - this.txt_msg.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); + this.txt_msg.Margin = new System.Windows.Forms.Padding(2); this.txt_msg.Multiline = true; this.txt_msg.Name = "txt_msg"; this.txt_msg.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; @@ -195,12 +195,12 @@ this.Controls.Add(this.groupBox2); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); - this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); + this.Margin = new System.Windows.Forms.Padding(2); this.MaximizeBox = false; this.MinimizeBox = false; this.Name = "mainForm"; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; - this.Text = "福乐云软硬件数据对接工具V1.1(2025010801)"; + this.Text = "福乐云软硬件数据对接工具V1.1(2025041503)"; this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.mainForm_FormClosing); this.Load += new System.EventHandler(this.Form1_Load); this.groupBox2.ResumeLayout(false); diff --git a/mainForm.cs b/mainForm.cs index d085327..a354f39 100644 --- a/mainForm.cs +++ b/mainForm.cs @@ -34,7 +34,7 @@ namespace FlyDockTool lb_currentDeviceInfo.Text = CurrentDevice; //////测试代码 测试完毕后注释调一下两行代码 //string resultDataStr = File.ReadAllText(@"C:\Users\10044\Desktop\尿常规URIT0-330.txt", Encoding.GetEncoding("GB18030")); - // deviceAnalysis.CreateInstance().deviceAnalysisOption(resultDataStr); + //deviceAnalysis.CreateInstance().deviceAnalysisOption(resultDataStr); btn_start_or_stop_Click(null,null);//启动数据接收