From ac3eaed54fbbe46ebd9cf89eb93e0f99733fd1da Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期六, 17 八月 2024 15:55:12 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java              |    5 +
 ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingPileFallbackFactory.java |    6 ++
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java                    |    4 -
 ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java      |   11 ++-
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java               |   46 +++++++++++----
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java                   |   46 +++++++++++++--
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java                     |   14 ++++
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java                   |    7 ++
 ruoyi-service/ruoyi-chargingPile/pom.xml                                                                           |    7 ++
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/OrderClient.java                           |    2 
 ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/SiteInfoVO.java                       |    9 +++
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java                   |    4 
 12 files changed, 133 insertions(+), 28 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingPileFallbackFactory.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingPileFallbackFactory.java
index 8b4f691..f8bb5cf 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingPileFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingPileFallbackFactory.java
@@ -2,6 +2,7 @@
 
 import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient;
 import com.ruoyi.chargingPile.api.model.TChargingPile;
+import com.ruoyi.chargingPile.api.vo.SiteInfoVO;
 import com.ruoyi.common.core.domain.R;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -35,6 +36,11 @@
             public R<BigDecimal> getServiceMoney(String param) {
                 return R.fail("根据会员折扣、预付金额 计算服务费失败:"+throwable.getMessage());
             }
+
+            @Override
+            public R<SiteInfoVO> getSiteInfoByNumber(String number) {
+                return R.fail("通过桩编号获取电站信息失败:"+throwable.getMessage());
+            }
         };
     }
 }
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java
index a330a00..b2e13b0 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java
@@ -2,6 +2,7 @@
 
 import com.ruoyi.chargingPile.api.factory.ChargingPileFallbackFactory;
 import com.ruoyi.chargingPile.api.model.TChargingPile;
+import com.ruoyi.chargingPile.api.vo.SiteInfoVO;
 import com.ruoyi.common.core.constant.ServiceNameConstants;
 import com.ruoyi.common.core.domain.R;
 import io.swagger.annotations.ApiOperation;
@@ -24,12 +25,16 @@
      */
     @ApiOperation(value = "管理后台-通过站点id获取充电桩列表 不分页")
     @PostMapping(value = "/t-charging-pile/getChargingPileBySiteId")
-    public R<List<TChargingPile>> getChargingPileBySiteId(@RequestParam("siteId") Integer siteId);
+    R<List<TChargingPile>> getChargingPileBySiteId(@RequestParam("siteId") Integer siteId);
 
     /**
      * 小程序远程调用 根据会员折扣、预付金额 计算服务费
      * @return
      */
-    @PostMapping(value = "/getServiceMoney")
-    public R<BigDecimal> getServiceMoney(@RequestParam("param") String param);
+    @PostMapping(value = "/t-accounting-strategy/getServiceMoney")
+    R<BigDecimal> getServiceMoney(@RequestParam("param") String param);
+
+    @PostMapping("/site/getSiteInfoByNumber")
+    @ApiOperation(value = "扫一扫后通过桩编号获取电站信息", tags = {"小程序-扫一扫"})
+    R<SiteInfoVO> getSiteInfoByNumber(@RequestParam("number") String number);
 }
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/SiteInfoVO.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/SiteInfoVO.java
index 39fae79..df3a14a 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/SiteInfoVO.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/SiteInfoVO.java
@@ -20,4 +20,13 @@
     private BigDecimal vipElectrovalence;
     @ApiModelProperty(value = "超时占位费说明")
     private String spaceChargeExplain;
+
+    @ApiModelProperty(value = "上次选择车辆logo")
+    private String carLogo;
+    @ApiModelProperty(value = "上次选择车辆车牌号")
+    private String licensePlate;
+    @ApiModelProperty(value = "上次选择车辆品牌")
+    private String vehicleBrand;
+    @ApiModelProperty(value = "上次选择车辆id")
+    private Long id;
 }
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java
index c398faf..ee6192f 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java
@@ -44,6 +44,11 @@
             public R<TChargingOrder> getOrderDetailByGunId(Integer chargingGunId) {
                 return R.fail("根据充电枪获取正在充电的订单:" + throwable.getMessage());
             }
+
+            @Override
+            public R<Long> getCar() {
+                return R.fail("获取用户最近使用车辆充电的车辆id:" + throwable.getMessage());
+            }
         };
     }
 }
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
index b7402f2..5d19dd8 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
@@ -39,4 +39,11 @@
      */
     @PostMapping(value = "/t-charging-order/getOrderDetailByGunId")
     R<TChargingOrder> getOrderDetailByGunId(@RequestParam("chargingGunId") Integer chargingGunId);
+
+    /**
+     * 获取用户最近使用车辆充电的车辆id
+     * @return
+     */
+    @GetMapping(value = "/t-charging-order/getCar")
+    public R<Long> getCar();
 }
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/OrderClient.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/OrderClient.java
index c00f97c..9e59397 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/OrderClient.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/OrderClient.java
@@ -7,6 +7,7 @@
 import com.ruoyi.order.api.query.TActivityStatisticsQuery;
 import com.ruoyi.order.api.vo.TActivityVO;
 import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 
@@ -36,4 +37,5 @@
      */
     @PostMapping(value = "/t-exchange-order/activityStatistics")
     public R<TActivityVO> activityStatistics(@RequestBody TActivityStatisticsQuery dto);
+
 }
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 0c63199..da91f1f 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
@@ -12,23 +12,24 @@
 import com.ruoyi.account.api.vo.ExchangeRecordVO;
 import com.ruoyi.account.service.TAppCouponService;
 import com.ruoyi.account.service.TAppUserCarService;
+import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient;
+import com.ruoyi.chargingPile.api.vo.SiteInfoVO;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.core.web.page.BasePage;
 import com.ruoyi.common.core.web.page.PageInfo;
 import com.ruoyi.common.security.service.TokenService;
+import com.ruoyi.order.api.feignClient.ChargingOrderClient;
 import com.ruoyi.other.api.domain.TCoupon;
 import com.ruoyi.other.api.feignClient.OtherClient;
 import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -51,6 +52,40 @@
     private TAppUserCarService appUserCarService;
     @Autowired
     private TokenService tokenService;
+    @Autowired
+    private ChargingPileClient chargingPileClient;
+    @Autowired
+    private ChargingOrderClient chargingOrderClient;
+    /**
+     * 查询用户可用优惠券数量
+     * @return
+     */
+    @ApiOperation(value = "通过桩编号获取电站详情", tags = {"小程序-扫一扫"})
+    @GetMapping(value = "/scan/siteInfo")
+    public AjaxResult<SiteInfoVO> siteInfo(String number) {
+        SiteInfoVO data = chargingPileClient.getSiteInfoByNumber(number).getData();
+        List<TAppUserCar> cars = appUserCarService.list(new QueryWrapper<TAppUserCar>()
+                .eq("app_user_id",tokenService.getLoginUserApplet().getUserId())
+                .orderByDesc("create_time"));
+        Long data1 = chargingOrderClient.getCar().getData();
+        if (!cars.isEmpty()){
+            if (data1 == -1){
+                // 没有充电订单 展示最新添加的车辆
+                data.setLicensePlate(cars.get(0).getLicensePlate());
+                data.setVehicleBrand(cars.get(0).getVehicleBrand());
+                data.setId(cars.get(0).getId());
+            }else{
+                for (TAppUserCar car : cars) {
+                    if (car.getId().equals(data1)){
+                        data.setLicensePlate(car.getLicensePlate());
+                        data.setVehicleBrand(car.getVehicleBrand());
+                        data.setId(car.getId());
+                    }
+                }
+            }
+        }
+        return AjaxResult.ok(data);
+    }
     /**
      * 查询用户可用优惠券数量
      * @param dto
@@ -69,9 +104,8 @@
     @ApiOperation(value = "选择车辆列表", tags = {"小程序-扫一扫"})
     @PostMapping(value = "/scan/carList")
     public R<List<TAppUserCar>> carList() {
-        // todo 用户id
         List<TAppUserCar> appUserId = appUserCarService.list(new QueryWrapper<TAppUserCar>()
-                .eq("app_user_id",tokenService.getLoginUserApplet().getUserid()));
+                .eq("app_user_id",tokenService.getLoginUserApplet().getUserId()));
         return R.ok(appUserId);
     }
 
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
index 0a12801..9c6f99d 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
@@ -35,6 +35,7 @@
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
+import org.aspectj.weaver.loadtime.Aj;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.client.RestTemplate;
@@ -86,6 +87,19 @@
     private WeixinProperties wxConfig;
     @Autowired
     private RestTemplate wxRestTemplate;
+
+    @ApiOperation(value = "查询当前用户是否为会员 0否1是", tags = {"小程序--查询当前用户是否为会员"})
+    @PostMapping(value = "/getUserInfo")
+    public AjaxResult<Integer> getUserInfo() {
+        TAppUser byId = appUserService.getById(tokenService.getLoginUserApplet().getUserId());
+        if (byId.getVipEndTime() == null){
+            return AjaxResult.ok(0);
+        }else if (byId.getVipEndTime().isAfter(LocalDateTime.now())){
+            return AjaxResult.ok(1);
+        }else{
+            return AjaxResult.ok(0);
+        }
+    }
     @ApiOperation(value = "通过code获得openid,  1 --->对应的appid:wx4c405fa42539fc21  2---->对应的appid:wx02d9f6c92e6d3c86")
     @GetMapping("openId-by-jscode2session/{code}")
     public AjaxResult<Map<String, Object>> jscode2session(@PathVariable String code) {
diff --git a/ruoyi-service/ruoyi-chargingPile/pom.xml b/ruoyi-service/ruoyi-chargingPile/pom.xml
index 87b9b86..63d7f4a 100644
--- a/ruoyi-service/ruoyi-chargingPile/pom.xml
+++ b/ruoyi-service/ruoyi-chargingPile/pom.xml
@@ -15,7 +15,12 @@
     </description>
 
     <dependencies>
-
+        <dependency>
+            <groupId>com.ruoyi</groupId>
+            <artifactId>ruoyi-api-account</artifactId>
+            <version>3.6.2</version>
+            <scope>compile</scope>
+        </dependency>
         <!-- ruoyi-modules-chargingPile-api -->
         <dependency>
             <groupId>com.ruoyi</groupId>
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
index 44c9356..011fff5 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
@@ -5,17 +5,11 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.ruoyi.chargingPile.api.dto.GetSiteListDTO;
 import com.ruoyi.chargingPile.api.feignClient.ParkingLotClient;
-import com.ruoyi.chargingPile.api.model.Site;
-import com.ruoyi.chargingPile.api.model.TChargingGun;
-import com.ruoyi.chargingPile.api.model.TChargingPile;
-import com.ruoyi.chargingPile.api.model.TParkingLot;
+import com.ruoyi.chargingPile.api.model.*;
 import com.ruoyi.chargingPile.api.query.GetSiteList;
 import com.ruoyi.chargingPile.api.query.SiteDetailQuery;
 import com.ruoyi.chargingPile.api.query.SiteQuery;
-import com.ruoyi.chargingPile.api.vo.ChargingGunCountVO;
-import com.ruoyi.chargingPile.api.vo.SiteDetailVO;
-import com.ruoyi.chargingPile.api.vo.SiteVO;
-import com.ruoyi.chargingPile.api.vo.TChargingPileVO;
+import com.ruoyi.chargingPile.api.vo.*;
 import com.ruoyi.chargingPile.domain.SiteMenu;
 import com.ruoyi.chargingPile.service.*;
 import com.ruoyi.common.core.domain.R;
@@ -36,6 +30,8 @@
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.time.LocalTime;
 import java.util.*;
 
 /**
@@ -69,18 +65,44 @@
 
 	@Autowired
 	private TParkingLotService parkingLotService;
+	@Autowired
+	private TAccountingStrategyService accountingStrategyService;
+	@Autowired
+	private TAccountingStrategyDetailService accountingStrategyDetailService;
 
+
+	/**
+	 * 小程序扫一扫
+	 * @param number
+	 * @return
+	 */
+	@PostMapping("/getSiteInfoByNumber")
+	@ApiOperation(value = "扫一扫后通过桩编号获取电站信息", tags = {"小程序-扫一扫"})
+	public R<SiteInfoVO> getSiteInfoByNumber(@RequestParam("number") String number){
+		SiteInfoVO siteInfoVO = new SiteInfoVO();
+		TChargingPile one = chargingPileService.lambdaQuery().eq(TChargingPile::getNumber, number).one();
+		Site byId = siteService.getById(one.getSiteId());
+		TAccountingStrategy byId1 = accountingStrategyService.getById(byId.getAccountingStrategyId());
+		List<TAccountingStrategyDetail> list = accountingStrategyDetailService.lambdaQuery().eq(TAccountingStrategyDetail::getAccountingStrategyId, byId1.getId()).list();
+		for (TAccountingStrategyDetail tAccountingStrategyDetail : list) {
+			// 当前时间属于那个阶段 取哪个阶段的电价
+			if(LocalTime.now().isAfter(LocalTime.parse(tAccountingStrategyDetail.getStartTime())) && LocalTime.now().isBefore(LocalTime.parse(tAccountingStrategyDetail.getEndTime()))){
+				siteInfoVO.setElectrovalence(tAccountingStrategyDetail.getElectrovalence());
+				siteInfoVO.setVipElectrovalence(tAccountingStrategyDetail.getElectrovalence().multiply(byId1.getDiscount()).setScale(2, BigDecimal.ROUND_HALF_UP));
+			}
+		}
+		siteInfoVO.setName(byId.getName());
+		siteInfoVO.setNumber(one.getNumber().toString());
+		siteInfoVO.setSpaceChargeExplain(byId.getSpaceChargeExplain());
+		return R.ok(siteInfoVO);
+	}
 	
-	
-	
-	@ResponseBody
 	@GetMapping("/getSiteList")
 	@ApiOperation(value = "获取站点列表", tags = {"管理后台-站点管理"})
 	public AjaxResult<PageInfo<GetSiteListDTO>> getSiteList(GetSiteList siteList){
 		PageInfo<GetSiteListDTO> list = siteService.getSiteList(siteList);
 		return AjaxResult.success(list);
 	}
-	@ResponseBody
 	@GetMapping("/getSiteList1")
 	@ApiOperation(value = "获取站点列表 不分页", tags = {"管理后台-活动费用统计"})
 	public AjaxResult<List<Site>> getSiteList1(){
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
index 9b405c1..af5cec4 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
@@ -44,10 +44,10 @@
      * @param
      * @return
      */
-    @PostMapping(value = "/getCar")
+    @GetMapping(value = "/getCar")
     public R<Long> getCar() {
         List<TChargingOrder> list = chargingOrderService.list(new LambdaQueryWrapper<TChargingOrder>()
-                .eq(TChargingOrder::getAppUserId, tokenService.getLoginUserApplet().getUserid())
+                .eq(TChargingOrder::getAppUserId, tokenService.getLoginUserApplet().getUserId())
                 .isNotNull(TChargingOrder::getAppUserCarId));
         if (!list.isEmpty()){
             // 最近使用的车辆id
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java
index 4c80295..b0c49e1 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java
@@ -87,10 +87,6 @@
             THtml tHtml = new THtml();
             tHtml.setType(type);
             tHtml.setContent(info);
-
-
-            tHtml.setCreateTime(LocalDateTime.now());
-            tHtml.setDelFlag(false);
             htmlService.save(tHtml);
         }else{
             g.setContent(info);

--
Gitblit v1.7.1