From a39c7b9256e163f69764df58782a0cb920711a9f Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期四, 16 二月 2023 19:28:31 +0800
Subject: [PATCH] 1

---
 src/main/java/com/lf/server/controller/all/BaseQueryController.java |   21 ++++++++++++++++++---
 1 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/lf/server/controller/all/BaseQueryController.java b/src/main/java/com/lf/server/controller/all/BaseQueryController.java
index 8988383..6e9e6cc 100644
--- a/src/main/java/com/lf/server/controller/all/BaseQueryController.java
+++ b/src/main/java/com/lf/server/controller/all/BaseQueryController.java
@@ -234,22 +234,37 @@
     @ApiOperation(value = "鏍规嵁琛ㄥ悕鍒嗛〉鏌ヨ琛�")
     @GetMapping(value = "/selectTabsByPage")
     @ApiImplicitParams({
+            @ApiImplicitParam(name = "depcode", value = "鍗曚綅缂栫爜", dataType = "String", paramType = "query", example = "00"),
+            @ApiImplicitParam(name = "dirs", value = "鐩綍缂栫爜", dataType = "String", paramType = "query", example = "00,01"),
             @ApiImplicitParam(name = "tab", value = "琛ㄥ悕", dataType = "String", paramType = "query", example = "dlg_"),
             @ApiImplicitParam(name = "pageSize", value = "姣忛〉鏉℃暟", dataType = "Integer", paramType = "query", example = "10"),
             @ApiImplicitParam(name = "pageIndex", value = "鍒嗛〉鏁帮紙浠�1寮�濮嬶級", dataType = "Integer", paramType = "query", example = "1")
     })
-    public ResponseMsg<List<TabEntity>> selectTabsByPage(String tab, Integer pageSize, Integer pageIndex) {
+    public ResponseMsg<List<TabEntity>> selectTabsByPage(String depcode, String dirs, String tab, Integer pageSize, Integer pageIndex) {
         try {
             if (pageSize < 1 || pageIndex < 1) {
                 return fail("姣忛〉椤垫暟鎴栧垎椤垫暟灏忎簬1", null);
             }
+            if (StringHelper.isSqlInjection(depcode)) {
+                return fail("鍗曚綅浠g爜鍚湁闈炴硶瀛楃", null);
+            }
 
-            int count = baseQueryService.selectTabsForCount(tab);
+            String filter = "1=1";
+            if (!StringHelper.isEmpty(depcode)) {
+                filter += String.format(" and depid like '%s%%'", depcode);
+            }
+            dirs = DataLibService.copeCodes(dirs, "dircode");
+            if (dirs != null) {
+                filter += String.format(" and (%s)", dirs);
+            }
+            filter = filter.replace("1=1 and ", "");
+
+            int count = baseQueryService.selectTabsForCount(tab, filter);
             if (count == 0) {
                 return success(0, null);
             }
 
-            List<TabEntity> rs = baseQueryService.selectTabsByPage(tab, pageSize, pageSize * (pageIndex - 1));
+            List<TabEntity> rs = baseQueryService.selectTabsByPage(tab, filter, pageSize, pageSize * (pageIndex - 1));
 
             return success(count, rs);
         } catch (Exception ex) {

--
Gitblit v1.9.3