From dfe52245f20a8177a0db0bc2841909fb3eab0f13 Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期三, 08 十一月 2023 09:07:05 +0800 Subject: [PATCH] 后台bug修改 --- cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java | 63 ++++++++++++++++++++++++++++++- 1 files changed, 60 insertions(+), 3 deletions(-) diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java index e39623c..1e8866d 100644 --- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java +++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java @@ -1,4 +1,5 @@ package com.dsh.activity.controller; +import java.util.Date; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; @@ -12,10 +13,13 @@ import com.dsh.activity.feignclient.account.AppUserClient; import com.dsh.activity.feignclient.account.CityClient; import com.dsh.activity.feignclient.account.StoreStaffClient; +import com.dsh.activity.feignclient.account.StudentClient; +import com.dsh.activity.feignclient.account.model.AppUserByNameAndPhoneDTO; import com.dsh.activity.feignclient.account.model.TCityManager; import com.dsh.activity.feignclient.account.model.TStoreStaff; import com.dsh.activity.feignclient.model.CouponExamineListSearch; import com.dsh.activity.feignclient.model.CouponListOfSearch; +import com.dsh.activity.feignclient.model.TAppUser; import com.dsh.activity.feignclient.other.OperatorClient; import com.dsh.activity.feignclient.other.RegionClient; import com.dsh.activity.feignclient.other.StoreClient; @@ -93,6 +97,8 @@ @Autowired private AppUserClient appUserClient; + @Autowired + private StudentClient studentClient; /** * 查询注册赠送优惠券 判断当前优惠券限领数量 @@ -630,18 +636,69 @@ } boolean save = couponService.save(coupon); + AppUserByNameAndPhoneDTO dto = new AppUserByNameAndPhoneDTO(); + List<TAppUser> tAppUsers = appUserClient.queryAppUserList(dto); + // 发放数量 + Integer quantityIssued = dataVo.getQuantityIssued(); + // 限领数量 + Integer pickUpQuantity = dataVo.getPickUpQuantity(); + // 赠送用户数量 + int count = quantityIssued / pickUpQuantity; // 自动发券 if (dataVo.getDistributionMethod() == 3){ // 判断用户人群 再判断限领数量 switch (dataVo.getUserGroup()){ case 1: - + // 给全部用户发券 + // 全部用户ids + List<Integer> collect = tAppUsers.stream() + .map(TAppUser::getId).collect(Collectors.toList()); + for (int i = 0; i < count; i++) { + for (int j = 0; j < pickUpQuantity; j++) { + UserCoupon u1 = new UserCoupon(); + u1.setCouponId(coupon.getId()); + u1.setUserId(collect.get(i)); + u1.setStatus(1); + u1.setVerificationUserId(null); + u1.setVerificationTime(null); + u1.setInsertTime(new Date()); + ucService.save(u1); + } + } break; case 2: - + // 给年度会员发券 获取年度会员ids + List<Integer> collect1 = tAppUsers.stream().filter(t -> t.getVipEndTime().after(new Date())) + .map(TAppUser::getId) + .collect(Collectors.toList()); + for (int i = 0; i < count; i++) { + for (int j = 0; j < pickUpQuantity; j++) { + UserCoupon u1 = new UserCoupon(); + u1.setCouponId(coupon.getId()); + u1.setUserId(collect1.get(i)); + u1.setStatus(1); + u1.setVerificationUserId(null); + u1.setVerificationTime(null); + u1.setInsertTime(new Date()); + ucService.save(u1); + } + } break; case 3: - + // 给已有学员用户发券 获取已有学员的用户ids + List<Integer> collect2 = studentClient.getHasStudentUser(); + for (int i = 0; i < count; i++) { + for (int j = 0; j < pickUpQuantity; j++) { + UserCoupon u1 = new UserCoupon(); + u1.setCouponId(coupon.getId()); + u1.setUserId(collect2.get(i)); + u1.setStatus(1); + u1.setVerificationUserId(null); + u1.setVerificationTime(null); + u1.setInsertTime(new Date()); + ucService.save(u1); + } + } break; } } -- Gitblit v1.7.1