Merge branch 'template-generator' into dev
This commit is contained in:
@@ -68,6 +68,11 @@
|
||||
public const string GetAll = Base + "/template-statuses/";
|
||||
}
|
||||
|
||||
public static class GeneratorTemplate
|
||||
{
|
||||
public const string Create = Base + "/generator-templates/";
|
||||
}
|
||||
|
||||
|
||||
//public static class Layer
|
||||
//{
|
||||
|
||||
25
PARR.API/Contracts/V1/Requests/GeneratorTemplateRequest.cs
Normal file
25
PARR.API/Contracts/V1/Requests/GeneratorTemplateRequest.cs
Normal file
@@ -0,0 +1,25 @@
|
||||
namespace PARR.API.Contracts.V1.Requests
|
||||
{
|
||||
public class GeneratorTemplateRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// Id работы
|
||||
/// </summary>
|
||||
public Guid WorkId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Id приложения
|
||||
/// </summary>
|
||||
public Guid ApplicationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Действие: create, deactivate
|
||||
/// </summary>
|
||||
public required string Action { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ЭК, принимает регулярное выражение. Например: *, ВРТ-*-ДВС
|
||||
/// </summary>
|
||||
public required string Ek { get; set; }
|
||||
}
|
||||
}
|
||||
37
PARR.API/Controllers/V1/GeneratorTemplateController.cs
Normal file
37
PARR.API/Controllers/V1/GeneratorTemplateController.cs
Normal file
@@ -0,0 +1,37 @@
|
||||
using FluentValidation;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using PARR.API.Contracts.V1;
|
||||
using PARR.API.Contracts.V1.Requests;
|
||||
using PARR.API.Contracts.V1.Responses.Base;
|
||||
using PARR.API.Controllers.V1.Base;
|
||||
|
||||
namespace PARR.API.Controllers.V1
|
||||
{
|
||||
public class GeneratorTemplateController : BaseApiController
|
||||
{
|
||||
private readonly IValidator<GeneratorTemplateRequest> validator;
|
||||
|
||||
public GeneratorTemplateController(
|
||||
IValidator<GeneratorTemplateRequest> validator
|
||||
)
|
||||
{
|
||||
this.validator = validator;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Запрос на генерацию шаблонов
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost(ApiRoutes.GeneratorTemplate.Create)]
|
||||
public async Task<IActionResult> Create([FromBody] GeneratorTemplateRequest request)
|
||||
{
|
||||
var resultValidate = await validator.ValidateAsync(request);
|
||||
if (!resultValidate.IsValid)
|
||||
return BadRequest(new Response(resultValidate.Errors));
|
||||
|
||||
|
||||
|
||||
return Ok();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
namespace PARR.API.Validators
|
||||
{
|
||||
public class _
|
||||
{
|
||||
}
|
||||
}
|
||||
18
PARR.API/Validators/GeneratorTemplateRequestValidator.cs
Normal file
18
PARR.API/Validators/GeneratorTemplateRequestValidator.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
using FluentValidation;
|
||||
using PARR.API.Contracts.V1.Requests;
|
||||
using PARR.BLL.Contracts;
|
||||
|
||||
namespace PARR.API.Validators
|
||||
{
|
||||
public class GeneratorTemplateRequestValidator : AbstractValidator<GeneratorTemplateRequest>
|
||||
{
|
||||
public GeneratorTemplateRequestValidator()
|
||||
{
|
||||
RuleFor(t => t.WorkId).NotEmpty();
|
||||
RuleFor(t => t.ApplicationId).NotEmpty();
|
||||
RuleFor(t => t.Ek).NotEmpty();
|
||||
RuleFor(t => t.Action).Must(t => t.ToLower() == GenerateTemplateActionsEnum.create.ToString() || t.ToLower() == GenerateTemplateActionsEnum.deactivate.ToString())
|
||||
.WithMessage($"Допустимые значения: {GenerateTemplateActionsEnum.create}, {GenerateTemplateActionsEnum.deactivate}");
|
||||
}
|
||||
}
|
||||
}
|
||||
11
PARR.BLL/Contracts/GenerateTemplateActionsEnum.cs
Normal file
11
PARR.BLL/Contracts/GenerateTemplateActionsEnum.cs
Normal file
@@ -0,0 +1,11 @@
|
||||
namespace PARR.BLL.Contracts
|
||||
{
|
||||
/// <summary>
|
||||
/// Действия при генерации шаблонов
|
||||
/// </summary>
|
||||
public enum GenerateTemplateActionsEnum
|
||||
{
|
||||
create,
|
||||
deactivate
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user