From 2a55b788f369beec74894b6d63b20400d9725a47 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 25 十月 2024 19:10:14 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java | 71 +++++++++++++++++++++++++++++++++-- 1 files changed, 67 insertions(+), 4 deletions(-) diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java index ad7ceec..e90a7ce 100644 --- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java +++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java @@ -1,17 +1,18 @@ package com.ruoyi.chargingPile.controller; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; 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.TChargingGunQuery; import com.ruoyi.chargingPile.api.vo.TChargingGunVO; 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.TChargingGunService; -import com.ruoyi.chargingPile.service.TChargingPileService; +import com.ruoyi.chargingPile.service.*; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.PageInfo; @@ -25,6 +26,8 @@ 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.other.api.domain.TVip; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; @@ -36,7 +39,11 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.math.BigDecimal; +import java.time.LocalDateTime; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * <p> @@ -53,6 +60,12 @@ private final TChargingPileService chargingPileService; private final TChargingGunService chargingGunService; + + @Resource + private RedisService redisService; + + @Resource + private TFaultMessageService faultMessageService; @Autowired @@ -94,7 +107,12 @@ return R.ok(chargingPileService.list(Wrappers.lambdaQuery(TChargingPile.class) .eq(TChargingPile::getSiteId,siteId))); } - + + @PostMapping(value = "/getChargingPileBySiteIds") + public R<List<TChargingPile>> getChargingPileBySiteIds(@RequestParam("siteIds") List<Integer> siteIds) { + return R.ok(chargingPileService.list(Wrappers.lambdaQuery(TChargingPile.class) + .in(!siteIds.isEmpty(),TChargingPile::getSiteId,siteIds))); + } @ResponseBody @GetMapping("/pageChargingPileList") @@ -161,7 +179,8 @@ ChargeMonitoring chargeMonitoring = chargingPileService.chargeMonitoring(siteId); return AjaxResult.success(chargeMonitoring); } - + + @ResponseBody @GetMapping("/getChargingGunCountMonitoring/{siteId}") @ApiOperation(value = "获取充电枪各种状态汇总监控数据", tags = {"管理后台-充电设备监控"}) @@ -191,5 +210,49 @@ TChargingPile chargingPile = chargingPileService.getById(id); return R.ok(chargingPile); } + + + /** + * 更新充电桩状态 + * @param code + * @param status + */ + @ResponseBody + @PostMapping("/updateChargingPileStatus") + public void updateChargingPileStatus(@RequestParam("code") String code, @RequestParam("status") Integer status){ + TChargingPile chargingPile = chargingPileService.getOne(new LambdaQueryWrapper<TChargingPile>() + .eq(TChargingPile::getCode, code).eq(TChargingPile::getDelFlag, 0)); + if(null != chargingPile){ + if(chargingPile.getStatus() == 1){ + 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(2); + faultMessage.setDownTime(LocalDateTime.now()); + faultMessage.setCreateTime(LocalDateTime.now()); + faultMessage.setDelFlag(false); + 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)); + if(null != one){ + one.setEndTime(LocalDateTime.now()); + faultMessageService.updateById(one); + } + } + if(0 == status){ + redisService.getCacheMap("charging_pile_online").put(code, System.currentTimeMillis()); + } + } + } } -- Gitblit v1.7.1