diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/MainInfoController.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/MainInfoController.java index bf20f73..e0e47a2 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/MainInfoController.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/MainInfoController.java @@ -1,5 +1,6 @@ package com.zteits.urbanops.module.workorder.controller.admin.maininfo; +import cn.hutool.core.collection.CollUtil; import com.zteits.urbanops.framework.apilog.core.annotation.ApiAccessLog; import com.zteits.urbanops.framework.common.biz.system.permission.PermissionCommonApi; import com.zteits.urbanops.framework.common.biz.system.permission.dto.DeptDataPermissionRespDTO; @@ -43,8 +44,7 @@ import java.util.stream.Collectors; import static com.zteits.urbanops.framework.apilog.core.enums.OperateTypeEnum.EXPORT; import static com.zteits.urbanops.framework.common.pojo.CommonResult.success; -import static com.zteits.urbanops.framework.security.core.util.SecurityFrameworkUtils.getBusiLine; -import static com.zteits.urbanops.framework.security.core.util.SecurityFrameworkUtils.getLoginUserDeptId; +import static com.zteits.urbanops.framework.security.core.util.SecurityFrameworkUtils.*; @Tag(name = "管理后台 - 工单信息") @RestController @@ -157,7 +157,15 @@ public class MainInfoController { } //获取登录人权限 DeptDataPermissionRespDTO deptDataPermission = permissionApi.getDeptDataPermission(loginUser.getId()); - pageReqVO.setDeptIds(deptDataPermission.getDeptIds()); + if (Boolean.TRUE.equals(deptDataPermission.getAll())) { + // 1. 全部数据权限:不拼条件 + } else if (CollUtil.isNotEmpty(deptDataPermission.getDeptIds())) { + // 2. 有部门权限(本部门/部门及子部门/自定义部门) + pageReqVO.setDeptIds(deptDataPermission.getDeptIds()); + } else if (Boolean.TRUE.equals(deptDataPermission.getSelf())) { + // 3. 仅本人(只有没有任何部门权限时才会走到这里) + pageReqVO.setUserId(loginUser.getId()); + } PageResult pageResult = mainInfoService.getMainInfoPage(pageReqVO); if (pageResult == null) { diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/dal/mysql/maininfo/MainInfoMapper.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/dal/mysql/maininfo/MainInfoMapper.java index 98b74a5..40dd9ad 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/dal/mysql/maininfo/MainInfoMapper.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/dal/mysql/maininfo/MainInfoMapper.java @@ -80,7 +80,7 @@ public interface MainInfoMapper extends BaseMapperX { .likeIfPresent(MainInfoDO::getRemark, reqVO.getRemark()) .likeIfPresent(MainInfoDO::getHandleResult, reqVO.getHandleResult()) .betweenIfPresent(MainInfoDO::getCreateTime, reqVO.getCreateTime()) - .inIfPresent(MainInfoDO::getDeptId, reqVO.getDeptIds()) + .inIfPresent(MainInfoDO::getWorkerCompanyId, reqVO.getDeptIds()) .orderByDesc(MainInfoDO::getId); return selectPage(reqVO, queryWrapper); }