后台权限控制

This commit is contained in:
none
2023-02-21 17:16:51 +08:00
parent 5cce777034
commit 1419264a21
12 changed files with 164 additions and 4 deletions

View File

@@ -17,4 +17,6 @@ public interface AdminPermissionService extends IService<AdminPermission> {
List<AdminPermission> listOrderBySortAsc();
HashMap<String,Boolean> getSlugsByIds(List<Integer> ids);
}

View File

@@ -4,6 +4,9 @@ import org.springframework.stereotype.Service;
import xyz.playedu.api.domain.AdminRolePermission;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.HashMap;
import java.util.List;
/**
* @author tengteng
* @description 针对表【admin_role_permission】的数据库操作Service
@@ -14,4 +17,5 @@ public interface AdminRolePermissionService extends IService<AdminRolePermission
void removeRolePermissionsByRoleId(Integer roleId);
List<Integer> getPermissionIdsByRoleIds(List<Integer> roleIds);
}

View File

@@ -3,6 +3,8 @@ package xyz.playedu.api.service;
import xyz.playedu.api.domain.AdminUserRole;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* @author tengteng
* @description 针对表【admin_user_role】的数据库操作Service
@@ -12,4 +14,6 @@ public interface AdminUserRoleService extends IService<AdminUserRole> {
void removeUserRolesByUserId(Integer userId);
List<Integer> getRoleIdsByUserId(Integer userId);
}

View File

@@ -31,6 +31,16 @@ public class AdminPermissionServiceImpl extends ServiceImpl<AdminPermissionMappe
public List<AdminPermission> listOrderBySortAsc() {
return list(query().getWrapper().orderByAsc("group_name", "sort"));
}
@Override
public HashMap<String, Boolean> getSlugsByIds(List<Integer> ids) {
List<AdminPermission> adminPermissions = list(query().getWrapper().in("id", ids));
HashMap<String, Boolean> map = new HashMap<>();
for (AdminPermission adminPermission : adminPermissions) {
map.put(adminPermission.getSlug(), true);
}
return map;
}
}

View File

@@ -1,23 +1,37 @@
package xyz.playedu.api.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import xyz.playedu.api.domain.AdminRole;
import xyz.playedu.api.domain.AdminRolePermission;
import xyz.playedu.api.service.AdminRolePermissionService;
import xyz.playedu.api.mapper.AdminRolePermissionMapper;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* @author tengteng
* @description 针对表【admin_role_permission】的数据库操作Service实现
* @createDate 2023-02-21 16:07:01
*/
@Service
public class AdminRolePermissionServiceImpl extends ServiceImpl<AdminRolePermissionMapper, AdminRolePermission>
implements AdminRolePermissionService {
public class AdminRolePermissionServiceImpl extends ServiceImpl<AdminRolePermissionMapper, AdminRolePermission> implements AdminRolePermissionService {
@Override
public void removeRolePermissionsByRoleId(Integer roleId) {
remove(query().getWrapper().eq("role_id", roleId));
}
@Override
public List<Integer> getPermissionIdsByRoleIds(List<Integer> roleIds) {
List<AdminRolePermission> rolePermissions = list(query().getWrapper().in("role_id", roleIds));
List<Integer> ids = new ArrayList<>();
for (AdminRolePermission rolePermission : rolePermissions) {
ids.add(rolePermission.getPermId());
}
return ids;
}
}

View File

@@ -6,19 +6,31 @@ import xyz.playedu.api.service.AdminUserRoleService;
import xyz.playedu.api.mapper.AdminUserRoleMapper;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* @author tengteng
* @description 针对表【admin_user_role】的数据库操作Service实现
* @createDate 2023-02-21 16:25:43
*/
@Service
public class AdminUserRoleServiceImpl extends ServiceImpl<AdminUserRoleMapper, AdminUserRole>
implements AdminUserRoleService {
public class AdminUserRoleServiceImpl extends ServiceImpl<AdminUserRoleMapper, AdminUserRole> implements AdminUserRoleService {
@Override
public void removeUserRolesByUserId(Integer userId) {
remove(query().getWrapper().eq("admin_id", userId));
}
@Override
public List<Integer> getRoleIdsByUserId(Integer userId) {
List<AdminUserRole> userRoles = list(query().getWrapper().eq("admin_id", userId));
List<Integer> ids = new ArrayList<>();
for (AdminUserRole userRole : userRoles) {
ids.add(userRole.getRoleId());
}
return ids;
}
}