fixed: role的edit接口返回permissionIds

This commit is contained in:
none 2023-02-24 23:25:14 +08:00
parent e7128852ad
commit de0279f250
5 changed files with 32 additions and 5 deletions

View File

@ -1,7 +1,6 @@
package xyz.playedu.api.controller.backend;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import xyz.playedu.api.constant.BPermissionConstant;
@ -43,8 +42,10 @@ public class AdminRoleController {
@GetMapping("/create")
public JsonResponse create() {
List<AdminPermission> permissions = permissionService.listOrderBySortAsc();
HashMap<String, Object> data = new HashMap<>();
data.put("permissions", permissions);
return JsonResponse.data(data);
}
@ -59,7 +60,13 @@ public class AdminRoleController {
@GetMapping("/{id}")
public JsonResponse edit(@PathVariable(name = "id") Integer id) throws NotFoundException {
AdminRole role = roleService.findOrFail(id);
return JsonResponse.data(role);
List<Integer> permissionIds = roleService.getPermissionIdsByRoleId(role.getId());
HashMap<String, Object> data = new HashMap<>();
data.put("role", role);
data.put("permission_ids", permissionIds);
return JsonResponse.data(data);
}
@BackendPermissionMiddleware(slug = BPermissionConstant.ADMIN_ROLE)

View File

@ -18,4 +18,6 @@ public interface AdminRolePermissionService extends IService<AdminRolePermission
void removeByRoleId(Integer roleId);
List<Integer> getPermissionIdsByRoleIds(List<Integer> roleIds);
List<Integer> getPermissionIdsByRoleId(Integer roleId);
}

View File

@ -4,6 +4,8 @@ import xyz.playedu.api.domain.AdminRole;
import com.baomidou.mybatisplus.extension.service.IService;
import xyz.playedu.api.exception.NotFoundException;
import java.util.List;
/**
* @author tengteng
* @description 针对表admin_roles的数据库操作Service
@ -13,7 +15,7 @@ public interface AdminRoleService extends IService<AdminRole> {
AdminRole getBySlug(String slug);
AdminRole createWithPermissionIds(String name, Integer[] permissionIds);
void createWithPermissionIds(String name, Integer[] permissionIds);
void relatePermissions(AdminRole role, Integer[] permissionIds);
@ -25,4 +27,6 @@ public interface AdminRoleService extends IService<AdminRole> {
void removeWithPermissions(AdminRole role);
List<Integer> getPermissionIdsByRoleId(Integer roleId);
}

View File

@ -32,6 +32,16 @@ public class AdminRolePermissionServiceImpl extends ServiceImpl<AdminRolePermiss
}
return ids;
}
@Override
public List<Integer> getPermissionIdsByRoleId(Integer roleId) {
List<AdminRolePermission> rolePermissions = list(query().getWrapper().eq("role_id", roleId));
List<Integer> ids = new ArrayList<>();
for (AdminRolePermission rolePermission : rolePermissions) {
ids.add(rolePermission.getPermId());
}
return ids;
}
}

View File

@ -34,7 +34,7 @@ public class AdminRoleServiceImpl extends ServiceImpl<AdminRoleMapper, AdminRole
@Override
@Transactional
public AdminRole createWithPermissionIds(String name, Integer[] permissionIds) {
public void createWithPermissionIds(String name, Integer[] permissionIds) {
AdminRole role = new AdminRole();
role.setName(name);
@ -46,7 +46,6 @@ public class AdminRoleServiceImpl extends ServiceImpl<AdminRoleMapper, AdminRole
relatePermissions(role, permissionIds);
return role;
}
@Override
@ -99,6 +98,11 @@ public class AdminRoleServiceImpl extends ServiceImpl<AdminRoleMapper, AdminRole
rolePermissionService.removeByRoleId(role.getId());
removeById(role.getId());
}
@Override
public List<Integer> getPermissionIdsByRoleId(Integer roleId) {
return rolePermissionService.getPermissionIdsByRoleId(roleId);
}
}