Files
FrontOffice.BFF/src/Protobufs/FrontOffice.BFF.UserOrder.Protobuf/Validator/SubmitShopBuyOrderRequestValidator.cs

20 lines
803 B
C#
Raw Normal View History

2025-11-21 10:27:20 +03:30
using FluentValidation;
2025-11-25 02:46:57 +03:30
using FrontOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
2025-11-21 10:27:20 +03:30
namespace FrontOfficeMicroservice.Protobuf.Validator.UserOrder;
public class SubmitShopBuyOrderRequestValidator : AbstractValidator<SubmitShopBuyOrderRequest>
{
public SubmitShopBuyOrderRequestValidator()
{
RuleFor(model => model.TotalAmount)
.NotNull();
}
public Func<object, string, Task<IEnumerable<string>>> ValidateValue => async (model, propertyName) =>
{
var result = await ValidateAsync(ValidationContext<SubmitShopBuyOrderRequest>.CreateWithOptions((SubmitShopBuyOrderRequest)model, x => x.IncludeProperties(propertyName)));
if (result.IsValid)
return Array.Empty<string>();
return result.Errors.Select(e => e.ErrorMessage);
};
}