public async Task <RoleOutput> Handle(GetRoleQuery request, CancellationToken cancellationToken)
 {
     return(await _dbQueryHelper.QuerySingle <RoleOutput>($@"SELECT r.Id as Code, r.Name, r.Permissions as Permission 
                                                             FROM [User] u
                                                            JOIN [Role] r ON u.RoleId = r.Id
                                                            WHERE u.Email = @UserEmail and u.isActive = 1", new { request.UserEmail }));
 }
 public async Task <IList <GetRoleModel> > Handle(GetRoleQuery request, CancellationToken cancellationToken)
 {
     return(await _roleManager.Roles.AsNoTracking().Select(role => new GetRoleModel
     {
         Id = role.Id,
         Name = role.Name
     }).ToListAsync());
 }
Пример #3
0
 public RolController(
     CreateRoleCommandHandler createCommand,
     GetAllRolesQuery getAllQuery,
     GetRoleQuery getOneQuery,
     UpdateRoleCommandHandler updateCommand,
     DeleteRoleCommandHandler deleteCommand)
 {
     this.createCommand = createCommand;
     this.getAllQuery   = getAllQuery;
     this.getOneQuery   = getOneQuery;
     this.updateCommand = updateCommand;
     this.deleteCommand = deleteCommand;
 }
Пример #4
0
        public IResult <int> Authenticate(string login, string password)
        {
            int roleId = 0;

            connectionString = connectionStringForm
                               .Replace("{login}", login)
                               .Replace("{password}", password);

            try
            {
                IQuery query = new GetRoleQuery(login);
                using (var connection = new SqlConnection(connectionString))
                {
                    connection.Open();
                    roleId = connection.Query <int>(query.Sql).First();
                }
                return(Result <int> .Success(roleId));
            }catch (Exception e)
            {
                return(Result <int> .Failure(e));
            }
        }
Пример #5
0
    public async Task <QueryResponse <RoleResponse> > Handle(GetRoleQuery request, CancellationToken cancellationToken)
    {
        var entity = await _dataLayer.TblIdentityCredentials
                     .Include(i => i.IdentityInfo)
                     .AsNoTracking()
                     .AsSplitQuery()
                     .FirstOrDefaultAsync(i => i.Guid == $"{request.Guid}", cancellationToken);

        if (entity == null)
        {
            return(new ()
            {
                Message = $"Identity role with Guid {request.Guid} does not exist",
                HttpStatusCode = HttpStatusCode.NotFound
            });
        }

        return(new ()
        {
            HttpStatusCode = HttpStatusCode.Accepted,
            Response = entity.Adapt <RoleResponse>()
        });
    }
Пример #6
0
        private bool Exist(string roleToAdd)
        {
            var getRoleQuery = new GetRoleQuery {
                NameKey = Common.Transformations.NameKey.Transform(roleToAdd)
            };
            var role = _mediator.Send(getRoleQuery);

            if (role.Result.Role == null)
            {
                return(false);
            }
            else
            {
                // We also need to make sure the casing is accurate
                if (role.Result.Role.Name != roleToAdd)
                {
                    return(false);
                }
                else
                {
                    return(true);
                }
            }
        }
Пример #7
0
        private bool NotExist(string name)
        {
            //=========================================================================
            // VALIDATE ROLE NAME IS UNIQUE (Via MediatR Query)
            //=========================================================================
            // Note: "NameKey" is transformed from "Name" and is used as a both a unique id as well as for pretty routes/urls
            // Note: Consider using both "Name and ""NameKey" as UniqueKeys on your DocumentDB collection.
            //-------------------------------------------------------------------------
            // Note: Once these contraints are in place you could remove this manual check
            //  - however this process does ensure no exceptions are thrown and a cleaner response message is sent to the user.
            //----------------------------------------------------------------------------

            var getRoleQuery = new GetRoleQuery {
                NameKey = Common.Transformations.NameKey.Transform(name)
            };
            var role = _mediator.Send(getRoleQuery);

            if (role.Result.Role != null)
            {
                return(false);
            }

            return(true);
        }
Пример #8
0
        public async Task <IActionResult> GetRoles([FromQuery] GetRoleQuery query)
        {
            var result = await Mediator.Send(query);

            return(Ok(result));
        }
Пример #9
0
 public AuthFilter(GetRoleQuery roleQuery)
 {
     this.roleQuery = roleQuery;
 }
Пример #10
0
 public Task <RoleViewModel> GetRole(GetRoleQuery query)
 {
     return(Mediator.Send(query));
 }