feat: 企标权限3级改为主起草部门
This commit is contained in:
+32
-42
@@ -67,10 +67,6 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl<Enterpris
|
||||
@Resource
|
||||
private ISysUserDepartService sysUserDepartService;
|
||||
|
||||
// 注入draftDepartName
|
||||
@Value("${draftDepartName}")
|
||||
private String draftDepartName;
|
||||
|
||||
@Resource
|
||||
private ILawsGradeService gradeService;
|
||||
|
||||
@@ -169,23 +165,16 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl<Enterpris
|
||||
List<String> levelTwoDeptIds = standardLevelList.stream().filter(l -> l.getGradeId().equals(gradeMap.get(2).getId()))
|
||||
.map(LawsEnterpriseStandardLevel::getDeptId).collect(Collectors.toList());
|
||||
|
||||
// 起草部门有所有企标的查看权限
|
||||
if (!departNames.isEmpty() && departNames.contains(draftDepartName)) {
|
||||
// 全部设置为有权限
|
||||
records.forEach(kv -> kv.put(FieldCommon.DETAIL_FLAG, true));
|
||||
return;
|
||||
}
|
||||
// 获取起草部门的Id
|
||||
List<SysDepart> sysDeparts = sysDepartService.list(new LambdaQueryWrapper<SysDepart>().eq(SysDepart::getDepartName, draftDepartName));
|
||||
for (Map<String, Object> map : records) {
|
||||
String standardId = (String) map.get(FieldCommon.ID);
|
||||
LawsEnterpriseStandard es = esMap.get(standardId);
|
||||
String mainDraftUnit = es.getMainDraftingUnit();
|
||||
Set<EnterpriseStandardAuthDept> curAuthSet = authDeptList.stream()
|
||||
.filter(e -> e.getAuthDept() != null)
|
||||
.filter(e -> StrUtil.isNotEmpty(e.getAuthDept()))
|
||||
.filter(e -> e.getStandardId().equals(standardId))
|
||||
.filter(e -> !e.getAuthDept().equals(sysDeparts.get(0).getId()))
|
||||
.filter(e -> !e.getAuthDept().equals(mainDraftUnit))
|
||||
.collect(Collectors.toSet());
|
||||
LawsEnterpriseStandard es = esMap.get(standardId);
|
||||
// 临时权限
|
||||
if (tempAuthStandardIds.contains(standardId)) {
|
||||
map.put(FieldCommon.DETAIL_FLAG, true);
|
||||
@@ -219,6 +208,14 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl<Enterpris
|
||||
continue;
|
||||
}
|
||||
}
|
||||
if ("4".equals(gradeClassification)) {
|
||||
// 主起草部门有企标的查看权限
|
||||
if (!departNames.isEmpty() && departNames.contains(mainDraftUnit)) {
|
||||
// 设置为有权限
|
||||
map.put(FieldCommon.DETAIL_FLAG, true);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
map.put(FieldCommon.DETAIL_FLAG, false);
|
||||
}
|
||||
@@ -285,22 +282,17 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl<Enterpris
|
||||
List<String> levelTwoDeptIds = standardLevelList.stream().filter(l -> l.getGradeId().equals(gradeMap.get(2).getId()))
|
||||
.map(LawsEnterpriseStandardLevel::getDeptId).collect(Collectors.toList());
|
||||
|
||||
// 起草部门有所有企标的查看权限
|
||||
if (!departNames.isEmpty() && departNames.contains(draftDepartName)) {
|
||||
// 全部设置为有权限
|
||||
records.forEach(kv -> kv.put(FieldCommon.DETAIL_FLAG, true));
|
||||
}
|
||||
// 获取起草部门的Id
|
||||
List<SysDepart> sysDeparts = sysDepartService.list(new LambdaQueryWrapper<SysDepart>().eq(SysDepart::getDepartName, draftDepartName));
|
||||
for (Map<String, Object> map : records) {
|
||||
String standardId = (String) map.get(FieldCommon.ID);
|
||||
LawsEnterpriseStandard es = esMap.get(standardId);
|
||||
String mainDraftUnit = es.getMainDraftingUnit();
|
||||
Set<EnterpriseStandardAuthDept> curAuthSet = authDeptList.stream()
|
||||
.filter(e -> e.getAuthDept() != null)
|
||||
.filter(e -> StrUtil.isNotEmpty(e.getAuthDept()))
|
||||
.filter(e -> e.getStandardId().equals(standardId))
|
||||
.filter(e -> !e.getAuthDept().equals(sysDeparts.get(0).getId()))
|
||||
.filter(e -> !e.getAuthDept().equals(mainDraftUnit))
|
||||
.collect(Collectors.toSet());
|
||||
LawsEnterpriseStandard es = esMap.get(standardId);
|
||||
// 临时权限
|
||||
if (tempAuthStandardIds.contains(standardId)) {
|
||||
map.put(FieldCommon.DETAIL_FLAG, true);
|
||||
@@ -329,6 +321,14 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl<Enterpris
|
||||
continue;
|
||||
}
|
||||
}
|
||||
if ("4".equals(gradeClassification)) {
|
||||
// 主起草部门有企标的查看权限
|
||||
if (!departNames.isEmpty() && departNames.contains(mainDraftUnit)) {
|
||||
// 全部设置为有权限
|
||||
map.put(FieldCommon.DETAIL_FLAG, true);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
map.put(FieldCommon.DETAIL_FLAG, false);
|
||||
}
|
||||
@@ -350,11 +350,6 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl<Enterpris
|
||||
// 起草部门的人也有维护的权限
|
||||
List<DepartIdModel> departIdModels = sysUserDepartService.queryDepartIdsOfUser(userId);
|
||||
List<String> departNames = departIdModels.stream().map(DepartIdModel::getTitle).collect(Collectors.toList());
|
||||
// 起草部门有全部企标的查看权限
|
||||
if (departNames.contains(draftDepartName)) {
|
||||
records.forEach(kv -> kv.put(FieldCommon.EDIT_FLAG, true));
|
||||
return;
|
||||
}
|
||||
// 获取当前用户的角色roleCode
|
||||
List<String> roleList = sysUserRoleService.getRole(currentUser.getUsername());
|
||||
if (roleList != null && roleList.contains(FieldCommon.ROLE_ADMIN)) {
|
||||
@@ -515,23 +510,17 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl<Enterpris
|
||||
List<String> levelTwoDeptIds = standardLevelList.stream().filter(l -> l.getGradeId().equals(gradeMap.get(2).getId()))
|
||||
.map(LawsEnterpriseStandardLevel::getDeptId).collect(Collectors.toList());
|
||||
|
||||
// 起草部门有所有企标的查看权限
|
||||
if (!departNames.isEmpty() && departNames.contains(draftDepartName)) {
|
||||
// 全部设置为有权限
|
||||
return true;
|
||||
}
|
||||
// 获取起草部门的Id
|
||||
List<SysDepart> sysDeparts = sysDepartService.list(new LambdaQueryWrapper<SysDepart>().eq(SysDepart::getDepartName, draftDepartName));
|
||||
String finalStandardId = standardId;
|
||||
LawsEnterpriseStandard es = enterpriseStandardService.getById(standardId);
|
||||
String mainDraftUnit = es.getMainDraftingUnit();
|
||||
Set<EnterpriseStandardAuthDept> curAuthSet = authDeptList.stream()
|
||||
.filter(e -> e.getAuthDept() != null)
|
||||
.filter(e -> StrUtil.isNotEmpty(e.getAuthDept()))
|
||||
.filter(e -> e.getStandardId().equals(finalStandardId))
|
||||
.filter(e -> !e.getAuthDept().equals(sysDeparts.get(0).getId()))
|
||||
.filter(e -> !e.getAuthDept().equals(mainDraftUnit))
|
||||
.collect(Collectors.toSet());
|
||||
|
||||
LawsEnterpriseStandard es = enterpriseStandardService.getById(standardId);
|
||||
|
||||
// 临时权限
|
||||
if (tempAuthStandardIds.contains(standardId)) {
|
||||
return true;
|
||||
@@ -560,6 +549,13 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl<Enterpris
|
||||
return true;
|
||||
}
|
||||
}
|
||||
if ("4".equals(gradeClassification)) {
|
||||
// 主起草部门有企标的查看权限
|
||||
if (!departNames.isEmpty() && departNames.contains(mainDraftUnit)) {
|
||||
// 全部设置为有权限
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -578,12 +574,6 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl<Enterpris
|
||||
// 管理员有所有权限
|
||||
SysUser currentUser = sysUserService.getById(userId);
|
||||
String username = currentUser.getUsername();
|
||||
// 起草部门的人有所有权限
|
||||
List<DepartIdModel> departIdModels = sysUserDepartService.queryDepartIdsOfUser(userId);
|
||||
List<String> departNames = departIdModels.stream().map(DepartIdModel::getTitle).collect(Collectors.toList());
|
||||
if (departNames.contains(draftDepartName)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// 获取当前用户的角色roleCode
|
||||
List<String> roleList = sysUserRoleService.getRole(currentUser.getUsername());
|
||||
|
||||
+2
-4
@@ -36,9 +36,6 @@ public class LawsGradeServiceImpl extends ServiceImpl<LawsGradeMapper, LawsGrade
|
||||
@Autowired
|
||||
private ISysDepartService sysDepartService;
|
||||
|
||||
// 注入draftDepartName
|
||||
@Value("${draftDepartName}")
|
||||
private String draftDepartName;
|
||||
@Override
|
||||
public List<LawsGrade> queryList() {
|
||||
List<LawsGrade> grades = lawsGradeService.list();
|
||||
@@ -58,7 +55,8 @@ public class LawsGradeServiceImpl extends ServiceImpl<LawsGradeMapper, LawsGrade
|
||||
grade.setDeptIds(departIds);
|
||||
}
|
||||
}
|
||||
grades.get(3).setDeptNames(draftDepartName);
|
||||
grades.get(0).setDeptNames("供应商");
|
||||
grades.get(3).setDeptNames("主起草部门");
|
||||
return grades;
|
||||
}
|
||||
|
||||
|
||||
@@ -426,6 +426,3 @@ oauth:
|
||||
userInfoUrl: https://iam-uat.sinotruk.com:7011/idp/oauth2/getUserInfo
|
||||
# 防止跨站请求伪造(CSRF)标识(暂时不用)
|
||||
state: zhongQi
|
||||
|
||||
# 起草部门部门名称
|
||||
draftDepartName: 起草部门
|
||||
@@ -343,7 +343,4 @@ file:
|
||||
split:
|
||||
path: /opt/onlyoffice/file/splitImage/
|
||||
sourceFilePath: /app/onlyoffice/DOCX.docx
|
||||
path: /app/onlyoffice/file/
|
||||
|
||||
# 起草部门部门名称
|
||||
draftDepartName: 流程与标准化
|
||||
path: /app/onlyoffice/file/
|
||||
Reference in New Issue
Block a user