Browse Source

第三方接口

bjmzak
DESKTOP-G961P6V\Zhh 2 years ago
parent
commit
b48e5b3c6f
  1. 4
      ThirdPlugIns/Shentun.Peis.PlugIns.Gem/LisResultImportPlugInsGem.cs
  2. 8
      ThirdPlugIns/Shentun.Peis.PlugIns.Gem/PacsImportResultPlugInsGem.cs
  3. 16
      ThirdPlugIns/Shentun.Peis.PlugIns.Gem/test/Shentun.Peis.PlugIns.Gem.Test/PacsImportResultPlugInsGemTest.cs
  4. 7
      ThirdPlugIns/Shentun.Peis.PlugIns.Gem/test/Shentun.Peis.PlugIns.Gem.Test/appsettings.json
  5. 16
      src/Shentun.ColumnReferencePlugIns/ImportLisResultPlugInsBase.cs
  6. 12
      src/Shentun.ColumnReferencePlugIns/ImportLisResultPlugInsDbBase.cs
  7. 2
      src/Shentun.ColumnReferencePlugIns/ImportLisResultPlugInsInput.cs
  8. 2
      src/Shentun.ColumnReferencePlugIns/ImportLisResultPlugInsOut.cs
  9. 2
      src/Shentun.ColumnReferencePlugIns/ImportPacsResultPlugIns.cs
  10. 10
      src/Shentun.ColumnReferencePlugIns/ImportPacsResultPlugInsBase.cs
  11. 2
      src/Shentun.ColumnReferencePlugIns/ImportPacsResultPlugInsInput.cs
  12. 2
      src/Shentun.ColumnReferencePlugIns/ImportPacsResultPlugInsOut.cs
  13. 2
      src/Shentun.ColumnReferencePlugIns/LisRequestForImportResultPlugIns.cs
  14. 2
      src/Shentun.ColumnReferencePlugIns/LisResultFromImportInterface.cs
  15. 4
      src/Shentun.ColumnReferencePlugIns/PlugInsBase.cs
  16. 4
      test/Shentun.Peis.ColumnReference.Tests/LisResultImportPlugInsTest.cs
  17. 51
      test/Shentun.Peis.ColumnReference.Tests/PacsImportResultPlugInsTest.cs
  18. 8
      test/Shentun.Peis.ColumnReference.Tests/appsettings.json

4
ThirdPlugIns/Shentun.Peis.PlugIns.Gem/LisResultImportPlugInsGem.cs

@ -6,12 +6,12 @@ using System.Threading.Tasks;
namespace Shentun.Peis.PlugIns.Gem namespace Shentun.Peis.PlugIns.Gem
{ {
public class LisResultImportPlugInsGem : LisResultImportPlugInsBase
public class LisResultImportPlugInsGem : ImportLisResultPlugInsBase
{ {
public LisResultImportPlugInsGem(string parmValue) : base(parmValue) public LisResultImportPlugInsGem(string parmValue) : base(parmValue)
{ {
} }
public override Task<LisResultImportPlugInsOut> ImportResultAsync(LisResultImportPlugInsInput input)
public override Task<ImportLisResultPlugInsOut> ImportResultAsync(ImportLisResultPlugInsInput input)
{ {
return base.ImportResultAsync(input); return base.ImportResultAsync(input);
} }

8
ThirdPlugIns/Shentun.Peis.PlugIns.Gem/PacsImportResultPlugInsGem.cs

@ -12,13 +12,13 @@ using Shentun.Peis.ImportLisResults;
namespace Shentun.Peis.PlugIns.Gem namespace Shentun.Peis.PlugIns.Gem
{ {
public class PacsImportResultPlugInsGem : PacsImportResultPlugInsBase
public class PacsImportResultPlugInsGem : ImportPacsResultPlugInsBase
{ {
public PacsImportResultPlugInsGem(string parmValue) : base(parmValue) public PacsImportResultPlugInsGem(string parmValue) : base(parmValue)
{ {
} }
public override async Task<PacsImportResultPlugInsOut> ImportResultAsync(PacsImportResultPlugInsInput input)
public override async Task<ImportPacsResultPlugInsOut> ImportResultAsync(ImportPacsResultPlugInsInput input)
{ {
//if (DepartmentColumnReferenceId == null || DepartmentColumnReferenceId == Guid.Empty) //if (DepartmentColumnReferenceId == null || DepartmentColumnReferenceId == Guid.Empty)
//{ //{
@ -76,14 +76,14 @@ namespace Shentun.Peis.PlugIns.Gem
var callResult = await CallAppServiceAsync<CreateImportPacsResultDto, object>("api/app/ImportLisResult/ImportResult", createImportPacsResultDto); var callResult = await CallAppServiceAsync<CreateImportPacsResultDto, object>("api/app/ImportLisResult/ImportResult", createImportPacsResultDto);
} }
var result = new PacsImportResultPlugInsOut();
var result = new ImportPacsResultPlugInsOut();
return result; return result;
} }
public async Task<TOut> CallInterfaceServiceAsync<TInput, TOut>( TInput data) public async Task<TOut> CallInterfaceServiceAsync<TInput, TOut>( TInput data)
{ {
string baseAddress = InterfaceWebApiAddress;
string baseAddress = InterfaceWebApiUrl;
using (var httpClientHandler = new HttpClientHandler()) using (var httpClientHandler = new HttpClientHandler())
{ {
using (var httpClient = new HttpClient(httpClientHandler)) using (var httpClient = new HttpClient(httpClientHandler))

16
ThirdPlugIns/Shentun.Peis.PlugIns.Gem/test/Shentun.Peis.PlugIns.Gem.Test/PacsImportResultPlugInsGemTest.cs

@ -26,12 +26,26 @@ namespace Shentun.Peis.PlugIns.Gem.Test
var input = new PacsImportResultPlugInsGem(configParm); var input = new PacsImportResultPlugInsGem(configParm);
var item = await input.ImportResultAsync( var item = await input.ImportResultAsync(
new PacsImportResultPlugInsInput()
new ImportPacsResultPlugInsInput()
{ {
PatientRegisterId = new Guid("3a1277ab-376c-fbdb-4419-92bbb4594607") PatientRegisterId = new Guid("3a1277ab-376c-fbdb-4419-92bbb4594607")
}); });
}
[Fact]
public async Task DoWorkAsync()
{
string configParm;
string filePath = DirectoryHelper.GetAppDirectory() + "/appsettings.json";
configParm = File.ReadAllText(filePath);
var input = new PacsImportResultPlugInsGem(configParm);
await input.DoWork();
} }
} }
} }

7
ThirdPlugIns/Shentun.Peis.PlugIns.Gem/test/Shentun.Peis.PlugIns.Gem.Test/appsettings.json

@ -17,7 +17,12 @@
"Sql": "select ZHID as Code ,ZHMC as DisplayName from PORTAL56_LIS.vi_tj_testitemgroup", "Sql": "select ZHID as Code ,ZHMC as DisplayName from PORTAL56_LIS.vi_tj_testitemgroup",
"ColumnNames": "编码,名称", "ColumnNames": "编码,名称",
"EndpointAddress": "http://10.1.12.140:8082/gemse-tj/services/bstj.bstjHttpSoap11Endpoint", "EndpointAddress": "http://10.1.12.140:8082/gemse-tj/services/bstj.bstjHttpSoap11Endpoint",
"WebApiAddress": "http://10.1.13.18:8380/ris/findReportList"
"WebApiUrl": "http://10.1.13.18:8380/ris/findReportList",
"Scheduler": {
"IsActive": "Y",
"Corn": "*/5 * * * * *",
"QueryDays": 10
}
}, },
"ConnectionStrings": { "ConnectionStrings": {
//"Default": "Host=140.143.162.39;Port=5432;Database=ShentunPeis070703;User ID=postgres;Password=shentun123;", //"Default": "Host=140.143.162.39;Port=5432;Database=ShentunPeis070703;User ID=postgres;Password=shentun123;",

16
src/Shentun.ColumnReferencePlugIns/LisResultImportPlugInsBase.cs → src/Shentun.ColumnReferencePlugIns/ImportLisResultPlugInsBase.cs

@ -9,12 +9,12 @@ using System.Threading.Tasks;
namespace Shentun.Peis.PlugIns namespace Shentun.Peis.PlugIns
{ {
public class LisResultImportPlugInsBase : ThirdPlugInsBase
public class ImportLisResultPlugInsBase : ThirdPlugInsBase
{ {
protected string AppLisUser; protected string AppLisUser;
protected string AppLisPassword; protected string AppLisPassword;
public LisResultImportPlugInsBase(string parmValue) : base(parmValue)
public ImportLisResultPlugInsBase(string parmValue) : base(parmValue)
{ {
AppLisUser = AppConfig.GetSection("App") AppLisUser = AppConfig.GetSection("App")
@ -22,13 +22,13 @@ namespace Shentun.Peis.PlugIns
AppLisPassword = AppConfig.GetSection("App") AppLisPassword = AppConfig.GetSection("App")
.GetSection("LisPassword").Value; .GetSection("LisPassword").Value;
} }
public virtual async Task<LisResultImportPlugInsOut> ImportResultAsync(LisResultImportPlugInsInput input)
public virtual async Task<ImportLisResultPlugInsOut> ImportResultAsync(ImportLisResultPlugInsInput input)
{ {
var result = new LisResultImportPlugInsOut();
var result = new ImportLisResultPlugInsOut();
return result; return result;
} }
public async Task<List<LisRequestForResultImportPlugIns>> GetLisRequestForResultImportPlugInssAsync(Guid patientRegisterId)
public async Task<List<LisRequestForImportResultPlugIns>> GetLisRequestForImportResultPlugInssAsync(Guid patientRegisterId)
{ {
using (DbConnection conn = new NpgsqlConnection(AppConnctionStr)) using (DbConnection conn = new NpgsqlConnection(AppConnctionStr))
{ {
@ -42,9 +42,9 @@ namespace Shentun.Peis.PlugIns
JOIN lis_request on register_check_asbitem.lis_request_id = lis_request.id JOIN lis_request on register_check_asbitem.lis_request_id = lis_request.id
where patient_register.id = @PatientRegisterId where patient_register.id = @PatientRegisterId
"; ";
var lisRequestForResultImportPlugInss = (await conn.QueryAsync<LisRequestForResultImportPlugIns>(sql,
var lisRequestForImportResultPlugInss = (await conn.QueryAsync<LisRequestForImportResultPlugIns>(sql,
new { PatientRegisterId = patientRegisterId })).ToList(); new { PatientRegisterId = patientRegisterId })).ToList();
return lisRequestForResultImportPlugInss;
return lisRequestForImportResultPlugInss;
} }
} }
@ -86,7 +86,7 @@ ORDER BY register_check.patient_register_id
{ {
try try
{ {
var result = ImportResultAsync(new LisResultImportPlugInsInput()
var result = ImportResultAsync(new ImportLisResultPlugInsInput()
{ {
PatientRegisterId = patientRegister.PatientRegisterId, PatientRegisterId = patientRegister.PatientRegisterId,
}).Result; }).Result;

12
src/Shentun.ColumnReferencePlugIns/LisResultImportPlugInsDbBase.cs → src/Shentun.ColumnReferencePlugIns/ImportLisResultPlugInsDbBase.cs

@ -19,20 +19,20 @@ using System.Threading.Tasks;
namespace Shentun.Peis.PlugIns namespace Shentun.Peis.PlugIns
{ {
public class LisResultImportPlugInsDbBase : LisResultImportPlugInsBase
public class ImportLisResultPlugInsDbBase : ImportLisResultPlugInsBase
{ {
public LisResultImportPlugInsDbBase(string parmValue) : base(parmValue)
public ImportLisResultPlugInsDbBase(string parmValue) : base(parmValue)
{ {
} }
public override async Task<LisResultImportPlugInsOut> ImportResultAsync(LisResultImportPlugInsInput input)
public override async Task<ImportLisResultPlugInsOut> ImportResultAsync(ImportLisResultPlugInsInput input)
{ {
if (ItemColumnReferenceId == null || ItemColumnReferenceId == Guid.Empty) if (ItemColumnReferenceId == null || ItemColumnReferenceId == Guid.Empty)
{ {
throw new Exception("没有设置项目编码对照"); throw new Exception("没有设置项目编码对照");
} }
var result = new LisResultImportPlugInsOut();
var result = new ImportLisResultPlugInsOut();
var execOrganizationUnitIdStr = InterfaceConfig.GetSection("Interface").GetSection("ExecOrganizationUnitId").Value; var execOrganizationUnitIdStr = InterfaceConfig.GetSection("Interface").GetSection("ExecOrganizationUnitId").Value;
if (string.IsNullOrWhiteSpace(execOrganizationUnitIdStr)) if (string.IsNullOrWhiteSpace(execOrganizationUnitIdStr))
{ {
@ -42,7 +42,7 @@ namespace Shentun.Peis.PlugIns
{ {
throw new Exception("执行科室配置不是有效的GUID值"); throw new Exception("执行科室配置不是有效的GUID值");
} }
var lisRequests = await GetLisRequestForResultImportPlugInssAsync(input.PatientRegisterId);
var lisRequests = await GetLisRequestForImportResultPlugInssAsync(input.PatientRegisterId);
using (DbConnection conn = CreateInterfaceDbConnect()) using (DbConnection conn = CreateInterfaceDbConnect())
{ {
@ -59,7 +59,7 @@ namespace Shentun.Peis.PlugIns
createImportLisResultDtos.Clear(); createImportLisResultDtos.Clear();
string sql; string sql;
sql = InterfaceSql + " where " + InterfaceSqlKeyColumn + " = '" + lisRequest.LisRequestNo + "'"; sql = InterfaceSql + " where " + InterfaceSqlKeyColumn + " = '" + lisRequest.LisRequestNo + "'";
var lisResultFromInterfaces = (await conn.QueryAsync<LisResultFromInterface>(sql)).ToList();
var lisResultFromInterfaces = (await conn.QueryAsync<LisResultFromImportInterface>(sql)).ToList();
try try
{ {
foreach (var lisResult in lisResultFromInterfaces) foreach (var lisResult in lisResultFromInterfaces)

2
src/Shentun.ColumnReferencePlugIns/LisResultImportPlugInsInput.cs → src/Shentun.ColumnReferencePlugIns/ImportLisResultPlugInsInput.cs

@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace Shentun.Peis.PlugIns namespace Shentun.Peis.PlugIns
{ {
public class LisResultImportPlugInsInput
public class ImportLisResultPlugInsInput
{ {
public Guid PatientRegisterId { get; set; } public Guid PatientRegisterId { get; set; }

2
src/Shentun.ColumnReferencePlugIns/LisResultImportPlugInsOut.cs → src/Shentun.ColumnReferencePlugIns/ImportLisResultPlugInsOut.cs

@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace Shentun.Peis.PlugIns namespace Shentun.Peis.PlugIns
{ {
public class LisResultImportPlugInsOut
public class ImportLisResultPlugInsOut
{ {
} }
} }

2
src/Shentun.ColumnReferencePlugIns/PacsImportResultPlugIns.cs → src/Shentun.ColumnReferencePlugIns/ImportPacsResultPlugIns.cs

@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace Shentun.Peis.PlugIns namespace Shentun.Peis.PlugIns
{ {
internal class PacsImportResultPlugIns
internal class ImportPacsResultPlugIns
{ {
} }
} }

10
src/Shentun.ColumnReferencePlugIns/PacsImportResultPlugInsBase.cs → src/Shentun.ColumnReferencePlugIns/ImportPacsResultPlugInsBase.cs

@ -9,15 +9,15 @@ using System.Threading.Tasks;
namespace Shentun.Peis.PlugIns namespace Shentun.Peis.PlugIns
{ {
public class PacsImportResultPlugInsBase : ThirdPlugInsBase
public class ImportPacsResultPlugInsBase : ThirdPlugInsBase
{ {
public PacsImportResultPlugInsBase(string parmValue) : base(parmValue)
public ImportPacsResultPlugInsBase(string parmValue) : base(parmValue)
{ {
} }
public virtual async Task<PacsImportResultPlugInsOut> ImportResultAsync(PacsImportResultPlugInsInput input)
public virtual async Task<ImportPacsResultPlugInsOut> ImportResultAsync(ImportPacsResultPlugInsInput input)
{ {
var result = new PacsImportResultPlugInsOut();
var result = new ImportPacsResultPlugInsOut();
return result; return result;
} }
public async Task<List<PacsRequestForImportResultPlugIns>> GetPacsRequestForImportResultPlugInssAsync(Guid patientRegisterId) public async Task<List<PacsRequestForImportResultPlugIns>> GetPacsRequestForImportResultPlugInssAsync(Guid patientRegisterId)
@ -87,7 +87,7 @@ ORDER BY register_check.patient_register_id
{ {
try try
{ {
var result = ImportResultAsync(new PacsImportResultPlugInsInput()
var result = ImportResultAsync(new ImportPacsResultPlugInsInput()
{ {
PatientRegisterId = patientRegister.PatientRegisterId, PatientRegisterId = patientRegister.PatientRegisterId,
}).Result; }).Result;

2
src/Shentun.ColumnReferencePlugIns/PacsImportResultPlugInsInput.cs → src/Shentun.ColumnReferencePlugIns/ImportPacsResultPlugInsInput.cs

@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace Shentun.Peis.PlugIns namespace Shentun.Peis.PlugIns
{ {
public class PacsImportResultPlugInsInput
public class ImportPacsResultPlugInsInput
{ {
public Guid PatientRegisterId { get; set; } public Guid PatientRegisterId { get; set; }
} }

2
src/Shentun.ColumnReferencePlugIns/PacsImportResultPlugInsOut.cs → src/Shentun.ColumnReferencePlugIns/ImportPacsResultPlugInsOut.cs

@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace Shentun.Peis.PlugIns namespace Shentun.Peis.PlugIns
{ {
public class PacsImportResultPlugInsOut
public class ImportPacsResultPlugInsOut
{ {
} }
} }

2
src/Shentun.ColumnReferencePlugIns/LisRequestForResultImportPlugIns.cs → src/Shentun.ColumnReferencePlugIns/LisRequestForImportResultPlugIns.cs

@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace Shentun.Peis.PlugIns namespace Shentun.Peis.PlugIns
{ {
public class LisRequestForResultImportPlugIns
public class LisRequestForImportResultPlugIns
{ {
/// <summary> /// <summary>
/// LisRequest的ID /// LisRequest的ID

2
src/Shentun.ColumnReferencePlugIns/LisResultFromInterface.cs → src/Shentun.ColumnReferencePlugIns/LisResultFromImportInterface.cs

@ -8,7 +8,7 @@ using System.Threading.Tasks;
namespace Shentun.Peis.PlugIns namespace Shentun.Peis.PlugIns
{ {
public class LisResultFromInterface
public class LisResultFromImportInterface
{ {
public string LisRequestNo { get; set; } public string LisRequestNo { get; set; }
/// 项目编号 /// 项目编号

4
src/Shentun.ColumnReferencePlugIns/PlugInsBase.cs

@ -30,7 +30,7 @@ namespace Shentun.Peis.PlugIns
protected string InterfaceDbType; protected string InterfaceDbType;
protected string? InterfaceConnctionStr; protected string? InterfaceConnctionStr;
protected string? InterfaceWebApiAddress;
protected string? InterfaceWebApiUrl;
protected Guid ItemColumnReferenceId; protected Guid ItemColumnReferenceId;
protected Guid AsbitemColumnReferenceId; protected Guid AsbitemColumnReferenceId;
@ -63,7 +63,7 @@ namespace Shentun.Peis.PlugIns
InterfaceSql = InterfaceConfig.GetSection("Interface").GetSection("Sql").Value; InterfaceSql = InterfaceConfig.GetSection("Interface").GetSection("Sql").Value;
InterfaceSqlKeyColumn = InterfaceConfig.GetSection("Interface").GetSection("SqlKeyColumn").Value; InterfaceSqlKeyColumn = InterfaceConfig.GetSection("Interface").GetSection("SqlKeyColumn").Value;
InterfaceDbType = InterfaceConfig.GetSection("Interface").GetSection("DbType").Value; InterfaceDbType = InterfaceConfig.GetSection("Interface").GetSection("DbType").Value;
InterfaceWebApiAddress = InterfaceConfig.GetSection("Interface").GetSection("WebApiAddress").Value;
InterfaceWebApiUrl = InterfaceConfig.GetSection("Interface").GetSection("WebApiUrl").Value;
InterfaceConnctionStr = InterfaceConfig.GetSection("Interface").GetSection("ConnectionStrings").Value; InterfaceConnctionStr = InterfaceConfig.GetSection("Interface").GetSection("ConnectionStrings").Value;

4
test/Shentun.Peis.ColumnReference.Tests/LisResultImportPlugInsTest.cs

@ -24,9 +24,9 @@ namespace Shentun.Peis.PlugIns.Tests
string filePath = DirectoryHelper.GetAppDirectory() + "/appsettings.json"; string filePath = DirectoryHelper.GetAppDirectory() + "/appsettings.json";
configParm = File.ReadAllText(filePath); configParm = File.ReadAllText(filePath);
var input = new LisResultImportPlugInsDbBase(configParm);
var input = new ImportLisResultPlugInsDbBase(configParm);
var item = await input.ImportResultAsync( var item = await input.ImportResultAsync(
new LisResultImportPlugInsInput()
new ImportLisResultPlugInsInput()
{ {
PatientRegisterId = new Guid("3a126d1d-6974-a1c5-0e98-30241c2e5243") PatientRegisterId = new Guid("3a126d1d-6974-a1c5-0e98-30241c2e5243")
}); });

51
test/Shentun.Peis.ColumnReference.Tests/PacsImportResultPlugInsTest.cs

@ -0,0 +1,51 @@
using Shentun.Utilities;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xunit.Abstractions;
namespace Shentun.Peis.PlugIns.Tests
{
public class PacsImportResultPlugInsTest
{
private readonly ITestOutputHelper _output;
public PacsImportResultPlugInsTest(ITestOutputHelper testOutputHelper)
{
_output = testOutputHelper;
}
[Fact]
public async Task ImportResultAsync()
{
string configParm;
string filePath = DirectoryHelper.GetAppDirectory() + "/appsettings.json";
configParm = File.ReadAllText(filePath);
var input = new ImportPacsResultPlugInsBase(configParm);
var list = await input.GetRequestPatientRegisters(
30);
foreach(var item in list )
{
_output.WriteLine(item.PatientRegisterId.ToString());
}
}
[Fact]
public async Task DoWorkAsync()
{
string configParm;
string filePath = DirectoryHelper.GetAppDirectory() + "/appsettings.json";
configParm = File.ReadAllText(filePath);
var input = new ImportPacsResultPlugInsBase(configParm);
await input.DoWork();
}
}
}

8
test/Shentun.Peis.ColumnReference.Tests/appsettings.json

@ -23,7 +23,13 @@
"SqlKeyColumn": "TMH", "SqlKeyColumn": "TMH",
"ColumnNames": "Code=编码,DisplayName=名称", "ColumnNames": "Code=编码,DisplayName=名称",
"ExecOrganizationUnitId": "96886d8c-24ea-497a-a39d-68ca648a5a57", "ExecOrganizationUnitId": "96886d8c-24ea-497a-a39d-68ca648a5a57",
"ItemColumnReferenceId": "3a125a29-ae4d-1ba8-db69-cffd0c629fc0"
"ItemColumnReferenceId": "3a125a29-ae4d-1ba8-db69-cffd0c629fc0",
"WebApiUrl": "http://10.1.13.18:8380/ris/findReportList",
"Scheduler": {
"IsActive": "Y",
"Corn": "*/5 * * * * *",
"QueryDays": 10
}
}, },
"ConnectionStrings": { "ConnectionStrings": {
//"Default": "Host=140.143.162.39;Port=5432;Database=ShentunPeis070703;User ID=postgres;Password=shentun123;", //"Default": "Host=140.143.162.39;Port=5432;Database=ShentunPeis070703;User ID=postgres;Password=shentun123;",

Loading…
Cancel
Save