public async Task <Role> CheckPublicRole(IRoleDal roleDal, IRoleCategoryDal roleCategoryDal) { var publicRole = await roleDal.GetAsync(x => x.Name.ToLower() == "public"); if (publicRole == null) { var checkRoleCategory = await roleCategoryDal.GetAsync(x => x.Name.ToLower() == "public"); if (checkRoleCategory == null) { checkRoleCategory = new RoleCategory { Name = "Users", Description = "Kullanıcı ile ilgili yetkiler" }; await roleCategoryDal.Add(checkRoleCategory); } var role = new Role { Name = "Public", RoleCategoryId = checkRoleCategory.Id, Description = "Public Kullanıcı Yetkileri.." }; await roleDal.Add(role); } return(await roleDal.GetAsync(x => x.Name.ToLower() == "public")); }
public async Task <RoleForListDto> AddRoleToUser(int userId, int roleId) { var userRole = await userRoleDal.GetAsync(x => x.UserId == userId && x.RoleId == roleId); if (userRole != null) { throw new RestException(HttpStatusCode.BadRequest, new { AlreadyExist = Messages.AlreadyExist }); } var role = await roleDal.GetAsync(x => x.Id == roleId); if (role == null) { throw new RestException(HttpStatusCode.BadRequest, new { RolesListNotFound = Messages.RoleListNotFound }); } var user = await userDal.GetAsync(x => x.Id == userId); if (user == null) { throw new RestException(HttpStatusCode.BadRequest, new { UserNotFound = Messages.UserNotFound }); } var userrole = new UserRole { UserId = user.Id, RoleId = role.Id }; await userRoleDal.Add(userrole); return(mapper.Map <Role, RoleForListDto>(role)); }
public async Task <RoleForListDto> Create(RoleForCreationAndUpdateDto roleForCreationAndUpdateDto) { var checkRoleNameFormRepo = await roleDal.GetAsync(x => x.Name.ToLower() == roleForCreationAndUpdateDto.Name.ToLower()); if (checkRoleNameFormRepo != null) { throw new RestException(HttpStatusCode.BadRequest, new { RoleAlreadyExist = Messages.RoleNameAlreadyExist }); } var roleForCreate = mapper.Map <Role>(roleForCreationAndUpdateDto); var createdRole = await roleDal.Add(roleForCreate); var spec = new RolesWithRoleCategorySpecification(createdRole.Id); var roleToReturn = await roleDal.GetEntityWithSpecAsync(spec); return(mapper.Map <Role, RoleForListDto>(roleToReturn)); }