Пример #1
0
        public Task <SingleRoleQueryResponse> Handle(GetRoleByIdQuery request, CancellationToken cancellationToken)
        {
            UserRole role     = _repo.GetRoleById(request.RoleId);
            var      response = new SingleRoleQueryResponse(role);

            response.Status = GetResponseStatus(role);
            return(Task.FromResult(response));
        }
Пример #2
0
        public IActionResult Get([FromServices] IUnitOfWork unitOfWork,
                                 [FromServices] IQueryHandlerDispatcher queryHandlerDispatcher,
                                 string id)
        {
            var query = new GetRoleByIdQuery("corrid", id);

            var dto = queryHandlerDispatcher.Handle <GetRoleByIdQuery, RoleDetailDto>(query);

            return(Ok(dto));
        }
Пример #3
0
        public async Task <OperationResult <Role> > Handle(GetRoleByIdQuery request, CancellationToken cancellationToken)
        {
            var role = await unitOfWork.RoleRepository.GetRoleByIdAsync(request.Id, cancellationToken);

            if (role.Result != null)
            {
                return(OperationResult <Role> .BuildSuccessResult(role.Result));
            }
            return(OperationResult <Role> .BuildFailure(role.ErrorMessage));
        }
Пример #4
0
        public async Task <Role> GetRoleIdyById(Guid idRole)
        {
            var roleByIdQuery = new GetRoleByIdQuery(idRole);

            if (roleByIdQuery is null)
            {
                Log.Error("failed to get the role");
                throw new ArgumentNullException();
            }
            var role = await _mediator.Send(roleByIdQuery);

            return(role);
        }
Пример #5
0
        public async Task <ActionResult <GetRoleByIdQueryResult> > GetRoleById([FromRoute] Guid id, CancellationToken cancellationToken)
        {
            var query = new GetRoleByIdQuery {
                Id = id
            };
            var result = await Mediator.Send(query, cancellationToken);

            if (result?.Role == null)
            {
                return(NotFound());
            }

            return(Ok(result));
        }
Пример #6
0
        RoleDetailDto IQueryHandler <GetRoleByIdQuery, RoleDetailDto> .Handle(GetRoleByIdQuery query)
        {
            const string sql = @"
select  r.RoleId as 'Id', r.Name, r.Description
        , r.DateCreated, r.DateUpdated, r.DateEnabled, r.DateDeleted
from    core_vwRole r
where   r.RoleId = @Id
;
select  rp.PermissionId as 'Id', rp.Name, rp.Description
        , rp.DateCreated, rp.DateUpdated, rp.DateEnabled, rp.DateDeleted

        , app.AppId, app.Title as 'AppTitle'
from    core_vwRolePermission rp
join    core_vwPermission p on (rp.PermissionId = p.PermissionId)
join    core_App app on (p.AppId = app.AppId)
where   rp.RoleId = @Id
;
";

            using (var multi = DbConnection.QueryMultiple(sql, new
            {
                Id = query.UserId
            }, DbTransaction))
            {
                var item = multi.Read <RoleDetailDto>().SingleOrDefault();

                if (item != null)
                {
                    var items = multi.Read <PermissionDto>().ToList();

                    item.Permissions = items;
                }

                return(item);
            }
        }
Пример #7
0
        public async Task <SingleRoleQueryResponse> GetRoleById(string id)
        {
            var query = new GetRoleByIdQuery(id);

            return(await _mediator.Send(query));
        }