From ee974ae0aff4f71fce7dde80172159d991754623 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期二, 13 六月 2023 16:52:03 +0800
Subject: [PATCH] 修改bug
---
management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBranchOfficeServiceImpl.java | 52 +++++++++++++++++++++++++++++++++-------------------
1 files changed, 33 insertions(+), 19 deletions(-)
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBranchOfficeServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBranchOfficeServiceImpl.java
index 4d5b211..6c2735a 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBranchOfficeServiceImpl.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBranchOfficeServiceImpl.java
@@ -5,6 +5,7 @@
import com.stylefeng.guns.core.shiro.ShiroKit;
import com.stylefeng.guns.modular.system.controller.resp.TBranchOfficeResp;
import com.stylefeng.guns.modular.system.dao.*;
+import com.stylefeng.guns.modular.system.enums.StatusEnum;
import com.stylefeng.guns.modular.system.model.*;
import com.stylefeng.guns.modular.system.service.ITBranchOfficeService;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
@@ -75,7 +76,8 @@
// 优惠券数据,,,通过订单找到该区域的下单人,找出优惠券信息
List<Integer> userIds = orders.stream().map(TOrder::getUserId).collect(Collectors.toList());
- List<TUserToCoupon> tUserToCoupons = tUserToCouponMapper.selectList(new EntityWrapper<TUserToCoupon>().in("userId", userIds));
+ List<TUserToCoupon> tUserToCoupons = tUserToCouponMapper.selectList(new EntityWrapper<TUserToCoupon>().eq("objectId", tBranchOfficeId)
+ .eq("roleType",2));
// 优惠券有效数量
int validCount = tUserToCoupons.stream().mapToInt(TUserToCoupon::getValidCount).sum();
// 过期数量
@@ -125,6 +127,8 @@
if(Objects.nonNull(status)){
wrapper.eq("status",status);
}
+ wrapper.ne("status", StatusEnum.DELETE.getCode());
+ wrapper.orderBy("createTime",false);
// 判断代理商 分公司
Integer roleType = Objects.requireNonNull(ShiroKit.getUser()).getRoleType();
Integer objectId = Objects.requireNonNull(ShiroKit.getUser()).getObjectId();
@@ -150,42 +154,48 @@
public void queryOtherInfo(List<TBranchOfficeResp> tBranchOfficeRespList) {
List<TOrder> orders = tOrderMapper.selectList(new EntityWrapper<TOrder>());
+
for (TBranchOfficeResp tBranchOfficeResp : tBranchOfficeRespList) {
- List<TOrder> orderList = orders.stream().filter(t -> t.getBranchOfficeId().equals(tBranchOfficeResp.getId())).collect(Collectors.toList());
+ List<TOrder> orderList = orders.stream().filter(t -> tBranchOfficeResp.getId().equals(t.getBranchOfficeId())).collect(Collectors.toList());
+
+ List<TUserToCoupon> tUserToCoupons = tUserToCouponMapper.selectList(new EntityWrapper<TUserToCoupon>().eq("objectId", tBranchOfficeResp.getId())
+ .eq("roleType",2));
if(!CollectionUtils.isEmpty(orderList)){
// 订单数据
tBranchOfficeResp.setOrderCount(orderList.size());// 订单数量
- List<TOrder> effectiveOrder = orderList.stream().filter(order -> order.getPayMoney().compareTo(new BigDecimal("15")) > 0).collect(Collectors.toList());
+ List<TOrder> effectiveOrder = orderList.stream().filter(order -> Objects.nonNull(order.getPayMoney()) && order.getPayMoney().compareTo(new BigDecimal("15")) > 0).collect(Collectors.toList());
tBranchOfficeResp.setEffectiveOrderCount(effectiveOrder.size());// 有效订单
// 优惠券数据,,,通过订单找到该区域的下单人,找出优惠券信息
List<Integer> userIds = orderList.stream().map(TOrder::getUserId).collect(Collectors.toList());
- List<TUserToCoupon> tUserToCoupons = tUserToCouponMapper.selectList(new EntityWrapper<TUserToCoupon>().in("userId", userIds));
- // 优惠券有效数量
- int validCount = tUserToCoupons.stream().mapToInt(TUserToCoupon::getValidCount).sum();
- // 过期数量
- int expireCount = tUserToCoupons.stream().mapToInt(TUserToCoupon::getExpireCount).sum();
- // 总数量
- int totalCount = tUserToCoupons.stream().mapToInt(TUserToCoupon::getCouponTotal).sum();
- // 已使用优惠券;总数量减去有效数量
- tBranchOfficeResp.setUsedCount(totalCount-validCount-expireCount);
+ }
- // 已发放优惠券
- tBranchOfficeResp.setTotalCount(totalCount);
+ // 优惠券有效数量
+ int validCount = tUserToCoupons.stream().mapToInt(TUserToCoupon::getValidCount).sum();
+ // 过期数量
+ int expireCount = tUserToCoupons.stream().mapToInt(TUserToCoupon::getExpireCount).sum();
+ // 总数量
+ int totalCount = tUserToCoupons.stream().mapToInt(TUserToCoupon::getCouponTotal).sum();
+ // 已使用优惠券;总数量减去有效数量
+ tBranchOfficeResp.setUsedCount(totalCount-validCount-expireCount);
- BigDecimal orderPriceCount = new BigDecimal("0");
+ // 已发放优惠券
+ tBranchOfficeResp.setTotalCount(totalCount);
- // 累计优惠券金额
- for (TUserToCoupon tUserToCoupon : tUserToCoupons) {
- TCoupon tCoupon = tCouponMapper.selectById(tUserToCoupon.getCouponId());
+ BigDecimal orderPriceCount = BigDecimal.ZERO;
+ // 累计优惠券金额
+ for (TUserToCoupon tUserToCoupon : tUserToCoupons) {
+ TCoupon tCoupon = tCouponMapper.selectById(tUserToCoupon.getCouponId());
+ if(Objects.nonNull(tCoupon)){
BigDecimal price = tCoupon.getCouponPreferentialAmount().multiply(new BigDecimal(tUserToCoupon.getCouponTotal()));
orderPriceCount = orderPriceCount.add(price);
}
- tBranchOfficeResp.setOrderPriceCount(orderPriceCount);
}
+ tBranchOfficeResp.setOrderPriceCount(orderPriceCount);
+
// 司机数量
Integer driverCount = tDriverMapper.selectCount(new EntityWrapper<TDriver>().eq("branchOfficeId", tBranchOfficeResp.getId()));
tBranchOfficeResp.setDriverCount(driverCount);
@@ -219,6 +229,10 @@
tBranchOffice.setDistrictName(area.getName());
tBranchOffice.setDistrictCode(area.getCode());
}
+ /*else {
+ tBranchOffice.setDistrictName(city.getName());
+ tBranchOffice.setDistrictCode(city.getCode());
+ }*/
// 通过省市查询代理商
List<TAgent> tAgent = tAgentMapper.selectList(new EntityWrapper<TAgent>().eq("provinceCode", province.getCode())
--
Gitblit v1.7.1