Przeglądaj źródła

字典通用查询条件onlyCount失效问题修复

linhuili 3 lat temu
rodzic
commit
757cc7a1ae

+ 8 - 1
dmp-business/dmp-dic/src/main/java/com/persagy/dmp/dic/controller/DictDataController.java

@@ -59,7 +59,14 @@ public class DictDataController {
         }
         // 转换查询条件
         QueryCriteriaHelper.toWrapper(wrapper, criteria, DictData.class);
-        Page page = service.queryByCondition(QueryCriteriaHelper.toPage(criteria), wrapper);
+        // 转换查询条件
+        Page page = QueryCriteriaHelper.toPage(criteria);
+        if(criteria.isOnlyCount()) {
+            Integer total = service.queryCount(wrapper);
+            page.setTotal(total);
+        } else {
+            page = service.queryByCondition(QueryCriteriaHelper.toPage(criteria), wrapper);
+        }
         return ResultHelper.multi(page.getRecords(), page.getTotal());
     }
 

+ 7 - 1
dmp-business/dmp-dic/src/main/java/com/persagy/dmp/dic/controller/DictDataMapController.java

@@ -46,7 +46,13 @@ public class DictDataMapController {
         QueryWrapper<DictDataMap> wrapper = new QueryWrapper<>();
         // 转换查询条件
         QueryCriteriaHelper.toWrapper(wrapper, criteria, DictDataMap.class);
-        Page page = service.queryByCondition(QueryCriteriaHelper.toPage(criteria), wrapper);
+        Page page = QueryCriteriaHelper.toPage(criteria);
+        if(criteria.isOnlyCount()) {
+            Integer total = service.queryCount(wrapper);
+            page.setTotal(total);
+        } else {
+            page = service.queryByCondition(QueryCriteriaHelper.toPage(criteria), wrapper);
+        }
         return ResultHelper.multi(page.getRecords(), page.getTotal());
     }
 

+ 7 - 1
dmp-business/dmp-dic/src/main/java/com/persagy/dmp/dic/controller/DictTypeController.java

@@ -46,7 +46,13 @@ public class DictTypeController {
         QueryWrapper<DictType> wrapper = new QueryWrapper<>();
         // 转换查询条件
         QueryCriteriaHelper.toWrapper(wrapper, criteria, DictType.class);
-        Page page = service.queryByCondition(QueryCriteriaHelper.toPage(criteria), wrapper);
+        Page page = QueryCriteriaHelper.toPage(criteria);
+        if(criteria.isOnlyCount()) {
+            Integer total = service.queryCount(wrapper);
+            page.setTotal(total);
+        } else {
+            page = service.queryByCondition(QueryCriteriaHelper.toPage(criteria), wrapper);
+        }
         return ResultHelper.multi(page.getRecords(), page.getTotal());
     }
 

+ 7 - 0
dmp-business/dmp-dic/src/main/java/com/persagy/dmp/dic/service/DictDataMapService.java

@@ -14,6 +14,13 @@ import java.util.List;
 public interface DictDataMapService {
 
     /**
+     * 按条件计数
+     * @param queryWrapper 查询条件
+     * @return 结果数量
+     */
+    Integer queryCount(Wrapper<DictDataMap> queryWrapper);
+
+    /**
      * 按条件查询
      * @param page 分页条件
      * @param queryWrapper 查询条件

+ 7 - 1
dmp-business/dmp-dic/src/main/java/com/persagy/dmp/dic/service/DictDataService.java

@@ -3,7 +3,6 @@ package com.persagy.dmp.dic.service;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.persagy.dmp.dic.entity.DictData;
-import com.persagy.dmp.dic.entity.DictData;
 import com.persagy.dmp.dic.entity.DictType;
 
 import java.util.List;
@@ -16,6 +15,13 @@ import java.util.List;
 public interface DictDataService {
 
     /**
+     * 按条件计数
+     * @param queryWrapper 查询条件
+     * @return 结果数量
+     */
+    Integer queryCount(Wrapper<DictData> queryWrapper);
+
+    /**
      * 按条件查询
      * @param page 分页条件
      * @param queryWrapper 查询条件

+ 8 - 0
dmp-business/dmp-dic/src/main/java/com/persagy/dmp/dic/service/DictTypeService.java

@@ -12,6 +12,14 @@ import java.util.List;
  * @date:2021/6/10
  */
 public interface DictTypeService {
+
+    /**
+     * 按条件计数
+     * @param queryWrapper 查询条件
+     * @return 结果数量
+     */
+    Integer queryCount(Wrapper<DictType> queryWrapper);
+
     /**
      * 按条件查询
      * @param page 分页条件

+ 10 - 0
dmp-business/dmp-dic/src/main/java/com/persagy/dmp/dic/service/impl/DictDataMapServiceImpl.java

@@ -24,6 +24,16 @@ public class DictDataMapServiceImpl implements DictDataMapService {
     private DictDataMapMapper dao;
 
     /**
+     * 按条件计数
+     * @param queryWrapper 查询条件
+     * @return
+     */
+    @Override
+    public Integer queryCount(Wrapper<DictDataMap> queryWrapper) {
+        return dao.selectCount(queryWrapper);
+    }
+
+    /**
      * 分页查询
      *
      * @param page         分页条件

+ 10 - 0
dmp-business/dmp-dic/src/main/java/com/persagy/dmp/dic/service/impl/DictDataServiceImpl.java

@@ -33,6 +33,16 @@ public class DictDataServiceImpl implements DictDataService {
     private DictDataMapService dictDataMapService;
 
     /**
+     * 按条件计数
+     * @param queryWrapper 查询条件
+     * @return
+     */
+    @Override
+    public Integer queryCount(Wrapper<DictData> queryWrapper) {
+        return dao.selectCount(queryWrapper);
+    }
+
+    /**
      * 分页查询
      *
      * @param page         分页条件

+ 10 - 0
dmp-business/dmp-dic/src/main/java/com/persagy/dmp/dic/service/impl/DictTypeServiceImpl.java

@@ -25,6 +25,16 @@ public class DictTypeServiceImpl implements DictTypeService {
     private DictTypeMapper dao;
 
     /**
+     * 按条件计数
+     * @param queryWrapper 查询条件
+     * @return
+     */
+    @Override
+    public Integer queryCount(Wrapper<DictType> queryWrapper) {
+        return dao.selectCount(queryWrapper);
+    }
+
+    /**
      * 分页查询
      * @param page 分页条件
      * @param queryWrapper 查询条件