This commit is contained in:
mmrbnjd
2024-04-29 18:15:46 +03:30
parent 7b8127dc72
commit 319270d567
20 changed files with 356 additions and 96 deletions

View File

@@ -5,9 +5,16 @@ using System;
namespace Back.Validations
{
public class MobileValidation : AbstractValidator<Tuple<string,bool>>
public enum ActionMobileValidation
{
public MobileValidation(servCompany servCompany)
No,
ExistMobile,
nonExistMobile,
}
public class MobileValidation : AbstractValidator<Tuple<string, ActionMobileValidation>>
{
public MobileValidation(servCompany servCompany,servUser servUser)
{
CascadeMode = CascadeMode.Stop;
RuleFor(m => m.Item1)
@@ -17,17 +24,27 @@ namespace Back.Validations
.Must(m => m.StartsWith("09")).WithMessage("فرمت موبایل صحیح نمی باشد");
RuleFor(m => m)
.Custom((model, context) => {
if (model.Item2)
if (model.Item2== ActionMobileValidation.ExistMobile)
{
if (!servCompany.ExistMobileAndCompanyIsActive(model.Item1).Result)
if (!servCompany.ExistMobileInCompany(model.Item1).Result)
{
context.AddFailure("این موبایل یافت نشد");
}
}
if (model.Item2 == ActionMobileValidation.nonExistMobile)
{
if (servCompany.ExistMobileInCompany(model.Item1,false).Result)
context.AddFailure("این موبایل در سیستم تعریف شده");
else
{
if (servUser.ExistMobileInUser(model.Item1, false).Result)
context.AddFailure("این موبایل در سیستم تعریف شده");
}
}
});
});
}
}
}