diff --git a/jsowell-admin/src/main/java/com/jsowell/service/PileRemoteService.java b/jsowell-admin/src/main/java/com/jsowell/service/PileRemoteService.java index 079bafe37..4bc714f41 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/PileRemoteService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/PileRemoteService.java @@ -1,17 +1,20 @@ package com.jsowell.service; import com.google.common.collect.Lists; +import com.jsowell.common.enums.ykc.ReturnCodeEnum; +import com.jsowell.common.exception.BusinessException; import com.jsowell.common.util.StringUtils; -import com.jsowell.pile.domain.ykcCommond.*; -import com.jsowell.pile.dto.RemoteAccountBalanceUpdateDTO; -import com.jsowell.pile.dto.UpdateFirmwareDTO; -import com.jsowell.pile.service.YKCPushCommandService; import com.jsowell.pile.domain.PileBillingRelation; import com.jsowell.pile.domain.PileBillingTemplate; +import com.jsowell.pile.domain.PileFirmwareInfo; +import com.jsowell.pile.domain.ykcCommond.*; import com.jsowell.pile.dto.PublishBillingTemplateDTO; +import com.jsowell.pile.dto.RemoteAccountBalanceUpdateDTO; +import com.jsowell.pile.dto.UpdateFirmwareDTO; import com.jsowell.pile.service.IPileBasicInfoService; import com.jsowell.pile.service.IPileBillingTemplateService; -import com.jsowell.pile.service.IPileStationInfoService; +import com.jsowell.pile.service.IPileFirmwareInfoService; +import com.jsowell.pile.service.YKCPushCommandService; import com.jsowell.pile.vo.web.BillingTemplateVO; import com.jsowell.pile.vo.web.PileDetailVO; import org.apache.commons.collections4.CollectionUtils; @@ -38,7 +41,8 @@ public class PileRemoteService { private YKCPushCommandService ykcPushCommandService; @Autowired - private IPileStationInfoService pileStationInfoService; + private IPileFirmwareInfoService pileFirmwareInfoService; + /** * 获取充电桩实时数据信息 @@ -192,10 +196,16 @@ public class PileRemoteService { * 远程更新 */ public void updateFirmware(UpdateFirmwareDTO dto) { - // + if (StringUtils.isBlank(dto.getFirmwareId())) { + throw new BusinessException(ReturnCodeEnum.CODE_PARAM_NOT_NULL_ERROR); + } + PileFirmwareInfo pileFirmwareInfo = pileFirmwareInfoService.selectPileFirmwareInfoById(Long.valueOf(dto.getFirmwareId())); + if (pileFirmwareInfo == null) { + throw new BusinessException(ReturnCodeEnum.CODE_FIRMWARE_NOT_FOUND_ERROR); + } UpdateFirmwareCommand command = UpdateFirmwareCommand.builder() .pileSnList(dto.getPileSns()) - .filePath(dto.getFilePath()) + .filePath(pileFirmwareInfo.getFilePath()) .build(); ykcPushCommandService.pushUpdateFileCommand(command); } diff --git a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/PileRemoteController.java b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/PileRemoteController.java index ba9f28a43..f2605b6c3 100644 --- a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/PileRemoteController.java +++ b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/PileRemoteController.java @@ -3,6 +3,8 @@ package com.jsowell.web.controller.pile; import com.google.common.collect.ImmutableMap; import com.jsowell.common.constant.Constants; import com.jsowell.common.core.domain.AjaxResult; +import com.jsowell.common.enums.ykc.ReturnCodeEnum; +import com.jsowell.common.exception.BusinessException; import com.jsowell.pile.dto.GenerateOrderDTO; import com.jsowell.pile.dto.QueryPileDTO; import com.jsowell.pile.dto.UpdateFirmwareDTO; @@ -107,11 +109,17 @@ public class PileRemoteController { */ @PostMapping("/updateFirmware") public AjaxResult updateFirmware(@RequestBody UpdateFirmwareDTO dto) { - if (CollectionUtils.isEmpty(dto.getPileSns())) { - return AjaxResult.error("参数不能为空"); + AjaxResult result; + try { + if (CollectionUtils.isEmpty(dto.getPileSns())) { + throw new BusinessException(ReturnCodeEnum.CODE_PARAM_NOT_NULL_ERROR); + } + pileRemoteService.updateFirmware(dto); + result = AjaxResult.success(); + } catch (BusinessException e) { + result = AjaxResult.error(e.getMessage()); } - pileRemoteService.updateFirmware(dto); - return AjaxResult.success(); + return result; } } diff --git a/jsowell-common/src/main/java/com/jsowell/common/enums/ykc/ReturnCodeEnum.java b/jsowell-common/src/main/java/com/jsowell/common/enums/ykc/ReturnCodeEnum.java index 08604b46a..3438bb08f 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/enums/ykc/ReturnCodeEnum.java +++ b/jsowell-common/src/main/java/com/jsowell/common/enums/ykc/ReturnCodeEnum.java @@ -96,6 +96,8 @@ public enum ReturnCodeEnum { CODE_MEMBER_RECHARGE_BALANCE_ERROR("00100046", "会员充值余额失败"), + CODE_FIRMWARE_NOT_FOUND_ERROR("00100046", "未找到相应固件"), + /* 个人桩 start */ CODE_PILE_HAS_BEEN_BINDING_ERROR("00400001", "此桩已被绑定,请联系管理员!"), diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/UpdateFirmwareDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/UpdateFirmwareDTO.java index 64a8a8a11..f8e58d2be 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/dto/UpdateFirmwareDTO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/UpdateFirmwareDTO.java @@ -21,4 +21,9 @@ public class UpdateFirmwareDTO { * 固件路径 */ private String filePath; + + /** + * 固件id + */ + private String firmwareId; }