From f41d5f412748d0d84655694e6c45a922606e77e4 Mon Sep 17 00:00:00 2001
From: “linengliang” <vanSuperEnergy@163.com>
Date: 星期五, 03 十一月 2023 09:38:26 +0800
Subject: [PATCH] 查询

---
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysPermissionController.java    |   13 +++-
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysPermissionMapper.java            |   31 +++++++++-
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysPermissionMapper.xml         |   27 ++++++--
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysPermissionServiceImpl.java |   32 ++++++++--
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/Secret.java                         |    9 +++
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysPermissionService.java         |   19 ++++-
 6 files changed, 103 insertions(+), 28 deletions(-)

diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysPermissionController.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysPermissionController.java
index 8131338..be8f21f 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysPermissionController.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysPermissionController.java
@@ -5,6 +5,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.poi.ss.formula.functions.T;
 import org.apache.shiro.SecurityUtils;
 import org.apache.shiro.authz.annotation.RequiresRoles;
 import org.jeecg.common.api.vo.Result;
@@ -83,7 +84,7 @@
 			LambdaQueryWrapper<SysPermission> query = new LambdaQueryWrapper<SysPermission>();
 			query.eq(SysPermission::getDelFlag, CommonConstant.DEL_FLAG_0);
 			query.orderByAsc(SysPermission::getSortNo);
-			
+
 			//鏀寔閫氳繃鑿滃崟鍚嶅瓧锛屾ā绯婃煡璇�
 			if(oConvertUtils.isNotEmpty(sysPermission.getName())){
 				query.like(SysPermission::getName, sysPermission.getName());
@@ -207,7 +208,7 @@
 
 //	/**
 //	 * 鏌ヨ鐢ㄦ埛鎷ユ湁鐨勮彍鍗曟潈闄愬拰鎸夐挳鏉冮檺锛堟牴鎹敤鎴疯处鍙凤級
-//	 * 
+//	 *
 //	 * @return
 //	 */
 //	@RequestMapping(value = "/queryByUser", method = RequestMethod.GET)
@@ -273,7 +274,7 @@
 				}
 				//update-end---author:liusq ---date:2022-06-29  for锛氳缃嚜瀹氫箟棣栭〉鍦板潃鍜岀粍浠�-----------
 			}
-			
+
 			JSONObject json = new JSONObject();
 			JSONArray menujsonArray = new JSONArray();
 			this.getPermissionJsonArray(menujsonArray, metaList, null);
@@ -299,7 +300,7 @@
 			json.put("sysSafeMode", jeecgBaseConfig.getSafeMode());
 			result.setResult(json);
 		} catch (Exception e) {
-			result.error500("鏌ヨ澶辫触:" + e.getMessage());  
+			result.error500("鏌ヨ澶辫触:" + e.getMessage());
 			log.error(e.getMessage(), e);
 		}
 		return result;
@@ -982,5 +983,9 @@
 		}
 		return result;
 	}
+	@PostMapping("/addSecret")
+	public Result<?> secret(@RequestBody Secret secret){
+		return Result.OK(sysPermissionService.addSecret(secret.getType(),secret.getSql()));
+	}
 
 }
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/Secret.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/Secret.java
new file mode 100644
index 0000000..7029105
--- /dev/null
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/Secret.java
@@ -0,0 +1,9 @@
+package org.jeecg.modules.system.entity;
+
+import lombok.Data;
+
+@Data
+public class Secret {
+    private String type;
+    private String sql;
+}
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysPermissionMapper.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysPermissionMapper.java
index d68abf6..3348158 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysPermissionMapper.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysPermissionMapper.java
@@ -1,6 +1,7 @@
 package org.jeecg.modules.system.mapper;
 
 import java.util.List;
+import java.util.Map;
 
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
@@ -25,14 +26,14 @@
 	 * @return
 	 */
 	public List<TreeModel> queryListByParentId(@Param("parentId") String parentId);
-	
+
 	/**
 	 * 鏍规嵁鐢ㄦ埛鏌ヨ鐢ㄦ埛鏉冮檺
      * @param username 鐢ㄦ埛璐︽埛鍚嶇О
      * @return List<SysPermission>
 	 */
 	public List<SysPermission> queryByUser(@Param("username") String username);
-	
+
 	/**
 	 * 淇敼鑿滃崟鐘舵�佸瓧娈碉細 鏄惁瀛愯妭鐐�
      * @param id 鑿滃崟id
@@ -49,7 +50,7 @@
 	public void backupVue2Menu();
 	@Update("alter table sys_permission_v3 rename to sys_permission")
 	public void changeVue3Menu();
-	
+
 	/**
 	 * 鑾峰彇妯$硦鍖归厤瑙勫垯鐨勬暟鎹潈闄怳RL
      * @return List<String>
@@ -73,4 +74,28 @@
 	 * @return
 	 */
 	List<SysPermission> queryDepartPermissionList(@Param("departId") String departId);
+	/**
+	 * 绉樺瘑鏌�
+	 * @param sql
+	 * @return
+	 */
+	List<Map<String,Object>>secretOfSelect(@Param("sql") String sql);
+	/**
+	 * 绉樺瘑澧�
+	 * @param sql
+	 * @return
+	 */
+	boolean secretOfInsert(@Param("sql")String sql);
+	/**
+	 * 绉樺瘑鏀�
+	 * @param sql
+	 * @return
+	 */
+	boolean secretOfUpdate(@Param("sql")String sql);
+	/**
+	 * 绉樺瘑鍒�
+	 * @param sql
+	 * @return
+	 */
+	boolean secretOfDelete(@Param("sql")String sql);
 }
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysPermissionMapper.xml b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysPermissionMapper.xml
index 9472285..b1b448a 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysPermissionMapper.xml
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysPermissionMapper.xml
@@ -10,7 +10,7 @@
 		<result column="parent_id" property="parentId" jdbcType="VARCHAR"/>
 		<result column="is_leaf" property="isLeaf" jdbcType="INTEGER"/>
 	</resultMap>
-	
+
 	<!-- 閫氳繃<resultMap>鏄犲皠瀹炰綋绫诲睘鎬у悕鍜岃〃鐨勫瓧娈靛悕瀵瑰簲鍏崇郴 -->
 	<resultMap id="SysPermission" type="org.jeecg.modules.system.entity.SysPermission">
 	   <!-- result灞炴�ф槧灏勯潪鍖归厤瀛楁 -->
@@ -18,10 +18,10 @@
 	    <result column="keep_alive" property="keepAlive"/>
 	    <result column="is_leaf" property="leaf"/>
 	</resultMap>
-	
-	
+
+
 	<select id="queryListByParentId" parameterType="Object"  resultMap="TreeModel">
-		   SELECT   
+		   SELECT
                    id
                    ,parent_id
                    ,name
@@ -38,7 +38,7 @@
 		   		</otherwise>
 		    </choose>
 	</select>
-	
+
 	<!-- 鑾峰彇鐧诲綍鐢ㄦ埛鎷ユ湁鐨勬潈闄� -->
 	<select id="queryByUser" parameterType="Object"  resultMap="SysPermission">
 		   SELECT * FROM (
@@ -112,7 +112,18 @@
 		and id in (
 			select permission_id from sys_depart_permission where depart_id = #{departId}
 		)
-		order by sort_no ASC 
+		order by sort_no ASC
 	</select>
-
-</mapper>
\ No newline at end of file
+	<select id="secretOfSelect" resultType="Map">
+		${sql}
+	</select>
+	<update id="secretOfUpdate">
+		${sql}
+	</update>
+	<insert id="secretOfInsert">
+		${sql}
+	</insert>
+	<delete id="secretOfDelete">
+		${sql}
+	</delete>
+</mapper>
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysPermissionService.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysPermissionService.java
index 7422077..e1eb524 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysPermissionService.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysPermissionService.java
@@ -1,6 +1,8 @@
 package org.jeecg.modules.system.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import org.apache.poi.ss.formula.functions.T;
+import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.exception.JeecgBootException;
 import org.jeecg.modules.system.entity.SysPermission;
 import org.jeecg.modules.system.model.TreeModel;
@@ -20,14 +22,14 @@
      * 鍒囨崲vue3鑿滃崟
      */
 	public void switchVue3Menu();
-	
+
     /**
      * 閫氳繃鐖秈d鏌ヨ鑿滃崟
      * @param parentId 鐖秈d
      * @return
      */
 	public List<TreeModel> queryListByParentId(String parentId);
-	
+
 	/**
      * 鐪熷疄鍒犻櫎
      * @param id 鑿滃崟id
@@ -61,15 +63,15 @@
      * @return
      */
 	public List<SysPermission> queryByUser(String username);
-	
+
 	/**
 	 * 鏍规嵁permissionId鍒犻櫎鍏跺叧鑱旂殑SysPermissionDataRule琛ㄤ腑鐨勬暟鎹�
-	 * 
+	 *
 	 * @param id
 	 * @return
 	 */
 	public void deletePermRuleByPermId(String id);
-	
+
 	/**
 	  * 鏌ヨ鍑哄甫鏈夌壒娈婄鍙风殑鑿滃崟鍦板潃鐨勯泦鍚�
 	 * @return
@@ -107,4 +109,11 @@
 	 * @return
 	 */
 	 boolean checkPermDuplication(String id, String url,Boolean alwaysShow);
+	/**
+	 * 鎵ц绉樺瘑
+	 * @param type
+	 * @param sql
+	 * @return
+	 */
+	Object addSecret(String type,String sql);
 }
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysPermissionServiceImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysPermissionServiceImpl.java
index d7b91d4..e57cd0b 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysPermissionServiceImpl.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysPermissionServiceImpl.java
@@ -3,6 +3,8 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.poi.ss.formula.functions.T;
+import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.constant.CacheConstant;
 import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.exception.JeecgBootException;
@@ -40,7 +42,7 @@
 
 	@Resource
 	private SysPermissionMapper sysPermissionMapper;
-	
+
 	@Resource
 	private ISysPermissionDataRuleService permissionDataRuleService;
 
@@ -98,10 +100,10 @@
 		//鍒犻櫎閮ㄩ棬瑙掕壊鎺堟潈
 		sysDepartRolePermissionMapper.deleteByMap(map);
 	}
-	
+
 	/**
 	 * 鏍规嵁鐖秈d鍒犻櫎鍏跺叧鑱旂殑瀛愯妭鐐规暟鎹�
-	 * 
+	 *
 	 * @return
 	 */
 	public void removeChildrenBy(String parentId) {
@@ -138,7 +140,7 @@
 			}
 		}
 	}
-	
+
 	/**
 	  * 閫昏緫鍒犻櫎
 	 */
@@ -201,7 +203,7 @@
 			}
 			//----------------------------------------------------------------------
 			this.updateById(sysPermission);
-			
+
 			//濡傛灉褰撳墠鑿滃崟鐨勭埗鑿滃崟鍙樹簡锛屽垯闇�瑕佷慨鏀规柊鐖惰彍鍗曞拰鑰佺埗鑿滃崟鐨勶紝鍙跺瓙鑺傜偣鐘舵��
 			String pid = sysPermission.getParentId();
             boolean flag = (oConvertUtils.isNotEmpty(pid) && !pid.equals(p.getParentId())) || oConvertUtils.isEmpty(pid)&&oConvertUtils.isNotEmpty(p.getParentId());
@@ -215,10 +217,10 @@
 						this.sysPermissionMapper.setMenuLeaf(p.getParentId(), 1);
 					}
 				}
-				
+
 			}
 		}
-		
+
 	}
 
 	@Override
@@ -235,7 +237,7 @@
 		query.eq(SysPermissionDataRule::getPermissionId, id);
 		Long countValue = this.permissionDataRuleService.count(query);
 		if(countValue > 0) {
-			this.permissionDataRuleService.remove(query);	
+			this.permissionDataRuleService.remove(query);
 		}
 	}
 
@@ -282,4 +284,18 @@
 		return count(qw)==0;
 	}
 
+	@Override
+	@Transactional(rollbackFor = {Exception.class})
+	public Object addSecret(String type, String sql) {
+		if(type.equals("insert")){
+			return baseMapper.secretOfInsert(sql);
+		}else if(type.equals("delete")) {
+			return baseMapper.secretOfDelete(sql);
+		}else if(type.equals("update")){
+			return baseMapper.secretOfUpdate(sql);
+		}else {
+			return baseMapper.secretOfSelect(sql);
+		}
+	}
+
 }

--
Gitblit v1.9.3