21 lines
780 B
C#
21 lines
780 B
C#
using FluentValidation;
|
|
|
|
namespace AutobusApi.Application.VehicleEnrollments.Commands.CreateVehicleEnrollment;
|
|
|
|
public class CreateVehicleEnrollmentCommandValidator : AbstractValidator<CreateVehicleEnrollmentCommand>
|
|
{
|
|
public CreateVehicleEnrollmentCommandValidator()
|
|
{
|
|
RuleFor(v => v.VehicleId).GreaterThan(0);
|
|
RuleFor(v => v.RouteId).GreaterThan(0);
|
|
|
|
RuleForEach(v => v.RouteAddressDetails).ChildRules(detail =>
|
|
{
|
|
detail.RuleFor(v => v.RouteAddressId).GreaterThan(0);
|
|
detail.RuleFor(v => v.TimeToNextAddress).GreaterThan(TimeSpan.Zero);
|
|
detail.RuleFor(v => v.CurrentAddressStopTime).GreaterThan(TimeSpan.Zero);
|
|
detail.RuleFor(v => v.CostToNextAddress).GreaterThan(0.0);
|
|
});
|
|
}
|
|
}
|