From e9f36d42efaa757c7f93b00ba3ff9fb0d0bf46c9 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期一, 14 十月 2024 17:11:26 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java | 91 +++++++++++++++++++++++++++++++++++---------- 1 files changed, 70 insertions(+), 21 deletions(-) diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java index 8cfd00d..88236a3 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java @@ -38,10 +38,8 @@ import javax.annotation.Resource; import java.math.BigDecimal; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Date; -import java.util.List; +import java.time.LocalDateTime; +import java.util.*; import java.util.stream.Collectors; /** @@ -62,17 +60,32 @@ @Autowired private TAppUserCarService appUserCarService; - @Autowired + @Resource private TokenService tokenService; - @Autowired + @Resource private ChargingPileClient chargingPileClient; - @Autowired + @Resource private ChargingOrderClient chargingOrderClient; - @Resource private ChargingGunClient chargingGunClient; + + @Autowired + private TAppUserTagService appUserTagService; + @Autowired + private TAppUserService appUserService; + - + /** + * 后台退款 回退优惠券使用状态 + * @return + */ + @PostMapping(value = "/refund/{id}") + public R refund(@PathVariable("id") String id) { + TAppCoupon byId = tAppCouponService.getById(id); + byId.setStatus(1); + tAppCouponService.updateById(byId); + return R.ok(); + } /** * 小程序扫一扫 添加车辆 * @param dto @@ -90,18 +103,22 @@ * @return */ @ApiOperation(value = "通过充电枪id和预付金额获取电站详情", tags = {"小程序-扫一扫"}) - @GetMapping(value = "/scan/siteInfo") + @PostMapping(value = "/scan/siteInfo") public AjaxResult<SiteInfoVO> siteInfo(Integer id, BigDecimal money) { TChargingGun chargingGun = chargingGunClient.getChargingGunById(id).getData(); TChargingPile chargingPile = chargingPileClient.getChargingPileById(chargingGun.getChargingPileId()).getData(); - SiteInfoVO data = chargingPileClient.getSiteInfoByNumber(chargingPile.getNumber().toString()).getData(); + SiteInfoVO data = chargingPileClient.getSiteInfoByNumber1(chargingPile.getCode().toString()).getData(); data.setChargingGunId(id); + data.setSiteId(chargingGun.getId()); + data.setChargeMode(chargingGun.getChargeMode()); List<TAppUserCar> cars = appUserCarService.list(new QueryWrapper<TAppUserCar>() .eq("app_user_id",tokenService.getLoginUserApplet().getUserId()) .orderByDesc("create_time")); - Long data1 = chargingOrderClient.getCar().getData(); + Long data1 = chargingOrderClient.getCar(tokenService.getLoginUserApplet().getUserId().toString()).getData(); + Integer data2 = otherClient.getAddCarIntegral().getData(); + data.setIntegral(data2); if (!cars.isEmpty()){ - if (data1 == -1){ + if (null == data1 || data1 == -1){ // 没有充电订单 展示最新添加的车辆 data.setLicensePlate(cars.get(0).getLicensePlate()); data.setVehicleBrand(cars.get(0).getVehicleBrand()); @@ -186,20 +203,29 @@ * @return */ @PostMapping("/getExchangeRecordByCouponId") - public R<PageInfo<ExchangeRecordVO>> getExchangeRecordByCouponId(@RequestBody ExchangeRecordGoodsQuery couponId){ + public R<List<ExchangeRecordVO>> getExchangeRecordByCouponId(@RequestBody ExchangeRecordGoodsQuery couponId){ return R.ok(tAppCouponService.pagelist(couponId)); } - @Autowired - private TAppUserTagService appUserTagService; - @Autowired - private TAppUserService appUserService; + @ApiOperation(value = "优惠卷可用数量", tags = {"小程序-站点管理-站点详情"}) + @GetMapping(value = "/couponCount") + public R<Long> couponCount() { + Long userId = tokenService.getLoginUserApplet().getUserId(); + Long count = tAppCouponService.lambdaQuery().eq(TAppCoupon::getAppUserId, userId).ge(TAppCoupon::getEndTime, LocalDateTime.now()).eq(TAppCoupon::getStatus, 1).count(); + if(Objects.isNull(count)){ + count = 0L; + } + return R.ok(count); + } + + /** * 后台远程调用 给用户发放优惠券 */ @PostMapping("/grantCoupon") public R grantCoupon(@RequestBody GrantCouponDto dto){ + dto.setWaysToObtain(3); List<TAppCoupon> res = new ArrayList<>(); TCoupon coupon = otherClient.getCouponById(dto.getCouponId()).getData(); @@ -223,9 +249,20 @@ break; case 2: // 根据市codes 查询用户ids - List<Long> collect1 = appUserService.list(new QueryWrapper<TAppUser>() - .in("city_code", Arrays.asList(dto.getCityCode().split(",")))) - .stream().map(TAppUser::getId).collect(Collectors.toList()); + List<Long> collect1 = new ArrayList<>(); + // 根据市codes 查询用户ids + if (StringUtils.hasLength(dto.getProvinceCode())){ + List<Long> collect2 = appUserService.list(new QueryWrapper<TAppUser>() + .in("province_code", Arrays.asList(dto.getProvinceCode().split(",")))) + .stream().map(TAppUser::getId).collect(Collectors.toList()); + collect1.addAll(collect2); + } + if (StringUtils.hasLength(dto.getCityCode())){ + List<Long> collect2 = appUserService.list(new QueryWrapper<TAppUser>() + .in("city_code", Arrays.asList(dto.getCityCode().split(",")))) + .stream().map(TAppUser::getId).collect(Collectors.toList()); + collect1.addAll(collect2); + } for (Long l : collect1) { TAppCoupon tAppCoupon = new TAppCoupon(); tAppCoupon.setAppUserId(l); @@ -257,5 +294,17 @@ return R.ok(); } + + + /** + * 根据id获取优惠券领取记录 + * @param id + * @return + */ + @PostMapping("/getAppCouponById") + public R<TAppCoupon> getAppCouponById(@RequestParam("id") Long id){ + TAppCoupon appCoupon = tAppCouponService.getById(id); + return R.ok(appCoupon); + } } -- Gitblit v1.7.1