diff --git a/ebts-ui/src/api/tool/top.js b/ebts-ui/src/api/tool/top.js index 037ab59..e63fcb6 100644 --- a/ebts-ui/src/api/tool/top.js +++ b/ebts-ui/src/api/tool/top.js @@ -17,7 +17,7 @@ export function getQuery(id) { // 查询万能查询详细 export function getTables() { return request({ - url: '/top/', + url: '/top/table', method: 'get' }) } diff --git a/ebts-ui/src/views/tool/top/index.vue b/ebts-ui/src/views/tool/top/index.vue index 389d706..ad135a9 100644 --- a/ebts-ui/src/views/tool/top/index.vue +++ b/ebts-ui/src/views/tool/top/index.vue @@ -112,7 +112,7 @@ size="small" icon="el-icon-edit-outline" @click="handleEditTable(scope.row)" - v-hasPermi="['tool:query:edit']" + v-hasPermi="['top:edit']" >编辑 MDS--> - 预览 + 预览 - 保存 + 保存 @@ -101,6 +101,7 @@ export default { .right { display: inline-block; width: 30%; + padding-right: 10px; text-align: right; } diff --git a/ebts/ebts-generator/src/main/java/com/ebts/generator/controller/TopQueryController.java b/ebts/ebts-generator/src/main/java/com/ebts/generator/controller/TopQueryController.java index 82bb1b3..1f6a7c2 100644 --- a/ebts/ebts-generator/src/main/java/com/ebts/generator/controller/TopQueryController.java +++ b/ebts/ebts-generator/src/main/java/com/ebts/generator/controller/TopQueryController.java @@ -4,21 +4,20 @@ import com.ebts.common.annotation.Log; import com.ebts.common.core.controller.BaseController; import com.ebts.common.core.entity.AjaxResult; import com.ebts.common.enums.BusinessType; +import com.ebts.common.utils.SecurityUtils; import com.ebts.common.utils.ServerResult; import com.ebts.common.utils.StringUtils; import com.ebts.generator.dto.TopResult; import com.ebts.generator.entity.UniQuery; import com.ebts.generator.service.TopQueryService; -import com.ebts.generator.service.TopSearchTableService; import com.ebts.generator.service.UniQueryService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import java.io.Serializable; -import java.util.Collections; -import java.util.List; import java.util.Map; +import java.util.concurrent.atomic.AtomicReference; /** @@ -61,9 +60,8 @@ public class TopQueryController extends BaseController { * @return */ @PreAuthorize("@ebts.hasPermi('top:table')") - @GetMapping + @GetMapping("/table") public AjaxResult table() { - return AjaxResult.success(topQueryService.selectTopSearchTables()); } diff --git a/ebts/ebts-generator/src/main/java/com/ebts/generator/dao/TopSearchTableDao.java b/ebts/ebts-generator/src/main/java/com/ebts/generator/dao/TopSearchTableDao.java index 2d5a954..f91c714 100644 --- a/ebts/ebts-generator/src/main/java/com/ebts/generator/dao/TopSearchTableDao.java +++ b/ebts/ebts-generator/src/main/java/com/ebts/generator/dao/TopSearchTableDao.java @@ -30,7 +30,12 @@ public interface TopSearchTableDao { */ List selectTopSearchTableList(TopSearchTable topSearchTable); - List selectTopSearchTables(); + /** + * 获取top万能查询基础表格信息 + * @param roleIds + * @return + */ + List selectTopSearchTables(String[] roleIds); List selectTableColumns(Long id); diff --git a/ebts/ebts-generator/src/main/java/com/ebts/generator/entity/TopNode.java b/ebts/ebts-generator/src/main/java/com/ebts/generator/entity/TopNode.java index 7a112dc..511862d 100644 --- a/ebts/ebts-generator/src/main/java/com/ebts/generator/entity/TopNode.java +++ b/ebts/ebts-generator/src/main/java/com/ebts/generator/entity/TopNode.java @@ -4,8 +4,6 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.ebts.common.utils.StringUtils; -import java.util.List; - /** * @author: Clay * @date: 2021/7/26 17:26 diff --git a/ebts/ebts-generator/src/main/java/com/ebts/generator/service/impl/TopQueryServiceImpl.java b/ebts/ebts-generator/src/main/java/com/ebts/generator/service/impl/TopQueryServiceImpl.java index 1f1ba92..bc2ae54 100644 --- a/ebts/ebts-generator/src/main/java/com/ebts/generator/service/impl/TopQueryServiceImpl.java +++ b/ebts/ebts-generator/src/main/java/com/ebts/generator/service/impl/TopQueryServiceImpl.java @@ -3,6 +3,7 @@ package com.ebts.generator.service.impl; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.ebts.common.utils.SecurityUtils; import com.ebts.common.utils.ServerResult; import com.ebts.generator.dao.QueryDao; import com.ebts.generator.dao.RelationalMapDao; @@ -22,6 +23,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.concurrent.atomic.AtomicReference; /** * @author: Clay @@ -45,7 +47,12 @@ public class TopQueryServiceImpl implements TopQueryService { @Override public Map selectTopSearchTables() { Map modeMap = new HashMap<>(); - modeMap.put("tables", topSearchTableDao.selectTopSearchTables()); + //采用原子式获取到forEach中的值,原子式能够允许其他线程进行尝试性的修改值 + AtomicReference roleIds = new AtomicReference<>(""); + SecurityUtils.getLoginUser().getUser().getRoles().forEach(role->{ + roleIds.updateAndGet(v -> v + role.getRoleId()+","); + }); + modeMap.put("tables", topSearchTableDao.selectTopSearchTables(roleIds.get().substring(0,roleIds.get().length()-1).split(","))); modeMap.put("relationalMap", relationalMapDao.selectRelationalMapList(new RelationalMap())); return modeMap; } diff --git a/ebts/ebts-generator/src/main/resources/mapper/generator/TopSearchTableMapper.xml b/ebts/ebts-generator/src/main/resources/mapper/generator/TopSearchTableMapper.xml index d25d165..1a558b1 100644 --- a/ebts/ebts-generator/src/main/resources/mapper/generator/TopSearchTableMapper.xml +++ b/ebts/ebts-generator/src/main/resources/mapper/generator/TopSearchTableMapper.xml @@ -78,15 +78,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where gtst.id = #{id} - select gtst.id, gtst.table_name, gtst.table_comment, gtst.remark, gtst.create_by, gtst.create_time, gtst.update_by, gtst.update_time, gtsc.id as column_id, gtsc.search_table_id, gtsc.column_name, gtsc.column_comment, gtsc.column_type, gtsc.is_use, gtsc.create_by, gtsc.create_time, gtsc.update_by, gtsc.update_time, grm.main_id, grm.child_id, grm.main_key, grm.child_key, grm.type from gen_top_search_table gtst left join gen_top_search_column gtsc on gtsc.search_table_id = gtst.id left join gen_relational_mapping grm on grm.main_id = gtst.id + where gtst.id IN (SELECT search_table_id FROM gen_search_table_role WHERE role_id IN + + #{roleId} + ) and gtsc.is_use = 1 - + + +