diff --git a/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/controller/XgStudentManagerSourceController.java b/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/controller/XgStudentManagerSourceController.java index ddc7c810..87e88697 100644 --- a/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/controller/XgStudentManagerSourceController.java +++ b/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/controller/XgStudentManagerSourceController.java @@ -114,4 +114,16 @@ public class XgStudentManagerSourceController extends BaseController { xgStudentManagerSourceService.grantDeptAuth(managerId, authSourceIds); return R.ok(); } + + /** + * 获取指定管理员的授权资源名称列表 + * + * @param managerId 管理员ID + * @return 授权资源名称数组 + */ + @SaCheckPermission("xgStudentManagerSource:studentManagerSource:query") + @GetMapping("/authSourceNames") + public R> getAuthSourceNames(@RequestParam Long managerId) { + return R.ok(xgStudentManagerSourceService.getAuthSourceNames(managerId)); + } } diff --git a/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/mapper/XgStudentManagerSourceMapper.java b/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/mapper/XgStudentManagerSourceMapper.java index 2fd12e6d..87924028 100644 --- a/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/mapper/XgStudentManagerSourceMapper.java +++ b/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/mapper/XgStudentManagerSourceMapper.java @@ -12,4 +12,5 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; */ public interface XgStudentManagerSourceMapper extends BaseMapperPlus { + // 预留自定义SQL方法接口 } diff --git a/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/service/IXgStudentManagerSourceService.java b/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/service/IXgStudentManagerSourceService.java index 32d245c6..a558c8cd 100644 --- a/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/service/IXgStudentManagerSourceService.java +++ b/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/service/IXgStudentManagerSourceService.java @@ -73,4 +73,12 @@ public interface IXgStudentManagerSourceService { * @param authSourceIds 资源ID列表 */ void grantDeptAuth(Long managerId, List authSourceIds); + + /** + * 获取指定管理员的授权资源名称列表 + * + * @param managerId 管理员ID + * @return 授权资源名称数组 + */ + List getAuthSourceNames(Long managerId); } diff --git a/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/service/impl/XgStudentManagerSourceServiceImpl.java b/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/service/impl/XgStudentManagerSourceServiceImpl.java index f18fc922..3e600cb7 100644 --- a/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/service/impl/XgStudentManagerSourceServiceImpl.java +++ b/backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/service/impl/XgStudentManagerSourceServiceImpl.java @@ -164,4 +164,27 @@ public class XgStudentManagerSourceServiceImpl implements IXgStudentManagerSourc baseMapper.insertBatch(insertList); } } + + @Override + public List getAuthSourceNames(Long managerId) { + // 1. 查询xg_student_manager_source表,manager_id=managerId, deleted=0, + // status=0,获取auth_source + List authSourceIds = baseMapper.selectList( + Wrappers.lambdaQuery() + .eq(XgStudentManagerSource::getManagerId, managerId) + .eq(XgStudentManagerSource::getDeleted, "0") + .eq(XgStudentManagerSource::getStatus, "0")) + .stream().map(XgStudentManagerSource::getAuthSource) + .filter(id -> id != null) + .toList(); + if (authSourceIds.isEmpty()) { + return java.util.Collections.emptyList(); + } + // 2. 查询sys_dept表,dept_id in (authSourceIds), status=0, del_flag=0,获取dept_name + String inSql = authSourceIds.stream().map(String::valueOf).collect(java.util.stream.Collectors.joining(",")); + String sql = "SELECT dept_name FROM sys_dept WHERE dept_id IN (" + inSql + + ") AND status = '0' AND del_flag = '0'"; + List deptNames = jdbcTemplate.queryForList(sql, String.class); + return deptNames; + } } diff --git a/web/src/router/index.ts b/web/src/router/index.ts index 68da6687..43c5c7c5 100644 --- a/web/src/router/index.ts +++ b/web/src/router/index.ts @@ -89,56 +89,10 @@ export const constantRoutes: RouteRecordRaw[] = [ } ] }, - { - path: '/xljk', - component: Layout, - hidden: true, - children: [ - { - path: 'evaluation/detail/:id', - component: () => import('@/views/xljk/evaluation/detail.vue'), - name: 'XljkEvaluationDetail', - meta: { title: '心理健康测评详情', icon: 'form', activeMenu: '/xljk/evaluation' } - }, - { - path: 'evaluation/add', - component: () => import('@/views/xljk/evaluation/add.vue'), - name: 'XljkEvaluationAdd', - meta: { title: '新增心理健康测评', icon: 'form', activeMenu: '/xljk/evaluation' } - }, - { - path: 'evaluation/edit/:id', - component: () => import('@/views/xljk/evaluation/edit.vue'), - name: 'XljkEvaluationEdit', - meta: { title: '编辑心理健康测评', icon: 'form', activeMenu: '/xljk/evaluation' } - }, - { - path: 'evaluation/fill/:id', - component: () => import('@/views/xljk/evaluation/fill.vue'), - name: 'XljkEvaluationFill', - meta: { title: '填写心理健康测评', icon: 'form', activeMenu: '/xljk/evaluation' } - } - ] - } ]; // 动态路由,基于用户权限动态去加载 -export const dynamicRoutes: RouteRecordRaw[] = [ - { - path: '/xljk', - component: Layout, - name: 'Xljk', - meta: { title: '学工管理', icon: 'education' }, - children: [ - { - path: 'evaluation', - component: () => import('@/views/xljk/evaluation/index.vue'), - name: 'XljkEvaluation', - meta: { title: '心理健康测评', icon: 'heart', permissions: ['xljk:evaluation:list'] } - } - ] - } -]; +export const dynamicRoutes: RouteRecordRaw[] = []; /** * 创建路由 diff --git a/web/src/views/studentMsg/authmsg/index.vue b/web/src/views/studentMsg/authmsg/index.vue index 16be17d3..bac3d497 100644 --- a/web/src/views/studentMsg/authmsg/index.vue +++ b/web/src/views/studentMsg/authmsg/index.vue @@ -63,7 +63,7 @@ - 搜索 + 搜索 重置 @@ -85,7 +85,23 @@ {{ scope.row.gender == 0 ? '男' : '女' }} - + + +