liujie
2023-10-15 871efa21e6c95520e9825ae1f2338c9a919fdd5d
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()));