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