From 8a924f53b1f6196f0fa163a0be3a5845bea497d6 Mon Sep 17 00:00:00 2001 From: pengjie <17373303529@163.com> Date: Thu, 3 Aug 2023 17:36:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8C=89=E9=92=AE=E6=9D=83=E9=99=90=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zhgd/mybatis/DataScopeInterceptor.java | 11 +++++ .../admin/BaseActionController.java | 22 ++++++---- .../basicdata/mapper/xml/BaseActionMapper.xml | 8 ++-- .../basicdata/service/IBaseActionService.java | 2 + .../service/impl/BaseActionServiceImpl.java | 25 +++++++++++ .../safety/entity/ProjectNodePlan.java | 2 +- .../safety/mapper/xml/InspectRecordMapper.xml | 6 +-- .../InspectQuestionExamineServiceImpl.java | 41 +++++++++++-------- .../impl/InspectRecordServiceImpl.java | 14 +++---- 9 files changed, 90 insertions(+), 41 deletions(-) diff --git a/src/main/java/com/zhgd/mybatis/DataScopeInterceptor.java b/src/main/java/com/zhgd/mybatis/DataScopeInterceptor.java index 9cea7d0..a9551d1 100644 --- a/src/main/java/com/zhgd/mybatis/DataScopeInterceptor.java +++ b/src/main/java/com/zhgd/mybatis/DataScopeInterceptor.java @@ -86,6 +86,17 @@ public class DataScopeInterceptor extends JsqlParserSupport implements InnerInte FromItem fromItem = plainSelect.getFromItem(); if (fromItem instanceof Table) { this.dataScopeHandler.getSqlSegment(plainSelect, obj); + } else { + processFromItem(fromItem, obj); + } + } + + protected void processFromItem(FromItem fromItem, Object obj) { + if (fromItem instanceof SubSelect) { + SubSelect subSelect = (SubSelect) fromItem; + if (subSelect.getSelectBody() != null) { + processSelectBody(subSelect.getSelectBody(), obj); + } } } } diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/controller/admin/BaseActionController.java b/src/main/java/com/zhgd/xmgl/modules/basicdata/controller/admin/BaseActionController.java index 63bc362..ac65a97 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/controller/admin/BaseActionController.java +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/controller/admin/BaseActionController.java @@ -15,10 +15,7 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.MapUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import springfox.documentation.annotations.ApiIgnore; import java.util.List; @@ -53,14 +50,23 @@ public class BaseActionController { @OperLog(operModul = "功能按钮管理", operType = "查询", operDesc = "查询菜单下的按钮权限CODE") @ApiOperation(value = "查询菜单下的按钮权限CODE", notes = "查询菜单下的按钮权限CODE", httpMethod="POST") - @ApiImplicitParams({ - @ApiImplicitParam(name = "menuId", value = "menuId", paramType = "form"), - }) + @ApiImplicitParam(name = "menuId", value = "menuId", paramType = "body") @PostMapping("/codeList") public Result> getMenuCode(@ApiIgnore @RequestBody Map map) { return Result.success(baseActionService.getMenuCode(MapUtils.getString(map,"menuId"))); } - + + /** + * 用户查询自身菜单按钮权限列表 + * @return + */ + @OperLog(operModul = "功能按钮管理", operType = "查询", operDesc = "用户查询自身菜单按钮权限列表") + @ApiOperation(value = "用户查询自身菜单按钮权限列表", notes = "用户查询自身菜单按钮权限列表" , httpMethod="GET") + @GetMapping(value = "/queryBySelf") + public Result> queryBySelf() { + return Result.success(baseActionService.queryBySelf()); + } + /** * 添加 * @param baseAction diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/mapper/xml/BaseActionMapper.xml b/src/main/java/com/zhgd/xmgl/modules/basicdata/mapper/xml/BaseActionMapper.xml index 54ac77b..7d680ed 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/mapper/xml/BaseActionMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/mapper/xml/BaseActionMapper.xml @@ -40,15 +40,13 @@ - SELECT i.*, GROUP_CONCAT(u.real_name) inspectUserName, p.project_name, e.engineering_name, + SELECT * FROM (SELECT i.*, GROUP_CONCAT(u.real_name) inspectUserName, p.project_name, IFNULL( e.engineering_name, p.project_name) engineering_name, (SELECT MAX(CASE WHEN m.type = 1 THEN s.enterprise_name ELSE '' END) FROM engineering_main m LEFT JOIN enterprise s ON m.enterprise_sn = s.enterprise_sn WHERE m.engineering_sn = e.engineering_sn) buildEnt, (SELECT MAX(CASE WHEN m.type = 2 THEN s.enterprise_name ELSE '' END) FROM engineering_main m @@ -22,8 +22,8 @@ FROM inspect_record i LEFT JOIN project p ON i.project_sn = p.project_sn LEFT JOIN engineering e ON i.engineering_sn = e.engineering_sn - LEFT JOIN system_user u ON FIND_IN_SET(u.user_id, i.inspect_user) - ${ew.customSqlSegment} GROUP BY i.id ORDER BY i.create_time DESC + LEFT JOIN system_user u ON FIND_IN_SET(u.user_id, i.inspect_user) GROUP BY i.id ORDER BY i.create_time DESC) a + ${ew.customSqlSegment}