From 514d6e462e610cd7067c6555e1ea804748a7eb9a Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期五, 09 六月 2023 21:39:29 +0800 Subject: [PATCH] 修改bug --- management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java | 41 ++++++++++++++++++++++++++--------------- 1 files changed, 26 insertions(+), 15 deletions(-) diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java index 3a4712f..ae419ec 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java @@ -22,6 +22,7 @@ import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.time.LocalDate; +import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; @@ -55,7 +56,7 @@ private TUserToCouponMapper tUserToCouponMapper; @Override - public EntityWrapper<TAgent> getAgentWrapper(String principal, String principalPhone, String createTime) { + public EntityWrapper<TAgent> getAgentWrapper(String principal, String principalPhone, String createTime,Integer status) { EntityWrapper<TAgent> wrapper = new EntityWrapper<>(); // 昵称 if(StringUtils.hasLength(principal)){ @@ -68,13 +69,17 @@ // 开始,结束时间 if(StringUtils.hasLength(createTime)){ String[] split = createTime.split(" - "); - Date startTime = DateUtil.getDate_str4(split[0]); - Date endTime = DateUtil.getDate_str4(split[1]); + Date startTime = DateUtil.getDate_str3(split[0]+" 00:00:00"); + Date endTime = DateUtil.getDate_str3(split[1]+" 23:59:59"); wrapper.between("createTime",startTime,endTime); } // 判断是否为代理商 if(Objects.requireNonNull(ShiroKit.getUser()).getRoleType() == 3){ wrapper.eq("id",ShiroKit.getUser().getObjectId()); + } + // 状态 + if(Objects.nonNull(status)){ + wrapper.eq("status",status); } wrapper.ne("status", StatusEnum.DELETE.getCode()); wrapper.orderBy("createTime",false); @@ -101,7 +106,7 @@ model.addAttribute("orderSum",orderList.size()); // 过滤已完成和待评价订单,且支付金额在14元以上 List<TOrder> orders = orderList.stream().filter(order -> (order.getState().equals(OrderStateEnum.FINISH.getCode()) || order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode())) - && 0 < order.getPayMoney().compareTo(new BigDecimal("14")) && order.getAgentId().equals(tAgent.getId())).collect(Collectors.toList()); + && 0 < order.getOrderMoney().compareTo(new BigDecimal("14")) && order.getAgentId().equals(tAgent.getId())).collect(Collectors.toList()); model.addAttribute("validOrder",orders.size()); // 过滤已使用优惠券 List<TOrder> usedCoupon = orderList.stream().filter(order -> (order.getState().equals(OrderStateEnum.FINISH.getCode()) || order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode())) @@ -128,7 +133,9 @@ BigDecimal couponPriceSum = BigDecimal.ZERO; for (TUserToCoupon userToCoupon : tUserToCoupons) { TCoupon tCoupons1 = tCouponMapper.selectById(userToCoupon.getCouponId()); - couponPriceSum = couponPriceSum.add(tCoupons1.getCouponPreferentialAmount().multiply(new BigDecimal(userToCoupon.getCouponTotal()))); + if(Objects.nonNull(tCoupons1)){ + couponPriceSum = couponPriceSum.add(tCoupons1.getCouponPreferentialAmount().multiply(new BigDecimal(userToCoupon.getCouponTotal()))); + } } model.addAttribute("couponPriceSum", couponPriceSum); // 过滤代理商发放的优惠券 @@ -140,8 +147,9 @@ model.addAttribute("driverCount",drivers.size()); // 司机充值计算 List<Integer> driverIds = drivers.stream().map(TDriver::getId).collect(Collectors.toList()); - List<TRechargeRecord> tRechargeRecords = tRechargeRecordMapper.selectList(new EntityWrapper<TRechargeRecord>().in("userId", driverIds) - .eq("type", UserTypeEnum.DRIVER.getCode()) + List<TRechargeRecord> tRechargeRecords = tRechargeRecordMapper.selectList(new EntityWrapper<TRechargeRecord>() + .in("userId", driverIds) + .eq("type", UserTypeEnum.AGENT.getCode()) .eq("payStatus", PayStatusEnum.FINISH.getCode())); if(CollectionUtils.isEmpty(tRechargeRecords)){ model.addAttribute("driverRecharge",BigDecimal.ZERO); @@ -175,7 +183,7 @@ tAgentResp.setOrderSum(orderList.size()); // 过滤已完成和待评价订单,且支付金额在14元以上 List<TOrder> orders = tOrders.stream().filter(order -> (order.getState().equals(OrderStateEnum.FINISH.getCode()) || order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode())) - && 0 < order.getPayMoney().compareTo(new BigDecimal("14")) && tAgent.getId().equals(order.getAgentId())).collect(Collectors.toList()); + && 0 < order.getOrderMoney().compareTo(new BigDecimal("14")) && tAgent.getId().equals(order.getAgentId())).collect(Collectors.toList()); tAgentResp.setValidOrder(orders.size()); // 过滤已使用优惠券 List<TOrder> usedCoupon = tOrders.stream().filter(order -> (order.getState().equals(OrderStateEnum.FINISH.getCode()) || order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode())) @@ -204,7 +212,9 @@ BigDecimal couponPriceSum = BigDecimal.ZERO; for (TUserToCoupon userToCoupon : userToCoupons) { TCoupon tCoupons1 = tCouponMapper.selectById(userToCoupon.getCouponId()); - couponPriceSum = couponPriceSum.add(tCoupons1.getCouponPreferentialAmount().multiply(new BigDecimal(userToCoupon.getCouponTotal()))); + if(Objects.nonNull(tCoupons1)){ + couponPriceSum = couponPriceSum.add(tCoupons1.getCouponPreferentialAmount().multiply(new BigDecimal(userToCoupon.getCouponTotal()))); + } } tAgentResp.setCouponPriceSum(couponPriceSum); } @@ -215,8 +225,9 @@ tAgentResp.setDriverCount(drivers.size()); // 司机充值计算 List<Integer> driverIds = drivers.stream().map(TDriver::getId).collect(Collectors.toList()); - List<TRechargeRecord> tRechargeRecords = tRechargeRecordMapper.selectList(new EntityWrapper<TRechargeRecord>().in("userId", driverIds) - .eq("type", UserTypeEnum.DRIVER.getCode()) + List<TRechargeRecord> tRechargeRecords = tRechargeRecordMapper.selectList(new EntityWrapper<TRechargeRecord>() + .eq("agentId", tAgent.getId()) + .eq("type", UserTypeEnum.AGENT.getCode()) .eq("payStatus", PayStatusEnum.FINISH.getCode())); tRechargeRecords.stream().map(TRechargeRecord::getAmount).reduce(BigDecimal::add).ifPresent(tAgentResp::setDriverRecharge); } @@ -232,8 +243,8 @@ Integer agentTotal = tAgentMapper.selectCount(new EntityWrapper<TAgent>() .eq("id", agentId)); // 代理商最近一个月新增数量 - LocalDate now = LocalDate.now(); - LocalDate localDate = now.plusMonths(1); + LocalDateTime now = LocalDateTime.now(); + LocalDateTime localDate = now.minusMonths(1); Integer agentMonthTotal = tAgentMapper.selectCount(new EntityWrapper<TAgent>() .eq("id", agentId) .between("createTime", localDate, now)); @@ -249,8 +260,8 @@ Integer agentTotal = tAgentMapper.selectCount(new EntityWrapper<TAgent>() .in("id", ids)); // 代理商最近一个月新增数量 - LocalDate now = LocalDate.now(); - LocalDate localDate = now.plusMonths(1); + LocalDateTime now = LocalDateTime.now(); + LocalDateTime localDate = now.minusMonths(1); Integer agentMonthTotal = tAgentMapper.selectCount(new EntityWrapper<TAgent>() .in("id", ids) .between("createTime", localDate, now)); -- Gitblit v1.7.1