From 443b575f774d8eb50c16d4eefccce5218fb8de2a Mon Sep 17 00:00:00 2001
From: 354798ggg <1074825718@qq.com>
Date: 星期二, 14 十一月 2023 13:40:48 +0800
Subject: [PATCH] 项目信息和出库信息高级搜索

---
 product-server-project-management/src/main/java/com/product/project/management/service/ProjectOutService.java        |   21 ++++++++++++++++-----
 product-server-project-management/src/main/java/com/product/project/management/controller/ProjectInfoController.java |    2 +-
 product-server-project-management/src/main/java/com/product/project/management/service/ProjectInfoService.java       |   19 +++++++++++++++----
 product-server-project-management/src/main/java/com/product/project/management/controller/ProjectOutController.java  |    2 +-
 4 files changed, 33 insertions(+), 11 deletions(-)

diff --git a/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectInfoController.java b/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectInfoController.java
index 9ddf56c..fb891e4 100644
--- a/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectInfoController.java
+++ b/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectInfoController.java
@@ -42,7 +42,7 @@
             if (BaseUtil.strIsNull(fse.getString(CoreConst.CPAGE)) || BaseUtil.strIsNull(fse.getString(CoreConst.PAGESIZE))) {
                 return this.error(SystemCode.SYSTEM_CPAGES_NOT_NULL.getValue(), SystemCode.SYSTEM_CPAGES_NOT_NULL.getText());
             }
-            return OK_List(projectInfoService.listProjectByCreated(fse.getInteger(Cmnconst.CPAGE), fse.getInteger(Cmnconst.PAGESIZE)));
+            return OK_List(projectInfoService.listProjectByCreated(fse));
         } catch (BaseException e) {
             e.printStackTrace();
             return this.error(e);
diff --git a/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectOutController.java b/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectOutController.java
index 6a23e4f..901f6f4 100644
--- a/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectOutController.java
+++ b/product-server-project-management/src/main/java/com/product/project/management/controller/ProjectOutController.java
@@ -35,7 +35,7 @@
             if (BaseUtil.strIsNull(fse.getString(Cmnconst.CPAGE)) || BaseUtil.strIsNull(fse.getString(Cmnconst.PAGESIZE))) {
 				return this.error(SystemCode.SYSTEM_CPAGES_NOT_NULL.getValue(), SystemCode.SYSTEM_CPAGES_NOT_NULL.getText());
 			}
-            return OK_List(projectOutService.listOutBound(fse.getInteger(Cmnconst.CPAGE), fse.getInteger(Cmnconst.PAGESIZE), fse.getString("filter")));
+            return OK_List(projectOutService.listOutBound(fse));
         } catch (BaseException e) {
             e.printStackTrace();
             return this.error(e);
diff --git a/product-server-project-management/src/main/java/com/product/project/management/service/ProjectInfoService.java b/product-server-project-management/src/main/java/com/product/project/management/service/ProjectInfoService.java
index b1babe8..bb26ffd 100644
--- a/product-server-project-management/src/main/java/com/product/project/management/service/ProjectInfoService.java
+++ b/product-server-project-management/src/main/java/com/product/project/management/service/ProjectInfoService.java
@@ -13,6 +13,7 @@
 import com.product.core.exception.BaseException;
 import com.product.core.permission.PermissionService;
 import com.product.core.service.support.AbstractBaseService;
+import com.product.core.service.support.QueryFilterService;
 import com.product.project.management.config.Cmnconst;
 import com.product.project.management.config.SystemCode;
 import com.product.util.BaseUtil;
@@ -28,16 +29,26 @@
     @Autowired
     PermissionService permissionService;
     
+    @Autowired
+    QueryFilterService queryFilterService;
+    
     /**
      * 	椤圭洰淇℃伅鍒楄〃
      * @param cpage
      * @param pageSize
      * @return
      */
-    public DataTableEntity listProjectByCreated(Integer cpage, Integer pageSize) {
-
-    	String queryFilter = permissionService.getDataFilter(Cmnconst.PRODUCT_PROJECT_QXLW, "project_leader,materialman");
-    	DataTableEntity dt = baseDao.listTable(Cmnconst.PRODUCT_PROJECT_QXLW, queryFilter, new Object [] {}, null, Cmnconst.CREATED_UTC_DATETIME_DESC, pageSize, cpage);
+    public DataTableEntity listProjectByCreated(FieldSetEntity fse) {
+    	String queryFilter = " 1 = 1 ";
+    	String searchFilter = queryFilterService.getQueryFilter(fse);
+    	if (!BaseUtil.strIsNull(searchFilter)) {
+    		queryFilter += " AND " + searchFilter;
+		}
+    	String limitFilter = permissionService.getDataFilter(Cmnconst.PRODUCT_PROJECT_QXLW, "project_leader,materialman");
+    	if (!BaseUtil.strIsNull(limitFilter)) {
+			queryFilter += " AND " + limitFilter;
+		}
+    	DataTableEntity dt = baseDao.listTable(Cmnconst.PRODUCT_PROJECT_QXLW, queryFilter, new Object [] {}, null, Cmnconst.CREATED_UTC_DATETIME_DESC, fse.getInteger(Cmnconst.PAGESIZE), fse.getInteger(Cmnconst.CPAGE));
     	baseDao.loadPromptData(dt);
     	return dt;
     }
diff --git a/product-server-project-management/src/main/java/com/product/project/management/service/ProjectOutService.java b/product-server-project-management/src/main/java/com/product/project/management/service/ProjectOutService.java
index 35cdb70..0bbf969 100644
--- a/product-server-project-management/src/main/java/com/product/project/management/service/ProjectOutService.java
+++ b/product-server-project-management/src/main/java/com/product/project/management/service/ProjectOutService.java
@@ -5,6 +5,7 @@
 import com.product.core.entity.FieldSetEntity;
 import com.product.core.permission.PermissionService;
 import com.product.core.service.support.AbstractBaseService;
+import com.product.core.service.support.QueryFilterService;
 import com.product.project.management.config.Cmnconst;
 import com.product.util.BaseUtil;
 
@@ -23,16 +24,26 @@
 	@Autowired
     PermissionService permissionService;
 	
+	@Autowired
+	QueryFilterService queryFilterService;
 	
-	public DataTableEntity listOutBound(Integer cpage, Integer pageSize, String filter) {
+	
+	public DataTableEntity listOutBound(FieldSetEntity fse) {
 		
-		String queryFilter = permissionService.getDataFilter(Cmnconst.PRODUCT_PROJECT_QXLW, "project_leader,materialman");
-		if (!BaseUtil.strIsNull(queryFilter)) {
-			filter += " AND " + queryFilter;
+		String filter = fse.getString("filter");
+		String searchFilter = queryFilterService.getQueryFilter(fse);
+		if (!BaseUtil.strIsNull(searchFilter)) {
+			filter += " AND " + searchFilter;
+		}
+		String limitFilter = permissionService.getDataFilter(Cmnconst.PRODUCT_PROJECT_QXLW, "project_leader,materialman");
+		if (!BaseUtil.strIsNull(limitFilter)) {
+			filter += " AND " + limitFilter;
 		}
 		
 		String sql = "SELECT * FROM product_project_outbound A LEFT JOIN product_project_qxlw B ON A.project_uuid = B.uuid  WHERE " + filter;
-		DataTableEntity dt = baseDao.listTable(sql, new Object[] {}, pageSize, cpage);
+		DataTableEntity dt = baseDao.listTable(sql, new Object[] {}, fse.getInteger(Cmnconst.PAGESIZE), fse.getInteger(Cmnconst.CPAGE));
+		dt.getMeta().addAliasTable("product_project_outbound", "A");
+		dt.getMeta().addAliasTable("product_project_qxlw", "B");
 		baseDao.loadPromptData(dt);
 		return dt;
 	}

--
Gitblit v1.9.2