无关风月
2024-10-26 19c3024816a0aa7d0995d3108fff8cda4e1d5e38
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java
@@ -223,29 +223,40 @@
      TChargingPile chargingPile = chargingPileService.getOne(new LambdaQueryWrapper<TChargingPile>()
            .eq(TChargingPile::getCode, code).eq(TChargingPile::getDelFlag, 0));
      if(null != chargingPile){
         if(chargingPile.getStatus() == 1){
            TFaultMessage faultMessage = new TFaultMessage();
         //充电桩正常,返回异常,处理充电桩状态和添加故障记录
         if(chargingPile.getStatus() == 1 && 1 == status){
            TFaultMessage faultMessage = faultMessageService.getOne(new LambdaQueryWrapper<TFaultMessage>().eq(TFaultMessage::getChargingPileId, chargingPile.getId())
                  .eq(TFaultMessage::getStatus, 2).eq(TFaultMessage::getDelFlag, 0).isNull(TFaultMessage::getEndTime));
            if(null == faultMessage){
               faultMessage = new TFaultMessage();
            faultMessage.setSiteId(chargingPile.getSiteId());
            faultMessage.setChargingPileId(chargingPile.getId());
            faultMessage.setStatus(1);
               faultMessage.setStatus(2);
            faultMessage.setDownTime(LocalDateTime.now());
            faultMessage.setCreateTime(LocalDateTime.now());
            faultMessage.setDelFlag(false);
            faultMessage.setContent("设备离线");
               faultMessage.setContent("设备故障");
            faultMessageService.save(faultMessage);
            
            chargingPile.setStatus(0 == status ? 1 : 3);
            chargingPileService.updateById(chargingPile);
         }
         }
         if(chargingPile.getStatus() != 1 && 0 == status){
            TFaultMessage one = faultMessageService.getOne(new LambdaQueryWrapper<TFaultMessage>().eq(TFaultMessage::getChargingPileId, chargingPile.getId()).isNull(TFaultMessage::getEndTime));
            TFaultMessage one = faultMessageService.getOne(new LambdaQueryWrapper<TFaultMessage>().eq(TFaultMessage::getChargingPileId, chargingPile.getId())
                  .isNull(TFaultMessage::getEndTime));
            if(null != one){
               one.setEndTime(LocalDateTime.now());
               faultMessageService.updateById(one);
            }
            chargingPile.setStatus(0 == status ? 1 : 3);
            chargingPileService.updateById(chargingPile);
         }
         if(0 == status){
            redisService.getCacheMap("charging_pile_online").put(code, System.currentTimeMillis());
            Map<String, Object> charging_pile_online = redisService.getCacheMap("charging_pile_online");
            charging_pile_online.put(code, System.currentTimeMillis());
            redisService.setCacheMap("charging_pile_online", charging_pile_online);
         }
      }
   }