From 2c74e3e18bc372f33fcc2f4ea4ab1d9d393c2753 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期三, 05 三月 2025 11:35:34 +0800 Subject: [PATCH] 补充管理后台文件上传 --- ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java | 48 +++++++++++++++++++++++++++++------------------- 1 files changed, 29 insertions(+), 19 deletions(-) diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java index b9b4859..398afb2 100644 --- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java +++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java @@ -26,10 +26,7 @@ import com.ruoyi.common.redis.service.RedisService; import com.ruoyi.common.security.service.TokenService; 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.SendMessageClient; -import com.ruoyi.integration.api.feignClient.UploadRealTimeMonitoringDataClient; +import com.ruoyi.integration.api.feignClient.*; import com.ruoyi.integration.api.model.QrCodeDelivery; import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData; import com.ruoyi.integration.api.vo.AddDevice; @@ -69,6 +66,9 @@ @Resource private TChargingGunService chargingGunService; + + @Resource + private TCECClient tcecClient; @Resource private SysUserClient sysUserClient; @@ -182,22 +182,28 @@ return AjaxResult.error("设备编号已存在"); } //调用华为Iot创建设备 - AddDevice addDevice = new AddDevice(); - addDevice.setProductId("66da68d21837002b28b34ec0"); - addDevice.setNodeId(chargingPile.getCode()); - addDevice.setDeviceName(chargingPile.getName()); - addDevice.setDescription(chargingPile.getNumber().toString()); - AddDeviceResp deviceResp = iotInterfaceClient.addDevice(addDevice).getData(); - if(null != deviceResp){ - int httpStatusCode = deviceResp.getHttpStatusCode(); - if(httpStatusCode == 201){ - chargingPile.setIotdDeviceId(deviceResp.getDeviceId()); + ShowDeviceResp showDeviceResp = iotInterfaceClient.showDeviceRequest(chargingPile.getCode()).getData(); + if(null == showDeviceResp){ + //调用华为Iot创建设备 + AddDevice addDevice = new AddDevice(); + addDevice.setProductId("66da68d21837002b28b34ec0"); + addDevice.setNodeId(chargingPile.getCode()); + addDevice.setDeviceName(chargingPile.getName()); + addDevice.setDescription(chargingPile.getNumber().toString()); + AddDeviceResp deviceResp = iotInterfaceClient.addDevice(addDevice).getData(); + if(null != deviceResp){ + int httpStatusCode = deviceResp.getHttpStatusCode(); + if(httpStatusCode == 201){ + chargingPile.setIotdDeviceId(deviceResp.getDeviceId()); + }else{ + log.error("华为创建设备失败" + JSON.toJSONString(deviceResp)); + return AjaxResult.error("华为创建设备失败"); + } }else{ - log.error("华为创建设备失败" + JSON.toJSONString(deviceResp)); return AjaxResult.error("华为创建设备失败"); } }else{ - return AjaxResult.error("华为创建设备失败"); + chargingPile.setIotdDeviceId(showDeviceResp.getDeviceId()); } this.save(chargingPile); return AjaxResult.success(); @@ -302,6 +308,7 @@ TChargingGun chargingGun1 = new TChargingGun(); chargingGun1.setId(chargingGun.getId()); chargingGun1.setFullNumber(chargingPile.getCode() + chargingGun.getCode()); + chargingGun1.setSiteId(chargingPile.getSiteId()); chargingGunService.updateById(chargingGun1); //下发硬件充电二维码 @@ -479,12 +486,12 @@ chargeTrend.put("value", value1); chargeMonitoring.setChargeTrend(chargeTrend); - //每日利用率=当日充电度数/(总桩数量*桩总功率*24小时) + //每日利用率=当日充电度数/(桩总功率*24小时) List<TChargingPile> list = this.list(new LambdaQueryWrapper<TChargingPile>().in(TChargingPile::getSiteId, siteIds).eq(TChargingPile::getDelFlag, 0)); BigDecimal v = list.stream().map(TChargingPile::getRatedPower).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(4, RoundingMode.HALF_EVEN); List<Double> data = chargingOrderAccountingStrategyClient.getDailyChargingDegree(6, siteIds).getData(); List<Double> value2 = new ArrayList<>(); - BigDecimal multiply = new BigDecimal(list.size()).multiply(v).multiply(new BigDecimal(24)); + BigDecimal multiply = v.multiply(new BigDecimal(24)); for (Double datum : data) { if(list.size() == 0){ value2.add(0D); @@ -608,6 +615,8 @@ if(null != appUserCarId){ TAppUserCar tAppUserCar = appUserCarClient.getCarByIds(Arrays.asList(appUserCarId)).getData().get(0); gunMonitoring.setLicensePlate(tAppUserCar.getLicensePlate()); + }else{ + gunMonitoring.setLicensePlate(chargingOrder.getPlateNum()); } UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataClient.chargingOrderInfo(chargingOrder.getCode()).getData(); @@ -689,6 +698,8 @@ chargingGun1.setId(chargingGun.getId()); chargingGun1.setStatus(1); chargingGunService.updateById(chargingGun1); + //推送状态给三方平台 + tcecClient.pushChargingGunStatus(chargingGun1.getFullNumber(), chargingGun1.getStatus()); //桩处于正常,桩所属的枪都处于非正常,修改桩状态为异常 TChargingPile chargingPile = this.getById(chargingGun.getChargingPileId()); @@ -729,7 +740,6 @@ siteName = siteName.substring(0,10); } chargingPileNotificationService.saveData(4,faultMessage.getSiteId(),faultMessage.getChargingPileId(),site.getPhone(),"检测到"+siteName+"..."+chargingPile.getNumber()+"号桩设备离线,请及时查看处理!"); - } } } -- Gitblit v1.7.1