Browse Source

第三方接口

bjmzak
DESKTOP-G961P6V\Zhh 1 year 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
{
public class LisResultImportPlugInsGem : LisResultImportPlugInsBase
public class LisResultImportPlugInsGem : ImportLisResultPlugInsBase
{
public LisResultImportPlugInsGem(string parmValue) : base(parmValue)
{
}
public override Task<LisResultImportPlugInsOut> ImportResultAsync(LisResultImportPlugInsInput input)
public override Task<ImportLisResultPlugInsOut> ImportResultAsync(ImportLisResultPlugInsInput 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
{
public class PacsImportResultPlugInsGem : PacsImportResultPlugInsBase
public class PacsImportResultPlugInsGem : ImportPacsResultPlugInsBase
{
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)
//{
@ -76,14 +76,14 @@ namespace Shentun.Peis.PlugIns.Gem
var callResult = await CallAppServiceAsync<CreateImportPacsResultDto, object>("api/app/ImportLisResult/ImportResult", createImportPacsResultDto);
}
var result = new PacsImportResultPlugInsOut();
var result = new ImportPacsResultPlugInsOut();
return result;
}
public async Task<TOut> CallInterfaceServiceAsync<TInput, TOut>( TInput data)
{
string baseAddress = InterfaceWebApiAddress;
string baseAddress = InterfaceWebApiUrl;
using (var httpClientHandler = new 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 item = await input.ImportResultAsync(
new PacsImportResultPlugInsInput()
new ImportPacsResultPlugInsInput()
{
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",
"ColumnNames": "编码,名称",
"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": {
//"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
{
public class LisResultImportPlugInsBase : ThirdPlugInsBase
public class ImportLisResultPlugInsBase : ThirdPlugInsBase
{
protected string AppLisUser;
protected string AppLisPassword;
public LisResultImportPlugInsBase(string parmValue) : base(parmValue)
public ImportLisResultPlugInsBase(string parmValue) : base(parmValue)
{
AppLisUser = AppConfig.GetSection("App")
@ -22,13 +22,13 @@ namespace Shentun.Peis.PlugIns
AppLisPassword = AppConfig.GetSection("App")
.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;
}
public async Task<List<LisRequestForResultImportPlugIns>> GetLisRequestForResultImportPlugInssAsync(Guid patientRegisterId)
public async Task<List<LisRequestForImportResultPlugIns>> GetLisRequestForImportResultPlugInssAsync(Guid patientRegisterId)
{
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
where patient_register.id = @PatientRegisterId
";
var lisRequestForResultImportPlugInss = (await conn.QueryAsync<LisRequestForResultImportPlugIns>(sql,
var lisRequestForImportResultPlugInss = (await conn.QueryAsync<LisRequestForImportResultPlugIns>(sql,
new { PatientRegisterId = patientRegisterId })).ToList();
return lisRequestForResultImportPlugInss;
return lisRequestForImportResultPlugInss;
}
}
@ -86,7 +86,7 @@ ORDER BY register_check.patient_register_id
{
try
{
var result = ImportResultAsync(new LisResultImportPlugInsInput()
var result = ImportResultAsync(new ImportLisResultPlugInsInput()
{
PatientRegisterId = patientRegister.PatientRegisterId,
}).Result;

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

@ -19,20 +19,20 @@ using System.Threading.Tasks;
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)
{
throw new Exception("没有设置项目编码对照");
}
var result = new LisResultImportPlugInsOut();
var result = new ImportLisResultPlugInsOut();
var execOrganizationUnitIdStr = InterfaceConfig.GetSection("Interface").GetSection("ExecOrganizationUnitId").Value;
if (string.IsNullOrWhiteSpace(execOrganizationUnitIdStr))
{
@ -42,7 +42,7 @@ namespace Shentun.Peis.PlugIns
{
throw new Exception("执行科室配置不是有效的GUID值");
}
var lisRequests = await GetLisRequestForResultImportPlugInssAsync(input.PatientRegisterId);
var lisRequests = await GetLisRequestForImportResultPlugInssAsync(input.PatientRegisterId);
using (DbConnection conn = CreateInterfaceDbConnect())
{
@ -59,7 +59,7 @@ namespace Shentun.Peis.PlugIns
createImportLisResultDtos.Clear();
string sql;
sql = InterfaceSql + " where " + InterfaceSqlKeyColumn + " = '" + lisRequest.LisRequestNo + "'";
var lisResultFromInterfaces = (await conn.QueryAsync<LisResultFromInterface>(sql)).ToList();
var lisResultFromInterfaces = (await conn.QueryAsync<LisResultFromImportInterface>(sql)).ToList();
try
{
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
{
public class LisResultImportPlugInsInput
public class ImportLisResultPlugInsInput
{
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
{
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
{
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
{
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;
}
public async Task<List<PacsRequestForImportResultPlugIns>> GetPacsRequestForImportResultPlugInssAsync(Guid patientRegisterId)
@ -87,7 +87,7 @@ ORDER BY register_check.patient_register_id
{
try
{
var result = ImportResultAsync(new PacsImportResultPlugInsInput()
var result = ImportResultAsync(new ImportPacsResultPlugInsInput()
{
PatientRegisterId = patientRegister.PatientRegisterId,
}).Result;

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

@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace Shentun.Peis.PlugIns
{
public class PacsImportResultPlugInsInput
public class ImportPacsResultPlugInsInput
{
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
{
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
{
public class LisRequestForResultImportPlugIns
public class LisRequestForImportResultPlugIns
{
/// <summary>
/// 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
{
public class LisResultFromInterface
public class LisResultFromImportInterface
{
public string LisRequestNo { get; set; }
/// 项目编号

4
src/Shentun.ColumnReferencePlugIns/PlugInsBase.cs

@ -30,7 +30,7 @@ namespace Shentun.Peis.PlugIns
protected string InterfaceDbType;
protected string? InterfaceConnctionStr;
protected string? InterfaceWebApiAddress;
protected string? InterfaceWebApiUrl;
protected Guid ItemColumnReferenceId;
protected Guid AsbitemColumnReferenceId;
@ -63,7 +63,7 @@ namespace Shentun.Peis.PlugIns
InterfaceSql = InterfaceConfig.GetSection("Interface").GetSection("Sql").Value;
InterfaceSqlKeyColumn = InterfaceConfig.GetSection("Interface").GetSection("SqlKeyColumn").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;

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

@ -24,9 +24,9 @@ namespace Shentun.Peis.PlugIns.Tests
string filePath = DirectoryHelper.GetAppDirectory() + "/appsettings.json";
configParm = File.ReadAllText(filePath);
var input = new LisResultImportPlugInsDbBase(configParm);
var input = new ImportLisResultPlugInsDbBase(configParm);
var item = await input.ImportResultAsync(
new LisResultImportPlugInsInput()
new ImportLisResultPlugInsInput()
{
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",
"ColumnNames": "Code=编码,DisplayName=名称",
"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": {
//"Default": "Host=140.143.162.39;Port=5432;Database=ShentunPeis070703;User ID=postgres;Password=shentun123;",

Loading…
Cancel
Save