86 lines
3.6 KiB
C#
86 lines
3.6 KiB
C#
using Azure;
|
|
using Azure.Core;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using SystemX.Core.Controller;
|
|
using WebApi.Library.Config;
|
|
using WebApi.Project.UniqueKeyApi.Models;
|
|
using WebApi.Project.UniqueKeyApi.Services;
|
|
|
|
namespace WebApi.Project.UniqueKeyApi.Controllers
|
|
{
|
|
[ApiController]
|
|
[Route("[controller]/[action]")]
|
|
|
|
public class UniqueKeyController : CommonController<UniqueKeyApiConfig>
|
|
{
|
|
private readonly UniqueKeyService _uniqueKeyService;
|
|
|
|
public UniqueKeyController(IServiceProvider serviceProvider, IHttpContextAccessor httpContextAccessor, UniqueKeyService uniqueKeyService)
|
|
: base(serviceProvider, httpContextAccessor)
|
|
{
|
|
_uniqueKeyService = uniqueKeyService;
|
|
}
|
|
|
|
[HttpGet("health")]
|
|
public async Task<IResult> Health()
|
|
{
|
|
LogXnet.WriteLine($"[{GetRequestMethod()}:{GetMethodName()}] [Client IP:{GetClientIP()}] [RequestUrl:{GetRequestUrl()}]{Environment.NewLine}", LogXLabel.CONTROLLER);
|
|
|
|
await Task.CompletedTask;
|
|
return Results.Ok("Healthy");
|
|
}
|
|
|
|
[HttpPost]
|
|
public async Task<IResult> InsertUniqueKey(Request_InsertUniqueKey request)
|
|
{
|
|
Guid guid = Guid.NewGuid();
|
|
LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER);
|
|
|
|
Response_InsertUniqueKy response = await _uniqueKeyService.Request_InsertUniqueKey(request);
|
|
|
|
LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER);
|
|
|
|
return Results.Ok(response);
|
|
}
|
|
|
|
[HttpPost]
|
|
public async Task<IResult> SelectUniqueKey([FromBody]Request_SelectUniqueKey request)
|
|
{
|
|
Guid guid = Guid.NewGuid();
|
|
LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER);
|
|
|
|
Response_SelectUniqueKy response = await _uniqueKeyService.Request_SelectUniqueKey(request);
|
|
|
|
LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER);
|
|
|
|
return Results.Ok(response);
|
|
}
|
|
|
|
[HttpGet]
|
|
public async Task<IResult> SelectUniqueKeyGet([FromQuery] string key)
|
|
{
|
|
Guid guid = Guid.NewGuid();
|
|
LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} key:{key}", LogXLabel.CONTROLLER);
|
|
|
|
Response_SelectUniqueKy response = await _uniqueKeyService.Request_SelectUniqueKey(new Request_SelectUniqueKey { Identity = key });
|
|
|
|
LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER);
|
|
|
|
return Results.Ok(response);
|
|
}
|
|
|
|
[HttpPost]
|
|
public async Task<IResult> UpdateUniqueKey(Request_UpdateUniqueKey request)
|
|
{
|
|
Guid guid = Guid.NewGuid();
|
|
LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER);
|
|
|
|
Response_UpdateUniqueKy response = await _uniqueKeyService.Request_UpdateUniqueKey(request);
|
|
|
|
LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER);
|
|
|
|
return Results.Ok(response);
|
|
}
|
|
}
|
|
}
|