feat: 整体废弃 leader 业务角色

leader 角色 (项目负责人) 业务上已不再使用, 整体下线。仅保留 sys_dept.leader 字段 (部门负责人, RuoYi 标准字段, 与角色无关)。

前端清理 (15 文件):
- 路由: 删除 /leader 块 + 4 子路由 (router L56-61)
- 菜单: 删除 AdminLayout 中 leader 菜单 (5 行)
- 视图: 删除整个 views/leader/ 目录 (Home/Projects/Meetings/Account.vue 共 ~32KB)
- Login.vue: 删默认 role='leader', 删 leader 角色选项, 删 autoRole 的 leader 分支, 删 roleHome 的 leader 项
- PortalShell.vue + 5 个 portal/* (Home/Publicity/ArticleView/PublicityDetail/SpecialPlanDetail): admin fallback '/leader/home' → '/admin/workbench', 删 leader 项, 同步更新 admin 入口 (/leader/home → /admin/workbench)
- 5 处 ROLE_LABEL 字典删 leader: '项目负责人' (AdminLayout/Account/Roles/Users/Workbench)
- Roles.vue 注释同步

后端清理 (7 文件):
- BizDashboardController: 删除 /leader dashboard 端点 (整个方法)
- BizPersonController: BUSINESS_MAIN_ROLES 删 leader
- BizExecutorController/BizProjectPlanController/ISysUserService/SysUserExtendVo/SysUser: 注释同步删 leader

测试:
- test_20rounds.py: 删 leader 路由断言 + view_map + role_home + role_view 共 5 处

未做 / 后续:
- DB: sys_user.role_type='leader' 现存账号是测试账号, 用户确认可忽略, 后续手动清理
- 文档: proto/html/leader.html 等原型文件保留 (历史)
- _self/*.md 笔记提及 leader 不动 (笔记)
This commit is contained in:
郭庆泰
2026-08-20 22:02:24 +08:00
parent af1ee0a5f7
commit 44a020da68
25 changed files with 29 additions and 857 deletions
@@ -42,15 +42,4 @@ public class BizDashboardController extends BaseController {
return success(map);
}
@GetMapping("/leader")
public AjaxResult leaderDashboard() {
Map<String, Object> map = new HashMap<>();
List<BizProject> projects = bizProjectService.selectList(new BizProject());
List<BizMeeting> meetings = bizMeetingService.selectList(new BizMeeting());
map.put("totalProjects", projects.size());
map.put("totalMeetings", meetings.size());
map.put("finishedProjects", projects.stream().filter(p -> "1".equals(p.getIsFinished())).count());
map.put("finishedMeetings", meetings.stream().filter(m -> "已结题".equals(m.getCurrentStage())).count());
return success(map);
}
}
@@ -26,7 +26,7 @@ public class BizExecutorController extends BaseController
private JdbcTemplate jdbcTemplate;
/**
* 查询指定角色用户列表 (支持 executor / sponsor / manager / leader / doctor / admin)
* 查询指定角色用户列表 (支持 executor / sponsor / manager / doctor / admin)
* @param roleType 角色类型 (默认 'executor')
* @param userName 用户名模糊搜索 (可选)
* @param userId 精确匹配 (可选)
@@ -37,7 +37,7 @@ public class BizPersonController extends BaseController
* (sys_user.parent_user_id → sys_user.user_id → biz_person.user_id 链路过滤)
*/
private static final java.util.Set<String> BUSINESS_MAIN_ROLES = java.util.Set.of(
"executor", "sponsor", "doctor", "manager", "leader"
"executor", "sponsor", "doctor", "manager"
);
@GetMapping("/list")
@@ -17,7 +17,7 @@ import com.ruoyi.business.service.IBizProjectPlanService;
*
* 角色权限:
* - doctor: 只看自己投的稿 (submitter_id = 当前用户); 新建/编辑强制 submitter_id 写自己, status 默认 '0'
* - manager / leader / sponsor / admin: 全部可见, 不强制 submitter
* - manager / sponsor / admin: 全部可见, 不强制 submitter
*/
@RestController
@RequestMapping("/business/projectPlan")
@@ -86,7 +86,7 @@ public class SysUser extends BaseEntity
private Long[] postIds;
/** 角色ID */
private Long roleId;
/** 业务角色 (admin / leader / manager / doctor / executor / sponsor), DB 列 sys_user.role_type */
/** 业务角色 (admin / manager / doctor / executor / sponsor), DB 列 sys_user.role_type */
private String roleType;
public SysUser()
{
@@ -13,7 +13,7 @@ public class SysUserExtendVo extends SysUser
{
private static final long serialVersionUID = 1L;
/** 业务角色 (admin / leader / manager / doctor / executor / sponsor) */
/** 业务角色 (admin / manager / doctor / executor / sponsor) */
private String roleType;
public String getRoleType()
@@ -223,7 +223,7 @@ public interface ISysUserService
public boolean isPhoneRegistered(String phone);
/**
* 更新 sys_user.role_type (业务角色: admin/leader/manager/doctor/executor/sponsor)
* 更新 sys_user.role_type (业务角色: admin/manager/doctor/executor/sponsor)
*
* @param userId 用户ID
* @param roleType 角色类型