コード例 #1
0
ファイル: UserService.cs プロジェクト: npelle/seia-gpv
        public GetUserByUsernameResponse GetUserByUsername(GetUserByUsernameRequest request)
        {
            using (var db = new DotWEntities())
            {
                var result = db.Users.FirstOrDefault(x => x.Name == request.Username);

                var response = new GetUserByUsernameResponse();

                if (result != null)
                {
                    response.User = new User
                    {
                        Id             = result.Id,
                        Name           = result.Name,
                        AspNetUserId   = result.AspNetUserId,
                        EffectDate     = result.EffectDate,
                        IdState        = result.IdState,
                        ActivationDate = result.ActivationDate,
                        Email          = result.AspNetUsers.Email,
                        Phone          = result.Phone,
                        Description    = result.Description,
                        FullName       = result.FullName,
                        ShowData       = result.ShowData
                    };
                }

                return(response);
            }
        }
コード例 #2
0
        public async Task <IActionResult> HasAccount([FromRoute] long id)
        {
            var username = _usernameFactory.CreateEmployerUsername(id);
            var request  = new GetUserByUsernameRequest(username);

            var responseCtx = await _integrator.SendRequestAsync <IEnumerable <GetUserResponse> >(request);

            if (!responseCtx.Succeed)
            {
                return(BadRequest(responseCtx.Exception.Message));
            }

            var response = responseCtx.ResponseData;

            if (response == null)
            {
                _logger.LogError("Ошибка при поиске пользователя {username}", username);
                return(BadRequest($"Ошибка при поиске пользователя {username}"));
            }

            if (!response.Any())
            {
                return(Ok(false));
            }

            if (response.Count() > 1)
            {
                _logger.LogError("Найдено более одного пользователя {username}", username);
                return(BadRequest($"Найдено более одного пользователя {username}"));
            }

            return(Ok(true));
        }
コード例 #3
0
        public async Task <IHttpActionResult> Current()
        {
            if (!User.Identity.IsAuthenticated)
            {
                return(Ok());
            }

            var request = new GetUserByUsernameRequest();

            request.Username = User.Identity.Name;
            request.TenantId = (await _userManager.GetUserAsync(User)).TenantId;

            return(Ok(await _mediator.Send(request)));
        }
コード例 #4
0
        public async Task <UserEntity> GetUserByUsername(GetUserByUsernameRequest request)
        {
            var sqlStoredProc = "sp_user_get_by_username";

            var response = await DapperAdapter.GetFromStoredProcAsync <UserEntity>
                           (
                storedProcedureName : sqlStoredProc,
                parameters : request,
                dbconnectionString : DefaultConnectionString,
                sqltimeout : DefaultTimeOut,
                dbconnection : _connection,
                dbtransaction : _transaction);

            return(response.FirstOrDefault());
        }
コード例 #5
0
        public override Task <UserDTO> GetUserByUsername(GetUserByUsernameRequest request, ServerCallContext context)
        {
            var user = _userDao.GetUserByUsername(request.Username);

            return(Task.FromResult(_mapper.Map <UserDTO>(user)));
        }