From 871efa21e6c95520e9825ae1f2338c9a919fdd5d Mon Sep 17 00:00:00 2001
From: liujie <liujie>
Date: 星期日, 15 十月 2023 17:57:48 +0800
Subject: [PATCH] 用户端代码

---
 src/main/java/com/stylefeng/guns/modular/system/controller/IndexController.java |   22 +++++++++++++++-------
 1 files changed, 15 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/stylefeng/guns/modular/system/controller/IndexController.java b/src/main/java/com/stylefeng/guns/modular/system/controller/IndexController.java
index 365a03a..25385ba 100644
--- a/src/main/java/com/stylefeng/guns/modular/system/controller/IndexController.java
+++ b/src/main/java/com/stylefeng/guns/modular/system/controller/IndexController.java
@@ -4,12 +4,10 @@
 import cn.hutool.core.date.DateUtil;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.stylefeng.guns.core.base.controller.BaseController;
-import com.stylefeng.guns.modular.system.model.IndexInfo;
-import com.stylefeng.guns.modular.system.model.IndexMonth;
-import com.stylefeng.guns.modular.system.model.TOrder;
-import com.stylefeng.guns.modular.system.model.TUser;
+import com.stylefeng.guns.modular.system.model.*;
 import com.stylefeng.guns.modular.system.model.dto.UserAddInfoDto;
 import com.stylefeng.guns.modular.system.service.ITOrderService;
+import com.stylefeng.guns.modular.system.service.ITPriceService;
 import com.stylefeng.guns.modular.system.service.ITUserAddressService;
 import com.stylefeng.guns.modular.system.service.ITUserService;
 import com.stylefeng.guns.modular.system.utils.tips.SuccessTip;
@@ -22,6 +20,7 @@
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.util.Date;
 import java.util.List;
 
@@ -44,6 +43,9 @@
 
     @Resource
     private ITUserAddressService userAddressService;
+
+    @Autowired
+    private ITPriceService priceService;
     /**
      * 完善信息
      */
@@ -105,20 +107,26 @@
     public Object list(String time,int type,int userId) {
         TUser tUser = userService.selectById(userId);
         IndexInfo indexInfo = new IndexInfo();
-        int numberOfOrder = orderService.selectCount(new EntityWrapper<TOrder>().eq("user_id", userId));
+        int numberOfOrder = orderService.selectCount(new EntityWrapper<TOrder>().eq("user_id", userId).ne("status",17));
         int dispatching = orderService.selectCount(new EntityWrapper<TOrder>().eq("user_id", userId).eq("status",0));
         int pendingPickup = orderService.selectCount(new EntityWrapper<TOrder>().eq("user_id", userId).eq("status",2));
         int inTransit = orderService.selectCount(new EntityWrapper<TOrder>().eq("user_id", userId).eq("status",7));
         int toBeUnloaded = orderService.selectCount(new EntityWrapper<TOrder>().eq("user_id", userId).eq("status",8));
         int unloaded = orderService.selectCount(new EntityWrapper<TOrder>().eq("user_id", userId).eq("status",9));
-        int unpaidBills = orderService.selectCount(new EntityWrapper<TOrder>().eq("user_id", userId).isNull("pay_time"));
+        List<TOrder> orders = orderService.selectList(new EntityWrapper<TOrder>().eq("user_id", userId).isNull("pay_time").ne("status",17));
+        BigDecimal bigDecimal = new BigDecimal(0);
+        for (TOrder order : orders) {
+            List<TPrice> prices = priceService.selectList(new EntityWrapper<TPrice>().eq("order_id", order.getId()));
+            BigDecimal reduce = prices.stream().map(TPrice::getPrice).reduce(BigDecimal.ZERO, BigDecimal::add);
+            bigDecimal = bigDecimal.add(reduce);
+        }
         indexInfo.setNumberOfOrder(numberOfOrder);
         indexInfo.setDispatching(dispatching);
         indexInfo.setPendingPickup(pendingPickup);
         indexInfo.setInTransit(inTransit);
         indexInfo.setToBeUnloaded(toBeUnloaded);
         indexInfo.setUnloaded(unloaded);
-        indexInfo.setUnpaidBills(unpaidBills);
+        indexInfo.setUnpaidBills(bigDecimal);
         indexInfo.setAllQuota(tUser.getReditLimit());
         indexInfo.setResidueQuota(tUser.getResidueLimit());
         indexInfo.setPaymentDay(Integer.valueOf(tUser.getPaymentDays()));

--
Gitblit v1.7.1