ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingPileFallbackFactory.java
@@ -48,6 +48,11 @@ } @Override public R<SiteInfoVO> getSiteInfoByNumber1(String number) { return R.fail("通过桩编号获取电站信息失败:"+throwable.getMessage()); } @Override public R<TChargingPile> getChargingPileById(Integer id) { return R.fail(throwable.getMessage()); } ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java
@@ -7,6 +7,7 @@ import com.ruoyi.common.core.domain.R; import io.swagger.annotations.ApiOperation; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; @@ -39,10 +40,12 @@ @PostMapping(value = "/t-accounting-strategy/getServiceMoney") R<BigDecimal> getServiceMoney(@RequestParam("param") String param); @PostMapping("/site/getSiteInfoByNumber") @ApiOperation(value = "扫一扫后通过桩编号获取电站信息", tags = {"小程序-扫一扫"}) @GetMapping("/site/getSiteInfoByNumber") R<SiteInfoVO> getSiteInfoByNumber(@RequestParam("number") String number); @PostMapping("/site/getSiteInfoByNumber1") R<SiteInfoVO> getSiteInfoByNumber1(@RequestParam("number") String number); @PostMapping("/t-charging-pile/getChargingPileById/{id}") R<TChargingPile> getChargingPileById(@PathVariable("id") Integer id); ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/SiteInfoVO.java
@@ -30,6 +30,8 @@ private String spaceChargeExplain; @ApiModelProperty(value = "添加车辆最高可得积分 车辆信息为空 展示提示语") private Integer integral; @ApiModelProperty(value = "充电模式(1=超级快充,2=快充,3=慢充") private Integer chargeMode; @ApiModelProperty(value = "上次选择车辆logo") private String carLogo; ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java
@@ -106,12 +106,13 @@ * @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.setChargeMode(chargingGun.getChargeMode()); List<TAppUserCar> cars = appUserCarService.list(new QueryWrapper<TAppUserCar>() .eq("app_user_id",tokenService.getLoginUserApplet().getUserId()) .orderByDesc("create_time")); ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
@@ -132,7 +132,31 @@ siteInfoVO.setSpaceChargeExplain(byId.getSpaceChargeExplain()); return R.ok(siteInfoVO); } /** * 通过桩编号获取电站信息 遠程調用 * @param number * @return */ @PostMapping("/getSiteInfoByNumber1") public R<SiteInfoVO> getSiteInfoByNumber1(@RequestParam("number") String number){ SiteInfoVO siteInfoVO = new SiteInfoVO(); TChargingPile one = chargingPileService.lambdaQuery().eq(TChargingPile::getCode, 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(4, BigDecimal.ROUND_HALF_UP)); } } siteInfoVO.setChargingPileId(one.getId()); siteInfoVO.setName(byId.getName()); siteInfoVO.setNumber(one.getNumber().toString()); siteInfoVO.setSpaceChargeExplain(byId.getSpaceChargeExplain()); return R.ok(siteInfoVO); } @GetMapping("/getSiteList") @ApiOperation(value = "获取站点列表", tags = {"管理后台-站点管理"})