From 73166a0285600e48cfcc0f9f93070258d46cec63 Mon Sep 17 00:00:00 2001 From: SHM Date: Mon, 2 Feb 2026 09:05:30 +0900 Subject: [PATCH] =?UTF-8?q?[=EC=84=B1=ED=98=84=EB=AA=A8]=20KMS=20=EC=BB=A8?= =?UTF-8?q?=ED=8A=B8=EB=A1=A4=EB=9F=AC=20=EC=B6=94=EA=B0=80=20=EC=99=84?= =?UTF-8?q?=EB=A3=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WebApi.Project.ProxyKMSApi.Config.json | 4 +- .../Controllers/KmsController.cs | 180 ++++++++++++++++++ .../Controllers/WeatherForecastController.cs | 50 ----- .../WebApi/WebApi.Project.ProxyKMS/Program.cs | 4 + .../Services/KmsService.cs | 6 + .../WeatherForecast.cs | 13 -- 6 files changed, 192 insertions(+), 65 deletions(-) create mode 100644 Projects/WebApi/WebApi.Project.ProxyKMS/Controllers/KmsController.cs delete mode 100644 Projects/WebApi/WebApi.Project.ProxyKMS/Controllers/WeatherForecastController.cs create mode 100644 Projects/WebApi/WebApi.Project.ProxyKMS/Services/KmsService.cs delete mode 100644 Projects/WebApi/WebApi.Project.ProxyKMS/WeatherForecast.cs diff --git a/Projects/Config/WebApi.Project.ProxyKMSApi.Config.json b/Projects/Config/WebApi.Project.ProxyKMSApi.Config.json index 7da77dc..f2b1755 100644 --- a/Projects/Config/WebApi.Project.ProxyKMSApi.Config.json +++ b/Projects/Config/WebApi.Project.ProxyKMSApi.Config.json @@ -6,8 +6,8 @@ }, "API": [ { - "ApiName": "vpkira", - "Address": "https://vpkira.hmckmc.co.kr/" + "ApiName": "kms", + "Address": "https://1.237.74.86:5698/" } ] } \ No newline at end of file diff --git a/Projects/WebApi/WebApi.Project.ProxyKMS/Controllers/KmsController.cs b/Projects/WebApi/WebApi.Project.ProxyKMS/Controllers/KmsController.cs new file mode 100644 index 0000000..7df0ddc --- /dev/null +++ b/Projects/WebApi/WebApi.Project.ProxyKMS/Controllers/KmsController.cs @@ -0,0 +1,180 @@ +using Microsoft.AspNetCore.Mvc; +using SystemX.Core.Controller; +using WebApi.Project.ProxyKMS.Models; +using WebApi.Project.ProxyKMS.Services; + +namespace WebApi.Project.ProxyKMS.Controllers +{ + [ApiController] + [Route("[controller]")] + + public class KmsController : CommonController + { + private readonly KmsService _kmsMetaService; + + public KmsController(IServiceProvider serviceProvider, IHttpContextAccessor httpContextAccessor, KmsService kmsService) + : base(serviceProvider, httpContextAccessor) + { + _kmsMetaService = kmsService; + } + + //1. EcuID + [HttpPost("EcuID/SupplierEcuID")] + public async Task EcuID_SupplierEcuID([FromBody] EcuID.Request_SupplierEcuID request) + { + Guid guid = Guid.NewGuid(); + LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER); + + // EcuID.Response_SupplierEcuID response = await _kmsMetaService.SetWbmsMeta(request, guid.ToString()); + + // LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER); + + // return Results.Ok(response); + return Results.Ok(); + } + + //2. MasterECUKEy + [HttpPost("MasterEcuKey/SupplierKeyProvisioning")] + public async Task MasterEcuKey_SupplierKeyProvisioning([FromBody] EcuID.Request_SupplierEcuID request) + { + Guid guid = Guid.NewGuid(); + LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER); + + // EcuID.Response_SupplierEcuID response = await _kmsMetaService.SetWbmsMeta(request, guid.ToString()); + + // LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER); + + // return Results.Ok(response); + return Results.Ok(); + } + + [HttpPut("MasterEcuKey/SupplierKeyProvisioning")] + public async Task MasterEcuKey_SupplierKeyProvisioningResult([FromBody] MasterEcuKey.Request_SupplierKeyProvisioning request) + { + Guid guid = Guid.NewGuid(); + LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER); + + // EcuID.Response_SupplierEcuID response = await _kmsMetaService.SetWbmsMeta(request, guid.ToString()); + + // LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER); + + // return Results.Ok(response); + return Results.Ok(); + } + + //3. SupplierSymmKey + [HttpPost("SupplierSymmKey/SupplierKeyProvisioning")] + public async Task SupplierSymmKey_SupplierKeyProvisioning([FromBody] SupplierSymmKey.Request_SupplierKeyProvisioning request) + { + Guid guid = Guid.NewGuid(); + LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER); + + // EcuID.Response_SupplierEcuID response = await _kmsMetaService.SetWbmsMeta(request, guid.ToString()); + + // LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER); + + // return Results.Ok(response); + return Results.Ok(); + } + + [HttpPut("SupplierSymmKey/SupplierKeyProvisioning")] + public async Task SupplierSymmKey_SupplierKeyProvisioningResult([FromBody] SupplierSymmKey.Request_SupplierKeyProvisioning_Result request) + { + Guid guid = Guid.NewGuid(); + LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER); + + // EcuID.Response_SupplierEcuID response = await _kmsMetaService.SetWbmsMeta(request, guid.ToString()); + + // LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER); + + // return Results.Ok(response); + return Results.Ok(); + } + + [HttpPost("SupplierSymmKey/SupplierKeySyncValue")] + public async Task SupplierSymmKey_SupplierKeySyncValue([FromBody] SupplierSymmKey.Request_SupplierKeyProvisioning request) + { + Guid guid = Guid.NewGuid(); + LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER); + + // EcuID.Response_SupplierEcuID response = await _kmsMetaService.SetWbmsMeta(request, guid.ToString()); + + // LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER); + + // return Results.Ok(response); + return Results.Ok(); + } + + [HttpPut("SupplierSymmKey/SupplierKeySyncValue")] + public async Task SupplierSymmKey_SupplierKeySyncValueResult([FromBody] SupplierSymmKey.Request_SupplierKeyProvisioning_Result request) + { + Guid guid = Guid.NewGuid(); + LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER); + + // EcuID.Response_SupplierEcuID response = await _kmsMetaService.SetWbmsMeta(request, guid.ToString()); + + // LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER); + + // return Results.Ok(response); + return Results.Ok(); + } + + //4,SecOCKey + [HttpPost("SecOCKey/SupplierKeyProvisioning")] + public async Task SecOCKey_SupplierKeyProvisioning([FromBody] SecOCKey.Request_SupplierKeyProvisioning request) + { + Guid guid = Guid.NewGuid(); + LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER); + + // EcuID.Response_SupplierEcuID response = await _kmsMetaService.SetWbmsMeta(request, guid.ToString()); + + // LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER); + + // return Results.Ok(response); + return Results.Ok(); + } + + [HttpPut("SecOCKey/SupplierKeyProvisioning")] + public async Task SecOCKey_SupplierKeyProvisioningResult([FromBody] SecOCKey.Request_SupplierKeyProvisioning_Result request) + { + Guid guid = Guid.NewGuid(); + LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER); + + // EcuID.Response_SupplierEcuID response = await _kmsMetaService.SetWbmsMeta(request, guid.ToString()); + + // LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER); + + // return Results.Ok(response); + return Results.Ok(); + } + + [HttpPost("SecOCKey/SupplierKeySyncValue")] + public async Task SecOCKey_SupplierKeySyncValue([FromBody] SecOCKey.Request_SupplierKeyProvisioning request) + { + Guid guid = Guid.NewGuid(); + LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER); + + // EcuID.Response_SupplierEcuID response = await _kmsMetaService.SetWbmsMeta(request, guid.ToString()); + + // LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER); + + // return Results.Ok(response); + return Results.Ok(); + } + + [HttpPut("SecOCKey/SupplierKeySyncValue")] + public async Task SecOCKey_SupplierKeySyncValueResult([FromBody] SecOCKey.Request_SupplierKeyProvisioning_Result request) + { + Guid guid = Guid.NewGuid(); + LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER); + + // EcuID.Response_SupplierEcuID response = await _kmsMetaService.SetWbmsMeta(request, guid.ToString()); + + // LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER); + + // return Results.Ok(response); + return Results.Ok(); + } + } +} + diff --git a/Projects/WebApi/WebApi.Project.ProxyKMS/Controllers/WeatherForecastController.cs b/Projects/WebApi/WebApi.Project.ProxyKMS/Controllers/WeatherForecastController.cs deleted file mode 100644 index 6288596..0000000 --- a/Projects/WebApi/WebApi.Project.ProxyKMS/Controllers/WeatherForecastController.cs +++ /dev/null @@ -1,50 +0,0 @@ -using Microsoft.AspNetCore.Mvc; -using System.Text.Json; -using WebApi.Project.ProxyKMS.Models; - -namespace WebApi.Project.ProxyKMS.Controllers -{ - [ApiController] - [Route("[controller]")] - public class WeatherForecastController : ControllerBase - { - private static readonly string[] Summaries = new[] - { - "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching" - }; - - private readonly ILogger _logger; - - public WeatherForecastController(ILogger logger) - { - _logger = logger; - } - - [HttpGet(Name = "GetWeatherForecast")] - public IEnumerable Get() - { - MasterEcuKey.Response_SupplierKeyProvisioning res = new MasterEcuKey.Response_SupplierKeyProvisioning(); - res.ResultMessage = ""; - res.ResultStatus = ""; - res.ResultReason = ""; - - res.Records.M1 = "M11"; - res.Records.M2 = "M22"; - res.Records.M3 = "M33"; - res.Records.M4 = "M44"; - res.Records.M5 = "M55"; - res.Records.KeyID = "key"; - - var serialize = JsonSerializer.Serialize(res, new JsonSerializerOptions() { WriteIndented = true }); - var desObj = JsonSerializer.Deserialize(serialize); - - return Enumerable.Range(1, 5).Select(index => new WeatherForecast - { - Date = DateOnly.FromDateTime(DateTime.Now.AddDays(index)), - TemperatureC = Random.Shared.Next(-20, 55), - Summary = Summaries[Random.Shared.Next(Summaries.Length)] - }) - .ToArray(); - } - } -} diff --git a/Projects/WebApi/WebApi.Project.ProxyKMS/Program.cs b/Projects/WebApi/WebApi.Project.ProxyKMS/Program.cs index a2ddcf4..d438040 100644 --- a/Projects/WebApi/WebApi.Project.ProxyKMS/Program.cs +++ b/Projects/WebApi/WebApi.Project.ProxyKMS/Program.cs @@ -1,6 +1,7 @@ using SystemX.Core.Services; using WebApi.Project.ProxyKMS.Models; +using WebApi.Project.ProxyKMS.Services; string configDir = @"../../Config"; string configFileName = "WebApi.Project.ProxyKMSApi.Config.json"; @@ -21,6 +22,9 @@ var builder = WebApplication.CreateBuilder(args); //singleton builder.Services.AddSingleton>(); +//scoped +builder.Services.AddSingleton(); + builder.Services.AddControllers(); // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle builder.Services.AddEndpointsApiExplorer(); diff --git a/Projects/WebApi/WebApi.Project.ProxyKMS/Services/KmsService.cs b/Projects/WebApi/WebApi.Project.ProxyKMS/Services/KmsService.cs new file mode 100644 index 0000000..d51d2bc --- /dev/null +++ b/Projects/WebApi/WebApi.Project.ProxyKMS/Services/KmsService.cs @@ -0,0 +1,6 @@ +namespace WebApi.Project.ProxyKMS.Services +{ + public class KmsService + { + } +} diff --git a/Projects/WebApi/WebApi.Project.ProxyKMS/WeatherForecast.cs b/Projects/WebApi/WebApi.Project.ProxyKMS/WeatherForecast.cs deleted file mode 100644 index 007677f..0000000 --- a/Projects/WebApi/WebApi.Project.ProxyKMS/WeatherForecast.cs +++ /dev/null @@ -1,13 +0,0 @@ -namespace WebApi.Project.ProxyKMS -{ - public class WeatherForecast - { - public DateOnly Date { get; set; } - - public int TemperatureC { get; set; } - - public int TemperatureF => 32 + (int)(TemperatureC / 0.5556); - - public string? Summary { get; set; } - } -}