From 6b90436a61338d46282bf724e445e90af80461e1 Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期三, 27 十二月 2023 10:34:25 +0800
Subject: [PATCH] 2023-12-27 朱宝民 增加了交易记录查询 使分页具有兼容性

---
 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java |   84 +++++++++++++++++++++++++++++++++++++----
 1 files changed, 75 insertions(+), 9 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java
index f85e870..3d58466 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java
@@ -5,13 +5,16 @@
 import com.dy.pipIrrGlobal.daoSe.SeClientMapper;
 import com.dy.pipIrrGlobal.pojoSe.SeClient;
 import com.dy.pipIrrGlobal.voSe.VoClient;
+import com.dy.pipIrrGlobal.voSe.VoOperate;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.common.utils.PojoUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Optional;
 
 /**
  * @author ZhuBaoMin
@@ -31,21 +34,26 @@
 
     /**
      * 鏍规嵁鎸囧畾鏉′欢鑾峰彇鍐滄埛鏁版嵁
-     * @param vo
+     * @param queryVo
      * @return
      */
-    public QueryResultVo<List<VoClient>> getClients(QueryVo vo){
-        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(vo) ;
+    public QueryResultVo<List<VoClient>> getClients(QueryVo queryVo){
+        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo) ;
         Long itemTotal = seClientMapper.getRecordCount(params);
 
         QueryResultVo<List<VoClient>> rsVo = new QueryResultVo<>() ;
-        rsVo.pageSize = vo.pageSize ;
-        //rsVo.pageCurr = vo.pageCurr ;
-
-
-        Integer pageCurr = (Integer.parseInt(params.get("pageCurr").toString()) - 1) * Integer.parseInt(params.get("pageSize").toString());
+        Integer pageCurr = 0;
+        Integer pageSize = 10000;
+        rsVo.pageCurr = 1;
+        rsVo.pageSize = 10000;
+        if(queryVo.pageSize != null && queryVo.pageCurr != null) {
+            rsVo.pageSize = queryVo.pageSize ;
+            rsVo.pageCurr = queryVo.pageCurr;
+            pageSize = queryVo.pageSize ;
+            pageCurr = (Integer.parseInt(params.get("pageCurr").toString()) - 1) * Integer.parseInt(params.get("pageSize").toString());
+        }
         params.put("pageCurr", pageCurr);
-        rsVo.pageCurr = pageCurr;
+        params.put("pageSize", pageSize);
 
         rsVo.calculateAndSet(itemTotal, params);
         rsVo.obj = seClientMapper.getClients(params);
@@ -54,6 +62,64 @@
     }
 
     /**
+     * 鏍规嵁鎸囧畾鏉′欢鑾峰彇浜ゆ槗璁板綍
+     * @param vo
+     * @return
+     */
+    public Map getOperates(QueryOperate vo){
+        // 琛ラ綈鏌ヨ鏃堕棿
+        String operateTimeStart = vo.operateTimeStart;
+        String operateTimeStop = vo.operateTimeStop;
+        if(operateTimeStart != null) {
+            operateTimeStart = operateTimeStart + " 00:00:00";
+            vo.setOperateTimeStart(operateTimeStart);
+        }
+        if(operateTimeStop != null) {
+            operateTimeStop = operateTimeStop + " 23:59:59";
+            vo.setOperateTimeStop(operateTimeStop);
+        }
+
+        // 鐢熸垚鏌ヨ鍙傛暟
+        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(vo) ;
+
+        // 鑾峰彇姹囨�荤殑璐按閲戦銆佽喘鍗¢噾棰�
+        Float money = 0f;
+        Float cardCost = 0f;
+        Map map_sum = Optional.ofNullable(seClientMapper.getSums(params)).orElse(new HashMap());
+        if(map_sum.size() > 0) {
+            money = Float.parseFloat(map_sum.get("money").toString());
+            cardCost = Float.parseFloat(map_sum.get("cardCost").toString());
+        }
+
+        // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟
+        Long itemTotal = seClientMapper.getOperateRecordCount(params);
+
+        Integer pageSize = vo.getPageSize();
+        // 璁$畻鎬婚〉鏁�
+        Integer pageTotal ;
+        pageTotal = (int)Math.ceil((itemTotal==null?0.0D:itemTotal.doubleValue())/pageSize);
+
+        // 鏍规嵁褰撳墠椤电爜鍙婃瘡椤垫暟閲忚绠楀亸绉婚噺
+        Integer pageCurr = (Integer.parseInt(params.get("pageCurr").toString()) - 1) * Integer.parseInt(params.get("pageSize").toString());
+        params.put("pageCurr", pageCurr);
+
+        List<VoOperate> lit = seClientMapper.getOperates(params);
+        Map map_record = new HashMap();
+        map_record.put("itemTotal", itemTotal);
+        map_record.put("pageCurr", vo.pageCurr);
+        map_record.put("pageSize", pageSize);
+        map_record.put("pageTotal", pageTotal);
+        map_record.put("list", lit);
+
+        Map map_result = new HashMap();
+        map_result.put("money", money);
+        map_result.put("cardCost", cardCost);
+        map_result.put("records", map_record);
+
+        return map_result;
+    }
+
+    /**
      * 鏍规嵁涓婚敭鑾峰彇鍐滄埛瀵硅薄
      * @param id 鍐滄埛涓婚敭
      * @return 鍐滄埛瀵硅薄

--
Gitblit v1.8.0