From 96dac6da1a20dfa2ecea41544ca21c31c93e7bb2 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 30 Jun 2021 14:41:49 +0800
Subject: [PATCH] modify

---
 gc-shop/src/main/java/com/xzx/gc/shop/service/OrderService.java |   23 +++++++++++++++++++++++
 1 files changed, 23 insertions(+), 0 deletions(-)

diff --git a/gc-shop/src/main/java/com/xzx/gc/shop/service/OrderService.java b/gc-shop/src/main/java/com/xzx/gc/shop/service/OrderService.java
index 1ecd9e8..862975d 100644
--- a/gc-shop/src/main/java/com/xzx/gc/shop/service/OrderService.java
+++ b/gc-shop/src/main/java/com/xzx/gc/shop/service/OrderService.java
@@ -176,6 +176,10 @@
             }
         }
 
+        if (addGoodsOrderDto.getCnt() > sku.getStock()) {
+            throw new RestException(-3, "库存不足");
+        }
+
         AccountInfo accountInfo = accountInfoMapper.selectAccountInfoByUserId(addGoodsOrderDto.getUserId());
 
         if (accountInfo.getCollectScore() == null) {
@@ -378,4 +382,23 @@
             }
         }
     }
+
+    public StatisticsVo orderStatistics(String userId) {
+        BigDecimal score = scoreDetailsMapper.selectTotalScoreByUserId(userId, ScoreDetails.SCORE_TYPE_EXCHANGE);
+
+        Map<String, Object> userData = scoreOrderMapper.selectOrderStastics(userId);
+        Map<String, Object> allData = scoreOrderMapper.selectOrderStastics(null);
+
+        StatisticsVo statisticsVo = new StatisticsVo();
+        statisticsVo.setScore(score);
+        BigDecimal userPrice = (BigDecimal) userData.get("totalPrice");
+        statisticsVo.setReduceCarbon(userPrice.divide(BigDecimal.TEN, 2, BigDecimal.ROUND_DOWN));
+        statisticsVo.setOrderCnt(Integer.parseInt(userData.get("totalOrder").toString()));
+
+        BigDecimal totalPrice = (BigDecimal) allData.get("totalPrice");
+        statisticsVo.setTotalReduceCarbon(totalPrice.divide(BigDecimal.TEN, 2, BigDecimal.ROUND_DOWN));
+        statisticsVo.setTotalOrderCnt(Integer.parseInt(allData.get("totalOrder").toString()));
+        statisticsVo.setTotalBuyCnt(Integer.parseInt(allData.get("totalBuy").toString()));
+        return statisticsVo;
+    }
 }

--
Gitblit v1.9.1