From d0875e8da50625ef0ce083a568de7c8b044aaf4c Mon Sep 17 00:00:00 2001
From: yanghui <2536613402@qq.com>
Date: 星期一, 21 十一月 2022 10:09:15 +0800
Subject: [PATCH] #feat 商家运营数据统计

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerOrderServiceImpl.java |   62 ++++++++++++++++++++++++++-----
 1 files changed, 52 insertions(+), 10 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerOrderServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerOrderServiceImpl.java
index d37bae2..33d021c 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerOrderServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerOrderServiceImpl.java
@@ -65,6 +65,8 @@
     private ConvenientElevatingPointDAO convenientElevatingPointDAO;
     @Resource
     private ComShopFlowerEvaluateDAO comShopFlowerEvaluateDAO;
+    @Resource
+    private ComShopFlowerRefundOrderDAO comShopFlowerRefundOrderDAO;
 
 
     @Value("${hcMin.app.isTest}")
@@ -273,6 +275,7 @@
         shopOrderDO.setOrderNo(orderNo);
         shopOrderDO.setStoreId(storeId);
         shopOrderDO.setUserId(userId);
+        //TODO
         shopOrderDO.setStatus(ComShopFlowerOrderDO.status.dfk);
         shopOrderDO.setPayStatus(ComShopFlowerOrderDO.payStatus.no);
         shopOrderDO.setReceiverId(orderCreateDTO.getReceiverId());
@@ -985,23 +988,62 @@
     }
 
     @Override
-    public R selectCountByDeliveryType(Integer deliveryType) {
-        List<ComShopOrderCountVO> comShopOrderCountVOS = this.baseMapper.selectCountByDeliveryType(deliveryType);
+    public R selectCountByDeliveryType(Integer deliveryType,Long storeId) {
+        //1.等待配送 2.配送中 3.待收货 4.待评价 5.已完成 6.已取消 7.已退款 8.总订单
+        String[] statusStr = {"ddps","psz","dsh","dpj","ywc","yqx","ytk"};
+        List<ComShopOrderCountVO> comShopOrderCountVOS = this.baseMapper.selectCountByDeliveryType(deliveryType,storeId);
         Map<Integer, Integer> collect = comShopOrderCountVOS.stream().collect(Collectors.toMap(ComShopOrderCountVO::getStatus, ComShopOrderCountVO::getAmount));
-        ComShopOrderCountVO comShopOrderCountVO = new ComShopOrderCountVO();
-        comShopOrderCountVO.setStatus(8);
-        comShopOrderCountVO.setAmount(0);
-        for (int i = 1; i < 8; i++) {
+        Map<String,Integer> retMap = new HashMap<>();
+        int amountTotal = 0;
+        for (int i = 0; i < statusStr.length; i++) {
             if (collect.containsKey(i)) {
                 Integer amount = collect.get(i);
-                comShopOrderCountVO.setAmount(amount + comShopOrderCountVO.getAmount());
+                amountTotal = amountTotal + amount;
+                retMap.put(statusStr[i],amount);
             }else {
-                collect.put(i,0);
+                retMap.put(statusStr[i],0);
             }
         }
-        collect.put(comShopOrderCountVO.getStatus(),comShopOrderCountVO.getAmount());
+        retMap.put("zdd",amountTotal);
 
-        return R.ok(collect);
+        return R.ok(retMap);
+    }
+
+    @Override
+    public R selectCountByStoreId(Long storeId){
+        Map<String,Object> retMap = new HashMap<>();
+        //查询我的店铺订单量
+        List<ComShopOrderStoreIdCountVO> comShopOrderStoreIdCountVOS = this.baseMapper.selectCountByStoreId(storeId, null);
+        Map<String, Integer> zddlMap = comShopOrderStoreIdCountVOS.stream().collect(Collectors.toMap(ComShopOrderStoreIdCountVO::getCountName, ComShopOrderStoreIdCountVO::getCount));
+        retMap.put("zddl",zddlMap);
+        //查询我的店铺拼单订单
+        List<ComShopOrderStoreIdCountVO> comShopOrderStoreIdCountVOS1 = this.baseMapper.selectCountByStoreId(storeId, ComShopFlowerOrderDO.deliveryType.store);
+        Map<String, Integer> pdddMap = comShopOrderStoreIdCountVOS1.stream().collect(Collectors.toMap(ComShopOrderStoreIdCountVO::getCountName, ComShopOrderStoreIdCountVO::getCount));
+        retMap.put("pddd",pdddMap);
+        //查询我的店铺快递订单
+        List<ComShopOrderStoreIdCountVO> comShopOrderStoreIdCountVOS2 = this.baseMapper.selectCountByStoreId(storeId, ComShopFlowerOrderDO.deliveryType.express);
+        Map<String, Integer> kdddMap = comShopOrderStoreIdCountVOS2.stream().collect(Collectors.toMap(ComShopOrderStoreIdCountVO::getCountName, ComShopOrderStoreIdCountVO::getCount));
+        retMap.put("kddd",kdddMap);
+
+        //拼单订单各状态
+        R r = this.selectCountByDeliveryType(ComShopFlowerOrderDO.deliveryType.store,storeId);
+        retMap.put("pdddStatus",r.getData());
+
+        //快递订单各状态
+        R r1 = this.selectCountByDeliveryType(ComShopFlowerOrderDO.deliveryType.express,storeId);
+        retMap.put("kdddStatus",r1.getData());
+        //营业额
+        List<ComShopOrderStoreIdCountVO> comShopOrderStoreIdCountVOS3 = this.baseMapper.selectSumAmountByStoreId(storeId);
+        Map<String, Integer> yyeMap = comShopOrderStoreIdCountVOS3.stream().collect(Collectors.toMap(ComShopOrderStoreIdCountVO::getCountName, ComShopOrderStoreIdCountVO::getCount));
+        retMap.put("yye",yyeMap);
+        //在售商品
+        Integer countSale = comShopFlowerGoodsDAO.selectCountSaleByStoreId(storeId);
+        retMap.put("countSale",countSale);
+        //退款申请
+        Integer refundOrder = comShopFlowerRefundOrderDAO.selectCountByStoreId(storeId);
+        retMap.put("refundOrder",refundOrder);
+
+        return R.ok(retMap);
     }
 
 

--
Gitblit v1.7.1