Pu Zhibing
2024-10-28 72a76cd3ad51a520100ec59481d99118ffebd33c
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java
@@ -27,6 +27,7 @@
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.redis.service.RedisService;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.integration.api.feignClient.IntegrationClient;
import com.ruoyi.integration.api.feignClient.IotInterfaceClient;
import com.ruoyi.integration.api.feignClient.UploadRealTimeMonitoringDataClient;
import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData;
@@ -106,6 +107,9 @@
   
   @Resource
   private TFaultMessageService faultMessageService;
   @Resource
   private IntegrationClient integrationClient;
   
   
   
@@ -284,6 +288,11 @@
         tChargingGun.setAccountingStrategyId(setAccountingStrategy.getAccountingStrategyId());
      }
      chargingGunService.updateBatchById(list);
      //下发硬件更新计费模板
      for (TChargingPile chargingPile : this.listByIds(id)) {
         integrationClient.setupBillingModel1(chargingPile.getCode());
      }
   }
   @Override
@@ -577,24 +586,29 @@
   @Override
   public void updateStatus() {
      List<TChargingPile> list = this.list(new LambdaQueryWrapper<TChargingPile>().eq(TChargingPile::getDelFlag, 0));
      List<TChargingPile> datas = new ArrayList();
      Map<String, Object> charging_pile_online = redisService.getCacheMap("charging_pile_online");
      for (TChargingPile chargingPile : list) {
         Long time = (Long) charging_pile_online.get(chargingPile.getCode());
         if(null != time && System.currentTimeMillis() - time > 60000){
            chargingPile.setStatus(2);
            datas.add(chargingPile);
         }
      }
      if(datas.size() > 0){
         for (TChargingPile data : datas) {
            TFaultMessage faultMessage = faultMessageService.getOne(new LambdaQueryWrapper<TFaultMessage>().eq(TFaultMessage::getChargingPileId, data.getId())
            TChargingPile chargingPile1 = new TChargingPile();
            chargingPile1.setId(chargingPile.getId());
            chargingPile1.setStatus(2);
            this.updateById(chargingPile1);
            List<TChargingGun> list1 = chargingGunService.list(new LambdaQueryWrapper<TChargingGun>().eq(TChargingGun::getChargingPileId, chargingPile.getId()));
            for (TChargingGun chargingGun : list1) {
               TChargingGun chargingGun1 = new TChargingGun();
               chargingGun1.setId(chargingGun.getId());
               chargingGun1.setStatus(1);
               chargingGunService.updateById(chargingGun1);
            }
            //添加记录
            TFaultMessage faultMessage = faultMessageService.getOne(new LambdaQueryWrapper<TFaultMessage>().eq(TFaultMessage::getChargingPileId, chargingPile.getId())
                  .eq(TFaultMessage::getStatus, 1).eq(TFaultMessage::getDelFlag, 0).isNull(TFaultMessage::getEndTime));
            if(null == faultMessage){
               faultMessage = new TFaultMessage();
               faultMessage.setSiteId(data.getSiteId());
               faultMessage.setChargingPileId(data.getId());
               faultMessage.setSiteId(chargingPile.getSiteId());
               faultMessage.setChargingPileId(chargingPile.getId());
               faultMessage.setStatus(1);
               faultMessage.setDownTime(LocalDateTime.now());
               faultMessage.setCreateTime(LocalDateTime.now());
@@ -603,7 +617,6 @@
               faultMessageService.save(faultMessage);
            }
         }
         this.updateBatchById(datas);
      }
   }
}