From b9e9db67796b08ee3d97a889715a30fae2021e29 Mon Sep 17 00:00:00 2001 From: "DESKTOP-G961P6V\\Zhh" <839860190@qq.com> Date: Sat, 11 May 2024 00:44:54 +0800 Subject: [PATCH] =?UTF-8?q?LIS=E7=BB=93=E6=9E=9C=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LisResultImportPlugInsDbBase.cs | 108 +++++++++++------- .../PlugInsBase.cs | 19 ++- .../ThirdPlugInsBase.cs | 4 + .../DiagnosisFunctions/DiagnosisBuilder.cs | 1 + .../DiagnosisFunctionAppService.cs | 23 +++- .../ImportLisResultAppService.cs | 6 + .../ReferenceRanges/ReferenceRangeManager.cs | 12 ++ .../RegisterCheckItemManager.cs | 2 +- .../PeisHttpApiHostModule.cs | 34 +++--- .../DateTimeJsonConverter.cs | 7 ++ .../DiagnosisFunctionAppServiceTest.cs | 32 +++--- .../ImportLisResultAppServiceTest.cs | 33 +++--- .../RegisterCheckAppServiceTest.cs | 14 +-- .../LisResultImportPlugInsTest.cs | 2 +- .../appsettings.json | 8 +- 15 files changed, 198 insertions(+), 107 deletions(-) diff --git a/src/Shentun.ColumnReferencePlugIns/LisResultImportPlugInsDbBase.cs b/src/Shentun.ColumnReferencePlugIns/LisResultImportPlugInsDbBase.cs index 3fb98e70..3a181e91 100644 --- a/src/Shentun.ColumnReferencePlugIns/LisResultImportPlugInsDbBase.cs +++ b/src/Shentun.ColumnReferencePlugIns/LisResultImportPlugInsDbBase.cs @@ -34,68 +34,94 @@ namespace Shentun.Peis.PlugIns } var result = new LisResultImportPlugInsOut(); var execOrganizationUnitIdStr = InterfaceConfig.GetSection("Interface").GetSection("ExecOrganizationUnitId").Value; - if(string.IsNullOrWhiteSpace(execOrganizationUnitIdStr)) + if (string.IsNullOrWhiteSpace(execOrganizationUnitIdStr)) { throw new Exception("执行科室配置不能为空"); } - if(!Guid.TryParse(execOrganizationUnitIdStr, out Guid execOrganizationUnitId)) + if (!Guid.TryParse(execOrganizationUnitIdStr, out Guid execOrganizationUnitId)) { throw new Exception("执行科室配置不是有效的GUID值"); } var lisRequests = await GetLisRequestForResultImportPlugInssAsync(input.PatientRegisterId); using (DbConnection conn = CreateInterfaceDbConnect()) { - var lisResultFromInterfaces = (await conn.QueryAsync(InterfaceSql)).ToList(); + //设置结果,生成小结 + + await LoginAsync(); var createImportLisResultDtos = new List(); - foreach (var lisResult in lisResultFromInterfaces) + foreach (var lisRequest in lisRequests) { - if (string.IsNullOrWhiteSpace(lisResult.ItemName)) - { - throw new Exception("第三方接口数据项目名称不能为空"); - } - var columnReferenceCodes = await GetColumnReferenceCodeValuesAsync(ItemColumnReferenceId, lisResult.ItemId); - if(columnReferenceCodes == null || !columnReferenceCodes.Any()) + createImportLisResultDtos.Clear(); + string sql; + sql = InterfaceSql + " where " + InterfaceSqlKeyColumn + " = '" + lisRequest.LisRequestNo + "'"; + var lisResultFromInterfaces = (await conn.QueryAsync(sql)).ToList(); + try { - throw new Exception($"{lisResult.ItemName}没有对照编码"); - } - foreach (var columnReferenceCode in columnReferenceCodes) - { - if (string.IsNullOrWhiteSpace(columnReferenceCode.CodeValue)) + foreach (var lisResult in lisResultFromInterfaces) { - continue; + if (string.IsNullOrWhiteSpace(lisResult.ItemName)) + { + throw new Exception("第三方接口数据项目名称不能为空"); + } + if (string.IsNullOrWhiteSpace(lisResult.CheckDoctorName)) + { + throw new Exception("检验医生不能为空"); + } + var columnReferenceCodes = await GetColumnReferenceCodeValuesAsync(ItemColumnReferenceId, lisResult.ItemId); + if (columnReferenceCodes == null || !columnReferenceCodes.Any()) + { + //throw new Exception($"LIS系统中项目名:{lisResult.ItemName} 编码:{lisResult.ItemId}没有与体检系统对照编码"); + continue; + + } + foreach (var columnReferenceCode in columnReferenceCodes) + { + if (string.IsNullOrWhiteSpace(columnReferenceCode.CodeValue)) + { + continue; + } + if (!Guid.TryParse(columnReferenceCode.CodeValue, out var appItemId)) + { + throw new Exception($"{lisResult.ItemName}对照的编码无效"); + } + + var createImportLisResultDto = new CreateImportLisResultDto() + { + LisRequestNo = lisResult.LisRequestNo, + ItemId = appItemId, + ItemName = lisResult.ItemName, + Result = lisResult.Result, + Unit = lisResult.Unit, + ReferenceRangeValue = lisResult.ReferenceRangeValue, + CriticalRangeValue = lisResult.CriticalRangeValue, + ResultStatusId = lisResult.ResultStatusId, + ReportPrompt = lisResult.ReportPrompt, + CheckDoctorName = lisResult.CheckDoctorName, + CheckDate = lisResult.CheckDate, + ExecOrganizationUnitId = execOrganizationUnitId + }; + createImportLisResultDtos.Add(createImportLisResultDto); + } + + } - if (!Guid.TryParse(columnReferenceCode.CodeValue, out var appItemId)) + if (!createImportLisResultDtos.Any()) { - throw new Exception($"{lisResult.ItemName}对照的编码无效"); + return result; } - var createImportLisResultDto = new CreateImportLisResultDto() - { - LisRequestNo = lisResult.LisRequestNo, - ItemId = appItemId, - ItemName = lisResult.ItemName, - Result = lisResult.Result, - Unit = lisResult.Unit, - ReferenceRangeValue = lisResult.ReferenceRangeValue, - CriticalRangeValue = lisResult.CriticalRangeValue, - ResultStatusId = lisResult.ResultStatusId, - ReportPrompt = lisResult.ReportPrompt, - CheckDoctorName = lisResult.CheckDoctorName, - CheckDate = lisResult.CheckDate, - ExecOrganizationUnitId = execOrganizationUnitId - }; - createImportLisResultDtos.Add(createImportLisResultDto); + var callResult = await CallAppServiceAsync, object>("api/app/ImportLisResult/ImportResult", createImportLisResultDtos); + } + catch (Exception ex) + { + //throw ex; } - } - if(!createImportLisResultDtos.Any()) - { - return result; - } - await LoginAsync(); - await CallAppServiceAsync,object>("api/app/ImportLisResult/ImportResult", createImportLisResultDtos); + + + } return result; diff --git a/src/Shentun.ColumnReferencePlugIns/PlugInsBase.cs b/src/Shentun.ColumnReferencePlugIns/PlugInsBase.cs index 4a65ba86..4712bb4a 100644 --- a/src/Shentun.ColumnReferencePlugIns/PlugInsBase.cs +++ b/src/Shentun.ColumnReferencePlugIns/PlugInsBase.cs @@ -1,6 +1,7 @@ using Microsoft.Data.SqlClient; using Microsoft.Extensions.Configuration; using Newtonsoft.Json; +using Newtonsoft.Json.Converters; using Npgsql; using Oracle.ManagedDataAccess.Client; using Shentun.Utilities; @@ -23,6 +24,7 @@ namespace Shentun.Peis.PlugIns private string _accesToken; protected string InterfaceSql; + protected string InterfaceSqlKeyColumn; protected string InterfaceDbType; protected string? InterfaceConnctionStr; @@ -46,6 +48,7 @@ namespace Shentun.Peis.PlugIns InterfaceConfig = configurationBuilder.Build(); InterfaceSql = InterfaceConfig.GetSection("Interface").GetSection("Sql").Value; + InterfaceSqlKeyColumn = InterfaceConfig.GetSection("Interface").GetSection("SqlKeyColumn").Value; InterfaceDbType = InterfaceConfig.GetSection("Interface").GetSection("DbType").Value; InterfaceConnctionStr = InterfaceConfig.GetSection("Interface").GetSection("ConnectionStrings").Value; @@ -89,8 +92,10 @@ namespace Shentun.Peis.PlugIns httpClient.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue("application/json"));//设置accept标头,告诉JSON是可接受的响应类型 - httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", _accesToken); - var sendData = JsonConvert.SerializeObject(data); + //httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", _accesToken); + IsoDateTimeConverter timeFormat = new IsoDateTimeConverter(); + timeFormat.DateTimeFormat = "yyyy-MM-dd HH:mm:ss"; + var sendData = JsonConvert.SerializeObject(data,Newtonsoft.Json.Formatting.Indented, timeFormat); using (HttpContent httpContent = new StringContent(sendData)) { httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json"); @@ -102,7 +107,15 @@ namespace Shentun.Peis.PlugIns throw new Exception("http通信错误:" + response.StatusCode + ",结果:" + result); } result = await response.Content.ReadAsStringAsync(); - var resultDto = JsonConvert.DeserializeObject(result); + + dynamic resultDto = JsonConvert.DeserializeObject(result); + if(resultDto != null) + { + if(resultDto.code == "-1") + { + throw new Exception($"调用WebApi失败,返回-1,消息:"+resultDto.message); + } + } return resultDto; } diff --git a/src/Shentun.ColumnReferencePlugIns/ThirdPlugInsBase.cs b/src/Shentun.ColumnReferencePlugIns/ThirdPlugInsBase.cs index 3547bc53..b6b63348 100644 --- a/src/Shentun.ColumnReferencePlugIns/ThirdPlugInsBase.cs +++ b/src/Shentun.ColumnReferencePlugIns/ThirdPlugInsBase.cs @@ -62,6 +62,10 @@ namespace Shentun.Peis.PlugIns "; var columnReferenceCodeValues = (await conn.QueryAsync(sql, new { ColumnReferenceId = columnReferenceId, InterfaceCodeValue = interfaceCodeValue })).ToList(); + //if(columnReferenceCodeValues.Count == 0) + //{ + // throw new Exception($"{interfaceCodeValue}没有找到对照"); + //} return columnReferenceCodeValues; } } diff --git a/src/Shentun.Peis.Application/DiagnosisFunctions/DiagnosisBuilder.cs b/src/Shentun.Peis.Application/DiagnosisFunctions/DiagnosisBuilder.cs index 5bfaa378..77f25eeb 100644 --- a/src/Shentun.Peis.Application/DiagnosisFunctions/DiagnosisBuilder.cs +++ b/src/Shentun.Peis.Application/DiagnosisFunctions/DiagnosisBuilder.cs @@ -188,6 +188,7 @@ using Shentun.Peis.DiagnosisFunctions; public class DoctorCheckItemDiagnosisResult { + public char IsNameIntoSummary { get; set; } public string ItemName { get; set;} public List ItemDiagnosisTypeResults { get; set; } = new List(); } diff --git a/src/Shentun.Peis.Application/DiagnosisFunctions/DiagnosisFunctionAppService.cs b/src/Shentun.Peis.Application/DiagnosisFunctions/DiagnosisFunctionAppService.cs index 68f516e9..8907afe2 100644 --- a/src/Shentun.Peis.Application/DiagnosisFunctions/DiagnosisFunctionAppService.cs +++ b/src/Shentun.Peis.Application/DiagnosisFunctions/DiagnosisFunctionAppService.cs @@ -11,6 +11,7 @@ using Shentun.Peis.RegisterCheckItems; using Shentun.Peis.Sexs; using Shentun.Peis.SumDiagnosises; using Shentun.Peis.SysParmValues; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; @@ -515,6 +516,7 @@ namespace Shentun.Peis.DiagnosisFunctions } else { + itemDiagnosisType.Diagnosis = itemDiagnosisType.Diagnosis.Where(o=>!string.IsNullOrWhiteSpace(o)).ToList(); if (itemDiagnosisType.Diagnosis.Count() > _numArry.Count()) { throw new UserFriendlyException($"诊断数量超过{_numArry.Count()}个,不支持"); @@ -523,21 +525,33 @@ namespace Shentun.Peis.DiagnosisFunctions { continue; } - + for (int i = 0; i < itemDiagnosisType.Diagnosis.Count(); i++) { if (string.IsNullOrWhiteSpace(itemDiagnosisType.Diagnosis[i])) { continue; } - diagnosis = diagnosis + _numArry[i] + itemDiagnosisType.Diagnosis[i] + ";"; + if(itemDiagnosisType.Diagnosis.Count() == 1) + { + diagnosis = diagnosis + itemDiagnosisType.Diagnosis[i] + ";"; + } + else + { + diagnosis = diagnosis + _numArry[i] + itemDiagnosisType.Diagnosis[i] + ";"; + } + } } } if (!string.IsNullOrWhiteSpace(diagnosis)) { - diagnosis = itemDiagnosis.ItemName + ";" + diagnosis; + if(itemDiagnosis.IsNameIntoSummary == 'Y' && !diagnosis.StartsWith(itemDiagnosis.ItemName)) + { + diagnosis = itemDiagnosis.ItemName + ":" + diagnosis; + } + diagnosisList.Add(diagnosis); } @@ -640,6 +654,7 @@ namespace Shentun.Peis.DiagnosisFunctions var doctorCheckItemDiagnosisResult = new DoctorCheckItemDiagnosisResult() { + IsNameIntoSummary = item.IsNameIntoSummary, ItemName = item.ItemName, }; diagnosisList.Add(doctorCheckItemDiagnosisResult); @@ -857,7 +872,7 @@ namespace Shentun.Peis.DiagnosisFunctions if (!string.IsNullOrWhiteSpace(template.Result)) { - template.Result = Regex.Replace(template.Result, @"\d+", "").Replace("*", "").Replace("/", "").Replace(" ", ""); + //template.Result = Regex.Replace(template.Result, @"\d+", "").Replace("*", "").Replace("/", "").Replace(" ", ""); } } foreach (var resultSplit in resultArry) diff --git a/src/Shentun.Peis.Application/ImportLisResults/ImportLisResultAppService.cs b/src/Shentun.Peis.Application/ImportLisResults/ImportLisResultAppService.cs index 302a2553..7ffce953 100644 --- a/src/Shentun.Peis.Application/ImportLisResults/ImportLisResultAppService.cs +++ b/src/Shentun.Peis.Application/ImportLisResults/ImportLisResultAppService.cs @@ -11,11 +11,13 @@ using Shentun.Peis.ReferenceRanges; using Shentun.Peis.RegisterCheckItems; using Shentun.Peis.RegisterChecks; using Shentun.Peis.Units; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; +using Volo.Abp; using Volo.Abp.Application.Services; using Volo.Abp.Domain.Repositories; using Volo.Abp.Guids; @@ -139,6 +141,10 @@ namespace Shentun.Peis.ImportLisResults _referenceRanges = _referenceRangeRepository.GetListAsync().Result; foreach (var inputItem in input) { + if(string.IsNullOrWhiteSpace(inputItem.CheckDoctorName)) + { + throw new UserFriendlyException("检查医生不能为空"); + } var lisRequestItem = list.Where(o => o.lisRequest.LisRequestNo == inputItem.LisRequestNo && o.registerCheckItem.ItemId == inputItem.ItemId).FirstOrDefault(); if (lisRequestItem == null) diff --git a/src/Shentun.Peis.Domain/ReferenceRanges/ReferenceRangeManager.cs b/src/Shentun.Peis.Domain/ReferenceRanges/ReferenceRangeManager.cs index 716d8e5f..d4d624eb 100644 --- a/src/Shentun.Peis.Domain/ReferenceRanges/ReferenceRangeManager.cs +++ b/src/Shentun.Peis.Domain/ReferenceRanges/ReferenceRangeManager.cs @@ -262,6 +262,18 @@ namespace Shentun.Peis.ReferenceRanges { new UserFriendlyException("调用IsNumberReferenceRange时参考范围不能为空"); } + if (Regex.Matches(referenceRangeValue, ">").Count() == 1) + { + return true; + } + if (Regex.Matches(referenceRangeValue, "<").Count() == 1) + { + return true; + } + if (Regex.Matches(referenceRangeValue, ">").Count() == 1) + { + return true; + } if (Regex.Matches(referenceRangeValue, "≧").Count() == 1) { return true; diff --git a/src/Shentun.Peis.Domain/RegisterCheckItems/RegisterCheckItemManager.cs b/src/Shentun.Peis.Domain/RegisterCheckItems/RegisterCheckItemManager.cs index 36eb9ef9..aae75c41 100644 --- a/src/Shentun.Peis.Domain/RegisterCheckItems/RegisterCheckItemManager.cs +++ b/src/Shentun.Peis.Domain/RegisterCheckItems/RegisterCheckItemManager.cs @@ -159,7 +159,7 @@ namespace Shentun.Peis.RegisterCheckItems string hegihtReferenceRangeValueStr; decimal lowReferenceRangeValue; decimal hegihtReferenceRangeValue; - referenceRangeValue = referenceRangeValue.Replace("≧", ">=") + referenceRangeValue = referenceRangeValue.Replace(">", ">").Replace("≧", ">=") .Replace("≥", ">=").Replace("≤", "<=").Replace("≦", "<=") .Replace("--","-").Replace("〜", "-").Replace("~","-"); var pos = referenceRangeValue.IndexOf("-"); diff --git a/src/Shentun.Peis.HttpApi.Host/PeisHttpApiHostModule.cs b/src/Shentun.Peis.HttpApi.Host/PeisHttpApiHostModule.cs index c37a4d7d..5f3cea17 100644 --- a/src/Shentun.Peis.HttpApi.Host/PeisHttpApiHostModule.cs +++ b/src/Shentun.Peis.HttpApi.Host/PeisHttpApiHostModule.cs @@ -117,13 +117,14 @@ public class PeisHttpApiHostModule : AbpModule ConfigureCors(context, configuration); ConfigureSwaggerServices(context, configuration); - //ConfigureJsonOptions(); //全局配置api返回值中的日期默认格式 - context.Services.AddControllers().AddJsonOptions(configure => - { - configure.JsonSerializerOptions.Converters.Add(new DateTimeJsonConverter()); - configure.JsonSerializerOptions.PropertyNameCaseInsensitive = true; + ConfigureJsonOptions(); //全局配置api返回值中的日期默认格式 + + //context.Services.AddControllers().AddJsonOptions(configure => + //{ + // configure.JsonSerializerOptions.Converters.Add(new DateTimeJsonConverter()); + // configure.JsonSerializerOptions.PropertyNameCaseInsensitive = true; - }); + //}); //密码策略配置 context.Services.Configure(opt => { @@ -226,23 +227,24 @@ public class PeisHttpApiHostModule : AbpModule /// private void ConfigureJsonOptions() { + //context.Services.AddControllers().AddJsonOptions(options => //{ // options.JsonSerializerOptions.Encoder = JavaScriptEncoder.Create(UnicodeRanges.All); // options.JsonSerializerOptions.PropertyNamingPolicy = null; //}); - Configure(x => - { - //x.JsonSerializerOptions.Encoder = JavaScriptEncoder.Create(UnicodeRanges.All); - x.JsonSerializerOptions.Converters.Add(new DateTimeJsonConverter()); - x.JsonSerializerOptions.PropertyNameCaseInsensitive = true; - - }); - - //Configure(x => + //Configure(x => //{ - // x.DefaultDateTimeFormat = "yyyy-MM-dd HH:mm:ss"; + // //x.JsonSerializerOptions.Encoder = JavaScriptEncoder.Create(UnicodeRanges.All); + // x.JsonSerializerOptions.Converters.Add(new DateTimeJsonConverter()); + // x.JsonSerializerOptions.PropertyNameCaseInsensitive = true; + //}); + + Configure(x => + { + x.DefaultDateTimeFormat = "yyyy-MM-dd HH:mm:ss"; + }); } diff --git a/src/Shentun.Utilities/DateTimeJsonConverter.cs b/src/Shentun.Utilities/DateTimeJsonConverter.cs index a33a4ab5..2bdfd6bb 100644 --- a/src/Shentun.Utilities/DateTimeJsonConverter.cs +++ b/src/Shentun.Utilities/DateTimeJsonConverter.cs @@ -1,4 +1,5 @@  +using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Diagnostics; @@ -13,11 +14,17 @@ namespace Shentun.Utilities public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) { + Shentun.Utilities.LogHelper.Logger.LogInformation("调试DateTimeRead" + reader.GetString()); if (reader.TokenType == JsonTokenType.String) { if (DateTime.TryParse(reader.GetString(), out DateTime date)) + { + Shentun.Utilities.LogHelper.Logger.LogInformation("调试DateTimeRead,解析成功" + date.ToString()); return date; + } + } + Shentun.Utilities.LogHelper.Logger.LogInformation("调试DateTimeRead,返回" + reader.GetDateTime().ToString()); return reader.GetDateTime(); } diff --git a/test/Shentun.Peis.Application.Tests/DiagnosisFunctionAppServiceTest.cs b/test/Shentun.Peis.Application.Tests/DiagnosisFunctionAppServiceTest.cs index fbde665f..97538021 100644 --- a/test/Shentun.Peis.Application.Tests/DiagnosisFunctionAppServiceTest.cs +++ b/test/Shentun.Peis.Application.Tests/DiagnosisFunctionAppServiceTest.cs @@ -35,13 +35,13 @@ namespace Shentun.Peis { var getDiagnosisResultRequestDto = new GetDiagnosisResultRequestDto() { - RegisterCheckId = new Guid("3a1272f5-689f-f6ea-3ab7-65e75e94b058"), + RegisterCheckId = new Guid("3a126d1b-7db5-1308-2b22-ff94fcd24b43"), Items = new List { new GetDiagnosisResultRequest_Item() { - ItemId = new Guid("3a126b34-dd13-c067-7b10-56cbd5fefedb"), - Result = "50.1" + ItemId = new Guid("3a126b34-de1b-3825-7dc4-747a3baeeaad"), + Result = ">=1.030" }, // new GetDiagnosisResultRequest_Item() @@ -66,33 +66,33 @@ namespace Shentun.Peis { var getDiagnosisResultRequestDto = new GetDiagnosisResultRequestDto() { - RegisterCheckId = new Guid("3a11ee70-0351-8970-5bc5-dc0f72e62339"), + RegisterCheckId = new Guid("3a12724f-d69f-d760-aeb4-b50c86153cf2"), Items = new List { new GetDiagnosisResultRequest_Item() { - ItemId = new Guid("3a0c6555-0dad-55b4-b59f-b11e8074cfdd"), + ItemId = new Guid("3a126b34-dc65-fba2-49ed-40413c36babb"), Result = "阳性" }, new GetDiagnosisResultRequest_Item() { - ItemId = new Guid("3a0c6558-e2a6-4aab-e6e9-d34957a7c3ed"), + ItemId = new Guid("3a126b34-dcda-b371-a13f-9f1efba0ee27"), Result = "阴性" }, new GetDiagnosisResultRequest_Item() { - ItemId = new Guid("3a0c655a-1fdc-2447-6dc9-d8ec8e110d2e"), + ItemId = new Guid("3a126b34-dd05-3a6f-57a3-ddb4583a80d3"), Result = "阳性" }, new GetDiagnosisResultRequest_Item() { - ItemId = new Guid("3a0c655c-1c9f-c8c5-150a-59b3cc351472"), + ItemId = new Guid("3a126b34-dd2c-6ab3-304b-95907175b2a6"), Result = "阴性" }, new GetDiagnosisResultRequest_Item() { - ItemId = new Guid("3a0c655d-6ab7-ca7e-3920-3b493ec83192"), + ItemId = new Guid("3a126b34-dd4b-5cec-1936-cae4df7d0647"), Result = "阳性" }, } @@ -525,7 +525,7 @@ namespace Shentun.Peis new ItemResultInput() { ItemId = Guid.NewGuid(), - ItemName = "乙肝表面抗体(抗-HBs)", + ItemName = "乙肝表面抗体(HBsAb)", Result = "阴性" }, new ItemResultInput() @@ -537,13 +537,13 @@ namespace Shentun.Peis new ItemResultInput() { ItemId = Guid.NewGuid(), - ItemName = "乙肝e抗体(抗-HBe)", + ItemName = "乙肝e抗体(HBeAb)", Result = "阴性" }, new ItemResultInput() { ItemId = Guid.NewGuid(), - ItemName = "乙肝核心抗体(抗-HBc)", + ItemName = "乙肝核心抗体(HBcAb)", Result = "阳性" } }; @@ -562,7 +562,7 @@ namespace Shentun.Peis { result1 = item.Result; } - if (item.ItemName == ""乙肝表面抗体(抗-HBs)"") + if (item.ItemName == ""乙肝表面抗体(抗HBs)"") { result2 = item.Result; } @@ -665,7 +665,7 @@ namespace Shentun.Peis { result1 = item.Result; } - if (item.ItemName == "乙肝表面抗体(抗-HBs)") + if (item.ItemName == "乙肝表面抗体(HBsAb)") { result2 = item.Result; } @@ -673,11 +673,11 @@ namespace Shentun.Peis { result3 = item.Result; } - if (item.ItemName == "乙肝e抗体(抗-HBe)") + if (item.ItemName == "乙肝e抗体(HBeAb)") { result4 = item.Result; } - if (item.ItemName == "乙肝核心抗体(抗-HBc)") + if (item.ItemName == "乙肝核心抗体(HBcAb)") { result5 = item.Result; } diff --git a/test/Shentun.Peis.Application.Tests/ImportLisResultAppServiceTest.cs b/test/Shentun.Peis.Application.Tests/ImportLisResultAppServiceTest.cs index 67233f0e..838e5355 100644 --- a/test/Shentun.Peis.Application.Tests/ImportLisResultAppServiceTest.cs +++ b/test/Shentun.Peis.Application.Tests/ImportLisResultAppServiceTest.cs @@ -36,27 +36,30 @@ namespace Shentun.Peis { new CreateImportLisResultDto() { - LisRequestNo = "T202404290063", - ItemId = new Guid("3a1203c2-c974-de89-ee07-3427f22fa8f7"), - Result = "10", - Unit = "g/l", - ReferenceRangeValue = "0~20" + LisRequestNo = "2405100389", + ItemId = new Guid("3a126b34-dc65-fba2-49ed-40413c36babb"), + Result = "阴性", + //Unit = "g/l", + //ReferenceRangeValue = "0~20" + CheckDoctorName = "测试" }, new CreateImportLisResultDto() { - LisRequestNo = "T202404290063", - ItemId = new Guid("3a1203c2-ccd1-e29b-84b4-26bd28bbe12e"), - Result = "5.63", - Unit = "ml", - ReferenceRangeValue = "10~50" + LisRequestNo = "2405100389", + ItemId = new Guid("3a126b34-dc9b-8893-ddf3-a4e05044145b"), + Result = "阴性", + //Unit = "ml", + //ReferenceRangeValue = "10~50" + CheckDoctorName = "测试" }, new CreateImportLisResultDto() { - LisRequestNo = "T202404290063", - ItemId = new Guid("3a1203c2-d3b1-61fe-94e9-1210fd5555ec"), - Result = "123.001", - Unit = "次", - ReferenceRangeValue = "10~60" + LisRequestNo = "2405100389", + ItemId = new Guid("3a126b34-dcda-b371-a13f-9f1efba0ee27"), + Result = "阴性", + //Unit = "次", + //ReferenceRangeValue = "10~60" + CheckDoctorName = "测试" } }; diff --git a/test/Shentun.Peis.Application.Tests/RegisterCheckAppServiceTest.cs b/test/Shentun.Peis.Application.Tests/RegisterCheckAppServiceTest.cs index 37f0ec27..c5f40fe5 100644 --- a/test/Shentun.Peis.Application.Tests/RegisterCheckAppServiceTest.cs +++ b/test/Shentun.Peis.Application.Tests/RegisterCheckAppServiceTest.cs @@ -35,22 +35,22 @@ namespace Shentun.Peis { var updateCheckResultDto = new UpdateCheckResultDto() { - RegisterCheckId = new Guid("3a123c55-07ad-f46e-8f6a-4c3b8c8a78de"), + RegisterCheckId = new Guid("3a127308-4538-54cb-b550-f6a732cf24b3"), // CheckDoctorId = "王医生", CheckDate = new DateTime(2022,1,1), RegisterCheckItems = new List { new UpdateRegisterCheckItemDetail() { - ItemId = new Guid("3a1203c2-6bcd-5490-19af-4663293fddd8"), + ItemId = new Guid("3a126b34-d64b-c4dc-b540-5b63b717a1fb"), Result = "未见异常" }, - new UpdateRegisterCheckItemDetail() - { - ItemId = new Guid("3a1203c2-6c55-b07a-79cd-bec4e231390b"), - Result = "未见异常" - }, + //new UpdateRegisterCheckItemDetail() + //{ + // ItemId = new Guid("3a1203c2-6c55-b07a-79cd-bec4e231390b"), + // Result = "未见异常" + //}, //new UpdateRegisterCheckItemDetail() //{ // ItemId = new Guid("3a0c655a-1fdc-2447-6dc9-d8ec8e110d2e"), diff --git a/test/Shentun.Peis.ColumnReference.Tests/LisResultImportPlugInsTest.cs b/test/Shentun.Peis.ColumnReference.Tests/LisResultImportPlugInsTest.cs index 71371bf7..5821d80e 100644 --- a/test/Shentun.Peis.ColumnReference.Tests/LisResultImportPlugInsTest.cs +++ b/test/Shentun.Peis.ColumnReference.Tests/LisResultImportPlugInsTest.cs @@ -28,7 +28,7 @@ namespace Shentun.Peis.PlugIns.Tests var item = await input.ImportResultAsync( new LisResultImportPlugInsInput() { - PatientRegisterId = new Guid("3a123c55-06de-4988-691c-448b5af468ff") + PatientRegisterId = new Guid("3a12724f-d5ce-6007-2647-16b7e9990c20") }); diff --git a/test/Shentun.Peis.ColumnReference.Tests/appsettings.json b/test/Shentun.Peis.ColumnReference.Tests/appsettings.json index 9c1b0b3c..5510730f 100644 --- a/test/Shentun.Peis.ColumnReference.Tests/appsettings.json +++ b/test/Shentun.Peis.ColumnReference.Tests/appsettings.json @@ -6,7 +6,7 @@ "ClientUrl": "http://localhost:9530", "CorsOrigins": "https://*.Peis.com,http://localhost:4200,http://localhost:9530,http://192.168.1.108:9530,http://localhost:8080,http://localhost:8081", "RedirectAllowedUrls": "http://localhost:9530", - "Sql": "select id::varchar as Code ,display_name as DisplayName ,simple_code as SimpleCode ,display_order as DisplayOrder from asbitem", + "Sql": "SELECT TMH AS LisRequestNo,TJBH AS PatientId,TESTID as ItemId,XMMC as ItemName,XMJG as Result,UNIT as Unit,CKFW AS ReferenceRangeValue FROM PORTAL56_LIS.VI_TJ_RESULT", "ColumnNames": "Code=编码,DisplayName=名称", "AsbitemColumnReferenceId": "", "LisUser": "admin", @@ -19,14 +19,16 @@ "ConnectionStrings": "User ID=TJ_LIS;Password=TJ_LIS;Data Source=(DESCRIPTION = (ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.13.13)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = HISDB)))", //"Sql": "select ZHID as Code ,ZHMC as DisplayName from PORTAL56_LIS.vi_tj_testitemgroup", - "Sql": "SELECT TMH AS LisRequestNo,TJBH AS PatientId,TESTID as ItemId,XMMC as ItemName,XMJG as Result ,UNIT as Unit ,CKFW AS FROM PORTAL56_LIS.VI_TJ_RESULT", + "Sql": "SELECT TMH AS LisRequestNo,TJBH AS PatientId,TESTID as ItemId,XMMC as ItemName,XMJG as Result,UNIT as Unit,CKFW AS ReferenceRangeValue ,JYRQ AS CheckDate,JYYS AS CheckDoctorName FROM PORTAL56_LIS.VI_TJ_RESULT", + "SqlKeyColumn": "TMH", "ColumnNames": "Code=编码,DisplayName=名称", + "ExecOrganizationUnitId": "96886d8c-24ea-497a-a39d-68ca648a5a57", "ItemColumnReferenceId": "3a125a29-ae4d-1ba8-db69-cffd0c629fc0" }, "ConnectionStrings": { //"Default": "Host=140.143.162.39;Port=5432;Database=ShentunPeis070703;User ID=postgres;Password=shentun123;", //"Default": "Host=localhost;Port=5432;Database=ShentunPeis1218;User ID=postgres;Password=wxd123;" - "Default": "Host=10.1.12.140;Port=5432;Database=ShentunPeis;User ID=postgres;Password=st123;" + "Default": "Host=10.1.12.140;Port=5432;Database=ShentunPeis0508;User ID=postgres;Password=st123;" }, "AuthServer": {