From 17f18c3d56a70327874aa7dda0adfa2f5e3dafce Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期三, 14 六月 2023 20:57:38 +0800 Subject: [PATCH] 代理商修改优惠券展示 --- management/guns-admin/src/main/resources/application.yml | 4 ++-- management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java | 14 +++++++++++--- management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java | 23 ++++++++++++++++------- 3 files changed, 29 insertions(+), 12 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 ae419ec..65c05dc 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 @@ -111,7 +111,7 @@ // 过滤已使用优惠券 List<TOrder> usedCoupon = orderList.stream().filter(order -> (order.getState().equals(OrderStateEnum.FINISH.getCode()) || order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode())) && Objects.nonNull(order.getCouponId()) && order.getAgentId().equals(tAgent.getId())).collect(Collectors.toList()); - model.addAttribute("usedCoupon",usedCoupon.size()); +// model.addAttribute("usedCoupon",usedCoupon.size()); // 已使用优惠券金额求和,已使用优惠券id // List<Integer> usedCouponId = usedCoupon.stream().map(TOrder::getCouponId).collect(Collectors.toList()); // if(CollectionUtils.isEmpty(usedCouponId)){ @@ -141,6 +141,10 @@ // 过滤代理商发放的优惠券 int sum = tUserToCoupons.stream().mapToInt(TUserToCoupon::getCouponTotal).sum(); model.addAttribute("issuedCoupon",sum); + // 总量减去有效数量和过期数量为使用数量 + int validCount = tUserToCoupons.stream().mapToInt(TUserToCoupon::getValidCount).sum();//有效数量 + int expireCount = tUserToCoupons.stream().mapToInt(TUserToCoupon::getExpireCount).sum();//过期数量 + model.addAttribute("usedCoupon",sum-validCount-expireCount); // 司机信息 // 司机数 List<TDriver> drivers = tDriverMapper.selectList(new EntityWrapper<TDriver>().eq("agentId", tAgent.getId())); @@ -164,7 +168,7 @@ List<TOrder> tOrders = tOrderMapper.selectList(new EntityWrapper<TOrder>()); // 查询优惠券 List<TCoupon> tCoupons = tCouponMapper.selectList(new EntityWrapper<TCoupon>()); - // 用户 + // 用户优惠券 List<TUserToCoupon> tUserToCoupons = tUserToCouponMapper.selectList(new EntityWrapper<TUserToCoupon>()); // 查询司机信息 List<TDriver> tDrivers = tDriverMapper.selectList(new EntityWrapper<TDriver>()); @@ -188,7 +192,7 @@ // 过滤已使用优惠券 List<TOrder> usedCoupon = tOrders.stream().filter(order -> (order.getState().equals(OrderStateEnum.FINISH.getCode()) || order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode())) && Objects.nonNull(order.getCouponId()) && tAgent.getId().equals(order.getAgentId())).collect(Collectors.toList()); - tAgentResp.setUsedCoupon(usedCoupon.size()); +// tAgentResp.setUsedCoupon(usedCoupon.size()); // 已使用优惠券金额求和,已使用优惠券id // List<Integer> usedCouponId = usedCoupon.stream().map(TOrder::getCouponId).collect(Collectors.toList()); // if(CollectionUtils.isEmpty(usedCouponId)){ @@ -209,6 +213,10 @@ List<TUserToCoupon> userToCoupons = tUserToCoupons.stream().filter(coupon -> tAgent.getId().equals(coupon.getObjectId()) && coupon.getRoleType() == 3).collect(Collectors.toList()); int sum = userToCoupons.stream().mapToInt(TUserToCoupon::getCouponTotal).sum(); tAgentResp.setIssuedCoupon(sum); + // 总量减去有效数量和过期数量为使用数量 + int validCount = userToCoupons.stream().mapToInt(TUserToCoupon::getValidCount).sum();//有效数量 + int expireCount = userToCoupons.stream().mapToInt(TUserToCoupon::getExpireCount).sum();//过期数量 + tAgentResp.setUsedCoupon(sum-validCount-expireCount); BigDecimal couponPriceSum = BigDecimal.ZERO; for (TUserToCoupon userToCoupon : userToCoupons) { TCoupon tCoupons1 = tCouponMapper.selectById(userToCoupon.getCouponId()); diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java index dd68d6a..9828cbe 100644 --- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java +++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java @@ -106,13 +106,22 @@ // 查询用户 TAppUser tAppUser = tAppUserMapper.selectById(tOrder.getUserId()); - model.addAttribute("userName",tAppUser.getNickname()); - model.addAttribute("userPhone",tAppUser.getPhone()); - model.addAttribute("havDiscount",tAppUser.getHavDiscount()); - if(1 == tAppUser.getHavDiscount()){ - // 计算9折优惠金额 - BigDecimal multiply = tOrder.getOrderMoney().multiply(new BigDecimal("0.1")).setScale(2); - model.addAttribute("multiply",multiply); + if(Objects.nonNull(tAppUser)){ + model.addAttribute("userName",tAppUser.getNickname()); + model.addAttribute("userPhone",tAppUser.getPhone()); + model.addAttribute("havDiscount",tAppUser.getHavDiscount()); + if(1 == tAppUser.getHavDiscount()){ + // 计算9折优惠金额 + BigDecimal multiply = tOrder.getOrderMoney().multiply(new BigDecimal("0.1")).setScale(2); + model.addAttribute("multiply",multiply); + }else { + model.addAttribute("multiply",0); + } + }else { + model.addAttribute("userName",""); + model.addAttribute("userPhone",""); + model.addAttribute("havDiscount",""); + model.addAttribute("multiply",0); } // 查询司机 diff --git a/management/guns-admin/src/main/resources/application.yml b/management/guns-admin/src/main/resources/application.yml index c343911..b527cff 100644 --- a/management/guns-admin/src/main/resources/application.yml +++ b/management/guns-admin/src/main/resources/application.yml @@ -52,8 +52,8 @@ datasource: url: jdbc:mysql://127.0.0.1:3306/super_save_driving?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B8 username: root -# password: f4OfRjqoN3jSiNGiUoiNsQdOBtCOKYRj - password: 123456 + password: f4OfRjqoN3jSiNGiUoiNsQdOBtCOKYRj +# password: 123456 db-name: super_save_driving #用来搜集数据库的所有表 filters: wall,mergeStat -- Gitblit v1.7.1