refactor(task): 重构项目任务评分权限检查逻辑

master
zhaokai 2026-03-18 16:46:48 +08:00
parent ffe3aa4804
commit 581179385e
1 changed files with 27 additions and 2 deletions

View File

@ -111,18 +111,43 @@ public class ProjectTaskQueryExe {
}else{
projectTaskScoreInfoCO.setIsScore(false);
}
//判断不是企业,并且不是自己
// 判断是否可以查看/设置评分
boolean canViewScore = checkScorePermission(projectTaskScoreInfoCO);
if(canViewScore){
projectTaskScoreInfoCO.setScoreFlag(true);
}else{
projectTaskScoreInfoCO.setScore(null);
projectTaskScoreInfoCO.setScoreFlag(false);
}
/*//判断不是企业,并且不是自己
if((!CorpInfoE.isCorp() && !AuthContext.getUserId().equals(projectTaskScoreInfoCO.getUserId())) && (AuthContext.getRoleIds()!=null && !AuthContext.getRoleIds().contains(2008483105201106946L))) {
projectTaskScoreInfoCO.setScore(null);
projectTaskScoreInfoCO.setScoreFlag(false);
}else{
projectTaskScoreInfoCO.setScoreFlag(true);
}
}*/
});
projectTaskDetailsCO.setProjectTaskScoreInfoCOList(projectTaskScoreInfoCOS);
}
return projectTaskDetailsCO;
}
private boolean checkScorePermission(ProjectTaskScoreInfoCO scoreInfo) {
// 1. 企业账号且数据属于本企业
if (CorpInfoE.isCorp() && AuthContext.getTenantId().equals(scoreInfo.getCorpinfoId())) {
return true;
}
// 2. 评分人员本人
if (AuthContext.getUserId().equals(scoreInfo.getUserId())) {
return true;
}
// 3. 拥有特殊管理角色
if (AuthContext.getRoleIds() != null &&
AuthContext.getRoleIds().contains(2008483105201106946L)) {
return true;
}
return false;
}
}