From 5e1cf8e0e94b42a94c3a3d3ccda5147fe6ce94f0 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期四, 22 八月 2024 09:42:56 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java | 42 +++++++++++++++++++++++++++++++++++------- 1 files changed, 35 insertions(+), 7 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 f529267..7e65be4 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 @@ -1,12 +1,16 @@ package com.ruoyi.account.controller; +import com.alibaba.fastjson2.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ruoyi.account.api.dto.CouponListDto; import com.ruoyi.account.api.dto.GrantCouponDto; import com.ruoyi.account.api.model.TAppCoupon; import com.ruoyi.account.api.model.TAppUserCar; import com.ruoyi.account.api.query.ExchangeRecordGoodsQuery; +import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient; +import com.ruoyi.chargingPile.api.model.TChargingGun; +import com.ruoyi.chargingPile.api.model.TChargingPile; import com.ruoyi.other.api.vo.CouponListVOVO; import com.ruoyi.account.api.vo.ExchangeRecordVO; import com.ruoyi.account.service.TAppCouponService; @@ -26,6 +30,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import javax.annotation.Resource; +import java.math.BigDecimal; +import javax.annotation.Resource; import java.util.ArrayList; import java.util.Arrays; import java.util.Date; @@ -44,6 +51,8 @@ public class TAppCouponController { @Autowired private TAppCouponService tAppCouponService; + @Resource + private OtherClient otherClient; @Autowired private TAppUserCarService appUserCarService; @@ -53,6 +62,11 @@ private ChargingPileClient chargingPileClient; @Autowired private ChargingOrderClient chargingOrderClient; + + @Resource + private ChargingGunClient chargingGunClient; + + /** * 小程序扫一扫 添加车辆 * @param dto @@ -69,10 +83,13 @@ * 查询用户可用优惠券数量 * @return */ - @ApiOperation(value = "通过桩编号获取电站详情", tags = {"小程序-扫一扫"}) + @ApiOperation(value = "通过充电枪id和预付金额获取电站详情", tags = {"小程序-扫一扫"}) @GetMapping(value = "/scan/siteInfo") - public AjaxResult<SiteInfoVO> siteInfo(String number) { - SiteInfoVO data = chargingPileClient.getSiteInfoByNumber(number).getData(); + 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(); + data.setChargingGunId(id); List<TAppUserCar> cars = appUserCarService.list(new QueryWrapper<TAppUserCar>() .eq("app_user_id",tokenService.getLoginUserApplet().getUserId()) .orderByDesc("create_time")); @@ -93,6 +110,15 @@ } } } + BigDecimal electrovalence = data.getElectrovalence(); + BigDecimal vipElectrovalence = data.getVipElectrovalence(); + // 计算预付金额能充多少度普通电 + BigDecimal divide1 = money.divide(electrovalence, 2, BigDecimal.ROUND_HALF_UP); + // 计算冲会员电能充多少度会员电 + BigDecimal divide = vipElectrovalence.divide(electrovalence, 2, BigDecimal.ROUND_HALF_UP); + BigDecimal subtract = divide.subtract(divide1); + // 优惠金额 + data.setMoney(subtract.multiply(vipElectrovalence).setScale(2, BigDecimal.ROUND_HALF_UP)); return AjaxResult.ok(data); } /** @@ -122,8 +148,8 @@ * 管理后台远程调用 根据优惠券ids 查询对应的发放数量 * @return 优惠券ids 查询每个优惠券的发放数量 */ - @PostMapping("/getCountByCouponIds") - public R<List<Integer>> getCountByCouponIds(@RequestParam("couponIds") String couponIds) { + @PostMapping("/getCountByCouponIds/{couponIds}") + public R<List<Integer>> getCountByCouponIds(@PathVariable("couponIds")String couponIds) { // 最终结果 和优惠券id一一对应 List<Integer> res = new ArrayList<>(); String[] split = couponIds.split(","); @@ -142,8 +168,8 @@ * @param couponId * @return */ - @PostMapping("/getUseCountByCouponId") - public R<Integer> getUseCountByCouponId(Integer couponId){ + @PostMapping("/getUseCountByCouponId/{couponId}") + public R<Integer> getUseCountByCouponId(@PathVariable("couponId") Integer couponId){ return R.ok(tAppCouponService.list(new QueryWrapper<TAppCoupon>() .eq("coupon_id", couponId) .eq("status",2)).size()); @@ -171,6 +197,8 @@ tAppCoupon.setEndTime(dto.getEndTime()); tAppCoupon.setWaysToObtain(dto.getWaysToObtain()); tAppCoupon.setStatus(1); + R<TCoupon> couponById = otherClient.getCouponById(Integer.valueOf(s)); + tAppCoupon.setCouponJson(JSON.toJSONString(couponById.getData())); res.add(tAppCoupon); } tAppCouponService.saveBatch(res); -- Gitblit v1.7.1