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