This commit is contained in:
mmrbnjd
2024-04-29 07:58:41 +03:30
parent fd13de3e1d
commit 7b8127dc72
23 changed files with 526 additions and 39 deletions

View File

@@ -1,19 +1,33 @@
using FluentValidation;
using Back.Services;
using FluentValidation;
using Shared.DTOs;
using System;
namespace Back.Validations
{
public class MobileValidation : AbstractValidator<string>
public class MobileValidation : AbstractValidator<Tuple<string,bool>>
{
public MobileValidation()
public MobileValidation(servCompany servCompany)
{
CascadeMode = CascadeMode.Stop;
RuleFor(m => m)
RuleFor(m => m.Item1)
.NotEmpty().WithMessage("موبایل نمی تواند باشد")
.NotNull().WithMessage("موبایل نمی تواند باشد")
.Length(11).WithMessage("فرمت موبایل صحیح نمی باشد")
.Must(m => m.StartsWith("09")).WithMessage("فرمت موبایل صحیح نمی باشد");
RuleFor(m => m)
.Custom((model, context) => {
if (model.Item2)
{
if (!servCompany.ExistMobileAndCompanyIsActive(model.Item1).Result)
{
context.AddFailure("این موبایل یافت نشد");
}
}
});
}
}
}