diff --git a/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java index 51860d3d..47d12dae 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java @@ -149,7 +149,10 @@ public class LawsCommonServiceImpl implements ILawsCommonService { // 筛选出用于查询的字段 List fieldListCondition = fieldList.stream().filter(lawsTag -> YesOrNoEnum.YES.getValue() .equals(lawsTag.getIsQuery().toString())).collect(Collectors.toList()); - + // 加一个create_by字段 + LawsTag createByTag = new LawsTag(); + createByTag.setDbFieldName(FieldCommon.CREATE_BY); + fieldListSelect.add(createByTag); // 获取分页参数 Integer pageNo = Integer.valueOf(parameterMap.get("pageNo").toString()); Integer pageSize = Integer.valueOf(parameterMap.get("pageSize").toString()); diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardAuthUserServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardAuthUserServiceImpl.java index 7653b1fd..9f6b77b9 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardAuthUserServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardAuthUserServiceImpl.java @@ -156,6 +156,7 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl departIdModels = sysUserDepartService.queryDepartIdsOfUser(userId); List departNames = departIdModels.stream().map(DepartIdModel::getTitle).collect(Collectors.toList()); @@ -172,7 +173,7 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl map : records) { String createBy = (String) map.get(FieldCommon.CREATE_BY); - if (userId.equals(createBy)) { + if (username.equals(createBy)) { map.put(FieldCommon.EDIT_FLAG, true); } else { map.put(FieldCommon.EDIT_FLAG, false); @@ -245,18 +246,27 @@ public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl idList = Arrays.asList(ids.split(",")); // 管理员有所有权限 SysUser currentUser = sysUserService.getById(userId); + String username = currentUser.getUsername(); + // 起草部门的人有所有权限 + List departIdModels = sysUserDepartService.queryDepartIdsOfUser(userId); + List departNames = departIdModels.stream().map(DepartIdModel::getTitle).collect(Collectors.toList()); + if (departNames.contains(draftDepartName)) { + return true; + } + // 获取当前用户的角色roleCode List roleList = sysUserRoleService.getRole(currentUser.getUsername()); if (roleList != null && roleList.contains(FieldCommon.ROLE_ADMIN)) { return true; } // 创建人可以删除 - List list = enterpriseStandardService.list(new LambdaQueryWrapper().in(LawsEnterpriseStandard::getId, ids)); + List list = enterpriseStandardService.list(new LambdaQueryWrapper().in(LawsEnterpriseStandard::getId, idList)); // 如果不是创建人,则直接返回false for (LawsEnterpriseStandard es : list) { - if (!es.getCreateBy().equals(userId)) { + if (!es.getCreateBy().equals(username)) { return false; } }