public Validator(IAdminUserService adminUserService)
            {
                RuleFor(x => x.UserName).NotEmpty().MaximumLength(20).WithName("账号")
                .MustAsync(async(account, cancel) =>
                {
                    var res = await adminUserService.AnyByAccountAsync(AccountMode.UserName, account, 0, cancel);

                    return(!res);
                })
                .WithMessage(c => $"该账号已存在。");

                RuleFor(x => x.Mobile)
                .NotEmpty()
                .Matches("^[1][3-9]\\d{9}$").WithMessage("手机号格式不正确。")
                .MustAsync(async(account, cancel) =>
                {
                    var res = await Web.GetService <IAdminUserService>().AnyByAccountAsync(AccountMode.Mobile, account, 0, cancel);

                    return(!res);
                })
                .WithMessage(c => $"该手机号码已存在。");

                RuleFor(x => x.Password).NotEmpty().MaximumLength(30).WithName("密码");
                RuleFor(x => x.Name).NotEmpty().MaximumLength(20).WithName("名字");
                RuleFor(x => x.Company).NotEmpty().MaximumLength(30).WithName("公司");
                RuleFor(x => x.Location).NotEmpty().MaximumLength(30).WithName("位置");
                RuleFor(x => x.Name).NotEmpty().MaximumLength(20).WithName("名字");
            }
示例#2
0
        /// <summary>
        /// 检查账号或者手机号是否存在
        /// </summary>
        /// <param name="accountMode"></param>
        /// <param name="account"></param>
        /// <param name="notId"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public async Task <Result <bool> > GetUserAnyAsync(AccountMode accountMode, string account, long notId, CancellationToken cancellationToken = default)
        {
            var res = await adminUserService.AnyByAccountAsync(accountMode, account, notId, cancellationToken);

            return(RestFull.Success(data: res));
        }