예제 #1
0
        public async Task <IDataResult <TokenModel> > SignInAsync(SignInModel signInModel)
        {
            var validation = new SignInModelValidator().Valid(signInModel);

            if (!validation.Success)
            {
                return(new ErrorDataResult <TokenModel>(validation.Message));
            }

            UserDomainService.GenerateHash(signInModel);

            var signedInModel = await UserRepository.SignInAsync(signInModel);

            validation = new SignedInModelValidator().Valid(signedInModel);

            if (!validation.Success)
            {
                return(new ErrorDataResult <TokenModel>(validation.Message));
            }

            var addUserLogModel = new AddUserLogModel(signedInModel.UserId, LogType.SignIn);

            await UserLogApplicationService.AddAsync(addUserLogModel);

            var tokenModel = UserDomainService.GenerateToken(signedInModel);

            return(new SuccessDataResult <TokenModel>(tokenModel));
        }
예제 #2
0
        public async Task <IDataResult <TokenModel> > SignInJwtAsync(SignInModel signInModel)
        {
            var result = await SignInAsync(signInModel).ConfigureAwait(false);

            if (!result.Success)
            {
                return(ErrorDataResult <TokenModel>(result.Message));
            }

            var tokenModel = UserDomainService.GenerateToken(result.Data);

            return(SuccessDataResult(tokenModel));
        }
        public async Task <IDataResult <TokenModel> > SignInJwtAsync(SignInModel signInModel)
        {
            var result = await SignInAsync(signInModel).ConfigureAwait(false);

            if (!result.Success)
            {
                return(new ErrorDataResult <TokenModel>(result.Message));
            }

            var token    = UserDomainService.GenerateToken(result.Data);
            var userInfo = await SelectAsync(result.Data.UserId).ConfigureAwait(false);

            var tokenModel = new TokenModel(token, userInfo);

            return(new SuccessDataResult <TokenModel>(tokenModel));
        }