ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/elutong/model/StationStatusInfo.java
File was renamed from ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/elutong/model/StationStausInfo.java @@ -5,7 +5,7 @@ import java.util.List; @Data public class StationStausInfo { public class StationStatusInfo { /** * 充/换电站ID * 使用服务区编码+充电站(CD)/换电站(HD)+顺序码 ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/elutong/model/StationsStatusReq.java
@@ -32,5 +32,5 @@ /** * 充电站状态信息列表 */ private List<StationStausInfo> stationStausInfos; private List<StationStatusInfo> stationStatusInfos; } ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
@@ -26,6 +26,7 @@ import com.ruoyi.chargingPile.service.*; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.DateUtils; import com.ruoyi.common.core.utils.ServletUtils; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.PageInfo; @@ -149,29 +150,34 @@ && DateUtils.string2LocalTime(tAccountingStrategyDetail.getEndTime() + ("23:59:59".equals(tAccountingStrategyDetail.getEndTime())?"":":00")).compareTo(LocalTime.now()) > 0){ siteInfoVO.setElectrovalence(tAccountingStrategyDetail.getElectrovalence().add(tAccountingStrategyDetail.getServiceCharge()).setScale(4, BigDecimal.ROUND_HALF_UP)); // 获取当前登录用户id Long userId = tokenService.getLoginUserApplet().getUserId(); // 根据id查询用户信息 TAppUser appUser = appUserClient.getUserById(userId).getData(); // 获取请求携带的令牌 if(Objects.nonNull(byId1.getDiscount())){ siteInfoVO.setVipElectrovalence((tAccountingStrategyDetail.getServiceCharge().multiply(byId1.getDiscount()).add(tAccountingStrategyDetail.getElectrovalence())).setScale(4, BigDecimal.ROUND_HALF_UP)); }else { siteInfoVO.setVipElectrovalence((tAccountingStrategyDetail.getServiceCharge().add(tAccountingStrategyDetail.getElectrovalence())).setScale(4, BigDecimal.ROUND_HALF_UP)); } if(Objects.nonNull(appUser)){ String token = SecurityUtils.getToken(ServletUtils.getRequest()); if(StringUtils.isNotEmpty(token)){ Long userId = tokenService.getLoginUserApplet().getUserId(); // 根据id查询用户信息 TAppUser appUser = appUserClient.getUserById(userId).getData(); if(Objects.nonNull(appUser)){ // TVip vip = vipClient.getInfo1(appUser.getVipId()).getData(); GetAppUserVipDetail getAppUserVipDetail = new GetAppUserVipDetail(); getAppUserVipDetail.setAppUserId(userId); getAppUserVipDetail.setVipId(appUser.getVipId()); R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail); TAppUserVipDetail data1 = appUserVipDetail.getData(); if(Objects.nonNull(data1)){ String vipJson = data1.getVipJson(); TVip vip = JSON.parseObject(vipJson, TVip.class); if(Objects.nonNull(vip) && vip.getType() == 2){ siteInfoVO.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(tAccountingStrategyDetail.getServiceCharge()).add(tAccountingStrategyDetail.getElectrovalence())); GetAppUserVipDetail getAppUserVipDetail = new GetAppUserVipDetail(); getAppUserVipDetail.setAppUserId(userId); getAppUserVipDetail.setVipId(appUser.getVipId()); R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail); TAppUserVipDetail data1 = appUserVipDetail.getData(); if(Objects.nonNull(data1)){ String vipJson = data1.getVipJson(); TVip vip = JSON.parseObject(vipJson, TVip.class); if(Objects.nonNull(vip) && vip.getType() == 2){ siteInfoVO.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(tAccountingStrategyDetail.getServiceCharge()).add(tAccountingStrategyDetail.getElectrovalence())); } } } } } } siteInfoVO.setChargingGunId(chargingGun.getId()); ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java
@@ -3,58 +3,52 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.ruoyi.chargingPile.api.model.*; import com.ruoyi.chargingPile.api.query.TChargingGunQuery; import com.ruoyi.chargingPile.api.vo.TChargingGunVO; import com.ruoyi.chargingPile.api.dto.PageChargingPileListDTO; 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.TFaultMessage; import com.ruoyi.chargingPile.api.query.BatchSetAccountingStrategy; import com.ruoyi.chargingPile.api.query.PageChargingPileList; import com.ruoyi.chargingPile.api.vo.UpdateChargingPileStatusVo; import com.ruoyi.chargingPile.dto.ChargeMonitoring; import com.ruoyi.chargingPile.dto.ChargingGunCountMonitoring; import com.ruoyi.chargingPile.dto.ChargingGunMonitoring; import com.ruoyi.chargingPile.dto.GetChargingGunMonitoring; import com.ruoyi.chargingPile.service.*; import com.ruoyi.chargingPile.service.ISiteService; import com.ruoyi.chargingPile.service.TChargingGunService; import com.ruoyi.chargingPile.service.TChargingPileService; import com.ruoyi.chargingPile.service.TFaultMessageService; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.chargingPile.api.dto.PageChargingPileListDTO; import com.ruoyi.chargingPile.api.model.TChargingPile; import com.ruoyi.chargingPile.api.query.BatchSetAccountingStrategy; import com.ruoyi.chargingPile.service.TChargingPileService; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.chargingPile.api.query.PageChargingPileList; import com.ruoyi.common.log.annotation.Log; import com.ruoyi.common.log.enums.BusinessType; import com.ruoyi.common.log.enums.OperatorType; import com.ruoyi.common.redis.service.RedisService; import com.ruoyi.common.security.annotation.Logical; import com.ruoyi.common.security.annotation.RequiresPermissions; import com.ruoyi.integration.api.elutong.model.ConnectorStatusInfo; import com.ruoyi.integration.api.elutong.model.ConnectorStatusReq; import com.ruoyi.integration.api.elutong.model.StationStausInfo; import com.ruoyi.integration.api.elutong.model.StationsStatusReq; import com.ruoyi.integration.api.feignClient.ELuTongClient; import com.ruoyi.integration.api.feignClient.TCECClient; import com.ruoyi.order.api.feignClient.ChargingOrderClient; import com.ruoyi.order.api.model.TChargingOrder; import com.ruoyi.order.api.vo.TChargingOrderVo; import com.ruoyi.other.api.domain.TVip; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.*; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; /** ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/util/TaskUtil.java
@@ -76,10 +76,10 @@ stationsStatusReq.setOperatorId("91510903906171535D"); stationsStatusReq.setSerAreaCode(site.getSerAreaCode()); stationsStatusReq.setStationId(site.getId().toString()); List<StationStausInfo> stationStausInfos = new ArrayList<>(); List<StationStatusInfo> stationStausInfos = new ArrayList<>(); stationStausInfos.add(buildStationStaus(site)); stationsStatusReq.setItemSize(stationStausInfos.size()); stationsStatusReq.setStationStausInfos(stationStausInfos); stationsStatusReq.setStationStatusInfos(stationStausInfos); R r = eLuTongClient.pushStationsStatus(stationsStatusReq); if(200 != r.getCode()){ log.error(r.getMsg()); @@ -89,8 +89,8 @@ } private StationStausInfo buildStationStaus(Site site){ StationStausInfo stationStausInfo = new StationStausInfo(); private StationStatusInfo buildStationStaus(Site site){ StationStatusInfo stationStausInfo = new StationStatusInfo(); stationStausInfo.setStationId(site.getId().toString()); stationStausInfo.setConnectorStatusInfos(buildConnectorStatus(site)); return stationStausInfo;