From 90b4705234d5dcfb3f7332f5a9aa35cd1ead438c Mon Sep 17 00:00:00 2001 From: Suphonchai Phoonsawat Date: Thu, 13 Jul 2023 14:16:15 +0700 Subject: [PATCH] =?UTF-8?q?=E0=B8=A2=E0=B9=89=E0=B8=B2=E0=B8=A2=20middlewa?= =?UTF-8?q?re=20=E0=B9=84=E0=B8=9B=E0=B9=84=E0=B8=A7=E0=B9=89=E0=B8=AB?= =?UTF-8?q?=E0=B8=A5=E0=B8=B1=E0=B8=87=20https=20redirect=20=E0=B9=80?= =?UTF-8?q?=E0=B8=9E=E0=B8=B7=E0=B9=88=E0=B8=AD=E0=B9=83=E0=B8=AB=E0=B9=89?= =?UTF-8?q?=E0=B9=83=E0=B8=8A=E0=B9=89=E0=B8=AB=E0=B8=99=E0=B9=89=E0=B8=B2?= =?UTF-8?q?=20logn=20keycloak=20=E0=B9=83=E0=B8=99=20wwwroot=20=E0=B9=84?= =?UTF-8?q?=E0=B8=94=E0=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BMA.EHR.Command.Service/Program.cs | 3 +- .../BMA - Backup.EHR.MetaData.Service.csproj | 43 ++++++++++ BMA.EHR.MetaData.Service/Program.cs | 7 +- BMA.EHR.MetaData.Service/appsettings.json | 39 +++++---- ...up.EHR.OrganizationEmployee.Service.csproj | 42 ++++++++++ .../ErrorHandlerMiddleware.cs | 84 ------------------- .../Program.cs | 4 +- .../BMA - Backup.EHR.Placement.Service.csproj | 42 ++++++++++ BMA.EHR.Placement.Service/Program.cs | 3 +- .../BMA - Backup.EHR.Report.Service.csproj | 52 ++++++++++++ .../BMA.EHR.Report.Service.csproj | 36 ++++---- BMA.EHR.Report.Service/Program.cs | 3 +- 12 files changed, 229 insertions(+), 129 deletions(-) create mode 100644 BMA.EHR.MetaData.Service/BMA - Backup.EHR.MetaData.Service.csproj create mode 100644 BMA.EHR.OrganizationEmployee.Service/BMA - Backup.EHR.OrganizationEmployee.Service.csproj delete mode 100644 BMA.EHR.OrganizationEmployee.Service/ErrorHandlerMiddleware.cs create mode 100644 BMA.EHR.Placement.Service/BMA - Backup.EHR.Placement.Service.csproj create mode 100644 BMA.EHR.Report.Service/BMA - Backup.EHR.Report.Service.csproj diff --git a/BMA.EHR.Command.Service/Program.cs b/BMA.EHR.Command.Service/Program.cs index 8b0e1301..fbd2f938 100644 --- a/BMA.EHR.Command.Service/Program.cs +++ b/BMA.EHR.Command.Service/Program.cs @@ -111,7 +111,7 @@ var app = builder.Build(); app.MapHealthChecks("/health"); - app.UseMiddleware(); + app.UseHttpsRedirection(); app.UseCors(); app.UseAuthentication(); @@ -119,6 +119,7 @@ var app = builder.Build(); app.UseDefaultFiles(); app.UseStaticFiles(); app.MapControllers(); + app.UseMiddleware(); // apply migrations await using var scope = app.Services.CreateAsyncScope(); diff --git a/BMA.EHR.MetaData.Service/BMA - Backup.EHR.MetaData.Service.csproj b/BMA.EHR.MetaData.Service/BMA - Backup.EHR.MetaData.Service.csproj new file mode 100644 index 00000000..87e2fdaf --- /dev/null +++ b/BMA.EHR.MetaData.Service/BMA - Backup.EHR.MetaData.Service.csproj @@ -0,0 +1,43 @@ + + + + net7.0 + enable + enable + aba35659-832c-421f-a7c1-80acb6ab6f0c + Linux + True + . + BMA.EHR.MetaData.Service + + + + + + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + + + + + + + + + + + + + + diff --git a/BMA.EHR.MetaData.Service/Program.cs b/BMA.EHR.MetaData.Service/Program.cs index 8e4b7351..682558f1 100644 --- a/BMA.EHR.MetaData.Service/Program.cs +++ b/BMA.EHR.MetaData.Service/Program.cs @@ -111,7 +111,7 @@ var app = builder.Build(); app.MapHealthChecks("/health"); - app.UseMiddleware(); + app.UseHttpsRedirection(); app.UseCors(); app.UseAuthentication(); @@ -119,9 +119,10 @@ var app = builder.Build(); app.UseDefaultFiles(); app.UseStaticFiles(); app.MapControllers(); + app.UseMiddleware(); - // apply migrations - await using var scope = app.Services.CreateAsyncScope(); + // apply migrations + await using var scope = app.Services.CreateAsyncScope(); await using var db = scope.ServiceProvider.GetRequiredService(); await db.Database.MigrateAsync(); diff --git a/BMA.EHR.MetaData.Service/appsettings.json b/BMA.EHR.MetaData.Service/appsettings.json index 81d5df2d..22f5980b 100644 --- a/BMA.EHR.MetaData.Service/appsettings.json +++ b/BMA.EHR.MetaData.Service/appsettings.json @@ -1,36 +1,35 @@ { "Serilog": { - "MinimumLevel": { - "Default": "Information", - "Override": { - "Microsoft": "Information", - "System": "Warning" + "MinimumLevel": { + "Default": "Information", + "Override": { + "Microsoft": "Information", + "System": "Warning" + } } - } }, "ElasticConfiguration": { - "Uri": "http://localhost:9200" + "Uri": "http://localhost:9200" }, "AllowedHosts": "*", "ConnectionStrings": { - //"DefaultConnection": "User Id=sys;Password=P@ssw0rd;DBA Privilege=SYSDBA;Data Source=localhost:1521/ORCLCDB", - "DefaultConnection": "server=127.0.0.1;user=root;password=P@ssw0rd;port=3308;database=bma_ehr_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;" + //"DefaultConnection": "User Id=sys;Password=P@ssw0rd;DBA Privilege=SYSDBA;Data Source=localhost:1521/ORCLCDB", + "DefaultConnection": "server=127.0.0.1;user=root;password=P@ssw0rd;port=3308;database=bma_ehr_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;" }, "Jwt": { - "Key": "HP-FnQMUj9msHMSD3T9HtdEnphAKoCJLEl85CIqROFI", - "Issuer": "https://identity.frappet.com/realms/bma-ehr" + "Key": "HP-FnQMUj9msHMSD3T9HtdEnphAKoCJLEl85CIqROFI", + "Issuer": "https://identity.frappet.com/realms/bma-ehr" }, "EPPlus": { - "ExcelPackage": { - "LicenseContext": "NonCommercial" - } + "ExcelPackage": { + "LicenseContext": "NonCommercial" + } }, "MinIO": { - "Endpoint": "https://s3.frappet.com/", - "AccessKey": "frappet", - "SecretKey": "P@ssw0rd", - "BucketName": "bma-recruit" + "Endpoint": "https://s3.frappet.com/", + "AccessKey": "frappet", + "SecretKey": "P@ssw0rd", + "BucketName": "bma-recruit" }, "Protocol": "HTTPS" - } - \ No newline at end of file +} diff --git a/BMA.EHR.OrganizationEmployee.Service/BMA - Backup.EHR.OrganizationEmployee.Service.csproj b/BMA.EHR.OrganizationEmployee.Service/BMA - Backup.EHR.OrganizationEmployee.Service.csproj new file mode 100644 index 00000000..10fafc6a --- /dev/null +++ b/BMA.EHR.OrganizationEmployee.Service/BMA - Backup.EHR.OrganizationEmployee.Service.csproj @@ -0,0 +1,42 @@ + + + + net7.0 + enable + enable + 3d68209a-41b1-4d00-914e-b895d74467c0 + Linux + True + . + BMA.EHR.OrganizationEmployee.Service + + + + + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + + + + + + + + + + + + + + diff --git a/BMA.EHR.OrganizationEmployee.Service/ErrorHandlerMiddleware.cs b/BMA.EHR.OrganizationEmployee.Service/ErrorHandlerMiddleware.cs deleted file mode 100644 index c1888d18..00000000 --- a/BMA.EHR.OrganizationEmployee.Service/ErrorHandlerMiddleware.cs +++ /dev/null @@ -1,84 +0,0 @@ -using BMA.EHR.Domain.Common; -using BMA.EHR.Domain.Shared; -using System.Net; - -namespace BMA.EHR.OrganizationEmployee.Service -{ - public class ErrorHandlerMiddleware - { - #region " Fields " - - private readonly RequestDelegate _next; - - #endregion - - #region " Constructor and Destructor " - - public ErrorHandlerMiddleware(RequestDelegate next) - { - _next = next; - } - - #endregion - - #region " Methods " - - public async Task Invoke(HttpContext context) - { - try - { - await _next(context); - - var response = context.Response; - response.ContentType = "application/json"; - - var responseModel = new ResponseObject(); - responseModel.Status = response.StatusCode; - - if (responseModel.Status == (int)HttpStatusCode.Unauthorized) - { - responseModel.Message = GlobalMessages.NotAuthorized; - await response.WriteAsJsonAsync(responseModel); - } - if (responseModel.Status == (int)HttpStatusCode.Forbidden) - { - responseModel.Message = GlobalMessages.ForbiddenAccess; - await response.WriteAsJsonAsync(responseModel); - } - } - catch (Exception error) - { - var response = context.Response; - response.ContentType = "application/json"; - - var responseModel = new ResponseObject(); - responseModel.Status = response.StatusCode; - var msg = error.Message; - var inner = error.InnerException; - while (inner != null) - { - msg += $" {inner.Message}\r\n"; - inner = inner.InnerException; - } - responseModel.Result = msg; - - switch (response.StatusCode) - { - case (int)HttpStatusCode.Unauthorized: - responseModel.Message = GlobalMessages.NotAuthorized; - break; - case (int)HttpStatusCode.Forbidden: - responseModel.Message = GlobalMessages.ForbiddenAccess; - break; - default: - responseModel.Status = (int)HttpStatusCode.InternalServerError; - responseModel.Message = GlobalMessages.ExceptionOccured; - break; - } - await response.WriteAsJsonAsync(responseModel); - } - } - - #endregion - } -} diff --git a/BMA.EHR.OrganizationEmployee.Service/Program.cs b/BMA.EHR.OrganizationEmployee.Service/Program.cs index 815dd1b0..22d63ad9 100644 --- a/BMA.EHR.OrganizationEmployee.Service/Program.cs +++ b/BMA.EHR.OrganizationEmployee.Service/Program.cs @@ -1,4 +1,5 @@ using BMA.EHR.Application; +using BMA.EHR.Domain.Middlewares; using BMA.EHR.Infrastructure; using BMA.EHR.Infrastructure.Persistence; using BMA.EHR.OrganizationEmployee.Service; @@ -110,7 +111,7 @@ var app = builder.Build(); app.MapHealthChecks("/health"); - //app.UseMiddleware(); + app.UseHttpsRedirection(); app.UseCors(); app.UseAuthentication(); @@ -118,6 +119,7 @@ var app = builder.Build(); app.UseDefaultFiles(); app.UseStaticFiles(); app.MapControllers(); + app.UseMiddleware(); // apply migrations await using var scope = app.Services.CreateAsyncScope(); diff --git a/BMA.EHR.Placement.Service/BMA - Backup.EHR.Placement.Service.csproj b/BMA.EHR.Placement.Service/BMA - Backup.EHR.Placement.Service.csproj new file mode 100644 index 00000000..85035e7d --- /dev/null +++ b/BMA.EHR.Placement.Service/BMA - Backup.EHR.Placement.Service.csproj @@ -0,0 +1,42 @@ + + + + net7.0 + enable + enable + 9d934a68-d1dd-449d-bde0-3078a774ad0f + Linux + True + . + BMA.EHR.Placement.Service + + + + + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + + + + + + + + + + + + + + diff --git a/BMA.EHR.Placement.Service/Program.cs b/BMA.EHR.Placement.Service/Program.cs index 51d19f67..1d0769c6 100644 --- a/BMA.EHR.Placement.Service/Program.cs +++ b/BMA.EHR.Placement.Service/Program.cs @@ -111,7 +111,7 @@ var app = builder.Build(); app.MapHealthChecks("/health"); - app.UseMiddleware(); + app.UseHttpsRedirection(); app.UseCors(); app.UseAuthentication(); @@ -119,6 +119,7 @@ var app = builder.Build(); app.UseDefaultFiles(); app.UseStaticFiles(); app.MapControllers(); + app.UseMiddleware(); // apply migrations await using var scope = app.Services.CreateAsyncScope(); diff --git a/BMA.EHR.Report.Service/BMA - Backup.EHR.Report.Service.csproj b/BMA.EHR.Report.Service/BMA - Backup.EHR.Report.Service.csproj new file mode 100644 index 00000000..a2b76238 --- /dev/null +++ b/BMA.EHR.Report.Service/BMA - Backup.EHR.Report.Service.csproj @@ -0,0 +1,52 @@ + + + + net7.0 + enable + enable + 1fb39f37-45f3-4d47-9c86-c0458563770e + Linux + True + . + BMA.EHR.Report.Service + + + + + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/BMA.EHR.Report.Service/BMA.EHR.Report.Service.csproj b/BMA.EHR.Report.Service/BMA.EHR.Report.Service.csproj index a2b76238..f405e447 100644 --- a/BMA.EHR.Report.Service/BMA.EHR.Report.Service.csproj +++ b/BMA.EHR.Report.Service/BMA.EHR.Report.Service.csproj @@ -1,15 +1,15 @@ - + - - net7.0 - enable - enable - 1fb39f37-45f3-4d47-9c86-c0458563770e - Linux - True - . - BMA.EHR.Report.Service - + + net7.0 + enable + enable + 1fb39f37-45f3-4d47-9c86-c0458563770e + Linux + True + . + BMA.EHR.Report.Service + @@ -40,13 +40,13 @@ - - - + + + - - - - + + + + diff --git a/BMA.EHR.Report.Service/Program.cs b/BMA.EHR.Report.Service/Program.cs index a1160218..9a83ce24 100644 --- a/BMA.EHR.Report.Service/Program.cs +++ b/BMA.EHR.Report.Service/Program.cs @@ -111,7 +111,7 @@ var app = builder.Build(); app.MapHealthChecks("/health"); - app.UseMiddleware(); + app.UseHttpsRedirection(); app.UseCors(); app.UseAuthentication(); @@ -119,6 +119,7 @@ var app = builder.Build(); app.UseDefaultFiles(); app.UseStaticFiles(); app.MapControllers(); + app.UseMiddleware(); // apply migrations await using var scope = app.Services.CreateAsyncScope();