From be06cd6731dd2a5d1a9bbbd3d12a2f7b3a00c966 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期一, 14 七月 2025 09:30:00 +0800 Subject: [PATCH] 移除mq --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java | 62 + ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BmsDemandAndChargerExportationMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/GunStatusMessage.java | 2 ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/feignClient/ChargingMessageClient.java | 35 + ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformStartChargingReplyMessage.java | 3 ruoyi-api/ruoyi-api-jianguan/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports | 1 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/SecurityDetectionMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/WorkingParameterSettingReplyMessage.java | 3 ruoyi-service/ruoyi-integration/src/test/java/com/ruoyi/integration/RuoYiIntegrationApplicationTests.java | 47 -- ruoyi-api/ruoyi-api-jianguan/pom.xml | 37 + ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/GroundLockRealTimeDataServiceImpl.java | 2 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/SynchronizeOfflineCardReplyMessage.java | 3 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java | 4 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ClearOfflineCardReplyMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ParameterSettingMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformRemoteUpdateReplyMessage.java | 3 ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/model/ErrorMessageMessage.java | 4 ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/factory/ChargingMessageClientFallbackFactory.java | 28 + ruoyi-service/ruoyi-order/pom.xml | 6 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingPileStartsChargingMessage.java | 3 ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/controller/ChargingMessageController.java | 255 +++++++++++ ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformRestartReplyMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/QueryOfflineCardReplyMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/TimingSettingMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/TimingSettingReplyMessage.java | 3 ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/GroundLockRealTimeDataService.java | 1 ruoyi-service/ruoyi-jianguan/pom.xml | 38 - ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/SetupBillingModelReplyMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/TransactionRecordMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BmsAbortMessage.java | 5 ruoyi-service/ruoyi-integration/pom.xml | 6 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/MotorAbortMessage.java | 5 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/UpdateBalanceReplyMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BaseMessage.java | 2 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformStopChargingReplyMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/QrCodeDeliveryMessage.java | 3 ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/ErrorMessageMessageServiceImpl.java | 4 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/OnlineMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/ChargingMessageUtil.java | 57 -- ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BillingModeVerifyMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PingMessage.java | 3 ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/governmentCloud/UploadDataTaskUtil.java | 11 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingOrderMessage.java | 2 ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/vo/ChargingOrderVo.java | 127 +++++ ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/model/BaseMessage.java | 2 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/QrCodeDeliveryReplyMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/UploadRealTimeMonitoringDataMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/GroundLockRealTimeDataMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/ErrorMessageMessageService.java | 2 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java | 11 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ErrorMessageMessage.java | 3 ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/ErrorMessageMessageService.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingPileReturnsGroundLockDataMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/AcquisitionBillingModeMessage.java | 3 /dev/null | 82 --- ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BmsInformationMessage.java | 3 ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/util/TaskUtil.java | 288 ++++++++++++ ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/ErrorMessageMessageServiceImpl.java | 4 ruoyi-api/pom.xml | 1 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/EndChargeMessage.java | 3 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/listener/IotMessageListener.java | 106 ---- ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingHandshakeMessage.java | 3 63 files changed, 894 insertions(+), 439 deletions(-) diff --git a/ruoyi-api/pom.xml b/ruoyi-api/pom.xml index cb46216..651c7a4 100644 --- a/ruoyi-api/pom.xml +++ b/ruoyi-api/pom.xml @@ -16,6 +16,7 @@ <module>ruoyi-api-order</module> <module>ruoyi-api-other</module> <module>ruoyi-api-payment</module> + <module>ruoyi-api-jianguan</module> </modules> <artifactId>ruoyi-api</artifactId> diff --git a/ruoyi-api/ruoyi-api-jianguan/pom.xml b/ruoyi-api/ruoyi-api-jianguan/pom.xml new file mode 100644 index 0000000..9cb7db7 --- /dev/null +++ b/ruoyi-api/ruoyi-api-jianguan/pom.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns="http://maven.apache.org/POM/4.0.0" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <parent> + <groupId>com.ruoyi</groupId> + <artifactId>ruoyi-api</artifactId> + <version>3.6.2</version> + </parent> + <modelVersion>4.0.0</modelVersion> + + <artifactId>ruoyi-api-jianguan</artifactId> + + <description> + ruoyi-api-jianguan监管对接接口模块 + </description> + + <dependencies> + <!--mongodb--> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-data-mongodb</artifactId> + </dependency> + <!-- RuoYi Common Core--> + <dependency> + <groupId>com.ruoyi</groupId> + <artifactId>ruoyi-common-core</artifactId> + <exclusions> + <exclusion> + <groupId>com.github.pagehelper</groupId> + <artifactId>pagehelper-spring-boot-starter</artifactId> + </exclusion> + </exclusions> + </dependency> + </dependencies> + +</project> \ No newline at end of file diff --git a/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/factory/ChargingMessageClientFallbackFactory.java b/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/factory/ChargingMessageClientFallbackFactory.java new file mode 100644 index 0000000..f58ba93 --- /dev/null +++ b/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/factory/ChargingMessageClientFallbackFactory.java @@ -0,0 +1,28 @@ +package com.ruoyi.integration.api.factory; + +import com.ruoyi.common.core.domain.R; +import com.ruoyi.integration.api.feignClient.ChargingMessageClient; +import com.ruoyi.integration.api.vo.ChargingOrderVo; +import org.springframework.cloud.openfeign.FallbackFactory; + +/** + * @author zhibing.pu + * @Date 2025/7/12 10:17 + */ +public class ChargingMessageClientFallbackFactory implements FallbackFactory<ChargingMessageClient> { + @Override + public ChargingMessageClient create(Throwable cause) { + return new ChargingMessageClient(){ + + @Override + public R pushOrderInfo(ChargingOrderVo chargingOrder) { + return R.fail("推送充电订单信息失败:" + cause.getMessage()); + } + + @Override + public R pushOrderStatus(ChargingOrderVo chargingOrder) { + return R.fail("推送充电订单状态失败:" + cause.getMessage()); + } + }; + } +} diff --git a/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/feignClient/ChargingMessageClient.java b/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/feignClient/ChargingMessageClient.java new file mode 100644 index 0000000..b1cd2ba --- /dev/null +++ b/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/feignClient/ChargingMessageClient.java @@ -0,0 +1,35 @@ +package com.ruoyi.integration.api.feignClient; + +import com.ruoyi.common.core.constant.ServiceNameConstants; +import com.ruoyi.common.core.domain.R; +import com.ruoyi.integration.api.factory.ChargingMessageClientFallbackFactory; +import com.ruoyi.integration.api.vo.ChargingOrderVo; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * @author zhibing.pu + * @Date 2025/7/12 10:17 + */ +@FeignClient(contextId = "ChargingMessageClient", value = ServiceNameConstants.JIANGUAN_SERVICE, fallbackFactory = ChargingMessageClientFallbackFactory.class) +public interface ChargingMessageClient { + + + /** + * 推送充电订单信息 + * @param chargingOrder + * @return + */ + @PostMapping("/chargingMessage/pushOrderInfo") + R pushOrderInfo(@RequestBody ChargingOrderVo chargingOrder); + + + /** + * 推送充电订单状态 + * @param chargingOrder + * @return + */ + @PostMapping("/chargingMessage/pushOrderInfo") + R pushOrderStatus(@RequestBody ChargingOrderVo chargingOrder); +} diff --git a/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/vo/ChargingOrderVo.java b/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/vo/ChargingOrderVo.java new file mode 100644 index 0000000..46d7d66 --- /dev/null +++ b/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/vo/ChargingOrderVo.java @@ -0,0 +1,127 @@ +package com.ruoyi.integration.api.vo; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.core.web.domain.BasePojo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.time.LocalDateTime; + +/** + * @author zhibing.pu + * @Date 2025/7/12 10:20 + */ +@Data +public class ChargingOrderVo extends BasePojo { + @ApiModelProperty(value = "主键") + private Long id; + @ApiModelProperty(value = "订单编号") + private String code; + @ApiModelProperty(value = "订单类型(1=充电订单(小程序),2=充电订单(刷卡))") + private Integer orderType; + @ApiModelProperty(value = "订单来源(1=自己平台,2=三方平台)") + private Integer orderSource; + @ApiModelProperty(value = "运营商id") + private Integer operatorId; + @ApiModelProperty(value = "三方平台名称") + private String tripartitePlatformName; + @ApiModelProperty(value = "三方平台充电订单号") + private String startChargeSeq; + @ApiModelProperty(value = "平台或其他第三分名字") + private String sourceName; + @ApiModelProperty(value = "手续费") + private BigDecimal commissionAmount; + @ApiModelProperty(value = "分佣") + private BigDecimal sharingAmount; + @ApiModelProperty(value = "订单分类(1=线上,2=线下)") + private Integer orderClassification; + @ApiModelProperty(value = "用户id") + private Long appUserId; + @ApiModelProperty(value = "充电车辆 id") + private Long appUserCarId; + @ApiModelProperty(value = "充电车辆车牌号") + private String plateNum; + @ApiModelProperty(value = "站点 id") + private Integer siteId; + @ApiModelProperty(value = "停车场id") + private Integer parkingLotId; + @ApiModelProperty(value = "充电桩id") + private Integer chargingPileId; + @ApiModelProperty(value = "充电枪id") + private Integer chargingGunId; + @ApiModelProperty(value = "充电总度数") + private BigDecimal chargingCapacity; + @ApiModelProperty(value = "充电功率") + private BigDecimal chargingPower; + @ApiModelProperty(value = "充电开始时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime startTime; + @ApiModelProperty(value = "充电结束时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime endTime; + @ApiModelProperty(value = "状态(0=未知,1=等待中/已插枪,2=启动中,3=充电中,4=停止中,5=已结束)") + private Integer status; + @ApiModelProperty(value = "结束方式(0=异常终止,1=主动终止,2=满电终止,3=费用不足终止)") + private Integer endMode; + @ApiModelProperty(value = "充值金额") + private BigDecimal rechargeAmount; + @ApiModelProperty(value = "充值支付方式(1=微信,2=支付宝)") + private Integer rechargePaymentType; + @ApiModelProperty(value = "充值支付状态(1=待支付,2=已支付)") + private Integer rechargePaymentStatus; + @ApiModelProperty(value = "充值支付第三方流水号") + private String rechargeSerialNumber; + @ApiModelProperty(value = "充电金额(传给硬件方的金额)") + private BigDecimal chargeAmount; + @ApiModelProperty(value = "剩余金额(用于前端展示)") + private BigDecimal residualAmount; + @ApiModelProperty(value = "订单金额(总金额)") + private BigDecimal orderAmount; + @ApiModelProperty(value = "优惠券id") + private Long appCouponId; + @ApiModelProperty(value = "优惠券抵扣金额") + private BigDecimal couponDiscountAmount; + @ApiModelProperty(value = "会员折扣") + private BigDecimal vipDiscount; + @ApiModelProperty(value = "会员优惠金额") + private BigDecimal vipDiscountAmount; + @ApiModelProperty(value = "支付金额(实付)") + private BigDecimal paymentAmount; + @ApiModelProperty(value = "退款流水号") + private String refundCode; + @ApiModelProperty(value = "标题") + private String title; + @ApiModelProperty(value = "退款金额") + private BigDecimal refundAmount; + @ApiModelProperty(value = "累计服务费") + private BigDecimal serviceCharge; + @ApiModelProperty(value = "累计电费") + private BigDecimal electrovalence; + @ApiModelProperty(value = "电流") + private BigDecimal current; + @ApiModelProperty(value = "电压") + private BigDecimal voltage; + @ApiModelProperty(value = "电量") + private BigDecimal electricity; + @ApiModelProperty(value = "功率") + private BigDecimal power; + @ApiModelProperty(value = "退款状态(1=退款中,2=退款成功)") + private Integer refundStatus; + @ApiModelProperty(value = "退款第三方流水号") + private String refundSerialNumber; + @ApiModelProperty(value = "退款成功时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime refundTime; + @ApiModelProperty(value = "总电量") + @TableField("total_electricity") + private BigDecimal totalElectricity; + @ApiModelProperty(value = "支付时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime payTime; + @ApiModelProperty(value = "实时需求电流") + private BigDecimal needElec; +} diff --git a/ruoyi-api/ruoyi-api-jianguan/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-api/ruoyi-api-jianguan/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 0000000..3538350 --- /dev/null +++ b/ruoyi-api/ruoyi-api-jianguan/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1 @@ +com.ruoyi.integration.api.factory.ChargingMessageClientFallbackFactory \ No newline at end of file diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java index d47c9ae..564f9ca 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java @@ -325,5 +325,7 @@ */ @GetMapping("/t-charging-order/getSumDegreeBySiteIds") R<BigDecimal> getSumDegreeBySiteIds(@RequestParam("siteIds") List<Integer> SiteIds); - + + + } diff --git a/ruoyi-service/ruoyi-integration/pom.xml b/ruoyi-service/ruoyi-integration/pom.xml index f7b1321..ecb570e 100644 --- a/ruoyi-service/ruoyi-integration/pom.xml +++ b/ruoyi-service/ruoyi-integration/pom.xml @@ -116,12 +116,6 @@ <scope>test</scope> </dependency> - <dependency> - <groupId>org.apache.rocketmq</groupId> - <artifactId>rocketmq-spring-boot-starter</artifactId> - <version>2.3.0</version> - </dependency> - <!--mongodb--> <dependency> <groupId>org.springframework.boot</groupId> diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/AcquisitionBillingModeMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/AcquisitionBillingModeMessage.java similarity index 67% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/AcquisitionBillingModeMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/AcquisitionBillingModeMessage.java index d796946..4efc9fc 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/AcquisitionBillingModeMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/AcquisitionBillingModeMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/base/BaseMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BaseMessage.java similarity index 93% rename from ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/base/BaseMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BaseMessage.java index fa708e9..29f5285 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/base/BaseMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BaseMessage.java @@ -1,4 +1,4 @@ -package com.ruoyi.integration.rocket.base; +package com.ruoyi.integration.iotda.model; import lombok.Data; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/BillingModeVerifyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BillingModeVerifyMessage.java similarity index 74% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/BillingModeVerifyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BillingModeVerifyMessage.java index 4c2bddd..76e7be3 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/BillingModeVerifyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BillingModeVerifyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/BmsAbortMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BmsAbortMessage.java similarity index 84% rename from ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/BmsAbortMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BmsAbortMessage.java index a090fe5..4f84c54 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/BmsAbortMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BmsAbortMessage.java @@ -1,9 +1,6 @@ -package com.ruoyi.integration.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.integration.rocket.base.BaseMessage; import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; /** * 充电阶段BMS中止 diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/BmsDemandAndChargerExportationMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BmsDemandAndChargerExportationMessage.java similarity index 94% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/BmsDemandAndChargerExportationMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BmsDemandAndChargerExportationMessage.java index 51e3e09..3d74b7e 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/BmsDemandAndChargerExportationMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BmsDemandAndChargerExportationMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; import java.math.BigDecimal; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/BmsInformationMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BmsInformationMessage.java similarity index 94% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/BmsInformationMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BmsInformationMessage.java index f49da50..ccb8874 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/BmsInformationMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/BmsInformationMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingHandshakeMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingHandshakeMessage.java similarity index 93% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingHandshakeMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingHandshakeMessage.java index 11f5796..97697b0 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingHandshakeMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingHandshakeMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; import java.math.BigDecimal; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingMessage.java similarity index 95% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingMessage.java index 970aa8f..4164738 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; @Data diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/base/ChargingOrderMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingOrderMessage.java similarity index 82% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/base/ChargingOrderMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingOrderMessage.java index fa8aff1..99396cf 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/base/ChargingOrderMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingOrderMessage.java @@ -1,4 +1,4 @@ -package com.ruoyi.jianguan.rocket.base; +package com.ruoyi.integration.iotda.model; import lombok.Data; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingPileReturnsGroundLockDataMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingPileReturnsGroundLockDataMessage.java similarity index 81% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingPileReturnsGroundLockDataMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingPileReturnsGroundLockDataMessage.java index 215fe79..6fdf0a0 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingPileReturnsGroundLockDataMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingPileReturnsGroundLockDataMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingPileStartsChargingMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingPileStartsChargingMessage.java similarity index 88% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingPileStartsChargingMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingPileStartsChargingMessage.java index b3ed842..79b1f76 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingPileStartsChargingMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ChargingPileStartsChargingMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ClearOfflineCardReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ClearOfflineCardReplyMessage.java similarity index 96% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ClearOfflineCardReplyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ClearOfflineCardReplyMessage.java index 0912ef8..92f755a 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ClearOfflineCardReplyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ClearOfflineCardReplyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/EndChargeMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/EndChargeMessage.java similarity index 90% rename from ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/EndChargeMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/EndChargeMessage.java index 7231ba4..95a02ae 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/EndChargeMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/EndChargeMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.integration.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.integration.rocket.base.BaseMessage; import lombok.Data; import java.math.BigDecimal; diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ErrorMessageMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ErrorMessageMessage.java similarity index 96% rename from ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ErrorMessageMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ErrorMessageMessage.java index 97f289e..c7e55f6 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ErrorMessageMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ErrorMessageMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.integration.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.integration.rocket.base.BaseMessage; import lombok.Data; @Data diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/GroundLockRealTimeDataMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/GroundLockRealTimeDataMessage.java similarity index 88% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/GroundLockRealTimeDataMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/GroundLockRealTimeDataMessage.java index 4cca8f4..1f4fd47 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/GroundLockRealTimeDataMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/GroundLockRealTimeDataMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/base/GunStatusMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/GunStatusMessage.java similarity index 80% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/base/GunStatusMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/GunStatusMessage.java index f9757f7..187329d 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/base/GunStatusMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/GunStatusMessage.java @@ -1,4 +1,4 @@ -package com.ruoyi.jianguan.rocket.base; +package com.ruoyi.integration.iotda.model; import lombok.Data; diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/MotorAbortMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/MotorAbortMessage.java similarity index 83% rename from ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/MotorAbortMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/MotorAbortMessage.java index dea1dd1..5467057 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/MotorAbortMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/MotorAbortMessage.java @@ -1,9 +1,6 @@ -package com.ruoyi.integration.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.integration.rocket.base.BaseMessage; import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; /** * 充电阶段充电机中止 diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/OnlineMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/OnlineMessage.java similarity index 87% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/OnlineMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/OnlineMessage.java index 9784504..bc7e563 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/OnlineMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/OnlineMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ParameterSettingMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ParameterSettingMessage.java similarity index 92% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ParameterSettingMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ParameterSettingMessage.java index 60fa634..969b0fb 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ParameterSettingMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/ParameterSettingMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; import java.math.BigDecimal; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PingMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PingMessage.java similarity index 75% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PingMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PingMessage.java index fad2fff..a68d544 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PingMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PingMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PlatformRemoteUpdateReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformRemoteUpdateReplyMessage.java similarity index 78% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PlatformRemoteUpdateReplyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformRemoteUpdateReplyMessage.java index 0ab906d..5571ca6 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PlatformRemoteUpdateReplyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformRemoteUpdateReplyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PlatformRestartReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformRestartReplyMessage.java similarity index 73% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PlatformRestartReplyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformRestartReplyMessage.java index 392b61c..98e4551 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PlatformRestartReplyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformRestartReplyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PlatformStartChargingReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformStartChargingReplyMessage.java similarity index 89% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PlatformStartChargingReplyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformStartChargingReplyMessage.java index 3d92094..5ce261d 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PlatformStartChargingReplyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformStartChargingReplyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PlatformStopChargingReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformStopChargingReplyMessage.java similarity index 82% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PlatformStopChargingReplyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformStopChargingReplyMessage.java index 2c67548..f786207 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/PlatformStopChargingReplyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/PlatformStopChargingReplyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QrCodeDeliveryMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/QrCodeDeliveryMessage.java similarity index 85% rename from ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QrCodeDeliveryMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/QrCodeDeliveryMessage.java index 0e4dd03..4052e6e 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QrCodeDeliveryMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/QrCodeDeliveryMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.integration.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.integration.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/QrCodeDeliveryReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/QrCodeDeliveryReplyMessage.java similarity index 72% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/QrCodeDeliveryReplyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/QrCodeDeliveryReplyMessage.java index eb4b935..d904f96 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/QrCodeDeliveryReplyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/QrCodeDeliveryReplyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/QueryOfflineCardReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/QueryOfflineCardReplyMessage.java similarity index 95% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/QueryOfflineCardReplyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/QueryOfflineCardReplyMessage.java index 986715f..6c5f837 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/QueryOfflineCardReplyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/QueryOfflineCardReplyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/SecurityDetectionMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/SecurityDetectionMessage.java similarity index 83% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/SecurityDetectionMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/SecurityDetectionMessage.java index 63f562e..3730406 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/SecurityDetectionMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/SecurityDetectionMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/SetupBillingModelReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/SetupBillingModelReplyMessage.java similarity index 73% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/SetupBillingModelReplyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/SetupBillingModelReplyMessage.java index 77dd7ff..7e4f762 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/SetupBillingModelReplyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/SetupBillingModelReplyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/SynchronizeOfflineCardReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/SynchronizeOfflineCardReplyMessage.java similarity index 79% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/SynchronizeOfflineCardReplyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/SynchronizeOfflineCardReplyMessage.java index 768fdb6..f1cf958 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/SynchronizeOfflineCardReplyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/SynchronizeOfflineCardReplyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/TimingSettingMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/TimingSettingMessage.java similarity index 69% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/TimingSettingMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/TimingSettingMessage.java index 703d807..a60d60a 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/TimingSettingMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/TimingSettingMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/TimingSettingReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/TimingSettingReplyMessage.java similarity index 70% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/TimingSettingReplyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/TimingSettingReplyMessage.java index fcb3a1c..3165b71 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/TimingSettingReplyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/TimingSettingReplyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/TransactionRecordMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/TransactionRecordMessage.java similarity index 98% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/TransactionRecordMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/TransactionRecordMessage.java index aae42d8..d6bc075 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/TransactionRecordMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/TransactionRecordMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; import java.math.BigDecimal; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/UpdateBalanceReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/UpdateBalanceReplyMessage.java similarity index 80% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/UpdateBalanceReplyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/UpdateBalanceReplyMessage.java index b754e00..456230b 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/UpdateBalanceReplyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/UpdateBalanceReplyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; import java.math.BigDecimal; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/UploadRealTimeMonitoringDataMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/UploadRealTimeMonitoringDataMessage.java similarity index 95% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/UploadRealTimeMonitoringDataMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/UploadRealTimeMonitoringDataMessage.java index 1a39863..270bbdf 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/UploadRealTimeMonitoringDataMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/UploadRealTimeMonitoringDataMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; import java.math.BigDecimal; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/WorkingParameterSettingReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/WorkingParameterSettingReplyMessage.java similarity index 74% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/WorkingParameterSettingReplyMessage.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/WorkingParameterSettingReplyMessage.java index 66d9e0d..28bf583 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/WorkingParameterSettingReplyMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/model/WorkingParameterSettingReplyMessage.java @@ -1,6 +1,5 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.integration.iotda.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/listener/IotMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/listener/IotMessageListener.java index 048678b..67e8379 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/listener/IotMessageListener.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/listener/IotMessageListener.java @@ -12,25 +12,20 @@ import com.ruoyi.integration.api.model.*; import com.ruoyi.integration.iotda.constant.SendTagConstant; import com.ruoyi.integration.iotda.enums.ServiceIdMenu; +import com.ruoyi.integration.iotda.model.*; import com.ruoyi.integration.iotda.utils.produce.IotMessageProduce; import com.ruoyi.integration.iotda.utils.tools.CP56Time2aConverter; import com.ruoyi.integration.iotda.utils.tools.MessageUtil; import com.ruoyi.integration.iotda.utils.tools.StrategyUtil; -import com.ruoyi.integration.rocket.model.*; -import com.ruoyi.integration.rocket.produce.ChargingMessageUtil; -import com.ruoyi.integration.rocket.produce.EnhanceProduce; +import com.ruoyi.integration.iotda.utils.tools.ChargingMessageUtil; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.client.producer.SendResult; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; -import java.io.File; -import java.io.FileOutputStream; -import java.io.FileWriter; import java.io.IOException; import java.math.BigDecimal; import java.util.*; @@ -44,8 +39,6 @@ @RequestMapping("/iot") public class IotMessageListener { - @Autowired - private EnhanceProduce enhanceProduce; @Autowired private MessageUtil messageUtil; @Autowired @@ -93,7 +86,6 @@ String productId = header.getString("product_id"); // 产品id String service_id = content.getString("service_id"); log.info("服务id:{}",service_id); - SendResult sendResult = null; ChargingMessage chargingMessage = new ChargingMessage(); chargingMessage.setServiceId(service_id); // 设备消息下发 @@ -101,9 +93,6 @@ switch (service_id){ case SendTagConstant.ONLINE: OnlineMessage onlineMessage = JSON.parseObject(content.toJSONString(),OnlineMessage.class); - //走rocketmq -// sendResult = enhanceProduce.onlineMessage(onlineMessage); - //直连 chargingMessage.setOnlineMessage(onlineMessage); chargingMessageUtil.handleMessage(chargingMessage); // 响应硬件 @@ -123,6 +112,7 @@ PingMessage pingMessage = JSON.parseObject(content.toJSONString(),PingMessage.class); //存储缓存中,5分钟有效 redisTemplate.opsForValue().set("ping:" + pingMessage.getCharging_pile_code() + pingMessage.getCharging_gun_code(), pingMessage, 5, TimeUnit.MINUTES); + // 响应硬件 Pong pong = new Pong(); pong.setCharging_pile_code(pingMessage.getCharging_pile_code()); @@ -135,36 +125,19 @@ vo1.setPile_code(pingMessage.getCharging_pile_code()); vo1.setStatus(pingMessage.getCharging_gun_status()); chargingPileClient.updateChargingPileStatus(vo1); - // 监管平台推送充电设备状态 - String gunCode = pingMessage.getCharging_pile_code() + pingMessage.getCharging_gun_code(); - ChargingMessage chargingMessage1 = new ChargingMessage(); - chargingMessage1.setServiceId(SendTagConstant.GUN_STATUS); - GunStatusMessage gunStatusMessage = new GunStatusMessage(); - gunStatusMessage.setFullNumber(gunCode); - chargingMessage1.setGunStatusMessage(gunStatusMessage); - sendResult = enhanceProduce.gunStatusMessage(chargingMessage1); break; case SendTagConstant.END_CHARGE: EndChargeMessage endChargeMessage = JSON.parseObject(content.toJSONString(),EndChargeMessage.class); - //走rocketmq -// sendResult = enhanceProduce.endChargeMessage(endChargeMessage); - //直连 chargingMessage.setEndChargeMessage(endChargeMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.ERROR_MESSAGE: ErrorMessageMessage errorMessageMessage = JSON.parseObject(content.toJSONString(),ErrorMessageMessage.class); - //走rocketmq -// sendResult = enhanceProduce.errorMessageMessage(errorMessageMessage); - //直连 chargingMessage.setErrorMessageMessage(errorMessageMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.BILLING_MODE_VERIFY: BillingModeVerifyMessage billingModeVerifyMessage = JSON.parseObject(content.toJSONString(),BillingModeVerifyMessage.class); - //走rocketmq -// sendResult = enhanceProduce.billingModeVerifyMessage(billingModeVerifyMessage); - //直连 chargingMessage.setBillingModeVerifyMessage(billingModeVerifyMessage); chargingMessageUtil.handleMessage(chargingMessage); // 响应硬件 @@ -193,9 +166,6 @@ break; case SendTagConstant.ACQUISITION_BILLING_MODE: AcquisitionBillingModeMessage acquisitionBillingModeMessage = JSON.parseObject(content.toJSONString(),AcquisitionBillingModeMessage.class); - //走rocketmq -// sendResult = enhanceProduce.acquisitionBillingModeMessage(acquisitionBillingModeMessage); - //直连 chargingMessage.setAcquisitionBillingModeMessage(acquisitionBillingModeMessage); chargingMessageUtil.handleMessage(chargingMessage); // 响应硬件 计费模型请求应答 1=尖阶段,2=峰阶段,3=平阶段,4=谷阶段 @@ -215,65 +185,41 @@ case SendTagConstant.UPLOAD_REAL_TIME_MONITORING_DATA: log.info("充电实时数据上传"); UploadRealTimeMonitoringDataMessage uploadRealTimeMonitoringDataMessage = JSON.parseObject(content.toJSONString(),UploadRealTimeMonitoringDataMessage.class); - //走rocketmq -// sendResult = enhanceProduce.uploadRealTimeMonitoringDataMessage(uploadRealTimeMonitoringDataMessage); - //直连 chargingMessage.setUploadRealTimeMonitoringDataMessage(uploadRealTimeMonitoringDataMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.CHARGING_HANDSHAKE: ChargingHandshakeMessage chargingHandshakeMessage = JSON.parseObject(content.toJSONString(),ChargingHandshakeMessage.class); - //走rocketmq -// sendResult = enhanceProduce.chargingHandshakeMessage(chargingHandshakeMessage); - //直连 chargingMessage.setChargingHandshakeMessage(chargingHandshakeMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.PARAMETER_SETTING: ParameterSettingMessage parameterSettingMessage = JSON.parseObject(content.toJSONString(),ParameterSettingMessage.class); - //走rocketmq -// sendResult = enhanceProduce.parameterSettingMessage(parameterSettingMessage); - //直连 chargingMessage.setParameterSettingMessage(parameterSettingMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.BMS_ABORT: BmsAbortMessage bmsAbortMessage = JSON.parseObject(content.toJSONString(),BmsAbortMessage.class); - //走rocketmq -// sendResult = enhanceProduce.bmsAbortMessage(bmsAbortMessage); - //直连 chargingMessage.setBmsAbortMessage(bmsAbortMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.MOTOR_ABORT: MotorAbortMessage motorAbortMessage = JSON.parseObject(content.toJSONString(),MotorAbortMessage.class); - //走rocketmq -// sendResult = enhanceProduce.motorAbortMessage(motorAbortMessage); - //直连 chargingMessage.setMotorAbortMessage(motorAbortMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.BMS_DEMAND_AND_CHARGER_EXPORTATION: BmsDemandAndChargerExportationMessage bmsDemandAndChargerExportationMessage = JSON.parseObject(content.toJSONString(),BmsDemandAndChargerExportationMessage.class); - //走rocketmq -// sendResult = enhanceProduce.bmsDemandAndChargerExportationMessage(bmsDemandAndChargerExportationMessage); - //直连 chargingMessage.setBmsDemandAndChargerExportationMessage(bmsDemandAndChargerExportationMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.BMS_INFORMATION: BmsInformationMessage bmsInformationMessage = JSON.parseObject(content.toJSONString(),BmsInformationMessage.class); - //走rocketmq -// sendResult = enhanceProduce.bmsInformationMessage(bmsInformationMessage); - //直连 chargingMessage.setBmsInformationMessage(bmsInformationMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.CHARGING_PILE_STARTS_CHARGING: ChargingPileStartsChargingMessage chargingPileStartsChargingMessage = JSON.parseObject(content.toJSONString(),ChargingPileStartsChargingMessage.class); - //走rocketmq -// sendResult = enhanceProduce.chargingPileStartsChargingMessage(chargingPileStartsChargingMessage); - //直连 chargingMessage.setChargingPileStartsChargingMessage(chargingPileStartsChargingMessage); chargingMessageUtil.handleMessage(chargingMessage); // 响应硬件 @@ -288,26 +234,17 @@ break; case SendTagConstant.PLATFORM_START_CHARGING_REPLY: PlatformStartChargingReplyMessage platformStartChargingReplyMessage = JSON.parseObject(content.toJSONString(),PlatformStartChargingReplyMessage.class); - //走rocketmq -// sendResult = enhanceProduce.platformStartChargingReplyMessage(platformStartChargingReplyMessage); - //直连 chargingMessage.setPlatformStartChargingReplyMessage(platformStartChargingReplyMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.PLATFORM_STOP_CHARGING_REPLY: PlatformStopChargingReplyMessage platformStopChargingReplyMessage = JSON.parseObject(content.toJSONString(),PlatformStopChargingReplyMessage.class); - //走rocketmq -// sendResult = enhanceProduce.platformStopChargingReplyMessage(platformStopChargingReplyMessage); - //直连 chargingMessage.setPlatformStopChargingReplyMessage(platformStopChargingReplyMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.TRANSACTION_RECORD: TransactionRecordMessage transactionRecordMessage = JSON.parseObject(content.toJSONString(),TransactionRecordMessage.class); transactionRecordMessage.setResult(content.toJSONString()); - //走rocketmq -// sendResult = enhanceProduce.transactionRecordMessage(transactionRecordMessage); - //直连 chargingMessage.setTransactionRecordMessage(transactionRecordMessage); chargingMessageUtil.handleMessage(chargingMessage); // 响应硬件 @@ -318,41 +255,26 @@ break; case SendTagConstant.UPDATE_BALANCE_REPLY: UpdateBalanceReplyMessage updateBalanceReplyMessage = JSON.parseObject(content.toJSONString(),UpdateBalanceReplyMessage.class); - //走rocketmq -// sendResult = enhanceProduce.updateBalanceReplyMessage(updateBalanceReplyMessage); - //直连 chargingMessage.setUpdateBalanceReplyMessage(updateBalanceReplyMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.SYNCHRONIZE_OFFLINE_CARD_REPLY: SynchronizeOfflineCardReplyMessage synchronizeOfflineCardReplyMessage = JSON.parseObject(content.toJSONString(),SynchronizeOfflineCardReplyMessage.class); - //走rocketmq -// sendResult = enhanceProduce.synchronizeOfflineCardReplyMessage(synchronizeOfflineCardReplyMessage); - //直连 chargingMessage.setSynchronizeOfflineCardReplyMessage(synchronizeOfflineCardReplyMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.CLEAR_OFFLINE_CARD_REPLY: ClearOfflineCardReplyMessage clearOfflineCardReplyMessage = JSON.parseObject(content.toJSONString(),ClearOfflineCardReplyMessage.class); - //走rocketmq -// sendResult = enhanceProduce.clearOfflineCardReplyMessage(clearOfflineCardReplyMessage); - //直连 chargingMessage.setClearOfflineCardReplyMessage(clearOfflineCardReplyMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.WORKING_PARAMETER_SETTING_REPLY: WorkingParameterSettingReplyMessage workingParameterSettingReplyMessage = JSON.parseObject(content.toJSONString(),WorkingParameterSettingReplyMessage.class); - //走rocketmq -// sendResult = enhanceProduce.workingParameterSettingReplyMessage(workingParameterSettingReplyMessage); - //直连 chargingMessage.setWorkingParameterSettingReplyMessage(workingParameterSettingReplyMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.TIMING_SETTING: TimingSettingMessage timingSettingMessage = JSON.parseObject(content.toJSONString(),TimingSettingMessage.class); - //走rocketmq -// sendResult = enhanceProduce.timingSettingMessage(timingSettingMessage); - //直连 chargingMessage.setTimingSettingMessage(timingSettingMessage); chargingMessageUtil.handleMessage(chargingMessage); // 响应硬件 对时设置应答 @@ -363,62 +285,40 @@ break; case SendTagConstant.SETUP_BILLING_MODEL_REPLY: SetupBillingModelReplyMessage setupBillingModelReplyMessage = JSON.parseObject(content.toJSONString(),SetupBillingModelReplyMessage.class); - //走rocketmq -// sendResult = enhanceProduce.setupBillingModelReplyMessage(setupBillingModelReplyMessage); - //直连 chargingMessage.setSetupBillingModelReplyMessage(setupBillingModelReplyMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.GROUND_LOCK_REAL_TIME_DATA: GroundLockRealTimeDataMessage groundLockRealTimeDataMessage = JSON.parseObject(content.toJSONString(),GroundLockRealTimeDataMessage.class); - //走rocketmq -// sendResult = enhanceProduce.groundLockRealTimeDataMessage(groundLockRealTimeDataMessage); - //直连 chargingMessage.setGroundLockRealTimeDataMessage(groundLockRealTimeDataMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.CHARGING_PILE_RETURNS_GROUND_LOCK_DATA: ChargingPileReturnsGroundLockDataMessage chargingPileReturnsGroundLockDataMessage = JSON.parseObject(content.toJSONString(),ChargingPileReturnsGroundLockDataMessage.class); - //走rocketmq -// sendResult = enhanceProduce.chargingPileReturnsGroundLockDataMessage(chargingPileReturnsGroundLockDataMessage); - //直连 chargingMessage.setChargingPileReturnsGroundLockDataMessage(chargingPileReturnsGroundLockDataMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.PLATFORM_RESTART_REPLY: PlatformRestartReplyMessage platformRestartReplyMessage = JSON.parseObject(content.toJSONString(),PlatformRestartReplyMessage.class); - //走rocketmq -// sendResult = enhanceProduce.platformRestartReplyMessage(platformRestartReplyMessage); - //直连 chargingMessage.setPlatformRestartReplyMessage(platformRestartReplyMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.QR_CODE_DELIVERY_REPLY: QrCodeDeliveryReplyMessage qrCodeDeliveryReplyMessage = JSON.parseObject(content.toJSONString(),QrCodeDeliveryReplyMessage.class); - //走rocketmq -// sendResult = enhanceProduce.qrCodeDeliveryReplyMessage(qrCodeDeliveryReplyMessage); - //直连 chargingMessage.setQrCodeDeliveryReplyMessage(qrCodeDeliveryReplyMessage); chargingMessageUtil.handleMessage(chargingMessage); break; case SendTagConstant.SECURITY_DETECTION: SecurityDetectionMessage securityDetectionMessage = JSON.parseObject(content.toJSONString(),SecurityDetectionMessage.class); - //走rocketmq -// sendResult = enhanceProduce.securityDetectionMessage(securityDetectionMessage); - //直连 chargingMessage.setSecurityDetectionMessage(securityDetectionMessage); chargingMessageUtil.handleMessage(chargingMessage); break; default: PlatformRemoteUpdateReplyMessage platformRemoteUpdateReplyMessage = JSON.parseObject(content.toJSONString(),PlatformRemoteUpdateReplyMessage.class); - //走rocketmq -// sendResult = enhanceProduce.platformRemoteUpdateReplyMessage(platformRemoteUpdateReplyMessage); - //直连 chargingMessage.setPlatformRemoteUpdateReplyMessage(platformRemoteUpdateReplyMessage); chargingMessageUtil.handleMessage(chargingMessage); break; } - log.info("rocketmq消息下发结果:{}",sendResult); return AjaxResult.success(); } diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageUtil.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/ChargingMessageUtil.java similarity index 89% rename from ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageUtil.java rename to ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/ChargingMessageUtil.java index 80ee746..e8f5fe4 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageUtil.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/ChargingMessageUtil.java @@ -1,17 +1,14 @@ -package com.ruoyi.integration.rocket.produce; +package com.ruoyi.integration.iotda.utils.tools; import com.alibaba.fastjson.JSONObject; import com.ruoyi.chargingPile.api.feignClient.AccountingStrategyDetailClient; -import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient; import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient; import com.ruoyi.chargingPile.api.model.TAccountingStrategyDetail; -import com.ruoyi.chargingPile.api.model.TChargingGun; import com.ruoyi.chargingPile.api.vo.UpdateChargingPileStatusVo; import com.ruoyi.integration.api.model.*; -import com.ruoyi.integration.drainage.TCECPushUtil; import com.ruoyi.integration.iotda.constant.SendTagConstant; +import com.ruoyi.integration.iotda.model.*; import com.ruoyi.integration.mongodb.service.*; -import com.ruoyi.integration.rocket.model.*; import com.ruoyi.order.api.feignClient.ChargingOrderClient; import com.ruoyi.order.api.model.TChargingOrder; import com.ruoyi.order.api.query.UploadRealTimeMonitoringDataQuery; @@ -20,7 +17,6 @@ import com.ruoyi.order.api.vo.SecurityDetectionVO; import com.ruoyi.order.api.vo.TransactionRecordMessageVO; import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.client.producer.SendResult; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; @@ -30,9 +26,6 @@ import javax.annotation.Resource; import java.math.RoundingMode; import java.util.Objects; -import java.util.Set; -import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; @@ -102,24 +95,18 @@ private QrCodeDeliveryReplyService qrCodeDeliveryReplyService; @Autowired private SecurityDetectionService securityDetectionService; - @Autowired - private TCECPushUtil tcecPushUtil; @Resource private ChargingPileClient chargingPileClient; - @Resource - private ChargingGunClient chargingGunClient; @Resource private RedisTemplate redisTemplate; - @Autowired - private EnhanceProduce enhanceProduce; - public void handleMessage(com.ruoyi.integration.rocket.model.ChargingMessage message){ + public void handleMessage(ChargingMessage message){ log.info("收到的消息内容:{}",message); String serviceId = message.getServiceId(); if(!StringUtils.hasLength(serviceId)){ @@ -149,14 +136,6 @@ vo1.setPile_code(pingMessage.getCharging_pile_code()); vo1.setStatus(pingMessage.getCharging_gun_status()); chargingPileClient.updateChargingPileStatus(vo1); - // 监管平台推送充电设备状态 - String gunCode = pingMessage.getCharging_pile_code() + pingMessage.getCharging_gun_code(); - ChargingMessage chargingMessage = new ChargingMessage(); - chargingMessage.setServiceId(SendTagConstant.GUN_STATUS); - GunStatusMessage gunStatusMessage = new GunStatusMessage(); - gunStatusMessage.setFullNumber(gunCode); - chargingMessage.setGunStatusMessage(gunStatusMessage); - SendResult sendResult = enhanceProduce.gunStatusMessage(chargingMessage); break; case SendTagConstant.END_CHARGE: EndChargeMessage endChargeMessage = message.getEndChargeMessage(); @@ -167,20 +146,6 @@ endChargeService.create(endCharge); // 业务处理 chargingOrderClient.endCharge(endCharge.getTransaction_serial_number()); - // 订单id - String transactionSerialNumber = endCharge.getTransaction_serial_number(); - ChargingOrderMessage chargingOrderMessage = new ChargingOrderMessage(); - chargingOrderMessage.setOrderNumber(transactionSerialNumber); - // 推送充电订单信息 - ChargingMessage chargingMessage1 = new ChargingMessage(); - chargingMessage1.setServiceId(SendTagConstant.ORDER_INFO); - chargingMessage1.setOrderMessage(chargingOrderMessage); - enhanceProduce.orderInfoMessage(chargingMessage1); - // 推送充电订单状态 - ChargingMessage chargingMessage2 = new ChargingMessage(); - chargingMessage2.setServiceId(SendTagConstant.ORDER_STATUS); - chargingMessage2.setOrderMessage(chargingOrderMessage); - enhanceProduce.orderStatusMessage(chargingMessage2); break; case SendTagConstant.ERROR_MESSAGE: ErrorMessageMessage errorMessageMessage1 = message.getErrorMessageMessage(); @@ -244,14 +209,6 @@ UploadRealTimeMonitoringDataQuery query = new UploadRealTimeMonitoringDataQuery(); BeanUtils.copyProperties(uploadRealTimeMonitoringData, query); chargingOrderClient.chargeMonitoring(query); - // 订单id - ChargingOrderMessage chargingOrderMessage3 = new ChargingOrderMessage(); - chargingOrderMessage3.setOrderNumber(chargingOrder.getCode()); - // 推送充电订单信息 - ChargingMessage chargingMessage4 = new ChargingMessage(); - chargingMessage4.setServiceId(SendTagConstant.ORDER_STATUS); - chargingMessage4.setOrderMessage(chargingOrderMessage3); - enhanceProduce.orderInfoMessage(chargingMessage4); } catch (Exception e) { e.printStackTrace(); } @@ -367,13 +324,9 @@ //计算费用 TransactionRecordMessageVO vo = new TransactionRecordMessageVO(); BeanUtils.copyProperties(transactionRecordMessage,vo); - int code = chargingOrderClient.endChargeBillingCharge(vo).getCode(); - if(200 != code){ - //失败后添加到队列中继续处理数据 - redisTemplate.opsForSet().add(SendTagConstant.TRANSACTION_RECORD, transactionRecordMessage.getTransaction_serial_number()); - } + chargingOrderClient.endChargeBillingCharge(vo); - // 添加实时上传记录结束记录 + // 添加实时上传结束记录 // 查询mogondb上一条数据 UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataService.getLastDataById(transactionRecordMessage.getTransaction_serial_number()); if(Objects.nonNull(data) && data.getStatus() != 5){ diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/ErrorMessageMessageService.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/ErrorMessageMessageService.java index 180eaa3..4023de4 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/ErrorMessageMessageService.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/ErrorMessageMessageService.java @@ -1,7 +1,7 @@ package com.ruoyi.integration.mongodb.service; import com.ruoyi.integration.mongodb.base.BaseService; -import com.ruoyi.integration.rocket.model.ErrorMessageMessage; +import com.ruoyi.integration.iotda.model.ErrorMessageMessage; public interface ErrorMessageMessageService extends BaseService<ErrorMessageMessage> { diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/ErrorMessageMessageServiceImpl.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/ErrorMessageMessageServiceImpl.java index 6443f1f..db43a55 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/ErrorMessageMessageServiceImpl.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/ErrorMessageMessageServiceImpl.java @@ -1,10 +1,8 @@ package com.ruoyi.integration.mongodb.service.impl; -import com.ruoyi.integration.api.model.EndCharge; import com.ruoyi.integration.iotda.constant.IotConstant; -import com.ruoyi.integration.mongodb.service.EndChargeService; import com.ruoyi.integration.mongodb.service.ErrorMessageMessageService; -import com.ruoyi.integration.rocket.model.ErrorMessageMessage; +import com.ruoyi.integration.iotda.model.ErrorMessageMessage; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.stereotype.Service; diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/configuration/EnvironmentIsolationConfig.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/configuration/EnvironmentIsolationConfig.java deleted file mode 100644 index e344550..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/configuration/EnvironmentIsolationConfig.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.ruoyi.integration.rocket.configuration; - -import org.apache.rocketmq.spring.support.DefaultRocketMQListenerContainer; -import org.springframework.beans.BeansException; -import org.springframework.beans.factory.config.BeanPostProcessor; -import org.springframework.util.StringUtils; - -public class EnvironmentIsolationConfig implements BeanPostProcessor { - private RocketEnhanceProperties rocketEnhanceProperties; - - public EnvironmentIsolationConfig(RocketEnhanceProperties rocketEnhanceProperties) { - this.rocketEnhanceProperties = rocketEnhanceProperties; - } - - - /** - * 在装载Bean之前实现参数修改 - */ - @Override - public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException { - if (bean instanceof DefaultRocketMQListenerContainer) { - - DefaultRocketMQListenerContainer container = (DefaultRocketMQListenerContainer) bean; - - if (rocketEnhanceProperties.isEnabledIsolation() && StringUtils.hasText(rocketEnhanceProperties.getEnvironment())) { - container.setTopic(String.join("_", container.getTopic(), rocketEnhanceProperties.getEnvironment())); - } - return container; - } - return bean; - } -} diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/configuration/RocketEnhanceProperties.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/configuration/RocketEnhanceProperties.java deleted file mode 100644 index 9803315..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/configuration/RocketEnhanceProperties.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.ruoyi.integration.rocket.configuration; - -import lombok.Data; -import org.springframework.boot.context.properties.ConfigurationProperties; - -@ConfigurationProperties(prefix = "rocketmq.enhance") -@Data -public class RocketEnhanceProperties { - - private boolean enabledIsolation; - - private String environment; -} diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/configuration/RocketMQEnhanceAutoConfiguration.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/configuration/RocketMQEnhanceAutoConfiguration.java deleted file mode 100644 index 378c5d4..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/configuration/RocketMQEnhanceAutoConfiguration.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.ruoyi.integration.rocket.configuration; - -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; -import com.ruoyi.integration.rocket.util.RocketMQEnhanceTemplate; -import org.apache.rocketmq.spring.core.RocketMQTemplate; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Primary; -import org.springframework.messaging.converter.CompositeMessageConverter; -import org.springframework.messaging.converter.MappingJackson2MessageConverter; -import org.springframework.messaging.converter.MessageConverter; - -import java.util.List; - -@Configuration -@EnableConfigurationProperties(RocketEnhanceProperties.class) -public class RocketMQEnhanceAutoConfiguration { - - /** - * 注入增强的RocketMQEnhanceTemplate - */ - @Bean - public RocketMQEnhanceTemplate rocketMQEnhanceTemplate(RocketMQTemplate rocketMQTemplate){ - return new RocketMQEnhanceTemplate(rocketMQTemplate); - } - - /** - * 解决RocketMQ Jackson不支持Java时间类型配置 - * 源码参考:{@link org.apache.rocketmq.spring.autoconfigure} - */ - @Bean - @Primary - public RocketMQMessageConverter enhanceRocketMQMessageConverter(){ - RocketMQMessageConverter converter = new RocketMQMessageConverter(); - CompositeMessageConverter compositeMessageConverter = (CompositeMessageConverter) converter.getMessageConverter(); - List<MessageConverter> messageConverterList = compositeMessageConverter.getConverters(); - for (MessageConverter messageConverter : messageConverterList) { - if(messageConverter instanceof MappingJackson2MessageConverter){ - MappingJackson2MessageConverter jackson2MessageConverter = (MappingJackson2MessageConverter) messageConverter; - ObjectMapper objectMapper = jackson2MessageConverter.getObjectMapper(); - objectMapper.registerModules(new JavaTimeModule()); - } - } - return converter; - } - - - /** - * 环境隔离配置 - */ - @Bean - @ConditionalOnProperty(name="rocketmq.enhance.enabledIsolation", havingValue="true") - public EnvironmentIsolationConfig environmentSetup(RocketEnhanceProperties rocketEnhanceProperties){ - return new EnvironmentIsolationConfig(rocketEnhanceProperties); - } - -} - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/configuration/RocketMQMessageConverter.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/configuration/RocketMQMessageConverter.java deleted file mode 100644 index b05ef80..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/configuration/RocketMQMessageConverter.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.ruoyi.integration.rocket.configuration; - -import org.springframework.messaging.converter.*; -import org.springframework.util.ClassUtils; - -import java.util.ArrayList; -import java.util.List; - -public class RocketMQMessageConverter { - - private static final boolean JACKSON_PRESENT; - private static final boolean FASTJSON_PRESENT; - - static { - ClassLoader classLoader = RocketMQMessageConverter.class.getClassLoader(); - JACKSON_PRESENT = ClassUtils.isPresent("com.fasterxml.jackson,databind.ObjectMapper", classLoader) - && ClassUtils.isPresent("com.fasterxml.jackson.core.JsonGenerator", classLoader); - FASTJSON_PRESENT = ClassUtils.isPresent("com.alibaba.fastjson.JSON", classLoader) - && ClassUtils.isPresent("com.alibaba.fastjson.support.config.FastJsonConfig", classLoader); - } - private final CompositeMessageConverter messageConverter; - - public RocketMQMessageConverter(){ - List<MessageConverter> messageConverters = new ArrayList<>(); - ByteArrayMessageConverter byteArrayMessageConverter = new ByteArrayMessageConverter(); - byteArrayMessageConverter.setContentTypeResolver(null); - messageConverters.add(byteArrayMessageConverter); - messageConverters.add(new StringMessageConverter()); - if (JACKSON_PRESENT) { - messageConverters.add(new MappingJackson2MessageConverter()); - } - if(FASTJSON_PRESENT) { - try { - messageConverters.add( - (MessageConverter) ClassUtils.forName( - "com.alibaba.fastjson.support.spring.messaging.MappingFastJsonMessageConverter", ClassUtils.getDefaultClassLoader()).newInstance()); - } catch (ClassNotFoundException | IllegalAccessException | InstantiationException ignored) { - - } - } - messageConverter = new CompositeMessageConverter(messageConverters); - } - - public MessageConverter getMessageConverter(){ return messageConverter; } - -} diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/constant/EnhanceMessageConstant.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/constant/EnhanceMessageConstant.java deleted file mode 100644 index 13e96f7..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/constant/EnhanceMessageConstant.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.ruoyi.integration.rocket.constant; - -public class EnhanceMessageConstant { - - /** - * 延时等级 - */ - public static final int FIVE_SECOND=5000; - /** - * 消息前缀 - */ - public static final String RETRY_PREFIX="retry_"; - -} diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/AcquisitionBillingModeMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/AcquisitionBillingModeMessageListener.java deleted file mode 100644 index 4b45d82..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/AcquisitionBillingModeMessageListener.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.chargingPile.api.feignClient.AccountingStrategyDetailClient; -import com.ruoyi.chargingPile.api.model.TAccountingStrategyDetail; -import com.ruoyi.integration.api.model.AcquisitionBillingMode; -import com.ruoyi.integration.api.model.AcquisitionBillingModeReply; -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.iotda.enums.ServiceIdMenu; -import com.ruoyi.integration.iotda.utils.produce.IotMessageProduce; -import com.ruoyi.integration.iotda.utils.tools.MessageUtil; -import com.ruoyi.integration.iotda.utils.tools.StrategyUtil; -import com.ruoyi.integration.mongodb.service.AcquisitionBillingModeService; -import com.ruoyi.integration.rocket.model.AcquisitionBillingModeMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import java.util.List; -import java.util.Map; -import java.util.Objects; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_acquisition_billing_mode", - topic = "charge_acquisition_billing_mode", - selectorExpression = "acquisition_billing_mode" -) -public class AcquisitionBillingModeMessageListener implements RocketMQListener<AcquisitionBillingModeMessage> { - - @Autowired - private AcquisitionBillingModeService acquisitionBillingModeService; - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(AcquisitionBillingModeMessage message) { - log.info("充电桩计费模型请求-业务消息处理:{}",message); - // 持久化消息 - AcquisitionBillingMode acquisitionBillingMode = new AcquisitionBillingMode(); - BeanUtils.copyProperties(message,acquisitionBillingMode); - acquisitionBillingModeService.create(acquisitionBillingMode); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/BillingModeVerifyMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/BillingModeVerifyMessageListener.java deleted file mode 100644 index e8cbae8..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/BillingModeVerifyMessageListener.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.chargingPile.api.dto.CheckChargingStrategyDTO; -import com.ruoyi.chargingPile.api.feignClient.AccountingStrategyDetailClient; -import com.ruoyi.chargingPile.api.model.TAccountingStrategyDetail; -import com.ruoyi.integration.api.model.AcquisitionBillingMode; -import com.ruoyi.integration.api.model.BillingModeVerify; -import com.ruoyi.integration.api.model.BillingModeVerifyReply; -import com.ruoyi.integration.iotda.enums.ServiceIdMenu; -import com.ruoyi.integration.iotda.utils.produce.IotMessageProduce; -import com.ruoyi.integration.iotda.utils.tools.MessageUtil; -import com.ruoyi.integration.mongodb.service.BillingModeVerifyReplyService; -import com.ruoyi.integration.mongodb.service.BillingModeVerifyService; -import com.ruoyi.integration.rocket.model.BillingModeVerifyMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_billing_mode_verify", - topic = "charge_billing_mode_verify", - selectorExpression = "billing_mode_verify" -) -public class BillingModeVerifyMessageListener implements RocketMQListener<BillingModeVerifyMessage> { - - @Autowired - private BillingModeVerifyService billingModeVerifyService; - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(BillingModeVerifyMessage message) { - log.info("计费模型验证请求-业务消息处理:{}",message); - // 持久化消息 - BillingModeVerify billingModeVerify = new BillingModeVerify(); - BeanUtils.copyProperties(message,billingModeVerify); - billingModeVerifyService.create(billingModeVerify); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/BmsAbortMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/BmsAbortMessageListener.java deleted file mode 100644 index d1fa0d1..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/BmsAbortMessageListener.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.BillingModeVerify; -import com.ruoyi.integration.api.model.BmsAbort; -import com.ruoyi.integration.mongodb.service.BmsAbortService; -import com.ruoyi.integration.rocket.model.BmsAbortMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import com.ruoyi.order.api.feignClient.ChargingOrderClient; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.ThreadPoolExecutor; -import java.util.concurrent.TimeUnit; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_bms_abort", - topic = "charge_bms_abort", - selectorExpression = "bms_abort" -) -public class BmsAbortMessageListener implements RocketMQListener<BmsAbortMessage> { - - @Autowired - private BmsAbortService bmsAbortService; - - @Resource - private ChargingOrderClient chargingOrderClient; - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(BmsAbortMessage message) { - log.info("充电阶段BMS中止-业务消息处理:{}",message); - // 持久化消息 - BmsAbort bmsAbort = new BmsAbort(); - BeanUtils.copyProperties(message,bmsAbort); - bmsAbortService.create(bmsAbort); - // 业务处理 - chargingOrderClient.excelEndCharge(bmsAbort.getTransaction_serial_number()); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/BmsDemandAndChargerExportationMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/BmsDemandAndChargerExportationMessageListener.java deleted file mode 100644 index a5867e7..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/BmsDemandAndChargerExportationMessageListener.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.BmsAbort; -import com.ruoyi.integration.api.model.BmsDemandAndChargerExportation; -import com.ruoyi.integration.mongodb.service.BmsDemandAndChargerExportationService; -import com.ruoyi.integration.rocket.model.BmsDemandAndChargerExportationMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import com.ruoyi.order.api.feignClient.ChargingOrderClient; -import com.ruoyi.order.api.model.TChargingOrder; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.util.Objects; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_bms_demand_and_charger_exportation", - topic = "charge_bms_demand_and_charger_exportation", - selectorExpression = "bms_demand_and_charger_exportation" -) -public class BmsDemandAndChargerExportationMessageListener implements RocketMQListener<BmsDemandAndChargerExportationMessage> { - - @Autowired - private BmsDemandAndChargerExportationService bmsDemandAndChargerExportationService; - @Resource - private ChargingOrderClient chargingOrderClient; - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(BmsDemandAndChargerExportationMessage message) { - log.info("充电过程BMS需求、充电机输出-业务消息处理:{}",message); - // 持久化消息 - BmsDemandAndChargerExportation bmsDemandAndChargerExportation = new BmsDemandAndChargerExportation(); - BeanUtils.copyProperties(message,bmsDemandAndChargerExportation); - bmsDemandAndChargerExportationService.create(bmsDemandAndChargerExportation); - - // 业务处理 - TChargingOrder chargingOrderBms = chargingOrderClient.getOrderByCode(message.getTransaction_serial_number()).getData(); - if(Objects.nonNull(chargingOrderBms)){ - chargingOrderBms.setNeedElec(message.getBms_current_requirements()); - chargingOrderClient.updateChargingOrder(chargingOrderBms); - } - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/BmsInformationMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/BmsInformationMessageListener.java deleted file mode 100644 index f8f24b2..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/BmsInformationMessageListener.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.BmsInformation; -import com.ruoyi.integration.mongodb.service.BmsInformationService; -import com.ruoyi.integration.rocket.model.BmsInformationMessage; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_bms_information", - topic = "charge_bms_information", - selectorExpression = "bms_information" -) -public class BmsInformationMessageListener implements RocketMQListener<BmsInformationMessage> { - @Autowired - private BmsInformationService bmsInformationService; - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(BmsInformationMessage message) { - log.info("充电过程BMS信息-业务消息处理:{}",message); - // 持久化消息 - BmsInformation bmsInformation = new BmsInformation(); - BeanUtils.copyProperties(message,bmsInformation); - bmsInformationService.create(bmsInformation); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ChargingHandshakeMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ChargingHandshakeMessageListener.java deleted file mode 100644 index b812bfd..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ChargingHandshakeMessageListener.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.BmsInformation; -import com.ruoyi.integration.api.model.ChargingHandshake; -import com.ruoyi.integration.mongodb.service.ChargingHandshakeService; -import com.ruoyi.integration.rocket.model.ChargingHandshakeMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_charging_handshake", - topic = "charge_charging_handshake", - selectorExpression = "charging_handshake" -) -public class ChargingHandshakeMessageListener implements RocketMQListener<ChargingHandshakeMessage> { - - @Autowired - private ChargingHandshakeService chargingHandshakeService; - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(ChargingHandshakeMessage message) { - log.info("充电握手-业务消息处理:{}",message); - // 持久化消息 - ChargingHandshake chargingHandshake = new ChargingHandshake(); - BeanUtils.copyProperties(message,chargingHandshake); - chargingHandshakeService.create(chargingHandshake); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ChargingPileReturnsGroundLockDataMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ChargingPileReturnsGroundLockDataMessageListener.java deleted file mode 100644 index 108a554..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ChargingPileReturnsGroundLockDataMessageListener.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.ChargingHandshake; -import com.ruoyi.integration.api.model.ChargingPileReturnsGroundLockData; -import com.ruoyi.integration.mongodb.service.ChargingPileReturnsGroundLockDataService; -import com.ruoyi.integration.rocket.model.ChargingPileReturnsGroundLockDataMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_charging_pile_returns_ground_lock_data", - topic = "charge_charging_pile_returns_ground_lock_data", - selectorExpression = "charging_pile_returns_ground_lock_data" -) -public class ChargingPileReturnsGroundLockDataMessageListener implements RocketMQListener<ChargingPileReturnsGroundLockDataMessage> { - - @Autowired - private ChargingPileReturnsGroundLockDataService chargingPileReturnsGroundLockDataService; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(ChargingPileReturnsGroundLockDataMessage message) { - log.info("充电桩返回数据(上行)-业务消息处理:{}",message); - // 持久化消息 - ChargingPileReturnsGroundLockData chargingPileReturnsGroundLockData = new ChargingPileReturnsGroundLockData(); - BeanUtils.copyProperties(message,chargingPileReturnsGroundLockData); - chargingPileReturnsGroundLockDataService.create(chargingPileReturnsGroundLockData); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ChargingPileStartsChargingMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ChargingPileStartsChargingMessageListener.java deleted file mode 100644 index 4371d11..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ChargingPileStartsChargingMessageListener.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.ChargingPileReturnsGroundLockData; -import com.ruoyi.integration.api.model.ChargingPileStartsCharging; -import com.ruoyi.integration.mongodb.service.ChargingPileStartsChargingService; -import com.ruoyi.integration.rocket.model.ChargingPileStartsChargingMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_charging_pile_starts_charging", - topic = "charge_charging_pile_starts_charging", - selectorExpression = "charging_pile_starts_charging" -) -public class ChargingPileStartsChargingMessageListener implements RocketMQListener<ChargingPileStartsChargingMessage> { - - @Autowired - private ChargingPileStartsChargingService chargingPileStartsChargingService; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(ChargingPileStartsChargingMessage message) { - log.info("充电桩主动申请启动充电-业务消息处理:{}",message); - // 持久化消息 - ChargingPileStartsCharging chargingPileStartsCharging = new ChargingPileStartsCharging(); - BeanUtils.copyProperties(message,chargingPileStartsCharging); - chargingPileStartsChargingService.create(chargingPileStartsCharging); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ClearOfflineCardReplyMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ClearOfflineCardReplyMessageListener.java deleted file mode 100644 index 43b7678..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ClearOfflineCardReplyMessageListener.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.ChargingPileStartsCharging; -import com.ruoyi.integration.api.model.ClearOfflineCardReply; -import com.ruoyi.integration.mongodb.service.ClearOfflineCardReplyService; -import com.ruoyi.integration.rocket.model.ClearOfflineCardReplyMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_clear_offline_card_reply", - topic = "charge_clear_offline_card_reply", - selectorExpression = "clear_offline_card_reply" -) -public class ClearOfflineCardReplyMessageListener implements RocketMQListener<ClearOfflineCardReplyMessage> { - - @Autowired - private ClearOfflineCardReplyService clearOfflineCardReplyService; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(ClearOfflineCardReplyMessage message) { - log.info("离线卡数据清除应答-业务消息处理:{}",message); - // 持久化消息 - ClearOfflineCardReply clearOfflineCardReply = new ClearOfflineCardReply(); - BeanUtils.copyProperties(message,clearOfflineCardReply); - clearOfflineCardReplyService.create(clearOfflineCardReply); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/EndChargeMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/EndChargeMessageListener.java deleted file mode 100644 index 366568e..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/EndChargeMessageListener.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.EndCharge; -import com.ruoyi.integration.api.model.Ping; -import com.ruoyi.integration.api.model.Pong; -import com.ruoyi.integration.iotda.constant.SendTagConstant; -import com.ruoyi.integration.iotda.enums.ServiceIdMenu; -import com.ruoyi.integration.iotda.utils.produce.IotMessageProduce; -import com.ruoyi.integration.iotda.utils.tools.MessageUtil; -import com.ruoyi.integration.mongodb.service.EndChargeService; -import com.ruoyi.integration.mongodb.service.PingService; -import com.ruoyi.integration.rocket.model.ChargingMessage; -import com.ruoyi.integration.rocket.model.ChargingOrderMessage; -import com.ruoyi.integration.rocket.model.EndChargeMessage; -import com.ruoyi.integration.rocket.model.PingMessage; -import com.ruoyi.integration.rocket.produce.EnhanceProduce; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import com.ruoyi.order.api.feignClient.ChargingOrderClient; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_end_charge", - topic = "charge_end_charge", - selectorExpression = "end_charge" -) -public class EndChargeMessageListener implements RocketMQListener<EndChargeMessage> { - - @Autowired - private EndChargeService endChargeService; - @Resource - private ChargingOrderClient chargingOrderClient; - @Autowired - private EnhanceProduce enhanceProduce; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(EndChargeMessage message) { - log.info("充电结束-业务消息处理:{}",message); - // 持久化消息 - EndCharge endCharge = new EndCharge(); - BeanUtils.copyProperties(message,endCharge); - endChargeService.create(endCharge); - // 业务处理 - chargingOrderClient.endCharge(endCharge.getTransaction_serial_number()); - // 订单id - String transactionSerialNumber = endCharge.getTransaction_serial_number(); - ChargingOrderMessage chargingOrderMessage = new ChargingOrderMessage(); - chargingOrderMessage.setOrderNumber(transactionSerialNumber); - // 推送充电订单信息 - ChargingMessage chargingMessage1 = new ChargingMessage(); - chargingMessage1.setServiceId(SendTagConstant.ORDER_INFO); - chargingMessage1.setOrderMessage(chargingOrderMessage); - enhanceProduce.orderInfoMessage(chargingMessage1); - // 推送充电订单状态 - ChargingMessage chargingMessage2 = new ChargingMessage(); - chargingMessage2.setServiceId(SendTagConstant.ORDER_STATUS); - chargingMessage2.setOrderMessage(chargingOrderMessage); - enhanceProduce.orderStatusMessage(chargingMessage2); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ErrorMessageMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ErrorMessageMessageListener.java deleted file mode 100644 index fc1392c..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ErrorMessageMessageListener.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.mongodb.service.ErrorMessageMessageService; -import com.ruoyi.integration.rocket.model.ErrorMessageMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_error_message", - topic = "charge_error_message", - selectorExpression = "error_message" -) -public class ErrorMessageMessageListener implements RocketMQListener<ErrorMessageMessage> { - - @Autowired - private ErrorMessageMessageService errorMessageMessageService; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(ErrorMessageMessage message) { - log.info("错误报文-业务消息处理:{}",message); - // 持久化消息 - ErrorMessageMessage errorMessageMessage = new ErrorMessageMessage(); - BeanUtils.copyProperties(message,errorMessageMessage); - errorMessageMessageService.create(errorMessageMessage); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/GroundLockRealTimeDataMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/GroundLockRealTimeDataMessageListener.java deleted file mode 100644 index 6e5d624..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/GroundLockRealTimeDataMessageListener.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.ClearOfflineCardReply; -import com.ruoyi.integration.api.model.GroundLockRealTimeData; -import com.ruoyi.integration.mongodb.service.GroundLockRealTimeDataService; -import com.ruoyi.integration.rocket.model.GroundLockRealTimeDataMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_ground_lock_real_time_data", - topic = "charge_ground_lock_real_time_data", - selectorExpression = "ground_lock_real_time_data" -) -public class GroundLockRealTimeDataMessageListener implements RocketMQListener<GroundLockRealTimeDataMessage> { - - @Autowired - private GroundLockRealTimeDataService groundLockRealTimeDataService; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(GroundLockRealTimeDataMessage message) { - log.info("地锁数据上送(充电桩上送)-业务消息处理:{}",message); - // 持久化消息 - GroundLockRealTimeData groundLockRealTimeData = new GroundLockRealTimeData(); - BeanUtils.copyProperties(message,groundLockRealTimeData); - groundLockRealTimeDataService.create(groundLockRealTimeData); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/MotorAbortMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/MotorAbortMessageListener.java deleted file mode 100644 index 69fd377..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/MotorAbortMessageListener.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.GroundLockRealTimeData; -import com.ruoyi.integration.api.model.MotorAbort; -import com.ruoyi.integration.mongodb.service.MotorAbortService; -import com.ruoyi.integration.rocket.model.MotorAbortMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import com.ruoyi.order.api.feignClient.ChargingOrderClient; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_motor_abort", - topic = "charge_motor_abort", - selectorExpression = "motor_abort" -) -public class MotorAbortMessageListener implements RocketMQListener<MotorAbortMessage> { - - @Autowired - private MotorAbortService motorAbortService; - - @Resource - private ChargingOrderClient chargingOrderClient; - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(MotorAbortMessage message) { - log.info("充电阶段充电机中止-业务消息处理:{}",message); - // 持久化消息 - MotorAbort motorAbort = new MotorAbort(); - BeanUtils.copyProperties(message,motorAbort); - motorAbortService.create(motorAbort); - // 业务处理 - chargingOrderClient.excelEndCharge(motorAbort.getTransaction_serial_number()); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/OnlineMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/OnlineMessageListener.java deleted file mode 100644 index bdb90e1..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/OnlineMessageListener.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.alibaba.fastjson.JSON; -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.mongodb.service.OnlineService; -import com.ruoyi.integration.rocket.model.OnlineMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - consumerGroup = "charge_online", - topic = "charge_online", - selectorExpression = "online" -) -public class OnlineMessageListener implements RocketMQListener<OnlineMessage> { - - @Autowired - private OnlineService onlineService; - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(OnlineMessage message) { - log.info("充电桩登录认证业务消息处理:{}", JSON.toJSONString(message)); - // 持久化消息 - Online online = new Online(); - BeanUtils.copyProperties(message,online); - onlineService.create(online); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ParameterSettingMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ParameterSettingMessageListener.java deleted file mode 100644 index f46c414..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/ParameterSettingMessageListener.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.api.model.ParameterSetting; -import com.ruoyi.integration.mongodb.service.ParameterSettingService; -import com.ruoyi.integration.rocket.model.ParameterSettingMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_parameter_setting", - topic = "charge_parameter_setting", - selectorExpression = "parameter_setting" -) -public class ParameterSettingMessageListener implements RocketMQListener<ParameterSettingMessage> { - - @Autowired - private ParameterSettingService parameterSettingService; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(ParameterSettingMessage message) { - log.info("参数配置-业务消息处理:{}",message); - // 持久化消息 - ParameterSetting parameterSetting = new ParameterSetting(); - BeanUtils.copyProperties(message,parameterSetting); - parameterSettingService.create(parameterSetting); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PingMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PingMessageListener.java deleted file mode 100644 index 0abe121..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PingMessageListener.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.alibaba.fastjson2.JSON; -import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient; -import com.ruoyi.chargingPile.api.vo.UpdateChargingPileStatusVo; -import com.ruoyi.integration.api.model.Ping; -import com.ruoyi.integration.iotda.constant.SendTagConstant; -import com.ruoyi.integration.mongodb.service.PingService; -import com.ruoyi.integration.rocket.model.ChargingMessage; -import com.ruoyi.integration.rocket.model.GunStatusMessage; -import com.ruoyi.integration.rocket.model.OnlineMessage; -import com.ruoyi.integration.rocket.model.PingMessage; -import com.ruoyi.integration.rocket.produce.EnhanceProduce; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.client.consumer.listener.MessageListener; -import org.apache.rocketmq.client.producer.SendResult; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.redis.core.RedisTemplate; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.util.concurrent.TimeUnit; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_ping", - topic = "charge_ping", - selectorExpression = "ping" -) -public class PingMessageListener implements RocketMQListener<PingMessage> { - - @Autowired - private PingService pingService; - @Resource - private RedisTemplate redisTemplate; - @Autowired - private EnhanceProduce enhanceProduce; - - @Resource - private ChargingPileClient chargingPileClient; - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(PingMessage message) { - log.info("充电桩心跳包-业务消息处理:{}", JSON.toJSONString(message)); - // 持久化消息 - Ping ping = new Ping(); - BeanUtils.copyProperties(message,ping); - pingService.save(ping); - //存储缓存中,5分钟有效 - redisTemplate.opsForValue().set("ping:" + ping.getCharging_pile_code() + ping.getCharging_gun_code(), ping, 5, TimeUnit.MINUTES); - - UpdateChargingPileStatusVo vo1 = new UpdateChargingPileStatusVo(); - vo1.setGun_code(message.getCharging_gun_code()); - vo1.setPile_code(message.getCharging_pile_code()); - vo1.setStatus(message.getCharging_gun_status()); - chargingPileClient.updateChargingPileStatus(vo1); - // 监管平台推送充电设备状态 - SendResult sendResult; - String gunCode = message.getCharging_pile_code() + message.getCharging_gun_code(); - ChargingMessage chargingMessage = new ChargingMessage(); - chargingMessage.setServiceId(SendTagConstant.GUN_STATUS); - GunStatusMessage gunStatusMessage = new GunStatusMessage(); - gunStatusMessage.setFullNumber(gunCode); - chargingMessage.setGunStatusMessage(gunStatusMessage); - sendResult = enhanceProduce.gunStatusMessage(chargingMessage); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PlatformRemoteUpdateReplyMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PlatformRemoteUpdateReplyMessageListener.java deleted file mode 100644 index 818128c..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PlatformRemoteUpdateReplyMessageListener.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.api.model.ParameterSetting; -import com.ruoyi.integration.api.model.PlatformRemoteUpdateReply; -import com.ruoyi.integration.mongodb.service.PlatformRemoteUpdateReplyService; -import com.ruoyi.integration.rocket.model.PlatformRemoteUpdateReplyMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_platform_remote_update_reply", - topic = "charge_platform_remote_update_reply", - selectorExpression = "platform_remote_update_reply" -) -public class PlatformRemoteUpdateReplyMessageListener implements RocketMQListener<PlatformRemoteUpdateReplyMessage> { - - @Autowired - private PlatformRemoteUpdateReplyService platformRemoteUpdateReplyService; - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(PlatformRemoteUpdateReplyMessage message) { - log.info("业务消息处理:{}",message); - // 持久化消息 - PlatformRemoteUpdateReply platformRemoteUpdateReply = new PlatformRemoteUpdateReply(); - BeanUtils.copyProperties(message,platformRemoteUpdateReply); - platformRemoteUpdateReplyService.create(platformRemoteUpdateReply); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PlatformRestartReplyMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PlatformRestartReplyMessageListener.java deleted file mode 100644 index a512a5a..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PlatformRestartReplyMessageListener.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.api.model.PlatformRestartReply; -import com.ruoyi.integration.mongodb.service.PlatformRestartReplyService; -import com.ruoyi.integration.rocket.model.PlatformRestartReplyMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_platform_restart_reply", - topic = "charge_platform_restart_reply", - selectorExpression = "platform_restart_reply" -) -public class PlatformRestartReplyMessageListener implements RocketMQListener<PlatformRestartReplyMessage> { - - @Autowired - private PlatformRestartReplyService platformRestartReplyService; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(PlatformRestartReplyMessage message) { - log.info("远程重启应答-业务消息处理:{}",message); - // 持久化消息 - PlatformRestartReply platformRestartReply = new PlatformRestartReply(); - BeanUtils.copyProperties(message,platformRestartReply); - platformRestartReplyService.create(platformRestartReply); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PlatformStartChargingReplyMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PlatformStartChargingReplyMessageListener.java deleted file mode 100644 index decb747..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PlatformStartChargingReplyMessageListener.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.api.model.PlatformStartChargingReply; -import com.ruoyi.integration.mongodb.service.PlatformStartChargingReplyService; -import com.ruoyi.integration.rocket.model.PlatformStartChargingReplyMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import com.ruoyi.order.api.feignClient.ChargingOrderClient; -import com.ruoyi.order.api.vo.PlatformStartChargingReplyMessageVO; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_platform_start_charging_reply", - topic = "charge_platform_start_charging_reply", - selectorExpression = "platform_start_charging_reply" -) -public class PlatformStartChargingReplyMessageListener implements RocketMQListener<PlatformStartChargingReplyMessage> { - - @Autowired - private PlatformStartChargingReplyService platformStartChargingReplyService; - - @Resource - private ChargingOrderClient chargingOrderClient; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(PlatformStartChargingReplyMessage message) { - log.info("远程启机命令回复-业务消息处理:{}",message); - // 持久化消息 - PlatformStartChargingReply platformStartChargingReply = new PlatformStartChargingReply(); - BeanUtils.copyProperties(message,platformStartChargingReply); - platformStartChargingReplyService.create(platformStartChargingReply); - - // 业务处理 - PlatformStartChargingReplyMessageVO message1 = new PlatformStartChargingReplyMessageVO(); - BeanUtils.copyProperties(message, message1); - chargingOrderClient.startChargeSuccessfully(message1); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PlatformStopChargingReplyMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PlatformStopChargingReplyMessageListener.java deleted file mode 100644 index 4d737cf..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/PlatformStopChargingReplyMessageListener.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.api.model.PlatformStopChargingReply; -import com.ruoyi.integration.mongodb.service.PlatformStopChargingReplyService; -import com.ruoyi.integration.rocket.model.PlatformStopChargingReplyMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import com.ruoyi.order.api.feignClient.ChargingOrderClient; -import com.ruoyi.order.api.vo.PlatformStopChargingReplyVO; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_platform_stop_charging_reply", - topic = "charge_platform_stop_charging_reply", - selectorExpression = "platform_stop_charging_reply" -) -public class PlatformStopChargingReplyMessageListener implements RocketMQListener<PlatformStopChargingReplyMessage> { - @Autowired - private PlatformStopChargingReplyService platformStopChargingReplyService; - @Resource - private ChargingOrderClient chargingOrderClient; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(PlatformStopChargingReplyMessage message) { - log.info("远程停机命令回复-业务消息处理:{}",message); - // 持久化消息 - PlatformStopChargingReply platformStopChargingReply = new PlatformStopChargingReply(); - BeanUtils.copyProperties(message,platformStopChargingReply); - platformStopChargingReplyService.create(platformStopChargingReply); - - PlatformStopChargingReplyVO platformStopChargingReply1 = new PlatformStopChargingReplyVO(); - BeanUtils.copyProperties(platformStopChargingReply, platformStopChargingReply1); - chargingOrderClient.terminateSuccessfulResponse(platformStopChargingReply1); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/QrCodeDeliveryReplyMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/QrCodeDeliveryReplyMessageListener.java deleted file mode 100644 index 50ca0dc..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/QrCodeDeliveryReplyMessageListener.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.QrCodeDeliveryReply; -import com.ruoyi.integration.mongodb.service.QrCodeDeliveryReplyService; -import com.ruoyi.integration.rocket.model.AcquisitionBillingModeMessage; -import com.ruoyi.integration.rocket.model.QrCodeDeliveryReplyMessage; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -/** - * @author zhibing.pu - * @Date 2025/4/28 14:57 - */ -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_qr_code_delivery_reply", - topic = "charge_qr_code_delivery_reply", - selectorExpression = "qr_code_delivery_reply" -) -public class QrCodeDeliveryReplyMessageListener implements RocketMQListener<QrCodeDeliveryReplyMessage> { - - @Autowired - private QrCodeDeliveryReplyService qrCodeDeliveryReplyService; - - - @Override - public void onMessage(QrCodeDeliveryReplyMessage message) { - log.info("二维码下发应答-业务消息处理:{}",message); - QrCodeDeliveryReply qrCodeDeliveryReply = new QrCodeDeliveryReply(); - BeanUtils.copyProperties(message,qrCodeDeliveryReply); - qrCodeDeliveryReplyService.create(qrCodeDeliveryReply); - } -} diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/QueryOfflineCardReplyMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/QueryOfflineCardReplyMessageListener.java deleted file mode 100644 index 4174407..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/QueryOfflineCardReplyMessageListener.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.api.model.PlatformRemoteUpdateReply; -import com.ruoyi.integration.api.model.PlatformStopChargingReply; -import com.ruoyi.integration.api.model.QueryOfflineCardReply; -import com.ruoyi.integration.mongodb.service.QueryOfflineCardReplyService; -import com.ruoyi.integration.rocket.model.QueryOfflineCardReplyMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import com.ruoyi.order.api.vo.PlatformStopChargingReplyVO; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_query_offline_card_reply", - topic = "charge_query_offline_card_reply", - selectorExpression = "query_offline_card_reply" -) -public class QueryOfflineCardReplyMessageListener implements RocketMQListener<QueryOfflineCardReplyMessage> { - - @Autowired - private QueryOfflineCardReplyService queryOfflineCardReplyService; - - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(QueryOfflineCardReplyMessage message) { - log.info("业务消息处理:{}",message); - // 持久化消息 - QueryOfflineCardReply queryOfflineCardReply = new QueryOfflineCardReply(); - BeanUtils.copyProperties(message,queryOfflineCardReply); - queryOfflineCardReplyService.create(queryOfflineCardReply); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/SecurityDetectionMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/SecurityDetectionMessageListener.java deleted file mode 100644 index 42ef6c7..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/SecurityDetectionMessageListener.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.SecurityDetection; -import com.ruoyi.integration.mongodb.service.SecurityDetectionService; -import com.ruoyi.integration.rocket.model.AcquisitionBillingModeMessage; -import com.ruoyi.integration.rocket.model.SecurityDetectionMessage; -import com.ruoyi.order.api.feignClient.ChargingOrderClient; -import com.ruoyi.order.api.vo.SecurityDetectionVO; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; - -/** - * @author zhibing.pu - * @Date 2025/4/28 14:59 - */ -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_security_detection", - topic = "charge_security_detection", - selectorExpression = "security_detection" -) -public class SecurityDetectionMessageListener implements RocketMQListener<SecurityDetectionMessage> { - @Resource - private ChargingOrderClient chargingOrderClient; - @Autowired - private SecurityDetectionService securityDetectionService; - - - - @Override - public void onMessage(SecurityDetectionMessage message) { - log.info("安全监测-业务消息处理:{}",message); - SecurityDetection securityDetection = new SecurityDetection(); - BeanUtils.copyProperties(message,securityDetection); - securityDetectionService.create(securityDetection); - - SecurityDetectionVO securityDetection1 = new SecurityDetectionVO(); - BeanUtils.copyProperties(securityDetection, securityDetection1); - chargingOrderClient.securityDetection(securityDetection1); - } -} diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/SetupBillingModelReplyMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/SetupBillingModelReplyMessageListener.java deleted file mode 100644 index c6b3a0c..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/SetupBillingModelReplyMessageListener.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.api.model.SetupBillingModelReply; -import com.ruoyi.integration.mongodb.service.SetupBillingModelReplyService; -import com.ruoyi.integration.rocket.model.SetupBillingModelReplyMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_setup_billing_model_reply", - topic = "charge_setup_billing_model_reply", - selectorExpression = "setup_billing_model_reply" -) -public class SetupBillingModelReplyMessageListener implements RocketMQListener<SetupBillingModelReplyMessage> { - - @Autowired - private SetupBillingModelReplyService setupBillingModelReplyService; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(SetupBillingModelReplyMessage message) { - log.info("计费模型应答-业务消息处理:{}",message); - // 持久化消息 - SetupBillingModelReply setupBillingModelReply = new SetupBillingModelReply(); - BeanUtils.copyProperties(message,setupBillingModelReply); - setupBillingModelReplyService.create(setupBillingModelReply); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/SynchronizeOfflineCardReplyMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/SynchronizeOfflineCardReplyMessageListener.java deleted file mode 100644 index 9693c43..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/SynchronizeOfflineCardReplyMessageListener.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.api.model.SynchronizeOfflineCardReply; -import com.ruoyi.integration.mongodb.service.SynchronizeOfflineCardReplyService; -import com.ruoyi.integration.rocket.model.SynchronizeOfflineCardReplyMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_synchronize_offline_card_reply", - topic = "charge_synchronize_offline_card_reply", - selectorExpression = "synchronize_offline_card_reply" -) -public class SynchronizeOfflineCardReplyMessageListener implements RocketMQListener<SynchronizeOfflineCardReplyMessage> { - - @Autowired - private SynchronizeOfflineCardReplyService synchronizeOfflineCardReplyService; - - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(SynchronizeOfflineCardReplyMessage message) { - log.info("卡数据同步应答-业务消息处理:{}",message); - // 持久化消息 - SynchronizeOfflineCardReply synchronizeOfflineCardReply = new SynchronizeOfflineCardReply(); - BeanUtils.copyProperties(message,synchronizeOfflineCardReply); - synchronizeOfflineCardReplyService.create(synchronizeOfflineCardReply); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/TimingSettingMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/TimingSettingMessageListener.java deleted file mode 100644 index fb5332e..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/TimingSettingMessageListener.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.TimingSetting; -import com.ruoyi.integration.api.model.TimingSettingReply; -import com.ruoyi.integration.iotda.enums.ServiceIdMenu; -import com.ruoyi.integration.iotda.utils.produce.IotMessageProduce; -import com.ruoyi.integration.iotda.utils.tools.CP56Time2aConverter; -import com.ruoyi.integration.iotda.utils.tools.MessageUtil; -import com.ruoyi.integration.mongodb.service.TimingSettingReplyService; -import com.ruoyi.integration.mongodb.service.TimingSettingService; -import com.ruoyi.integration.rocket.model.TimingSettingMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import java.util.Date; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_timing_setting", - topic = "charge_timing_setting", - selectorExpression = "timing_setting" -) -public class TimingSettingMessageListener implements RocketMQListener<TimingSettingMessage> { - - @Autowired - private TimingSettingService timingSettingService; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(TimingSettingMessage message) { - log.info("对时设置-业务消息处理:{}",message); - // 持久化消息 - TimingSetting timingSetting = new TimingSetting(); - BeanUtils.copyProperties(message,timingSetting); - timingSettingService.create(timingSetting); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/TransactionRecordMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/TransactionRecordMessageListener.java deleted file mode 100644 index 68e41f0..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/TransactionRecordMessageListener.java +++ /dev/null @@ -1,89 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.alibaba.fastjson.JSONObject; -import com.ruoyi.integration.api.model.ConfirmTransactionRecord; -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.api.model.TransactionRecord; -import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData; -import com.ruoyi.integration.iotda.constant.SendTagConstant; -import com.ruoyi.integration.iotda.enums.ServiceIdMenu; -import com.ruoyi.integration.iotda.utils.produce.IotMessageProduce; -import com.ruoyi.integration.iotda.utils.tools.MessageUtil; -import com.ruoyi.integration.mongodb.service.TransactionRecordService; -import com.ruoyi.integration.mongodb.service.UploadRealTimeMonitoringDataService; -import com.ruoyi.integration.rocket.model.TransactionRecordMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import com.ruoyi.order.api.feignClient.ChargingOrderClient; -import com.ruoyi.order.api.model.TChargingOrder; -import com.ruoyi.order.api.vo.TransactionRecordMessageVO; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.redis.core.RedisTemplate; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.util.Objects; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_transaction_record", - topic = "charge_transaction_record", - selectorExpression = "transaction_record" -) -public class TransactionRecordMessageListener implements RocketMQListener<TransactionRecordMessage> { - - @Autowired - private TransactionRecordService transactionRecordService; - @Autowired - private ChargingOrderClient chargingOrderClient; - @Autowired - private UploadRealTimeMonitoringDataService uploadRealTimeMonitoringDataService; - - @Resource - private RedisTemplate redisTemplate; - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(TransactionRecordMessage message) { - log.info("交易记录-业务消息处理:{}",message); - message.setResult(JSONObject.toJSONString(message)); - // 持久化消息 - TransactionRecord transactionRecord = new TransactionRecord(); - BeanUtils.copyProperties(message,transactionRecord); - transactionRecord.setResult(message.getResult()); - transactionRecordService.create(transactionRecord); - - // 业务处理 - TChargingOrder chargingOrderRecord = chargingOrderClient.getOrderByCode(message.getTransaction_serial_number()).getData(); - if(Objects.nonNull(chargingOrderRecord)){ - chargingOrderRecord.setTotalElectricity(message.getTotal_electricity()); - chargingOrderClient.updateChargingOrder(chargingOrderRecord); - } - //计算费用 - TransactionRecordMessageVO vo = new TransactionRecordMessageVO(); - BeanUtils.copyProperties(message,vo); - int code = chargingOrderClient.endChargeBillingCharge(vo).getCode(); - if(200 != code){ - //失败后添加到队列中继续处理数据 - redisTemplate.opsForSet().add(SendTagConstant.TRANSACTION_RECORD, message.getTransaction_serial_number()); - } - - // 添加实时上传记录结束记录 - // 查询mogondb上一条数据 - UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataService.getLastDataById(message.getTransaction_serial_number()); - if(Objects.nonNull(data) && data.getStatus() != 5){ - UploadRealTimeMonitoringData uploadRealTimeMonitoringData = new UploadRealTimeMonitoringData(); - BeanUtils.copyProperties(data,uploadRealTimeMonitoringData); - uploadRealTimeMonitoringData.setStatus(5); - uploadRealTimeMonitoringDataService.create(uploadRealTimeMonitoringData); - } - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/UpdateBalanceReplyMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/UpdateBalanceReplyMessageListener.java deleted file mode 100644 index eaab58b..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/UpdateBalanceReplyMessageListener.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.api.model.UpdateBalanceReply; -import com.ruoyi.integration.mongodb.service.UpdateBalanceReplyService; -import com.ruoyi.integration.rocket.model.UpdateBalanceReplyMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_update_balance_reply", - topic = "charge_update_balance_reply", - selectorExpression = "update_balance_reply" -) -public class UpdateBalanceReplyMessageListener implements RocketMQListener<UpdateBalanceReplyMessage> { - - @Autowired - private UpdateBalanceReplyService updateBalanceReplyService; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(UpdateBalanceReplyMessage message) { - log.info("余额更新应答-业务消息处理:{}",message); - // 持久化消息 - UpdateBalanceReply updateBalanceReply = new UpdateBalanceReply(); - BeanUtils.copyProperties(message,updateBalanceReply); - updateBalanceReplyService.create(updateBalanceReply); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/UploadRealTimeMonitoringDataMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/UploadRealTimeMonitoringDataMessageListener.java deleted file mode 100644 index 0cb4875..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/UploadRealTimeMonitoringDataMessageListener.java +++ /dev/null @@ -1,115 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.chargingPile.api.feignClient.AccountingStrategyDetailClient; -import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient; -import com.ruoyi.chargingPile.api.feignClient.FaultMessageClient; -import com.ruoyi.chargingPile.api.model.TAccountingStrategyDetail; -import com.ruoyi.chargingPile.api.model.TChargingGun; -import com.ruoyi.chargingPile.api.model.TFaultMessage; -import com.ruoyi.chargingPile.api.vo.GetChargingGunByCode; -import com.ruoyi.integration.api.feignClient.TCECClient; -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData; -import com.ruoyi.integration.iotda.constant.SendTagConstant; -import com.ruoyi.integration.mongodb.service.UploadRealTimeMonitoringDataService; -import com.ruoyi.integration.rocket.model.ChargingMessage; -import com.ruoyi.integration.rocket.model.ChargingOrderMessage; -import com.ruoyi.integration.rocket.model.UploadRealTimeMonitoringDataMessage; -import com.ruoyi.integration.rocket.produce.EnhanceProduce; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import com.ruoyi.order.api.feignClient.ChargingOrderClient; -import com.ruoyi.order.api.model.TChargingOrder; -import com.ruoyi.order.api.query.UploadRealTimeMonitoringDataQuery; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.math.BigDecimal; -import java.math.RoundingMode; -import java.time.LocalDateTime; -import java.util.Objects; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_upload_real_time_monitoring_data", - topic = "charge_upload_real_time_monitoring_data", - selectorExpression = "upload_real_time_monitoring_data" -) -public class UploadRealTimeMonitoringDataMessageListener implements RocketMQListener<UploadRealTimeMonitoringDataMessage> { - - @Autowired - private UploadRealTimeMonitoringDataService uploadRealTimeMonitoringDataService; - - @Resource - private ChargingOrderClient chargingOrderClient; - @Resource - private AccountingStrategyDetailClient accountingStrategyDetailClient; - @Autowired - private EnhanceProduce enhanceProduce; - - - - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(UploadRealTimeMonitoringDataMessage message) { - try { - log.info("上传实时监测数据-业务消息处理:{}",message); - // 持久化消息 - UploadRealTimeMonitoringData uploadRealTimeMonitoringData = new UploadRealTimeMonitoringData(); - BeanUtils.copyProperties(message,uploadRealTimeMonitoringData); - // 查询mogondb上一条数据 - UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataService.getLastDataById(message.getTransaction_serial_number()); - // 查询订单 - TChargingOrder chargingOrder = chargingOrderClient.getOrderByCode(message.getTransaction_serial_number()).getData(); - // 查询当前时间段的计费策略 - TAccountingStrategyDetail accountingStrategyDetail = accountingStrategyDetailClient.getDetailBySiteId(chargingOrder.getSiteId()).getData(); - uploadRealTimeMonitoringData.setElectrovalence_all(accountingStrategyDetail.getElectrovalence()); - uploadRealTimeMonitoringData.setService_charge(accountingStrategyDetail.getServiceCharge()); - if (Objects.nonNull(data)) { - uploadRealTimeMonitoringDataService.updateById(data.getId()); - uploadRealTimeMonitoringData.setPeriod_electric_price(message.getPaid_amount().subtract(data.getPaid_amount())); - uploadRealTimeMonitoringData.setPeriod_charging_degree(message.getCharging_degree().subtract(data.getCharging_degree())); - uploadRealTimeMonitoringData.setPeriod_service_price(message.getCharging_degree().multiply(accountingStrategyDetail.getServiceCharge()).setScale(4, RoundingMode.HALF_UP)); - }else { - log.info("首次上传实时监测数据"); - uploadRealTimeMonitoringData.setPeriod_electric_price(message.getPaid_amount()); - uploadRealTimeMonitoringData.setPeriod_charging_degree(message.getCharging_degree()); - uploadRealTimeMonitoringData.setPeriod_service_price(message.getCharging_degree().multiply(accountingStrategyDetail.getServiceCharge()).setScale(4, RoundingMode.HALF_UP)); - } - uploadRealTimeMonitoringData.setOrderType(chargingOrder.getOrderType()); - uploadRealTimeMonitoringData.setSiteId(chargingOrder.getSiteId()); - uploadRealTimeMonitoringData.setStatus(chargingOrder.getStatus()); - int i = uploadRealTimeMonitoringDataService.create(uploadRealTimeMonitoringData); - if(i == 0){ - log.error("数据存储mongo失败"); - } - - // 业务处理 - UploadRealTimeMonitoringDataQuery query = new UploadRealTimeMonitoringDataQuery(); - BeanUtils.copyProperties(uploadRealTimeMonitoringData, query); - chargingOrderClient.chargeMonitoring(query); - // 订单id - ChargingOrderMessage chargingOrderMessage3 = new ChargingOrderMessage(); - chargingOrderMessage3.setOrderNumber(chargingOrder.getCode()); - // 推送充电订单信息 - ChargingMessage chargingMessage4 = new ChargingMessage(); - chargingMessage4.setServiceId(SendTagConstant.ORDER_STATUS); - chargingMessage4.setOrderMessage(chargingOrderMessage3); - enhanceProduce.orderInfoMessage(chargingMessage4); - } catch (Exception e) { - e.printStackTrace(); - } - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/WorkingParameterSettingReplyMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/WorkingParameterSettingReplyMessageListener.java deleted file mode 100644 index b8a5ace..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/listener/WorkingParameterSettingReplyMessageListener.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.ruoyi.integration.rocket.listener; - -import com.ruoyi.integration.api.model.Online; -import com.ruoyi.integration.api.model.WorkingParameterSettingReply; -import com.ruoyi.integration.mongodb.service.WorkingParameterSettingReplyService; -import com.ruoyi.integration.rocket.model.WorkingParameterSettingReplyMessage; -import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "charge_working_parameter_setting_reply", - topic = "charge_working_parameter_setting_reply", - selectorExpression = "working_parameter_setting_reply" -) -public class WorkingParameterSettingReplyMessageListener implements RocketMQListener<WorkingParameterSettingReplyMessage> { - - @Autowired - private WorkingParameterSettingReplyService workingParameterSettingReplyService; - - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(WorkingParameterSettingReplyMessage message) { - log.info("充电桩工作参数设置应答-业务消息处理:{}",message); - // 持久化消息 - WorkingParameterSettingReply workingParameterSettingReply = new WorkingParameterSettingReply(); - BeanUtils.copyProperties(message,workingParameterSettingReply); - workingParameterSettingReplyService.create(workingParameterSettingReply); - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/AcquisitionBillingModeMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/AcquisitionBillingModeMessage.java deleted file mode 100644 index f83dd5e..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/AcquisitionBillingModeMessage.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 充电桩计费模型请求 - **/ - -@Data -public class AcquisitionBillingModeMessage extends BaseMessage { - - private String charging_pile_code;// 桩编码 - -} - - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/BillingModeVerifyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/BillingModeVerifyMessage.java deleted file mode 100644 index 3122ec1..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/BillingModeVerifyMessage.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 计费模型验证请求 - **/ - -@Data -public class BillingModeVerifyMessage extends BaseMessage { - - private String charging_pile_code;// 桩编码 - private String billing_model_code;// "计费模型编号,首次连接到平台时置零 - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/BmsDemandAndChargerExportationMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/BmsDemandAndChargerExportationMessage.java deleted file mode 100644 index 5665883..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/BmsDemandAndChargerExportationMessage.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -import java.math.BigDecimal; - -/** - * 充电过程BMS需求、充电机输出 - **/ - -@Data -public class BmsDemandAndChargerExportationMessage extends BaseMessage { - - private String transaction_serial_number; // 交易流水号 - private String charging_pile_code; // 桩编码 - private String charging_gun_code; // 抢号 - private BigDecimal bms_voltage_requirements; // BMS 电压需求 - private BigDecimal bms_current_requirements; // BMS 电流需求 - private Integer bms_charging_mode; // BMS 充电模式(1:恒压充电;2:恒流充电) - private BigDecimal bms_voltage_measurement_value; // BMS 充电电压测量值 - private BigDecimal bms_current_measurement_value; // BMS 充电电流测量值 - private BigDecimal bms_battery_voltage; // 最高电压 BMS 最高单体动力蓄电池电压及组号(1-12 位:最高单体动力蓄电池电压,数据分辨率:0.01 V/位,0 V 偏移量;数据范围:0~24 V;13-16 位:最高单体动力蓄电池电压所在组号,数据分辨率:1/位,0 偏移量;数据范围:0~15) - private Integer bms_group_number; // 所在组号 BMS 最高单体动力蓄电池电压及组号(1-12 位:最高单体动力蓄电池电压,数据分辨率:0.01 V/位,0 V 偏移量;数据范围:0~24 V;13-16 位:最高单体动力蓄电池电压所在组号,数据分辨率:1/位,0 偏移量;数据范围:0~15) - private BigDecimal bms_charged_status; // BMS 当前荷电状态 SOC( %) - private BigDecimal bms_remaining_charging_time; // BMS 估算剩余充电时间 - private BigDecimal voltage_output_value; // 电桩电压输出值 - private BigDecimal current_output_value; // 电桩电流输出值 - private BigDecimal cumulative_charging_time; // 累计充电时间 - - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/BmsInformationMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/BmsInformationMessage.java deleted file mode 100644 index 28c31ba..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/BmsInformationMessage.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 充电过程BMS信息 - **/ - -@Data -public class BmsInformationMessage extends BaseMessage { - - private String transaction_serial_number; // 交易流水号 - private String charging_pile_code; // 桩编码 - private String charging_gun_code; // 抢号 - private Integer bms_highest_voltage_number; // BMS 最高单体动力蓄电池电压所在编号 - private String bms_maximum_battery_temperature; // BMS 最高动力蓄电池温度 - private String maximum_temperature_detection_point_number; // 最高温度检测点编号 - private String minimum_cell_temperature; // 最低动力蓄电池温度 - private String lowest_temperature_detection_pointt_number; // 最低动力蓄电池温度检测点编号 - private Integer bms_battery_voltage; // BMS 单体动力蓄电池电压过高 /过低(0:正常,1:过高,10:过低) - private Integer bms_battery_charging_status; // BMS 整车动力蓄电池荷电状态SOC 过高/过低(0:正常,1:过高,10:过低) - private Integer bms_charging_overcurrent; // BMS 动力蓄电池充电过电流(0:正常,1:过流,10:不可信状态) - private Integer bms_high_battery_temperature; // BMS 动力蓄电池温度过高(0:正常,1:过流,10:不可信状态) - private Integer bms_battery_insulation_status; // BMS 动力蓄电池绝缘状态(0:正常,1:过流,10:不可信状态) - private Integer bms_output_connector_connection_status; // BMS 动力蓄电池组输出连接器连接状态(0:正常,1:过流,10:不可信状态) - private Integer charge_prohibition; // 充电禁止(0:禁止,1:允许) - private Integer reserve; // 预留位 -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingHandshakeMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingHandshakeMessage.java deleted file mode 100644 index 13ffa28..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingHandshakeMessage.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -import java.math.BigDecimal; - -/** - * 充电握手 - **/ - -@Data -public class ChargingHandshakeMessage extends BaseMessage { - - private String transaction_serial_number;// 交易流水号 - private String charging_pile_code;// 桩编码 - private String charging_gun_code;// 抢号 - private String bms_protocol_version;// BMS 通信协议版本号 - private Integer bms_battery_type;// BMS 电池类型(1:铅酸电池;2:氢:电池;3:磷酸铁锂电池;4:锰酸锂电池;5:钴酸锂电池;6:三元材料电池;7:聚合物锂离子电池;8:钛酸锂电池;FFH:其他) - private BigDecimal bms_battery_capacity;// BMS 整车动力蓄电池系统额定容量 - private BigDecimal bms_total_battery_voltage;// BMS 整车动力蓄电池系统额定总电压 - private String bms_battery_manufacturer;// BMS 电池生产厂商名称 - private String bms_battery_serial_number;// BMS 电池组序号 - private Integer bms_battery_production_year;// BMS 电池组生产日期年 - private Integer bms_battery_production_month;// BMS 电池组生产日期月 - private Integer bms_battery_production_day;// BMS 电池组生产日期日 - private Integer bms_battery_charging_times;// BMS 电池组充电次数 - private Integer bms_battery_property_rights;// BMS 电池组产权标识 - private Integer reserved;// 预留位 - private String vim;// BMS 车辆识别码 - private Integer bms_software_version;// BMS 软件版本号 - - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingMessage.java deleted file mode 100644 index d19924e..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingMessage.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.drainage.model.ConnectorStatusInfo; -import com.ruoyi.integration.drainage.model.SupChargeOrderInfo; -import com.ruoyi.integration.drainage.model.SupEquipChargeStatus; -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import org.apache.poi.ss.formula.functions.T; - -@Data -public class ChargingMessage extends BaseMessage { - // 充电设备状态message - private GunStatusMessage gunStatusMessage; - // 推送充电订单状态/充电订单信息message - private ChargingOrderMessage orderMessage; - private AcquisitionBillingModeMessage acquisitionBillingModeMessage; - private BillingModeVerifyMessage billingModeVerifyMessage; - private BmsAbortMessage bmsAbortMessage; - private BmsDemandAndChargerExportationMessage bmsDemandAndChargerExportationMessage; - private BmsInformationMessage bmsInformationMessage; - private ChargingHandshakeMessage chargingHandshakeMessage; - private ChargingMessage chargingMessage; - private ChargingPileReturnsGroundLockDataMessage chargingPileReturnsGroundLockDataMessage; - private ChargingPileStartsChargingMessage chargingPileStartsChargingMessage; - private ClearOfflineCardReplyMessage clearOfflineCardReplyMessage; - private EndChargeMessage endChargeMessage; - private ErrorMessageMessage errorMessageMessage; - private GroundLockRealTimeDataMessage groundLockRealTimeDataMessage; - private MotorAbortMessage motorAbortMessage; - private OnlineMessage onlineMessage; - private ParameterSettingMessage parameterSettingMessage; - private PingMessage pingMessage; - private PlatformRemoteUpdateReplyMessage platformRemoteUpdateReplyMessage; - private PlatformRestartReplyMessage platformRestartReplyMessage; - private PlatformStartChargingReplyMessage platformStartChargingReplyMessage; - private PlatformStopChargingReplyMessage platformStopChargingReplyMessage; - private QrCodeDeliveryMessage qrCodeDeliveryMessage; - private QrCodeDeliveryReplyMessage qrCodeDeliveryReplyMessage; - private QueryOfflineCardReplyMessage queryOfflineCardReplyMessage; - private SecurityDetectionMessage securityDetectionMessage; - private SetupBillingModelReplyMessage setupBillingModelReplyMessage; - private SynchronizeOfflineCardReplyMessage synchronizeOfflineCardReplyMessage; - private TimingSettingMessage timingSettingMessage; - private TimingSettingReplyMessage timingSettingReplyMessage; - private TransactionRecordMessage transactionRecordMessage; - private UpdateBalanceReplyMessage updateBalanceReplyMessage; - private UploadRealTimeMonitoringDataMessage uploadRealTimeMonitoringDataMessage; - private WorkingParameterSettingReplyMessage workingParameterSettingReplyMessage; - -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingOrderMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingOrderMessage.java deleted file mode 100644 index 6e60daf..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingOrderMessage.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; - -/** - * 充电桩计费模型请求 - **/ - -@Data -public class ChargingOrderMessage extends BaseMessage { - - private String orderNumber;// 订单编号 - private String soc;// soc - -} - - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingPileReturnsGroundLockDataMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingPileReturnsGroundLockDataMessage.java deleted file mode 100644 index c6390d2..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingPileReturnsGroundLockDataMessage.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 充电桩返回数据(上行) - **/ - -@Data -public class ChargingPileReturnsGroundLockDataMessage extends BaseMessage { - - private String charging_pile_code; //桩编码 - private String charging_gun_code; // 抢号 - private Integer control_state; // 地锁控制返回标志(1:鉴权成功,0:鉴权失败) - private String reserve; // 预留位 - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingPileStartsChargingMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingPileStartsChargingMessage.java deleted file mode 100644 index c738443..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ChargingPileStartsChargingMessage.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 充电桩主动申请启动充电 - **/ - -@Data -public class ChargingPileStartsChargingMessage extends BaseMessage { - - private String charging_pile_code; // 桩编码 - private String charging_gun_code; // 抢号 - private Integer start_method; // 启动方式(1:表示通过刷卡启动充电,2:表示通过帐号启动充电(暂不支持),3:表示vin码启动充电) - private Integer need_password; // 是否需要密码(0:不需要,1:需要) - private String account; // 账号或者物理卡号 - private String password; // 输入密码 - private String vin; // "VIN 码,启动方式为vin码启动充电时上送,其他方式置零( ASCII码),VIN码需要反序上送 - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ClearOfflineCardReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ClearOfflineCardReplyMessage.java deleted file mode 100644 index aec77a8..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ClearOfflineCardReplyMessage.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 离线卡数据清除应答 - **/ - -@Data -public class ClearOfflineCardReplyMessage extends BaseMessage { - - private String charging_pile_code; //桩编码 - private String physical_card1; // 第 1 个卡物理卡号,离线卡物理卡号 - private String physical_card2; - private String physical_card3; - private String physical_card4; - private String physical_card5; - private String physical_card6; - private String physical_card7; - private String physical_card8; - private String physical_card9; - private String physical_card10; - private String physical_card11; - private String physical_card12; - private String physical_card13; - private String physical_card14; - private String physical_card15; - private String physical_card16; - private String physical_card17; - private String physical_card18; - private String physical_card19; - private String physical_card20; - private String physical_card21; - private String physical_card22; - private String physical_card23; - private String physical_card24; - private Integer clear_result1; // 清除标记(0:清除失败,1:清除成功) - private Integer clear_result2; - private Integer clear_result3; - private Integer clear_result4; - private Integer clear_result5; - private Integer clear_result6; - private Integer clear_result7; - private Integer clear_result8; - private Integer clear_result9; - private Integer clear_result10; - private Integer clear_result11; - private Integer clear_result12; - private Integer clear_result13; - private Integer clear_result14; - private Integer clear_result15; - private Integer clear_result16; - private Integer clear_result17; - private Integer clear_result18; - private Integer clear_result19; - private Integer clear_result20; - private Integer clear_result21; - private Integer clear_result22; - private Integer clear_result23; - private Integer clear_result24; - private Integer failure_cause1; // 失败原因(1:卡号格式错误,2:清除成功) - private Integer failure_cause2; - private Integer failure_cause3; - private Integer failure_cause4; - private Integer failure_cause5; - private Integer failure_cause6; - private Integer failure_cause7; - private Integer failure_cause8; - private Integer failure_cause9; - private Integer failure_cause10; - private Integer failure_cause11; - private Integer failure_cause12; - private Integer failure_cause13; - private Integer failure_cause14; - private Integer failure_cause15; - private Integer failure_cause16; - private Integer failure_cause17; - private Integer failure_cause18; - private Integer failure_cause19; - private Integer failure_cause20; - private Integer failure_cause21; - private Integer failure_cause22; - private Integer failure_cause23; - private Integer failure_cause24; -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/GroundLockRealTimeDataMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/GroundLockRealTimeDataMessage.java deleted file mode 100644 index 9f7481b..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/GroundLockRealTimeDataMessage.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 地锁数据上送(充电桩上送) - **/ - -@Data -public class GroundLockRealTimeDataMessage extends BaseMessage { - - private String charging_pile_code; //桩编码 - private String charging_gun_code; // 抢号 - private Integer parking_lock_status; // 车位锁状态(0:未到位状态,1:升锁到位状态,2:降锁到位状态) - private Integer parking_status; // 车位状态(0:无车辆,1:停放车辆) - private Integer ground_locking_capacity; // 地锁电量状态 - private Integer alarm_status; // 报警状态(0:正常无报警,1:待机状态摇臂破坏,2:摇臂升降异常(未到位)) - private String reserve; // 预留位 - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/GunStatusMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/GunStatusMessage.java deleted file mode 100644 index 78e43ad..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/GunStatusMessage.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; - -/** - * 充电桩计费模型请求 - **/ - -@Data -public class GunStatusMessage extends BaseMessage { - - private String fullNumber;// 枪完整编码 - -} - - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/OnlineMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/OnlineMessage.java deleted file mode 100644 index 4b8c130..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/OnlineMessage.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 充电桩登录认证 - **/ - -@Data -public class OnlineMessage extends BaseMessage { - private String charging_pile_code;// 充电桩编号 - private Integer charging_pile_type;// 充电桩类型(0 表示直流桩,1 表示交流桩) - private Integer charging_gun_number;// 充电枪数量 - private String protocol_version;// 通信协议版本 - private String program_version;// 程序版本 - private Integer network_link_type;// 网络链接类型(0:SIM 卡,1:LAN,2:WAN,3:其他) - private String sim;// Sim 卡 - private Integer operator;// 运营商(0: 移动,2:电信,3:联通,4:其他) -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ParameterSettingMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ParameterSettingMessage.java deleted file mode 100644 index 6efffe2..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/ParameterSettingMessage.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -import java.math.BigDecimal; - -/** - * 参数配置 - **/ - -@Data -public class ParameterSettingMessage extends BaseMessage { - - private String transaction_serial_number; // 交易流水号 - private String charging_pile_code; // 桩编码 - private String charging_gun_code; // 抢号 - private BigDecimal bms_maximum_charging_voltage; // BMS 单体动力蓄电池最高允许充电电压 - private BigDecimal bms_maximum_charging_current; // BMS 最高允许充电电流 - private BigDecimal bms_battery_total_energy; // BMS 动力蓄电池标称总能量 - private BigDecimal bms_total_charging_voltage; // BMS 最高允许充电总电压 - private BigDecimal bms_maximum_temperature; // BMS 最高允许温度 - private BigDecimal bms_battery_charging_status; // BMS 整车动力蓄电池荷电状态 (soc) - private BigDecimal bms_battery_voltage; // BMS 整车动力蓄电池当前电池 电压 - private BigDecimal maximum_output_voltage; // 电桩最高输出电压 - private BigDecimal minimum_output_voltage; // 电桩最低输出电压 - private BigDecimal maximum_output_current; // 电桩最大输出电流 - private BigDecimal minimum_output_current; // 电桩最小输出电流 - - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PingMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PingMessage.java deleted file mode 100644 index 67517f3..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PingMessage.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 充电桩心跳包 - **/ - -@Data -public class PingMessage extends BaseMessage { - - private String charging_pile_code;// 桩编码 - private String charging_gun_code;// 抢号 - private Integer charging_gun_status;// 抢状态(0:正常,1:故障) - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PlatformRemoteUpdateReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PlatformRemoteUpdateReplyMessage.java deleted file mode 100644 index f4498af..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PlatformRemoteUpdateReplyMessage.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 远程更新应答 - **/ - -@Data -public class PlatformRemoteUpdateReplyMessage extends BaseMessage { - - private String charging_pile_code; //桩编码 - private Integer escalation_state; // 升级状态(0:成功,1:编码错误,2:程序与桩型号不符,3:下载更新文件超时) - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PlatformRestartReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PlatformRestartReplyMessage.java deleted file mode 100644 index 42f7b25..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PlatformRestartReplyMessage.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 远程重启应答 - **/ - -@Data -public class PlatformRestartReplyMessage extends BaseMessage { - - private String charging_pile_code; //桩编码 - private Integer set_result; // 设置结果(0:失败,1:成功) - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PlatformStartChargingReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PlatformStartChargingReplyMessage.java deleted file mode 100644 index 525555b..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PlatformStartChargingReplyMessage.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 远程启机命令回复 - **/ - -@Data -public class PlatformStartChargingReplyMessage extends BaseMessage { - - private String transaction_serial_number; // 交易流水号 - private String charging_pile_code; // 桩编码 - private String charging_gun_code; // 抢号 - private Integer startup_result; // 启动结果(0:失败,1:成功) - private Integer failure_cause; // "失败原因(0:无,1:设备编号不匹配,2:枪已在充电,3:设备故障,4:设备离线,5:未插枪桩在收到启充命令后,检测到未插枪则发送 0x33 报文回复充电失败。若在 60 秒(以收到 0x34 时间开始计算)内检测到枪重新连接,则补送 0x33 成功报文;超时或者离线等其他异常,桩不启充、不补发 0x33 报文)" - - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PlatformStopChargingReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PlatformStopChargingReplyMessage.java deleted file mode 100644 index 8ff99f8..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/PlatformStopChargingReplyMessage.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 远程停机命令回复 - **/ - -@Data -public class PlatformStopChargingReplyMessage extends BaseMessage { - - private String charging_pile_code; // 桩编码 - private String charging_gun_code; // 抢号 - private Integer stop_result; // 停止结果(0:失败,1:成功) - private Integer failure_cause; // 失败原因(0:无,1:设备编号不匹配,2:枪未处于充电状态,3:其他) - - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QrCodeDeliveryReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QrCodeDeliveryReplyMessage.java deleted file mode 100644 index 7dfb1b1..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QrCodeDeliveryReplyMessage.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; - -/** - * - **/ - -@Data -public class QrCodeDeliveryReplyMessage extends BaseMessage { - - private String charging_pile_code; // 桩编码 - private Integer delivery_result; // 设置结果(0:成功,1:失败) - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QueryOfflineCardReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QueryOfflineCardReplyMessage.java deleted file mode 100644 index b1cf3d0..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QueryOfflineCardReplyMessage.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 离线卡数据查询应答 - **/ - -@Data -public class QueryOfflineCardReplyMessage extends BaseMessage { - - private String charging_pile_code; //桩编码 - private String physical_card1; // 第 1 个卡物理卡号,离线卡物理卡号 - private String physical_card2; - private String physical_card3; - private String physical_card4; - private String physical_card5; - private String physical_card6; - private String physical_card7; - private String physical_card8; - private String physical_card9; - private String physical_card10; - private String physical_card11; - private String physical_card12; - private String physical_card13; - private String physical_card14; - private String physical_card15; - private String physical_card16; - private String physical_card17; - private String physical_card18; - private String physical_card19; - private String physical_card20; - private String physical_card21; - private String physical_card22; - private String physical_card23; - private String physical_card24; - private Integer query_result1; // 查询结果(0:不存在,1:存在) - private Integer query_result2; - private Integer query_result3; - private Integer query_result4; - private Integer query_result5; - private Integer query_result6; - private Integer query_result7; - private Integer query_result8; - private Integer query_result9; - private Integer query_result10; - private Integer query_result11; - private Integer query_result12; - private Integer query_result13; - private Integer query_result14; - private Integer query_result15; - private Integer query_result16; - private Integer query_result17; - private Integer query_result18; - private Integer query_result19; - private Integer query_result20; - private Integer query_result21; - private Integer query_result22; - private Integer query_result23; - private Integer query_result24; -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/SecurityDetectionMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/SecurityDetectionMessage.java deleted file mode 100644 index c7c0f12..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/SecurityDetectionMessage.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; - -/** - * - **/ - -@Data -public class SecurityDetectionMessage extends BaseMessage { - - private String charging_pile_code; // 桩编码 - private String charging_gun_code; // 抢号 - private Integer secure_connection; // 车枪连接(0=未连接,1=连接) - private Integer nsulation_detection; // 绝缘检测(0=安全,1=不安全) - private Integer electronic_lock_lock; // 电磁锁状态(0=未锁,1=已锁) - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/SetupBillingModelReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/SetupBillingModelReplyMessage.java deleted file mode 100644 index b97bbff..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/SetupBillingModelReplyMessage.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 计费模型应答 - **/ - -@Data -public class SetupBillingModelReplyMessage extends BaseMessage { - - private String charging_pile_code; //桩编码 - private String set_result; //设置结果(0:失败,1:成功) - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/SynchronizeOfflineCardReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/SynchronizeOfflineCardReplyMessage.java deleted file mode 100644 index adeb907..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/SynchronizeOfflineCardReplyMessage.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 卡数据同步应答 - **/ - -@Data -public class SynchronizeOfflineCardReplyMessage extends BaseMessage { - - private String charging_pile_code; //桩编码 - private Integer save_result; // 保存结果(0:失败,1:成功) - private Integer failure_cause; // 失败原因(1:卡号格式错误,2:储存空间不足) - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/TimingSettingMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/TimingSettingMessage.java deleted file mode 100644 index 6b7186c..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/TimingSettingMessage.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; - -/** - * 对时设置 - **/ - -@Data -public class TimingSettingMessage extends BaseMessage { - - private String charging_pile_code; //桩编码 - private String current_time; //当前时间 -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/TimingSettingReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/TimingSettingReplyMessage.java deleted file mode 100644 index d848235..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/TimingSettingReplyMessage.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 对时设置应答 - **/ - -@Data -public class TimingSettingReplyMessage extends BaseMessage { - - private String charging_pile_code; //桩编码 - private String current_time; //当前时间 -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/TransactionRecordMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/TransactionRecordMessage.java deleted file mode 100644 index 32197f5..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/TransactionRecordMessage.java +++ /dev/null @@ -1,189 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -import java.math.BigDecimal; - -/** - * 交易记录 - **/ - -@Data -public class TransactionRecordMessage extends BaseMessage { - - private String transaction_serial_number;// 交易流水号 - private String charging_pile_code;// 桩编码 - private String charging_gun_code;// 抢号 - private String start_time;// 开始时间 - private String end_time;// 结束时间 - private BigDecimal total_electricity;// 总电量 - private BigDecimal loss_total_electricity;// 计损总电量 - private BigDecimal payment_amount;// 消费金额 - private Integer method;// 交易标识(1:app 启动,2:卡启动,4:离线卡启动,5: vin 码启动充电) - private String trade_date;// 交易日期、时间 - private Integer stop_reason;// 停止原因 - private String physical_card_number;// 物理卡号 - private String billing_model_code1;// 计费模型编号 - private BigDecimal spike_charge1;// 尖电量 - private BigDecimal loss_spike_charge1;// 计损尖电量 - private BigDecimal spike_amount1;// 尖金额 - private BigDecimal flat_charge1;// 平电量 - private BigDecimal loss_flat_charge1;// 计损平电量 - private BigDecimal flat_amount1;// 平金额 - private BigDecimal peak_charge1;// 峰电量 - private BigDecimal loss_peak_charge1;// 计损峰电量 - private BigDecimal peak_amount1;// 峰金额 - private BigDecimal valley_charge1;// 谷电量 - private BigDecimal loss_valley_charge1;// 计损谷电量 - private BigDecimal valley_amount1;// 谷金额 - private String billing_model_code2;// 计费模型编号 - private BigDecimal spike_charge2;// 尖电量 - private BigDecimal loss_spike_charge2;// 计损尖电量 - private BigDecimal spike_amount2;// 尖金额 - private BigDecimal flat_charge2;// 平电量 - private BigDecimal loss_flat_charge2;// 计损平电量 - private BigDecimal flat_amount2;// 平金额 - private BigDecimal peak_charge2;// 峰电量 - private BigDecimal loss_peak_charge2;// 计损峰电量 - private BigDecimal peak_amount2;// 峰金额 - private BigDecimal valley_charge2;// 谷电量 - private BigDecimal loss_valley_charge2;// 计损谷电量 - private BigDecimal valley_amount2;// 谷金额 - private String billing_model_code3;// 计费模型编号 - private BigDecimal spike_charge3;// 尖电量 - private BigDecimal loss_spike_charge3;// 计损尖电量 - private BigDecimal spike_amount3;// 尖金额 - private BigDecimal flat_charge3;// 平电量 - private BigDecimal loss_flat_charge3;// 计损平电量 - private BigDecimal flat_amount3;// 平金额 - private BigDecimal peak_charge3;// 峰电量 - private BigDecimal loss_peak_charge3;// 计损峰电量 - private BigDecimal peak_amount3;// 峰金额 - private BigDecimal valley_charge3;// 谷电量 - private BigDecimal loss_valley_charge3;// 计损谷电量 - private BigDecimal valley_amount3;// 谷金额 - private String billing_model_code4;// 计费模型编号 - private BigDecimal spike_charge4;// 尖电量 - private BigDecimal loss_spike_charge4;// 计损尖电量 - private BigDecimal spike_amount4;// 尖金额 - private BigDecimal flat_charge4;// 平电量 - private BigDecimal loss_flat_charge4;// 计损平电量 - private BigDecimal flat_amount4;// 平金额 - private BigDecimal peak_charge4;// 峰电量 - private BigDecimal loss_peak_charge4;// 计损峰电量 - private BigDecimal peak_amount4;// 峰金额 - private BigDecimal valley_charge4;// 谷电量 - private BigDecimal loss_valley_charge4;// 计损谷电量 - private BigDecimal valley_amount4;// 谷金额 - private String billing_model_code5;// 计费模型编号 - private BigDecimal spike_charge5;// 尖电量 - private BigDecimal loss_spike_charge5;// 计损尖电量 - private BigDecimal spike_amount5;// 尖金额 - private BigDecimal flat_charge5;// 平电量 - private BigDecimal loss_flat_charge5;// 计损平电量 - private BigDecimal flat_amount5;// 平金额 - private BigDecimal peak_charge5;// 峰电量 - private BigDecimal loss_peak_charge5;// 计损峰电量 - private BigDecimal peak_amount5;// 峰金额 - private BigDecimal valley_charge5;// 谷电量 - private BigDecimal loss_valley_charge5;// 计损谷电量 - private BigDecimal valley_amount5;// 谷金额 - private String billing_model_code6;// 计费模型编号 - private BigDecimal spike_charge6;// 尖电量 - private BigDecimal loss_spike_charge6;// 计损尖电量 - private BigDecimal spike_amount6;// 尖金额 - private BigDecimal flat_charge6;// 平电量 - private BigDecimal loss_flat_charge6;// 计损平电量 - private BigDecimal flat_amount6;// 平金额 - private BigDecimal peak_charge6;// 峰电量 - private BigDecimal loss_peak_charge6;// 计损峰电量 - private BigDecimal peak_amount6;// 峰金额 - private BigDecimal valley_charge6;// 谷电量 - private BigDecimal loss_valley_charge6;// 计损谷电量 - private BigDecimal valley_amount6;// 谷金额 - private String billing_model_code7;// 计费模型编号 - private BigDecimal spike_charge7;// 尖电量 - private BigDecimal loss_spike_charge7;// 计损尖电量 - private BigDecimal spike_amount7;// 尖金额 - private BigDecimal flat_charge7;// 平电量 - private BigDecimal loss_flat_charge7;// 计损平电量 - private BigDecimal flat_amount7;// 平金额 - private BigDecimal peak_charge7;// 峰电量 - private BigDecimal loss_peak_charge7;// 计损峰电量 - private BigDecimal peak_amount7;// 峰金额 - private BigDecimal valley_charge7;// 谷电量 - private BigDecimal loss_valley_charge7;// 计损谷电量 - private BigDecimal valley_amount7;// 谷金额 - private String billing_model_code8;// 计费模型编号 - private BigDecimal spike_charge8;// 尖电量 - private BigDecimal loss_spike_charge8;// 计损尖电量 - private BigDecimal spike_amount8;// 尖金额 - private BigDecimal flat_charge8;// 平电量 - private BigDecimal loss_flat_charge8;// 计损平电量 - private BigDecimal flat_amount8;// 平金额 - private BigDecimal peak_charge8;// 峰电量 - private BigDecimal loss_peak_charge8;// 计损峰电量 - private BigDecimal peak_amount8;// 峰金额 - private BigDecimal valley_charge8;// 谷电量 - private BigDecimal loss_valley_charge8;// 计损谷电量 - private BigDecimal valley_amount8;// 谷金额 - private String billing_model_code9;// 计费模型编号 - private BigDecimal spike_charge9;// 尖电量 - private BigDecimal loss_spike_charge9;// 计损尖电量 - private BigDecimal spike_amount9;// 尖金额 - private BigDecimal flat_charge9;// 平电量 - private BigDecimal loss_flat_charge9;// 计损平电量 - private BigDecimal flat_amount9;// 平金额 - private BigDecimal peak_charge9;// 峰电量 - private BigDecimal loss_peak_charge9;// 计损峰电量 - private BigDecimal peak_amount9;// 峰金额 - private BigDecimal valley_charge9;// 谷电量 - private BigDecimal loss_valley_charge9;// 计损谷电量 - private BigDecimal valley_amount9;// 谷金额 - private String billing_model_code10;// 计费模型编号 - private BigDecimal spike_charge10;// 尖电量 - private BigDecimal loss_spike_charge10;// 计损尖电量 - private BigDecimal spike_amount10;// 尖金额 - private BigDecimal flat_charge10;// 平电量 - private BigDecimal loss_flat_charge10;// 计损平电量 - private BigDecimal flat_amount10;// 平金额 - private BigDecimal peak_charge10;// 峰电量 - private BigDecimal loss_peak_charge10;// 计损峰电量 - private BigDecimal peak_amount10;// 峰金额 - private BigDecimal valley_charge10;// 谷电量 - private BigDecimal loss_valley_charge10;// 计损谷电量 - private BigDecimal valley_amount10;// 谷金额 - private String billing_model_code11;// 计费模型编号 - private BigDecimal spike_charge11;// 尖电量 - private BigDecimal loss_spike_charge11;// 计损尖电量 - private BigDecimal spike_amount11;// 尖金额 - private BigDecimal flat_charge11;// 平电量 - private BigDecimal loss_flat_charge11;// 计损平电量 - private BigDecimal flat_amount11;// 平金额 - private BigDecimal peak_charge11;// 峰电量 - private BigDecimal loss_peak_charge11;// 计损峰电量 - private BigDecimal peak_amount11;// 峰金额 - private BigDecimal valley_charge11;// 谷电量 - private BigDecimal loss_valley_charge11;// 计损谷电量 - private BigDecimal valley_amount11;// 谷金额 - private String billing_model_code12;// 计费模型编号 - private BigDecimal spike_charge12;// 尖电量 - private BigDecimal loss_spike_charge12;// 计损尖电量 - private BigDecimal spike_amount12;// 尖金额 - private BigDecimal flat_charge12;// 平电量 - private BigDecimal loss_flat_charge12;// 计损平电量 - private BigDecimal flat_amount12;// 平金额 - private BigDecimal peak_charge12;// 峰电量 - private BigDecimal loss_peak_charge12;// 计损峰电量 - private BigDecimal peak_amount12;// 峰金额 - private BigDecimal valley_charge12;// 谷电量 - private BigDecimal loss_valley_charge12;// 计损谷电量 - private BigDecimal valley_amount12;// 谷金额 - private String result;//原始字符串 - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/UpdateBalanceReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/UpdateBalanceReplyMessage.java deleted file mode 100644 index faefd6a..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/UpdateBalanceReplyMessage.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -import java.math.BigDecimal; - -/** - * 余额更新应答 - **/ - -@Data -public class UpdateBalanceReplyMessage extends BaseMessage { - - private String charging_pile_code; //桩编码 - private String physical_card_number; //物理卡号 - private BigDecimal account_balance; //修改结果(:0:修改成功,1:设备编号错误,2:卡号错误) - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/UploadRealTimeMonitoringDataMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/UploadRealTimeMonitoringDataMessage.java deleted file mode 100644 index dd1c034..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/UploadRealTimeMonitoringDataMessage.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -import java.math.BigDecimal; - -/** - * 上传实时监测数据 - **/ - -@Data -public class UploadRealTimeMonitoringDataMessage extends BaseMessage { - - private String transaction_serial_number; // 交易流水号 - private String charging_pile_code; // 桩编码 - private String charging_gun_code; // 抢号 - private Integer charging_gun_status; // 状态(0:离线,1:故障,2:空闲,3:充电) - private Integer homing_status; // 枪是否归位(0:否,1:是,2:未知) - private Integer insertion_status; // 是否插枪(0:否,1:是) - private BigDecimal output_voltage; // 输出电压,精确到小数点后一位;待机置零 - private BigDecimal output_current; // 输出电流,精确到小数点后一位;待机置零 - private BigDecimal gun_line_temperature; // 枪线温度,整形,偏移量-50;待机置零 - private String gun_line_code; // 枪线编码,没有置零 - private Integer soc; // SOC待机置零;交流桩置零 - private BigDecimal battery_temperature; // 电池组最高温度,整形,偏移量-50 ºC;待机置零;交流桩置零 - private Integer cumulative_charging_time; // 累计充电时间,单位:min;待机置零 - private Integer time_remaining; // 剩余时间,单位:min;待机置零、交流桩置零 - private BigDecimal charging_degree; // 充电度数,精确到小数点后四位;待机置零 - private BigDecimal loss_of_charging_degree; // 计损充电度数,精确到小数点后四位;待机置零,未设置计损比例时等于充电度数 - private BigDecimal paid_amount; // 已充金额,精确到小数点后四位;待机置零(电费+服务费)*计损充电度数 - private Integer hardware_fault; // 硬件故障(1:急停按钮动作故障;2:无可用整流模块;3:出风口温度过高;4:交流防雷故障;5:交直流模块 DC20 通信中断;6:绝缘检测模块 FC08 通信中断;7:电度表通信中断;8:读卡器通信中断;9:RC10 通信中断;10:风扇调速板故障;11:直流熔断器故障;12:高压接触器故障;13:门打开) - - -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/WorkingParameterSettingReplyMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/WorkingParameterSettingReplyMessage.java deleted file mode 100644 index ecf248c..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/WorkingParameterSettingReplyMessage.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.ruoyi.integration.rocket.model; - -import com.ruoyi.integration.rocket.base.BaseMessage; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.data.mongodb.core.mapping.Document; - -/** - * 充电桩工作参数设置应答 - **/ - -@Data -public class WorkingParameterSettingReplyMessage extends BaseMessage { - - private String charging_pile_code; //桩编码 - private Integer set_result; //设置结果(0:失败,1:成功) -} - - diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java deleted file mode 100644 index 36399fc..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java +++ /dev/null @@ -1,625 +0,0 @@ -//package com.ruoyi.integration.rocket.produce; -// -//import com.alibaba.fastjson.JSON; -//import com.alibaba.fastjson.JSONObject; -//import com.ruoyi.chargingPile.api.feignClient.AccountingStrategyDetailClient; -//import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient; -//import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient; -//import com.ruoyi.chargingPile.api.feignClient.FaultMessageClient; -//import com.ruoyi.chargingPile.api.model.TAccountingStrategyDetail; -//import com.ruoyi.chargingPile.api.model.TChargingGun; -//import com.ruoyi.chargingPile.api.model.TFaultMessage; -//import com.ruoyi.chargingPile.api.vo.GetChargingGunByCode; -//import com.ruoyi.chargingPile.api.vo.UpdateChargingPileStatusVo; -//import com.ruoyi.common.redis.service.RedisService; -//import com.ruoyi.integration.api.model.*; -//import com.ruoyi.integration.drainage.TCECPushUtil; -//import com.ruoyi.integration.iotda.constant.SendTagConstant; -//import com.ruoyi.integration.iotda.enums.ServiceIdMenu; -//import com.ruoyi.integration.iotda.utils.tools.CP56Time2aConverter; -//import com.ruoyi.integration.mongodb.service.*; -//import com.ruoyi.integration.rocket.model.*; -//import com.ruoyi.integration.rocket.util.EnhanceMessageHandler; -//import com.ruoyi.order.api.feignClient.ChargingOrderClient; -//import com.ruoyi.order.api.model.TChargingOrder; -//import com.ruoyi.order.api.query.UploadRealTimeMonitoringDataQuery; -//import com.ruoyi.order.api.vo.PlatformStartChargingReplyMessageVO; -//import com.ruoyi.order.api.vo.PlatformStopChargingReplyVO; -//import com.ruoyi.order.api.vo.SecurityDetectionVO; -//import com.ruoyi.order.api.vo.TransactionRecordMessageVO; -//import lombok.extern.slf4j.Slf4j; -//import org.apache.rocketmq.spring.annotation.MessageModel; -//import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -//import org.apache.rocketmq.spring.core.RocketMQListener; -//import org.springframework.beans.BeanUtils; -//import org.springframework.beans.factory.annotation.Autowired; -//import org.springframework.data.redis.core.RedisTemplate; -//import org.springframework.stereotype.Component; -//import org.springframework.util.StringUtils; -// -//import javax.annotation.Resource; -//import java.math.RoundingMode; -//import java.time.LocalDateTime; -//import java.util.Date; -//import java.util.Objects; -//import java.util.Set; -//import java.util.concurrent.LinkedBlockingQueue; -//import java.util.concurrent.ThreadPoolExecutor; -//import java.util.concurrent.TimeUnit; -// -//@Slf4j -//@Component -//@RocketMQMessageListener( -// messageModel = MessageModel.CLUSTERING, -// consumerGroup = "charge_charging_message", -// topic = "charge_charging_message", -// selectorExpression = "charging_message", -// consumeThreadMax = 64 //默认是64个线程并发消息,配置 consumeThreadMax 参数指定并发消费线程数,避免太大导致资源不够 -//) -//public class ChargingMessageListener extends EnhanceMessageHandler<ChargingMessage> implements RocketMQListener<ChargingMessage> { -// -// @Autowired -// private AcquisitionBillingModeService acquisitionBillingModeService; -// @Autowired -// private BillingModeVerifyService billingModeVerifyService; -// @Autowired -// private BmsAbortService bmsAbortService; -// @Resource -// private ChargingOrderClient chargingOrderClient; -// @Autowired -// private BmsDemandAndChargerExportationService bmsDemandAndChargerExportationService; -// @Autowired -// private OnlineService onlineService; -// @Autowired -// private PingService pingService; -// @Autowired -// private EndChargeService endChargeService; -// @Autowired -// private ErrorMessageMessageService errorMessageMessageService; -// @Autowired -// private UploadRealTimeMonitoringDataService uploadRealTimeMonitoringDataService; -// @Resource -// private AccountingStrategyDetailClient accountingStrategyDetailClient; -// @Autowired -// private ChargingHandshakeService chargingHandshakeService; -// @Autowired -// private ParameterSettingService parameterSettingService; -// @Autowired -// private MotorAbortService motorAbortService; -// @Autowired -// private BmsInformationService bmsInformationService; -// @Autowired -// private ChargingPileStartsChargingService chargingPileStartsChargingService; -// @Autowired -// private PlatformStartChargingReplyService platformStartChargingReplyService; -// @Autowired -// private PlatformStopChargingReplyService platformStopChargingReplyService; -// @Autowired -// private TransactionRecordService transactionRecordService; -// @Autowired -// private UpdateBalanceReplyService updateBalanceReplyService; -// @Autowired -// private SynchronizeOfflineCardReplyService synchronizeOfflineCardReplyService; -// @Autowired -// private ClearOfflineCardReplyService clearOfflineCardReplyService; -// @Autowired -// private WorkingParameterSettingReplyService workingParameterSettingReplyService; -// @Autowired -// private TimingSettingService timingSettingService; -// @Autowired -// private SetupBillingModelReplyService setupBillingModelReplyService; -// @Autowired -// private GroundLockRealTimeDataService groundLockRealTimeDataService; -// @Autowired -// private ChargingPileReturnsGroundLockDataService chargingPileReturnsGroundLockDataService; -// @Autowired -// private PlatformRestartReplyService platformRestartReplyService; -// @Autowired -// private PlatformRemoteUpdateReplyService platformRemoteUpdateReplyService; -// @Autowired -// private QrCodeDeliveryReplyService qrCodeDeliveryReplyService; -// @Autowired -// private SecurityDetectionService securityDetectionService; -// @Autowired -// private TCECPushUtil tcecPushUtil; -// -// @Resource -// private ChargingPileClient chargingPileClient; -// @Resource -// private ChargingGunClient chargingGunClient; -// -// @Resource -// private RedisTemplate redisTemplate; -// -// @Autowired -// private EnhanceProduce enhanceProduce; -// -// -// -// @Override -// protected void handleMessage(ChargingMessage message) throws Exception { -// log.info("rocket收到的消息内容:{}",message); -// String serviceId = message.getServiceId(); -// if(!StringUtils.hasLength(serviceId)){ -// return; -// } -// log.info("rocket收到的消息内容:{} {}", serviceId,message); -// switch (serviceId){ -// case SendTagConstant.ONLINE: -// OnlineMessage onlineMessage = message.getOnlineMessage(); -// log.info("充电桩登录认证业务消息处理:{}",onlineMessage); -// // 持久化消息 -// Online online = new Online(); -// BeanUtils.copyProperties(onlineMessage,online); -// onlineService.create(online); -// break; -// case SendTagConstant.PING: -// PingMessage pingMessage = message.getPingMessage(); -// log.info("充电桩心跳包-业务消息处理:{}",pingMessage); -// // 持久化消息 -// Ping ping = new Ping(); -// BeanUtils.copyProperties(pingMessage,ping); -// pingService.save(ping); -// //存储缓存中,5分钟有效 -// redisTemplate.opsForValue().set("ping:" + ping.getCharging_pile_code() + ping.getCharging_gun_code(), ping, 5, TimeUnit.MINUTES); -// ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>()); -// threadPoolExecutor.execute(new Runnable() { -// @Override -// public void run() { -// UpdateChargingPileStatusVo vo1 = new UpdateChargingPileStatusVo(); -// vo1.setGun_code(pingMessage.getCharging_gun_code()); -// vo1.setPile_code(pingMessage.getCharging_pile_code()); -// vo1.setStatus(pingMessage.getCharging_gun_status()); -// chargingPileClient.updateChargingPileStatus(vo1); -// } -// }); -// break; -// case SendTagConstant.END_CHARGE: -// EndChargeMessage endChargeMessage = message.getEndChargeMessage(); -// log.info("充电结束-业务消息处理:{}",endChargeMessage); -// // 持久化消息 -// EndCharge endCharge = new EndCharge(); -// BeanUtils.copyProperties(endChargeMessage,endCharge); -// endChargeService.create(endCharge); -// ThreadPoolExecutor threadPoolExecutor1 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>()); -// threadPoolExecutor1.execute(new Runnable() { -// @Override -// public void run() { -// // 业务处理 -// chargingOrderClient.endCharge(endCharge.getTransaction_serial_number()); -// // 订单id -// String transactionSerialNumber = endCharge.getTransaction_serial_number(); -// ChargingOrderMessage chargingOrderMessage = new ChargingOrderMessage(); -// chargingOrderMessage.setOrderNumber(transactionSerialNumber); -// // 推送充电订单信息 -// ChargingMessage chargingMessage1 = new ChargingMessage(); -// chargingMessage1.setServiceId(SendTagConstant.ORDER_INFO); -// chargingMessage1.setOrderMessage(chargingOrderMessage); -// enhanceProduce.orderInfoMessage(chargingMessage1); -// // 推送充电订单状态 -// ChargingMessage chargingMessage2 = new ChargingMessage(); -// chargingMessage2.setServiceId(SendTagConstant.ORDER_STATUS); -// chargingMessage2.setOrderMessage(chargingOrderMessage); -// enhanceProduce.orderStatusMessage(chargingMessage2); -//// try { -//// TChargingOrder chargingOrder = chargingOrderClient.getOrderByCode(endCharge.getTransaction_serial_number()).getData(); -//// tcecPushUtil.pushSuperviseNotificationChargeOrderInfo(chargingOrder); -//// tcecPushUtil.pushSuperviseNotificationEquipChargeStatus(chargingOrder); -//// }catch (Exception e){ -//// e.printStackTrace(); -//// System.out.println("充电结束推送监管平台失败:"+e.getMessage()); -//// } -// } -// }); -// break; -// case SendTagConstant.ERROR_MESSAGE: -// ErrorMessageMessage errorMessageMessage1 = message.getErrorMessageMessage(); -// log.info("错误报文-业务消息处理:{}",errorMessageMessage1); -// // 持久化消息 -// ErrorMessageMessage errorMessageMessage = new ErrorMessageMessage(); -// BeanUtils.copyProperties(errorMessageMessage1,errorMessageMessage); -// errorMessageMessageService.create(errorMessageMessage); -// break; -// case SendTagConstant.BILLING_MODE_VERIFY: -// BillingModeVerifyMessage billingModeVerifyMessage = message.getBillingModeVerifyMessage(); -// log.info("计费模型验证请求-业务消息处理:{}",billingModeVerifyMessage); -// // 持久化消息 -// BillingModeVerify billingModeVerify = new BillingModeVerify(); -// BeanUtils.copyProperties(billingModeVerifyMessage,billingModeVerify); -// billingModeVerifyService.create(billingModeVerify); -// break; -// case SendTagConstant.ACQUISITION_BILLING_MODE: -// AcquisitionBillingModeMessage acquisitionBillingModeMessage = message.getAcquisitionBillingModeMessage(); -// log.info("充电桩计费模型请求-业务消息处理:{}",acquisitionBillingModeMessage); -// // 持久化消息 -// AcquisitionBillingMode acquisitionBillingMode = new AcquisitionBillingMode(); -// BeanUtils.copyProperties(acquisitionBillingModeMessage,acquisitionBillingMode); -// acquisitionBillingModeService.create(acquisitionBillingMode); -// break; -// case SendTagConstant.UPLOAD_REAL_TIME_MONITORING_DATA: -// try { -// UploadRealTimeMonitoringDataMessage uploadRealTimeMonitoringDataMessage = message.getUploadRealTimeMonitoringDataMessage(); -// log.info("上传实时监测数据-业务消息处理:{}",uploadRealTimeMonitoringDataMessage); -// // 持久化消息 -// UploadRealTimeMonitoringData uploadRealTimeMonitoringData = new UploadRealTimeMonitoringData(); -// BeanUtils.copyProperties(uploadRealTimeMonitoringDataMessage,uploadRealTimeMonitoringData); -// // 查询mogondb上一条数据 -// UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataService.getLastDataById(uploadRealTimeMonitoringDataMessage.getTransaction_serial_number()); -// // 查询订单 -// TChargingOrder chargingOrder = chargingOrderClient.getOrderByCode(uploadRealTimeMonitoringDataMessage.getTransaction_serial_number()).getData(); -// // 查询当前时间段的计费策略 -// TAccountingStrategyDetail accountingStrategyDetail = accountingStrategyDetailClient.getDetailBySiteId(chargingOrder.getSiteId()).getData(); -// uploadRealTimeMonitoringData.setElectrovalence_all(accountingStrategyDetail.getElectrovalence()); -// uploadRealTimeMonitoringData.setService_charge(accountingStrategyDetail.getServiceCharge()); -// if (Objects.nonNull(data)) { -// uploadRealTimeMonitoringDataService.updateById(data.getId()); -// uploadRealTimeMonitoringData.setPeriod_electric_price(uploadRealTimeMonitoringDataMessage.getPaid_amount().subtract(data.getPaid_amount())); -// uploadRealTimeMonitoringData.setPeriod_charging_degree(uploadRealTimeMonitoringDataMessage.getCharging_degree().subtract(data.getCharging_degree())); -// uploadRealTimeMonitoringData.setPeriod_service_price(uploadRealTimeMonitoringDataMessage.getCharging_degree().multiply(accountingStrategyDetail.getServiceCharge()).setScale(4, RoundingMode.HALF_UP)); -// }else { -// log.info("首次上传实时监测数据"); -// uploadRealTimeMonitoringData.setPeriod_electric_price(uploadRealTimeMonitoringDataMessage.getPaid_amount()); -// uploadRealTimeMonitoringData.setPeriod_charging_degree(uploadRealTimeMonitoringDataMessage.getCharging_degree()); -// uploadRealTimeMonitoringData.setPeriod_service_price(uploadRealTimeMonitoringDataMessage.getCharging_degree().multiply(accountingStrategyDetail.getServiceCharge()).setScale(4, RoundingMode.HALF_UP)); -// } -// uploadRealTimeMonitoringData.setOrderType(chargingOrder.getOrderType()); -// uploadRealTimeMonitoringData.setSiteId(chargingOrder.getSiteId()); -// uploadRealTimeMonitoringData.setStatus(chargingOrder.getStatus()); -//// uploadRealTimeMonitoringData.setStartTime(chargingOrder.getStartTime()); -//// uploadRealTimeMonitoringData.setEndTime(chargingOrder.getEndTime()); -// int i = uploadRealTimeMonitoringDataService.create(uploadRealTimeMonitoringData); -// if(i == 0){ -// log.error("数据存储mongo失败"); -// } -// -// ThreadPoolExecutor threadPoolExecutor2 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>()); -// threadPoolExecutor2.execute(new Runnable() { -// @Override -// public void run() { -// // 业务处理 -// UploadRealTimeMonitoringDataQuery query = new UploadRealTimeMonitoringDataQuery(); -// BeanUtils.copyProperties(uploadRealTimeMonitoringData, query); -// chargingOrderClient.chargeMonitoring(query); -// chargingOrder.setEndSoc(uploadRealTimeMonitoringDataMessage.getSoc()+""); -// ChargingOrderMessage chargingOrderMessage3 = new ChargingOrderMessage(); -// chargingOrderMessage3.setSoc(uploadRealTimeMonitoringDataMessage.getSoc()+""); -// chargingOrderMessage3.setOrderNumber(chargingOrder.getCode()); -// // 推送充电订单信息 -// ChargingMessage chargingMessage4 = new ChargingMessage(); -// chargingMessage4.setServiceId(SendTagConstant.ORDER_STATUS); -// chargingMessage4.setOrderMessage(chargingOrderMessage3); -// enhanceProduce.orderInfoMessage(chargingMessage4); -//// tcecPushUtil.pushSuperviseNotificationEquipChargeStatus(chargingOrder); -// } -// }); -// } catch (Exception e) { -// e.printStackTrace(); -// } -// break; -// case SendTagConstant.CHARGING_HANDSHAKE: -// ChargingHandshakeMessage chargingHandshakeMessage = message.getChargingHandshakeMessage(); -// log.info("充电握手-业务消息处理:{}",chargingHandshakeMessage); -// // 持久化消息 -// ChargingHandshake chargingHandshake = new ChargingHandshake(); -// BeanUtils.copyProperties(chargingHandshakeMessage,chargingHandshake); -// chargingHandshakeService.create(chargingHandshake); -// break; -// case SendTagConstant.PARAMETER_SETTING: -// ParameterSettingMessage parameterSettingMessage = message.getParameterSettingMessage(); -// log.info("业务消息处理:{}",parameterSettingMessage); -// // 持久化消息 -// ParameterSetting parameterSetting = new ParameterSetting(); -// BeanUtils.copyProperties(parameterSettingMessage,parameterSetting); -// parameterSettingService.create(parameterSetting); -// break; -// case SendTagConstant.BMS_ABORT: -// BmsAbortMessage bmsAbortMessage = message.getBmsAbortMessage(); -// log.info("充电阶段BMS中止-业务消息处理:{}",bmsAbortMessage); -// // 持久化消息 -// BmsAbort bmsAbort = new BmsAbort(); -// BeanUtils.copyProperties(bmsAbortMessage,bmsAbort); -// bmsAbortService.create(bmsAbort); -// -// ThreadPoolExecutor threadPoolExecutor3 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>()); -// threadPoolExecutor3.execute(new Runnable() { -// @Override -// public void run() { -// // 业务处理 -// chargingOrderClient.excelEndCharge(bmsAbort.getTransaction_serial_number()); -// } -// }); -// break; -// case SendTagConstant.MOTOR_ABORT: -// MotorAbortMessage motorAbortMessage = message.getMotorAbortMessage(); -// log.info("充电阶段充电机中止-业务消息处理:{}",motorAbortMessage); -// // 持久化消息 -// MotorAbort motorAbort = new MotorAbort(); -// BeanUtils.copyProperties(motorAbortMessage,motorAbort); -// motorAbortService.create(motorAbort); -// ThreadPoolExecutor threadPoolExecutor4 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>()); -// threadPoolExecutor4.execute(new Runnable() { -// @Override -// public void run() { -// // 业务处理 -// chargingOrderClient.excelEndCharge(motorAbort.getTransaction_serial_number()); -// } -// }); -// break; -// case SendTagConstant.BMS_DEMAND_AND_CHARGER_EXPORTATION: -// BmsDemandAndChargerExportationMessage bmsDemandAndChargerExportationMessage = message.getBmsDemandAndChargerExportationMessage(); -// log.info("充电过程BMS需求、充电机输出-业务消息处理:{}",bmsDemandAndChargerExportationMessage); -// // 持久化消息 -// BmsDemandAndChargerExportation bmsDemandAndChargerExportation = new BmsDemandAndChargerExportation(); -// BeanUtils.copyProperties(bmsDemandAndChargerExportationMessage,bmsDemandAndChargerExportation); -// bmsDemandAndChargerExportationService.create(bmsDemandAndChargerExportation); -// ThreadPoolExecutor threadPoolExecutor5 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>()); -// threadPoolExecutor5.execute(new Runnable() { -// @Override -// public void run() { -// // 业务处理 -// TChargingOrder chargingOrderBms = chargingOrderClient.getOrderByCode(bmsDemandAndChargerExportationMessage.getTransaction_serial_number()).getData(); -// if(Objects.nonNull(chargingOrderBms)){ -// chargingOrderBms.setNeedElec(bmsDemandAndChargerExportationMessage.getBms_current_requirements()); -// chargingOrderClient.updateChargingOrder(chargingOrderBms); -// } -// } -// }); -// break; -// case SendTagConstant.BMS_INFORMATION: -// BmsInformationMessage bmsInformationMessage = message.getBmsInformationMessage(); -// log.info("充电过程BMS信息-业务消息处理:{}",bmsInformationMessage); -// // 持久化消息 -// BmsInformation bmsInformation = new BmsInformation(); -// BeanUtils.copyProperties(bmsInformationMessage,bmsInformation); -// bmsInformationService.create(bmsInformation); -// break; -// case SendTagConstant.CHARGING_PILE_STARTS_CHARGING: -// ChargingPileStartsChargingMessage chargingPileStartsChargingMessage = message.getChargingPileStartsChargingMessage(); -// log.info("充电桩主动申请启动充电-业务消息处理:{}",chargingPileStartsChargingMessage); -// // 持久化消息 -// ChargingPileStartsCharging chargingPileStartsCharging = new ChargingPileStartsCharging(); -// BeanUtils.copyProperties(chargingPileStartsChargingMessage,chargingPileStartsCharging); -// chargingPileStartsChargingService.create(chargingPileStartsCharging); -// break; -// case SendTagConstant.PLATFORM_START_CHARGING_REPLY: -// PlatformStartChargingReplyMessage platformStartChargingReplyMessage = message.getPlatformStartChargingReplyMessage(); -// log.info("远程启机命令回复-业务消息处理:{}",platformStartChargingReplyMessage); -// // 持久化消息 -// PlatformStartChargingReply platformStartChargingReply = new PlatformStartChargingReply(); -// BeanUtils.copyProperties(platformStartChargingReplyMessage,platformStartChargingReply); -// platformStartChargingReplyService.create(platformStartChargingReply); -// ThreadPoolExecutor threadPoolExecutor6 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>()); -// threadPoolExecutor6.execute(new Runnable() { -// @Override -// public void run() { -// // 业务处理 -// PlatformStartChargingReplyMessageVO message1 = new com.ruoyi.order.api.vo.PlatformStartChargingReplyMessageVO(); -// BeanUtils.copyProperties(platformStartChargingReplyMessage, message1); -// chargingOrderClient.startChargeSuccessfully(message1); -// } -// }); -// break; -// case SendTagConstant.PLATFORM_STOP_CHARGING_REPLY: -// PlatformStopChargingReplyMessage platformStopChargingReplyMessage = message.getPlatformStopChargingReplyMessage(); -// log.info("远程停机命令回复-业务消息处理:{}",platformStopChargingReplyMessage); -// // 持久化消息 -// PlatformStopChargingReply platformStopChargingReply = new PlatformStopChargingReply(); -// BeanUtils.copyProperties(platformStopChargingReplyMessage,platformStopChargingReply); -// platformStopChargingReplyService.create(platformStopChargingReply); -// ThreadPoolExecutor threadPoolExecutor7 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>()); -// threadPoolExecutor7.execute(new Runnable() { -// @Override -// public void run() { -// PlatformStopChargingReplyVO platformStopChargingReply1 = new PlatformStopChargingReplyVO(); -// BeanUtils.copyProperties(platformStopChargingReply, platformStopChargingReply1); -// chargingOrderClient.terminateSuccessfulResponse(platformStopChargingReply1); -// } -// }); -// break; -// case SendTagConstant.TRANSACTION_RECORD: -// TransactionRecordMessage transactionRecordMessage = message.getTransactionRecordMessage(); -// log.info("交易记录-业务消息处理:{}",transactionRecordMessage); -// transactionRecordMessage.setResult(JSONObject.toJSONString(message)); -// // 持久化消息 -// TransactionRecord transactionRecord = new TransactionRecord(); -// BeanUtils.copyProperties(transactionRecordMessage,transactionRecord); -// transactionRecordService.create(transactionRecord); -// ThreadPoolExecutor threadPoolExecutor8 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>()); -// threadPoolExecutor8.execute(new Runnable() { -// @Override -// public void run() { -// // 业务处理 -// TChargingOrder chargingOrderRecord = chargingOrderClient.getOrderByCode(transactionRecordMessage.getTransaction_serial_number()).getData(); -// if(Objects.nonNull(chargingOrderRecord)){ -// chargingOrderRecord.setTotalElectricity(transactionRecordMessage.getTotal_electricity()); -// chargingOrderClient.updateChargingOrder(chargingOrderRecord); -// } -// //计算费用 -// TransactionRecordMessageVO vo = new TransactionRecordMessageVO(); -// BeanUtils.copyProperties(transactionRecordMessage,vo); -// int code = chargingOrderClient.endChargeBillingCharge(vo).getCode(); -// if(200 != code){ -// //失败后添加到队列中继续处理数据 -// redisTemplate.opsForSet().add(SendTagConstant.TRANSACTION_RECORD, transactionRecordMessage.getTransaction_serial_number()); -// } -// } -// }); -// -// -// // 添加实时上传记录结束记录 -// // 查询mogondb上一条数据 -// UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataService.getLastDataById(transactionRecordMessage.getTransaction_serial_number()); -// if(Objects.nonNull(data) && data.getStatus() != 5){ -// UploadRealTimeMonitoringData uploadRealTimeMonitoringData = new UploadRealTimeMonitoringData(); -// BeanUtils.copyProperties(data,uploadRealTimeMonitoringData); -// uploadRealTimeMonitoringData.setStatus(5); -// uploadRealTimeMonitoringDataService.create(uploadRealTimeMonitoringData); -// } -// break; -// case SendTagConstant.UPDATE_BALANCE_REPLY: -// UpdateBalanceReplyMessage updateBalanceReplyMessage = message.getUpdateBalanceReplyMessage(); -// log.info("余额更新应答-业务消息处理:{}",updateBalanceReplyMessage); -// // 持久化消息 -// UpdateBalanceReply updateBalanceReply = new UpdateBalanceReply(); -// BeanUtils.copyProperties(updateBalanceReplyMessage,updateBalanceReply); -// updateBalanceReplyService.create(updateBalanceReply); -// break; -// case SendTagConstant.SYNCHRONIZE_OFFLINE_CARD_REPLY: -// SynchronizeOfflineCardReplyMessage synchronizeOfflineCardReplyMessage = message.getSynchronizeOfflineCardReplyMessage(); -// log.info("卡数据同步应答-业务消息处理:{}",synchronizeOfflineCardReplyMessage); -// // 持久化消息 -// SynchronizeOfflineCardReply synchronizeOfflineCardReply = new SynchronizeOfflineCardReply(); -// BeanUtils.copyProperties(synchronizeOfflineCardReplyMessage,synchronizeOfflineCardReply); -// synchronizeOfflineCardReplyService.create(synchronizeOfflineCardReply); -// break; -// case SendTagConstant.CLEAR_OFFLINE_CARD_REPLY: -// ClearOfflineCardReplyMessage clearOfflineCardReplyMessage = message.getClearOfflineCardReplyMessage(); -// log.info("离线卡数据清除应答-业务消息处理:{}",clearOfflineCardReplyMessage); -// // 持久化消息 -// ClearOfflineCardReply clearOfflineCardReply = new ClearOfflineCardReply(); -// BeanUtils.copyProperties(clearOfflineCardReplyMessage,clearOfflineCardReply); -// clearOfflineCardReplyService.create(clearOfflineCardReply); -// break; -// case SendTagConstant.WORKING_PARAMETER_SETTING_REPLY: -// WorkingParameterSettingReplyMessage workingParameterSettingReplyMessage = message.getWorkingParameterSettingReplyMessage(); -// log.info("充电桩工作参数设置应答-业务消息处理:{}",workingParameterSettingReplyMessage); -// // 持久化消息 -// WorkingParameterSettingReply workingParameterSettingReply = new WorkingParameterSettingReply(); -// BeanUtils.copyProperties(workingParameterSettingReplyMessage,workingParameterSettingReply); -// workingParameterSettingReplyService.create(workingParameterSettingReply); -// break; -// case SendTagConstant.TIMING_SETTING: -// TimingSettingMessage timingSettingMessage = message.getTimingSettingMessage(); -// log.info("对时设置-业务消息处理:{}",timingSettingMessage); -// // 持久化消息 -// TimingSetting timingSetting = new TimingSetting(); -// BeanUtils.copyProperties(timingSettingMessage,timingSetting); -// timingSettingService.create(timingSetting); -// break; -// case SendTagConstant.SETUP_BILLING_MODEL_REPLY: -// SetupBillingModelReplyMessage setupBillingModelReplyMessage = message.getSetupBillingModelReplyMessage(); -// log.info("计费模型应答-业务消息处理:{}",setupBillingModelReplyMessage); -// // 持久化消息 -// SetupBillingModelReply setupBillingModelReply = new SetupBillingModelReply(); -// BeanUtils.copyProperties(setupBillingModelReplyMessage,setupBillingModelReply); -// setupBillingModelReplyService.create(setupBillingModelReply); -// break; -// case SendTagConstant.GROUND_LOCK_REAL_TIME_DATA: -// GroundLockRealTimeDataMessage groundLockRealTimeDataMessage = message.getGroundLockRealTimeDataMessage(); -// log.info("地锁数据上送(充电桩上送)-业务消息处理:{}",groundLockRealTimeDataMessage); -// // 持久化消息 -// GroundLockRealTimeData groundLockRealTimeData = new GroundLockRealTimeData(); -// BeanUtils.copyProperties(groundLockRealTimeDataMessage,groundLockRealTimeData); -// groundLockRealTimeDataService.create(groundLockRealTimeData); -// break; -// case SendTagConstant.CHARGING_PILE_RETURNS_GROUND_LOCK_DATA: -// ChargingPileReturnsGroundLockDataMessage chargingPileReturnsGroundLockDataMessage = message.getChargingPileReturnsGroundLockDataMessage(); -// log.info("充电桩返回数据(上行)-业务消息处理:{}",chargingPileReturnsGroundLockDataMessage); -// // 持久化消息 -// ChargingPileReturnsGroundLockData chargingPileReturnsGroundLockData = new ChargingPileReturnsGroundLockData(); -// BeanUtils.copyProperties(chargingPileReturnsGroundLockDataMessage,chargingPileReturnsGroundLockData); -// chargingPileReturnsGroundLockDataService.create(chargingPileReturnsGroundLockData); -// break; -// case SendTagConstant.PLATFORM_RESTART_REPLY: -// PlatformRestartReplyMessage platformRestartReplyMessage = message.getPlatformRestartReplyMessage(); -// log.info("远程重启应答-业务消息处理:{}",platformRestartReplyMessage); -// // 持久化消息 -// PlatformRestartReply platformRestartReply = new PlatformRestartReply(); -// BeanUtils.copyProperties(platformRestartReplyMessage,platformRestartReply); -// platformRestartReplyService.create(platformRestartReply); -// break; -// case SendTagConstant.QR_CODE_DELIVERY_REPLY: -// QrCodeDeliveryReplyMessage qrCodeDeliveryReplyMessage = message.getQrCodeDeliveryReplyMessage(); -// log.info("二维码下发应答-业务消息处理:{}",qrCodeDeliveryReplyMessage); -// QrCodeDeliveryReply qrCodeDeliveryReply = new QrCodeDeliveryReply(); -// BeanUtils.copyProperties(qrCodeDeliveryReplyMessage,qrCodeDeliveryReply); -// qrCodeDeliveryReplyService.create(qrCodeDeliveryReply); -// break; -// case SendTagConstant.SECURITY_DETECTION: -// SecurityDetectionMessage securityDetectionMessage = message.getSecurityDetectionMessage(); -// log.info("安全监测-业务消息处理:{}",securityDetectionMessage); -// SecurityDetection securityDetection = new SecurityDetection(); -// BeanUtils.copyProperties(securityDetectionMessage,securityDetection); -// securityDetectionService.create(securityDetection); -// ThreadPoolExecutor threadPoolExecutor9 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>()); -// threadPoolExecutor9.execute(new Runnable() { -// @Override -// public void run() { -// SecurityDetectionVO securityDetection1 = new SecurityDetectionVO(); -// BeanUtils.copyProperties(securityDetection, securityDetection1); -// chargingOrderClient.securityDetection(securityDetection1); -// } -// }); -// break; -// default: -// PlatformRemoteUpdateReplyMessage platformRemoteUpdateReplyMessage = message.getPlatformRemoteUpdateReplyMessage(); -// log.info("远程更新应答-业务消息处理:{}",platformRemoteUpdateReplyMessage); -// PlatformRemoteUpdateReply platformRemoteUpdateReply = new PlatformRemoteUpdateReply(); -// BeanUtils.copyProperties(platformRemoteUpdateReplyMessage,platformRemoteUpdateReply); -// platformRemoteUpdateReplyService.create(platformRemoteUpdateReply); -// break; -// } -// } -// -// @Override -// protected void handleMaxRetriesExceeded(ChargingMessage message) { -// // 当超过指定重试次数消息时此处方法会被调用 -// // 生产中可以进行回退或其他业务操作 -// log.error("消息消费失败,请执行后续处理"); -// } -// -// -// /** -// * 是否执行重试机制 -// */ -// @Override -// protected boolean isRetry() { -// return true; -// } -// -// @Override -// protected boolean throwException() { -// // 是否抛出异常,false搭配retry自行处理异常 -// return false; -// } -// -// /** -// * 若需要处理消息过滤,在父级中进行统一处理,或者在此处实现之后,自行处理 -// * @param message 待处理消息 -// * @return true: 本次消息被过滤,false:不过滤 -// */ -// @Override -// protected boolean filter(ChargingMessage message) { -// // 此处可做消息过滤 -// return false; -// } -// -// /** -// * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 -// */ -// @Override -// public void onMessage(ChargingMessage message) { -// super.dispatchMessage(message); -// } -// -// -// /** -// * 处理未正常完成费用计算的订单 -// */ -// public void transactionRecord(){ -// Set<String> members = redisTemplate.opsForSet().members(SendTagConstant.TRANSACTION_RECORD); -// for (String member : members) { -// TransactionRecord transactionRecord = transactionRecordService.findOne(member); -// if(null == transactionRecord){ -// redisTemplate.opsForSet().remove(SendTagConstant.TRANSACTION_RECORD, member); -// }else{ -// TransactionRecordMessageVO vo = new TransactionRecordMessageVO(); -// BeanUtils.copyProperties(transactionRecord, vo); -// int code = chargingOrderClient.endChargeBillingCharge(vo).getCode(); -// if(200 == code){ -// redisTemplate.opsForSet().remove(SendTagConstant.TRANSACTION_RECORD, member); -// } -// } -// } -// } -//} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/EnhanceProduce.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/EnhanceProduce.java deleted file mode 100644 index abf845c..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/EnhanceProduce.java +++ /dev/null @@ -1,392 +0,0 @@ -package com.ruoyi.integration.rocket.produce; - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.ruoyi.integration.api.model.ErrorMessage; -import com.ruoyi.integration.api.model.ParameterSetting; -import com.ruoyi.integration.api.model.QrCodeDeliveryReply; -import com.ruoyi.integration.api.model.SecurityDetection; -import com.ruoyi.integration.iotda.constant.SendTagConstant; -import com.ruoyi.integration.rocket.model.*; -import com.ruoyi.integration.rocket.util.RocketMQEnhanceTemplate; -import lombok.Setter; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.client.producer.SendResult; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import java.util.UUID; - -@Slf4j -@Component -public class EnhanceProduce { - - //注入增强后的模板,可以自动实现环境隔离,日志记录 - @Setter(onMethod_ = @Autowired) - private RocketMQEnhanceTemplate rocketMQEnhanceTemplate; - - private static final String TOPIC = "charge_"; - private static final String TOPIC_JIANGUAN = "jianguan_"; - - /** - * 充电桩登录认证 - */ - public SendResult onlineMessage(OnlineMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.ONLINE); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.ONLINE, SendTagConstant.ONLINE, message); - } - - /** - * 充电桩心跳包 - */ - public SendResult pingMessage(PingMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.PING); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.PING, SendTagConstant.PING, message); - } - /** - * 充电结束 - */ - public SendResult endChargeMessage(EndChargeMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.END_CHARGE); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.END_CHARGE, SendTagConstant.END_CHARGE, message); - } - /** - * 错误报文 - */ - public SendResult errorMessageMessage(ErrorMessageMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.ERROR_MESSAGE); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.ERROR_MESSAGE, SendTagConstant.ERROR_MESSAGE, message); - } - - /** - * 计费模型验证请求 - */ - public SendResult billingModeVerifyMessage(BillingModeVerifyMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.BILLING_MODE_VERIFY); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.BILLING_MODE_VERIFY, SendTagConstant.BILLING_MODE_VERIFY, message); - } - - /** - * 充电桩计费模型请求 - */ - public SendResult acquisitionBillingModeMessage(AcquisitionBillingModeMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.ACQUISITION_BILLING_MODE); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.ACQUISITION_BILLING_MODE, SendTagConstant.ACQUISITION_BILLING_MODE, message); - } - - /** - * 上传实时监测数据 - */ - public SendResult uploadRealTimeMonitoringDataMessage(UploadRealTimeMonitoringDataMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.UPLOAD_REAL_TIME_MONITORING_DATA); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.UPLOAD_REAL_TIME_MONITORING_DATA, SendTagConstant.UPLOAD_REAL_TIME_MONITORING_DATA, message); - } - - /** - * 充电握手 - */ - public SendResult chargingHandshakeMessage(ChargingHandshakeMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.CHARGING_HANDSHAKE); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.CHARGING_HANDSHAKE, SendTagConstant.CHARGING_HANDSHAKE, message); - } - /** - * 参数设置 - */ - public SendResult parameterSettingMessage(ParameterSettingMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.PARAMETER_SETTING); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.PARAMETER_SETTING, SendTagConstant.PARAMETER_SETTING, message); - } - - /** - * 充电阶段BMS中止 - */ - public SendResult bmsAbortMessage(BmsAbortMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.BMS_ABORT); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.BMS_ABORT, SendTagConstant.BMS_ABORT, message); - } - - /** - * 充电阶段充电机中止 - */ - public SendResult motorAbortMessage(MotorAbortMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.MOTOR_ABORT); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.MOTOR_ABORT, SendTagConstant.MOTOR_ABORT, message); - } - - /** - * 充电过程BMS需求、充电机输出 - */ - public SendResult bmsDemandAndChargerExportationMessage(BmsDemandAndChargerExportationMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.BMS_DEMAND_AND_CHARGER_EXPORTATION); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.BMS_DEMAND_AND_CHARGER_EXPORTATION, SendTagConstant.BMS_DEMAND_AND_CHARGER_EXPORTATION, message); - } - - /** - * 充电过程BMS信息 - */ - public SendResult bmsInformationMessage(BmsInformationMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.BMS_INFORMATION); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.BMS_INFORMATION, SendTagConstant.BMS_INFORMATION, message); - } - - /** - * 充电桩主动申请启动充电 - */ - public SendResult chargingPileStartsChargingMessage(ChargingPileStartsChargingMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.CHARGING_PILE_STARTS_CHARGING); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.CHARGING_PILE_STARTS_CHARGING, SendTagConstant.CHARGING_PILE_STARTS_CHARGING, message); - } - - /** - * 远程启机命令回复 - */ - public SendResult platformStartChargingReplyMessage(PlatformStartChargingReplyMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.PLATFORM_START_CHARGING_REPLY); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.PLATFORM_START_CHARGING_REPLY, SendTagConstant.PLATFORM_START_CHARGING_REPLY, message); - } - - /** - * 远程停机命令回复 - */ - public SendResult platformStopChargingReplyMessage(PlatformStopChargingReplyMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.PLATFORM_STOP_CHARGING_REPLY); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.PLATFORM_STOP_CHARGING_REPLY, SendTagConstant.PLATFORM_STOP_CHARGING_REPLY, message); - } - - /** - * 交易记录 - */ - public SendResult transactionRecordMessage(TransactionRecordMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.TRANSACTION_RECORD); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.TRANSACTION_RECORD, SendTagConstant.TRANSACTION_RECORD, message); - } - - /** - * 余额更新应答 - */ - public SendResult updateBalanceReplyMessage(UpdateBalanceReplyMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.UPDATE_BALANCE_REPLY); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.UPDATE_BALANCE_REPLY, SendTagConstant.UPDATE_BALANCE_REPLY, message); - } - - /** - * 卡数据同步应答 - */ - public SendResult synchronizeOfflineCardReplyMessage(SynchronizeOfflineCardReplyMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.SYNCHRONIZE_OFFLINE_CARD_REPLY); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.SYNCHRONIZE_OFFLINE_CARD_REPLY, SendTagConstant.SYNCHRONIZE_OFFLINE_CARD_REPLY, message); - } - - /** - * 离线卡数据清除应答 - */ - public SendResult clearOfflineCardReplyMessage(ClearOfflineCardReplyMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.CLEAR_OFFLINE_CARD_REPLY); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.CLEAR_OFFLINE_CARD_REPLY, SendTagConstant.CLEAR_OFFLINE_CARD_REPLY, message); - } - - /** - * 充电桩工作参数设置应答 - */ - public SendResult workingParameterSettingReplyMessage(WorkingParameterSettingReplyMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.WORKING_PARAMETER_SETTING_REPLY); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.WORKING_PARAMETER_SETTING_REPLY, SendTagConstant.WORKING_PARAMETER_SETTING_REPLY, message); - } - - /** - * 对时设置 - */ - public SendResult timingSettingMessage(TimingSettingMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.TIMING_SETTING); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.TIMING_SETTING, SendTagConstant.TIMING_SETTING, message); - } - - /** - * 计费模型应答 - */ - public SendResult setupBillingModelReplyMessage(SetupBillingModelReplyMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.SETUP_BILLING_MODEL_REPLY); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.SETUP_BILLING_MODEL_REPLY, SendTagConstant.SETUP_BILLING_MODEL_REPLY, message); - } - - /** - * 地锁数据上送(充电桩上送) - */ - public SendResult groundLockRealTimeDataMessage(GroundLockRealTimeDataMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.GROUND_LOCK_REAL_TIME_DATA); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.GROUND_LOCK_REAL_TIME_DATA, SendTagConstant.GROUND_LOCK_REAL_TIME_DATA, message); - } - - /** - * 充电桩返回数据(上行) - */ - public SendResult chargingPileReturnsGroundLockDataMessage(ChargingPileReturnsGroundLockDataMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.CHARGING_PILE_RETURNS_GROUND_LOCK_DATA); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.CHARGING_PILE_RETURNS_GROUND_LOCK_DATA, SendTagConstant.CHARGING_PILE_RETURNS_GROUND_LOCK_DATA, message); - } - - /** - * 远程重启应答 - */ - public SendResult platformRestartReplyMessage(PlatformRestartReplyMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.PLATFORM_RESTART_REPLY); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.PLATFORM_RESTART_REPLY, SendTagConstant.PLATFORM_RESTART_REPLY, message); - } - - /** - * 远程更新应答 - */ - public SendResult platformRemoteUpdateReplyMessage(PlatformRemoteUpdateReplyMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.PLATFORM_REMOTE_UPDATE_REPLY); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.PLATFORM_REMOTE_UPDATE_REPLY, SendTagConstant.PLATFORM_REMOTE_UPDATE_REPLY, message); - } - - /** - * 二维码下发应答 - */ - public SendResult qrCodeDeliveryReplyMessage(QrCodeDeliveryReplyMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.QR_CODE_DELIVERY_REPLY); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.QR_CODE_DELIVERY_REPLY, SendTagConstant.QR_CODE_DELIVERY_REPLY, message); - } - - /** - * 安全监测 - */ - public SendResult securityDetectionMessage(SecurityDetectionMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.SECURITY_DETECTION); - return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.SECURITY_DETECTION, SendTagConstant.SECURITY_DETECTION, message); - } - -// /** -// * 充电桩登录认证 -// */ -// public SendResult chargingMessage(ChargingMessage message) { -// // 设置业务key -// message.setKey(UUID.randomUUID().toString()); -// // 设置消息来源,便于查询 -// message.setSource(SendTagConstant.CHARGING_MESSAGE); -// -// return rocketMQEnhanceTemplate.send(TOPIC+SendTagConstant.CHARGING_MESSAGE, SendTagConstant.CHARGING_MESSAGE, message); -// } - /** - * 监管平台推送充电设备接口状态 - */ - public SendResult gunStatusMessage(ChargingMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.GUN_STATUS); - rocketMQEnhanceTemplate.sendAsynchronous(TOPIC_JIANGUAN+SendTagConstant.GUN_STATUS, SendTagConstant.GUN_STATUS, message); - return null; - } - /** - * 监管平台推送充电订单信息 - */ - public SendResult orderInfoMessage(ChargingMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.ORDER_INFO); - rocketMQEnhanceTemplate.sendAsynchronous(TOPIC_JIANGUAN+SendTagConstant.ORDER_INFO, SendTagConstant.ORDER_INFO, message); - return null; - } - /** - * 监管平台推送充电订单状态 - */ - public SendResult orderStatusMessage(ChargingMessage message) { - // 设置业务key - message.setKey(UUID.randomUUID().toString()); - // 设置消息来源,便于查询 - message.setSource(SendTagConstant.ORDER_STATUS); - rocketMQEnhanceTemplate.sendAsynchronous(TOPIC_JIANGUAN+SendTagConstant.ORDER_STATUS, SendTagConstant.ORDER_STATUS, message); - return null; - } - -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/util/EnhanceMessageHandler.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/util/EnhanceMessageHandler.java deleted file mode 100644 index 9e2bcee..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/util/EnhanceMessageHandler.java +++ /dev/null @@ -1,151 +0,0 @@ -package com.ruoyi.integration.rocket.util; - -import com.alibaba.fastjson.JSONObject; -import com.ruoyi.integration.rocket.base.BaseMessage; -import com.ruoyi.integration.rocket.constant.EnhanceMessageConstant; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.client.producer.SendResult; -import org.apache.rocketmq.client.producer.SendStatus; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; - -import javax.annotation.Resource; - -@Slf4j -public abstract class EnhanceMessageHandler<T extends BaseMessage> { - /** - * 默认重试次数 - */ - private static final int MAX_RETRY_TIMES = 3; - - /** - * 延时等级 - */ - private static final int DELAY_LEVEL = EnhanceMessageConstant.FIVE_SECOND; - - - @Resource - private RocketMQEnhanceTemplate rocketMQEnhanceTemplate; - - /** - * 消息处理 - * - * @param message 待处理消息 - * @throws Exception 消费异常 - */ - protected abstract void handleMessage(T message) throws Exception; - - /** - * 超过重试次数消息,需要启用isRetry - * - * @param message 待处理消息 - */ - protected abstract void handleMaxRetriesExceeded(T message); - - - /** - * 是否需要根据业务规则过滤消息,去重逻辑可以在此处处理 - * @param message 待处理消息 - * @return true: 本次消息被过滤,false:不过滤 - */ - protected boolean filter(T message) { - return false; - } - - - /** - * 是否异常时重复发送 - * - * @return true: 消息重试,false:不重试 - */ - protected abstract boolean isRetry(); - - /** - * 消费异常时是否抛出异常 - * 返回true,则由rocketmq机制自动重试 - * false:消费异常(如果没有开启重试则消息会被自动ack) - */ - protected abstract boolean throwException(); - - /** - * 最大重试次数 - * - * @return 最大重试次数,默认5次 - */ - protected int getMaxRetryTimes() { - return MAX_RETRY_TIMES; - } - - /** - * isRetry开启时,重新入队延迟时间 - * @return -1:立即入队重试 - */ - protected int getDelayLevel() { - return DELAY_LEVEL; - } - - /** - * 使用模板模式构建消息消费框架,可自由扩展或删减 - */ - public void dispatchMessage(T message) { - // 基础日志记录被父类处理了 - log.info("消费者收到消息[{}]", JSONObject.toJSON(message)); - - if (filter(message)) { - log.info("消息id{}不满足消费条件,已过滤。",message.getKey()); - return; - } - // 超过最大重试次数时调用子类方法处理 - if (message.getRetryTimes() > getMaxRetryTimes()) { - handleMaxRetriesExceeded(message); - return; - } - try { - long now = System.currentTimeMillis(); - handleMessage(message); - long costTime = System.currentTimeMillis() - now; - log.info("消息{}消费成功,耗时[{}ms]", message.getKey(),costTime); - } catch (Exception e) { - log.error("消息{}消费异常", message.getKey(),e); - // 是捕获异常还是抛出,由子类决定 - if (throwException()) { - //抛出异常,由DefaultMessageListenerConcurrently类处理 - throw new RuntimeException(e); - } - //此时如果不开启重试机制,则默认ACK了 - if (isRetry()) { - handleRetry(message); - } - } - } - - protected void handleRetry(T message) { - // 获取子类RocketMQMessageListener注解拿到topic和tag - RocketMQMessageListener annotation = this.getClass().getAnnotation(RocketMQMessageListener.class); - if (annotation == null) { - return; - } - //重新构建消息体 - String messageSource = message.getSource(); - if(!messageSource.startsWith(EnhanceMessageConstant.RETRY_PREFIX)){ - message.setSource(EnhanceMessageConstant.RETRY_PREFIX + messageSource); - } - message.setRetryTimes(message.getRetryTimes() + 1); - - SendResult sendResult; - - try { - // 如果消息发送不成功,则再次重新发送,如果发送异常则抛出由MQ再次处理(异常时不走延迟消息) - sendResult = rocketMQEnhanceTemplate.send(annotation.topic(), annotation.selectorExpression(), message, getDelayLevel()); - } catch (Exception ex) { - // 此处捕获之后,相当于此条消息被消息完成然后重新发送新的消息 - //由生产者直接发送 - throw new RuntimeException(ex); - } - // 发送失败的处理就是不进行ACK,由RocketMQ重试 - if (sendResult.getSendStatus() != SendStatus.SEND_OK) { - throw new RuntimeException("重试消息发送失败"); - } - - } - -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/util/RocketMQEnhanceTemplate.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/util/RocketMQEnhanceTemplate.java deleted file mode 100644 index b6a1141..0000000 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/util/RocketMQEnhanceTemplate.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.ruoyi.integration.rocket.util; - -import com.alibaba.fastjson.JSONObject; -import com.ruoyi.integration.rocket.base.BaseMessage; -import com.ruoyi.integration.rocket.configuration.RocketEnhanceProperties; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.client.producer.DefaultMQProducer; -import org.apache.rocketmq.client.producer.SendResult; -import org.apache.rocketmq.spring.core.RocketMQTemplate; -import org.apache.rocketmq.spring.support.RocketMQHeaders; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.Bean; -import org.springframework.messaging.Message; -import org.springframework.messaging.support.MessageBuilder; -import org.springframework.util.StringUtils; - -import javax.annotation.Resource; - -@Slf4j -@RequiredArgsConstructor(onConstructor = @__(@Autowired)) -public class RocketMQEnhanceTemplate { - private final RocketMQTemplate template; - - @Resource - private RocketEnhanceProperties rocketEnhanceProperties; - - public RocketMQTemplate getTemplate() { - return template; - } - - /** - * 根据系统上下文自动构建隔离后的topic - * 构建目的地 - */ - public String buildDestination(String topic, String tag) { - topic = reBuildTopic(topic); - return topic + ":" + tag; - } - - /** - * 根据环境重新隔离topic - * @param topic 原始topic - */ - private String reBuildTopic(String topic) { - if(rocketEnhanceProperties.isEnabledIsolation() && StringUtils.hasText(rocketEnhanceProperties.getEnvironment())){ - return topic +"_" + rocketEnhanceProperties.getEnvironment(); - } - return topic; - } - - /** - * 发送同步消息 - */ - public <T extends BaseMessage> SendResult send(String topic, String tag, T message) { - // 注意分隔符 - return send(buildDestination(topic,tag), message); - } - /** - * 发送异步消息 - */ - public <T extends BaseMessage> void sendAsynchronous(String topic, String tag, T message) { - // 注意分隔符 - sendAsynchronous(buildDestination(topic,tag), message); - } - - public <T extends BaseMessage> SendResult send(String destination, T message) { - // 设置业务键,此处根据公共的参数进行处理 - // 更多的其它基础业务处理... - Message<T> sendMessage = MessageBuilder.withPayload(message).setHeader(RocketMQHeaders.TAGS, message.getKey()).build(); - SendResult sendResult = template.syncSend(destination, sendMessage); - // 此处为了方便查看给日志转了json,根据选择选择日志记录方式,例如ELK采集 - log.info("[{}]同步消息[{}]---->发送结果[{}]", destination, JSONObject.toJSON(message), JSONObject.toJSON(sendResult)); - return sendResult; - } - - public <T extends BaseMessage> void sendAsynchronous(String destination, T message) { - try { - // 设置业务键,此处根据公共的参数进行处理 - // 更多的其它基础业务处理... - Message<T> sendMessage = MessageBuilder.withPayload(message).setHeader(RocketMQHeaders.TAGS, message.getKey()).build(); - template.send(destination, sendMessage); - // 此处为了方便查看给日志转了json,根据选择选择日志记录方式,例如ELK采集 - log.info("[{}]异步消息[{}]", destination, JSONObject.toJSON(message)); - }catch (Exception e){ - e.printStackTrace(); - } - } - - /** - * 发送延迟消息 - */ - public <T extends BaseMessage> SendResult send(String topic, String tag, T message, int delayLevel) { - return send(buildDestination(topic,tag), message, delayLevel); - } - - public <T extends BaseMessage> SendResult send(String destination, T message, int delayLevel) { - Message<T> sendMessage = MessageBuilder.withPayload(message).setHeader(RocketMQHeaders.TAGS, message.getKey()).build(); - SendResult sendResult = template.syncSend(destination, sendMessage, 3000, delayLevel); - log.info("[{}]延迟等级[{}]消息[{}]发送结果[{}]", destination, delayLevel, JSONObject.toJSON(message), JSONObject.toJSON(sendResult)); - return sendResult; - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/test/java/com/ruoyi/integration/RuoYiIntegrationApplicationTests.java b/ruoyi-service/ruoyi-integration/src/test/java/com/ruoyi/integration/RuoYiIntegrationApplicationTests.java index 3d74e3e..b8cf69f 100644 --- a/ruoyi-service/ruoyi-integration/src/test/java/com/ruoyi/integration/RuoYiIntegrationApplicationTests.java +++ b/ruoyi-service/ruoyi-integration/src/test/java/com/ruoyi/integration/RuoYiIntegrationApplicationTests.java @@ -1,54 +1,7 @@ package com.ruoyi.integration; -import cn.hutool.http.HttpRequest; -import cn.hutool.http.HttpResponse; -import cn.hutool.http.HttpUtil; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.alibaba.nacos.common.utils.JacksonUtils; -import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient; -import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient; -import com.ruoyi.chargingPile.api.feignClient.SiteClient; -import com.ruoyi.chargingPile.api.model.Site; -import com.ruoyi.chargingPile.api.model.TChargingGun; -import com.ruoyi.chargingPile.api.model.TChargingPile; -import com.ruoyi.common.core.domain.R; -import com.ruoyi.common.core.utils.DateUtils; -import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData; -import com.ruoyi.integration.barrierGate.model.CloudParkingOrder; -import com.ruoyi.integration.barrierGate.server.ParkingOrderService; -import com.ruoyi.integration.drainage.AESUtil; -import com.ruoyi.integration.drainage.TCECSuperviseUtil; -import com.ruoyi.integration.drainage.model.*; -import com.ruoyi.integration.drainage.util.AesEncryption; -import com.ruoyi.integration.drainage.util.HMacMD5Util; -import com.ruoyi.integration.drainage.util.SequenceGenerator; -import com.ruoyi.integration.mongodb.service.UploadRealTimeMonitoringDataService; -import com.ruoyi.order.api.dto.ChargingStatisticeDTO; -import com.ruoyi.order.api.feignClient.ChargingOrderClient; -import com.ruoyi.order.api.model.TChargingOrder; -import com.ruoyi.other.api.domain.Operator; -import com.ruoyi.other.api.feignClient.OperatorClient; import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.core.RocketMQTemplate; -import org.junit.jupiter.api.Test; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.cglib.core.Local; -import org.springframework.messaging.support.MessageBuilder; -import org.springframework.util.StringUtils; - -import javax.annotation.Resource; -import java.math.BigDecimal; -import java.text.SimpleDateFormat; -import java.time.LocalDateTime; -import java.time.format.DateTimeFormatter; -import java.time.temporal.ChronoUnit; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; @Slf4j @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, classes = RuoYiIntegrationApplication.class) public class RuoYiIntegrationApplicationTests { diff --git a/ruoyi-service/ruoyi-jianguan/pom.xml b/ruoyi-service/ruoyi-jianguan/pom.xml index c579ca0..5f8743f 100644 --- a/ruoyi-service/ruoyi-jianguan/pom.xml +++ b/ruoyi-service/ruoyi-jianguan/pom.xml @@ -104,38 +104,6 @@ <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> - <!--rocketmq--> - <dependency> - <groupId>org.apache.rocketmq</groupId> - <artifactId>rocketmq-spring-boot-starter</artifactId> - <version>2.3.0</version> - </dependency> -<!-- <dependency>--> -<!-- <groupId>com.alibaba.cloud</groupId>--> -<!-- <artifactId>spring-cloud-starter-stream-rocketmq</artifactId>--> -<!-- <version>2.2.2.RELEASE</version>--> -<!-- <exclusions>--> -<!-- <exclusion>--> -<!-- <groupId>org.apache.rocketmq</groupId>--> -<!-- <artifactId>rocketmq-client</artifactId>--> -<!-- </exclusion>--> -<!-- <exclusion>--> -<!-- <groupId>org.apache.rocketmq</groupId>--> -<!-- <artifactId>rocketmq-acl</artifactId>--> -<!-- </exclusion>--> -<!-- </exclusions>--> -<!-- </dependency>--> -<!-- --> -<!-- <dependency>--> -<!-- <groupId>org.apache.rocketmq</groupId>--> -<!-- <artifactId>rocketmq-client</artifactId>--> -<!-- <version>4.7.1</version>--> -<!-- </dependency>--> -<!-- <dependency>--> -<!-- <groupId>org.apache.rocketmq</groupId>--> -<!-- <artifactId>rocketmq-acl</artifactId>--> -<!-- <version>4.7.1</version>--> -<!-- </dependency>--> <!--mongodb--> <dependency> @@ -165,6 +133,12 @@ <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-integration</artifactId> </dependency> + <dependency> + <groupId>com.ruoyi</groupId> + <artifactId>ruoyi-api-jianguan</artifactId> + <version>3.6.2</version> + <scope>compile</scope> + </dependency> </dependencies> diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/controller/ChargingMessageController.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/controller/ChargingMessageController.java new file mode 100644 index 0000000..f3157a0 --- /dev/null +++ b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/controller/ChargingMessageController.java @@ -0,0 +1,255 @@ +package com.ruoyi.jianguan.controller; + +import com.alibaba.fastjson2.JSONObject; +import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient; +import com.ruoyi.chargingPile.api.model.TChargingGun; +import com.ruoyi.common.core.domain.R; +import com.ruoyi.integration.api.vo.ChargingOrderVo; +import com.ruoyi.jianguan.model.SupChargeOrderInfo; +import com.ruoyi.jianguan.model.SupEquipChargeStatus; +import com.ruoyi.jianguan.util.ChuanYiChongSuperviseUtil; +import com.ruoyi.jianguan.util.TCECSuperviseUtil; +import com.ruoyi.other.api.domain.Operator; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.Date; + +/** + * @author zhibing.pu + * @Date 2025/7/12 10:07 + */ +@Slf4j +@RestController +@RequestMapping("/chargingMessage") +public class ChargingMessageController { + + @Resource + private TCECSuperviseUtil tcecSuperviseUtil; + + private final static String operatorId = "906171535"; + @Resource + private ChargingGunClient chargingGunClient; + @Resource + private ChuanYiChongSuperviseUtil chuanYiChongSuperviseUtil; + + + /** + * 推送充电订单信息 + * @param chargingOrder + * @return + */ + @ResponseBody + @RequestMapping("/pushOrderInfo") + public R pushOrderInfo(@RequestBody ChargingOrderVo chargingOrder){ + SupChargeOrderInfo supChargeOrderInfo = new SupChargeOrderInfo(); + supChargeOrderInfo.setOperatorID(operatorId); + supChargeOrderInfo.setEquipmentOwnerID(operatorId); + supChargeOrderInfo.setStationID(String.valueOf(chargingOrder.getSiteId())); + supChargeOrderInfo.setEquipmentID(String.valueOf(chargingOrder.getChargingPileId())); + supChargeOrderInfo.setOrderNo(operatorId+chargingOrder.getCode()); + TChargingGun chargingGun1 = chargingGunClient.getChargingGunById(chargingOrder.getChargingGunId()).getData(); + supChargeOrderInfo.setConnectorID(chargingGun1.getFullNumber()); + supChargeOrderInfo.setEquipmentClassification(1); + supChargeOrderInfo.setPushTimeStamp(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); + supChargeOrderInfo.setStartTime(chargingOrder.getStartTime() != null ? chargingOrder.getStartTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) : ""); + supChargeOrderInfo.setEndTime(chargingOrder.getEndTime() != null ? chargingOrder.getEndTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) : ""); + supChargeOrderInfo.setTotalPower(chargingOrder.getElectrovalence()); + supChargeOrderInfo.setTotalElecMoney(chargingOrder.getElectrovalence()); + supChargeOrderInfo.setTotalServiceMoney(chargingOrder.getServiceCharge()); + supChargeOrderInfo.setTotalMoney(chargingOrder.getOrderAmount()); + switch (chargingOrder.getEndMode()){ + case 0: + supChargeOrderInfo.setStopReason(5); + supChargeOrderInfo.setStopDesc("异常终止"); + break; + case 1: + supChargeOrderInfo.setStopReason(0); + supChargeOrderInfo.setStopDesc("用户手动停止充电"); + break; + case 2: + supChargeOrderInfo.setStopReason(1); + supChargeOrderInfo.setStopDesc("客户归属地运营商平台停止充电"); + break; + case 3: + supChargeOrderInfo.setStopReason(1); + supChargeOrderInfo.setStopDesc("费用不足中止"); + break; + } + tcecSuperviseUtil.notificationChargeOrderInfo(new Operator(), supChargeOrderInfo); + return R.ok(); + } + + + /** + * 推送充电订单状态 + * @param chargingOrder + * @return + */ + @ResponseBody + @RequestMapping("/pushOrderStatus") + public R pushOrderStatus(@RequestBody ChargingOrderVo chargingOrder){ + log.info("推送充电订单状态:{}", chargingOrder); + SupEquipChargeStatus supEquipChargeStatus = new SupEquipChargeStatus(); + supEquipChargeStatus.setOperatorID(operatorId); + supEquipChargeStatus.setEquipmentOwnerID(operatorId); + supEquipChargeStatus.setStationID(String.valueOf(chargingOrder.getSiteId())); + supEquipChargeStatus.setEquipmentID(String.valueOf(chargingOrder.getChargingPileId())); + supEquipChargeStatus.setOrderNo(operatorId+chargingOrder.getCode()); + switch (chargingOrder.getStatus()){ + case 2: + supEquipChargeStatus.setConnectorStatus(1); + break; + case 3: + supEquipChargeStatus.setConnectorStatus(2); + break; + case 4: + supEquipChargeStatus.setConnectorStatus(3); + break; + case 5: + supEquipChargeStatus.setConnectorStatus(4); + break; + } + TChargingGun chargingGun2 = chargingGunClient.getChargingGunById(chargingOrder.getChargingGunId()).getData(); + supEquipChargeStatus.setConnectorID(chargingGun2.getFullNumber()); + supEquipChargeStatus.setEquipmentClassification(1); + supEquipChargeStatus.setPushTimeStamp(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); + switch (chargingGun2.getStatus()){ + case 1: + supEquipChargeStatus.setConnectorStatus(0); + break; + case 2: + supEquipChargeStatus.setConnectorStatus(1); + break; + case 3: + supEquipChargeStatus.setConnectorStatus(2); + break; + case 4: + supEquipChargeStatus.setConnectorStatus(3); + break; + case 5: + supEquipChargeStatus.setConnectorStatus(3); + break; + case 6: + supEquipChargeStatus.setConnectorStatus(4); + break; + case 7: + supEquipChargeStatus.setConnectorStatus(255); + break; + } + supEquipChargeStatus.setCurrentA(chargingOrder.getCurrent()); + + supEquipChargeStatus.setSOC(null != chargingOrder.getTotalElectricity()?chargingOrder.getTotalElectricity():new BigDecimal("1")); + supEquipChargeStatus.setStartTime(chargingOrder.getStartTime() != null ? chargingOrder.getStartTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) : ""); + supEquipChargeStatus.setEndTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); + supEquipChargeStatus.setTotalPower(chargingOrder.getElectrovalence()); + tcecSuperviseUtil.notificationSupEquipChargeStatus(new Operator(), supEquipChargeStatus); + // 川逸充 + if (chargingOrder.getRechargePaymentType()==3){ + JSONObject jsonObject = new JSONObject(); + jsonObject.put("StartChargeSeq",chargingOrder.getCode()); + jsonObject.put("ConnectorID",chargingGun2.getFullNumber()); + LocalDateTime startTime = chargingOrder.getStartTime(); + + //状态(0=未知,1=等待中/已插枪,2=启动中,3=充电中,4=停止中,5=已结束) + int tempStatus = 0; + switch (chargingOrder.getStatus()){ + case 1: + tempStatus=1; + + case 2: + tempStatus=1; + jsonObject.put("StartChargeSeqStat",tempStatus); + if (startTime!=null){ + jsonObject.put("StartTime",startTime.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + }else{ + LocalDateTime now = LocalDateTime.now(); + // 转化为yyyy-MM-dd HH:mm:ss格式字符串 + jsonObject.put("StartTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + } + chuanYiChongSuperviseUtil.notificationStationStatus(new Operator(), jsonObject); + break; + case 3: + tempStatus=2; + jsonObject.put("StartChargeSeqStat",tempStatus); + if (startTime!=null){ + jsonObject.put("StartTime",startTime.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + }else{ + LocalDateTime now = LocalDateTime.now(); + // 转化为yyyy-MM-dd HH:mm:ss格式字符串 + jsonObject.put("StartTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + } + chuanYiChongSuperviseUtil.notificationStationStatus(new Operator(), jsonObject); + break; + case 4: + tempStatus=3; + jsonObject.put("StartChargeSeqStat",tempStatus); + if (startTime!=null){ + jsonObject.put("StartTime",startTime.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + }else{ + LocalDateTime now = LocalDateTime.now(); + // 转化为yyyy-MM-dd HH:mm:ss格式字符串 + jsonObject.put("StartTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + } + chuanYiChongSuperviseUtil.notificationStationStatus(new Operator(), jsonObject); + break; + case 5: + jsonObject.put("StartChargeSeqStat",4); + int temp = 0; + //充电枪状态(1=离线,2=空闲,3=占用(未充电),4=占用(充电中),5=占用(已充满),6=占用(预约锁定),7=故障) + switch (chargingGun2.getStatus()){ + case 1: + temp = 0; + break; + case 2: + temp=1; + break; + case 3: + temp=2; + break; + case 4: + temp=3; + break; + case 5: + temp=4; + break; + case 6: + temp=4; + break; + case 7: + temp = 255; + break; + } + jsonObject.put("ConnectorStatus",temp); + + jsonObject.put("CurrentA",chargingOrder.getCurrent()); + jsonObject.put("VoltageA",chargingOrder.getVoltage()); + LocalDateTime startTime2 = chargingOrder.getStartTime(); + + if (startTime2!=null){ + jsonObject.put("StartTime",startTime2.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + }else{ + LocalDateTime now = LocalDateTime.now(); + // 转化为yyyy-MM-dd HH:mm:ss格式字符串 + jsonObject.put("StartTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + } + LocalDateTime now = LocalDateTime.now(); + // 转化为yyyy-MM-dd HH:mm:ss格式字符串 + jsonObject.put("EndTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + jsonObject.put("TotalPower",chargingOrder.getElectricity()); + jsonObject.put("TotalMoney",chargingOrder.getOrderAmount()); + chuanYiChongSuperviseUtil.notificationSupEquipChargeStatus(new Operator(), jsonObject); + break; + } + } + return R.ok(); + } +} diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/governmentCloud/UploadDataTaskUtil.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/governmentCloud/UploadDataTaskUtil.java index 9a0a9ad..9741636 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/governmentCloud/UploadDataTaskUtil.java +++ b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/governmentCloud/UploadDataTaskUtil.java @@ -3,12 +3,10 @@ import com.alibaba.fastjson.JSONObject; import com.ruoyi.common.core.domain.R; -import com.ruoyi.common.core.utils.DateUtils; import com.ruoyi.integration.api.model.*; import com.ruoyi.jianguan.mongodb.service.*; import com.ruoyi.jianguan.mqtt.config.TopicConstants; import com.ruoyi.jianguan.mqtt.util.MqttPushUtil; -import com.ruoyi.jianguan.rocket.model.ErrorMessageMessage; import io.netty.util.concurrent.DefaultThreadFactory; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; @@ -16,10 +14,8 @@ import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; -import java.text.ParseException; import java.text.SimpleDateFormat; import java.time.LocalDate; -import java.time.LocalDateTime; import java.util.Date; import java.util.List; import java.util.concurrent.*; @@ -40,7 +36,6 @@ * 每天的9点执行的任务 */ @Scheduled(cron = "0 0 10 * * *") -// @Scheduled(fixedRate = 60000) public void taskDay(){ try { // 传输mongodb的硬件数据 @@ -105,12 +100,6 @@ }); TimeUnit.MILLISECONDS.sleep(1); - -// Future<String> future = customthreadPoolExecutor.submit(() -> { -// log.info("线程:{},办理业务", Thread.currentThread().getName()); -// return "业务办理完成"; -// }); -// log.info(future.get()); } finally { gracefulShutdown(customthreadPoolExecutor); } diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/base/BaseMessage.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/model/BaseMessage.java similarity index 94% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/base/BaseMessage.java rename to ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/model/BaseMessage.java index df2bb67..025eca0 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/base/BaseMessage.java +++ b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/model/BaseMessage.java @@ -1,4 +1,4 @@ -package com.ruoyi.jianguan.rocket.base; +package com.ruoyi.jianguan.model; import lombok.Data; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ErrorMessageMessage.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/model/ErrorMessageMessage.java similarity index 96% rename from ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ErrorMessageMessage.java rename to ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/model/ErrorMessageMessage.java index a45ec2f..d7c8234 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ErrorMessageMessage.java +++ b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/model/ErrorMessageMessage.java @@ -1,6 +1,6 @@ -package com.ruoyi.jianguan.rocket.model; +package com.ruoyi.jianguan.model; -import com.ruoyi.jianguan.rocket.base.BaseMessage; +import com.ruoyi.jianguan.model.BaseMessage; import lombok.Data; /** diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/ErrorMessageMessageService.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/ErrorMessageMessageService.java index b1244fc..4b040c1 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/ErrorMessageMessageService.java +++ b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/ErrorMessageMessageService.java @@ -1,8 +1,7 @@ package com.ruoyi.jianguan.mongodb.service; -import com.ruoyi.integration.api.model.EndCharge; import com.ruoyi.jianguan.mongodb.base.BaseService; -import com.ruoyi.jianguan.rocket.model.ErrorMessageMessage; +import com.ruoyi.jianguan.model.ErrorMessageMessage; import java.util.List; import java.util.Date; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/GroundLockRealTimeDataService.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/GroundLockRealTimeDataService.java index f855826..7685850 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/GroundLockRealTimeDataService.java +++ b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/GroundLockRealTimeDataService.java @@ -2,7 +2,6 @@ import com.ruoyi.integration.api.model.GroundLockRealTimeData; import com.ruoyi.jianguan.mongodb.base.BaseService; -import com.ruoyi.jianguan.rocket.model.ErrorMessageMessage; import java.util.List; import java.util.Date; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/ErrorMessageMessageServiceImpl.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/ErrorMessageMessageServiceImpl.java index 50015bd..3f17c8d 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/ErrorMessageMessageServiceImpl.java +++ b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/ErrorMessageMessageServiceImpl.java @@ -1,10 +1,8 @@ package com.ruoyi.jianguan.mongodb.service.impl; -import com.ruoyi.common.core.utils.StringUtils; -import com.ruoyi.integration.api.model.EndCharge; import com.ruoyi.jianguan.constant.IotConstant; import com.ruoyi.jianguan.mongodb.service.ErrorMessageMessageService; -import com.ruoyi.jianguan.rocket.model.ErrorMessageMessage; +import com.ruoyi.jianguan.model.ErrorMessageMessage; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Sort; import org.springframework.data.mongodb.core.MongoTemplate; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/GroundLockRealTimeDataServiceImpl.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/GroundLockRealTimeDataServiceImpl.java index 6d9ad56..3861021 100644 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/GroundLockRealTimeDataServiceImpl.java +++ b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/GroundLockRealTimeDataServiceImpl.java @@ -1,10 +1,8 @@ package com.ruoyi.jianguan.mongodb.service.impl; -import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.integration.api.model.GroundLockRealTimeData; import com.ruoyi.jianguan.constant.IotConstant; import com.ruoyi.jianguan.mongodb.service.GroundLockRealTimeDataService; -import com.ruoyi.jianguan.rocket.model.ErrorMessageMessage; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Sort; import org.springframework.data.mongodb.core.MongoTemplate; diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/base/JianGuanMessage.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/base/JianGuanMessage.java deleted file mode 100644 index e0691c6..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/base/JianGuanMessage.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.ruoyi.jianguan.rocket.base; - -import com.ruoyi.jianguan.model.ConnectorStatusInfo; -import com.ruoyi.jianguan.model.SupChargeOrderInfo; -import com.ruoyi.jianguan.model.SupEquipChargeStatus; -import lombok.Data; - -@Data -public class JianGuanMessage extends BaseMessage { - // 充电设备状态message - private GunStatusMessage gunStatusMessage; - // 推送充电订单状态/充电订单信息message - private ChargingOrderMessage orderMessage; - -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/configuration/EnvironmentIsolationConfig.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/configuration/EnvironmentIsolationConfig.java deleted file mode 100644 index 0e91df7..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/configuration/EnvironmentIsolationConfig.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.ruoyi.jianguan.rocket.configuration; - -import org.apache.rocketmq.spring.support.DefaultRocketMQListenerContainer; -import org.springframework.beans.BeansException; -import org.springframework.beans.factory.config.BeanPostProcessor; -import org.springframework.util.StringUtils; - -public class EnvironmentIsolationConfig implements BeanPostProcessor { - private RocketEnhanceProperties rocketEnhanceProperties; - - public EnvironmentIsolationConfig(RocketEnhanceProperties rocketEnhanceProperties) { - this.rocketEnhanceProperties = rocketEnhanceProperties; - } - - - /** - * 在装载Bean之前实现参数修改 - */ - @Override - public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException { - if (bean instanceof DefaultRocketMQListenerContainer) { - - DefaultRocketMQListenerContainer container = (DefaultRocketMQListenerContainer) bean; - - if (rocketEnhanceProperties.isEnabledIsolation() && StringUtils.hasText(rocketEnhanceProperties.getEnvironment())) { - container.setTopic(String.join("_", container.getTopic(), rocketEnhanceProperties.getEnvironment())); - } - return container; - } - return bean; - } -} diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/configuration/RocketEnhanceProperties.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/configuration/RocketEnhanceProperties.java deleted file mode 100644 index 993b6eb..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/configuration/RocketEnhanceProperties.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.ruoyi.jianguan.rocket.configuration; - -import lombok.Data; -import org.springframework.boot.context.properties.ConfigurationProperties; - -@ConfigurationProperties(prefix = "rocketmq.enhance") -@Data -public class RocketEnhanceProperties { - - private boolean enabledIsolation; - - private String environment; -} diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/configuration/RocketMQEnhanceAutoConfiguration.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/configuration/RocketMQEnhanceAutoConfiguration.java deleted file mode 100644 index cf6cc31..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/configuration/RocketMQEnhanceAutoConfiguration.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.ruoyi.jianguan.rocket.configuration; - -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; -import com.ruoyi.jianguan.rocket.util.RocketMQEnhanceTemplate; -import org.apache.rocketmq.spring.core.RocketMQTemplate; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Primary; -import org.springframework.messaging.converter.CompositeMessageConverter; -import org.springframework.messaging.converter.MappingJackson2MessageConverter; -import org.springframework.messaging.converter.MessageConverter; - -import java.util.List; - -@Configuration -@EnableConfigurationProperties(RocketEnhanceProperties.class) -public class RocketMQEnhanceAutoConfiguration { - - /** - * 注入增强的RocketMQEnhanceTemplate - */ - @Bean - public RocketMQEnhanceTemplate rocketMQEnhanceTemplate(RocketMQTemplate rocketMQTemplate){ - return new RocketMQEnhanceTemplate(rocketMQTemplate); - } - - /** - * 解决RocketMQ Jackson不支持Java时间类型配置 - * 源码参考:{@link org.apache.rocketmq.spring.autoconfigure} - */ - @Bean - @Primary - public RocketMQMessageConverter enhanceRocketMQMessageConverter(){ - RocketMQMessageConverter converter = new RocketMQMessageConverter(); - CompositeMessageConverter compositeMessageConverter = (CompositeMessageConverter) converter.getMessageConverter(); - List<MessageConverter> messageConverterList = compositeMessageConverter.getConverters(); - for (MessageConverter messageConverter : messageConverterList) { - if(messageConverter instanceof MappingJackson2MessageConverter){ - MappingJackson2MessageConverter jackson2MessageConverter = (MappingJackson2MessageConverter) messageConverter; - ObjectMapper objectMapper = jackson2MessageConverter.getObjectMapper(); - objectMapper.registerModules(new JavaTimeModule()); - } - } - return converter; - } - - - /** - * 环境隔离配置 - */ - @Bean - @ConditionalOnProperty(name="rocketmq.enhance.enabledIsolation", havingValue="true") - public EnvironmentIsolationConfig environmentSetup(RocketEnhanceProperties rocketEnhanceProperties){ - return new EnvironmentIsolationConfig(rocketEnhanceProperties); - } - -} - diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/configuration/RocketMQMessageConverter.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/configuration/RocketMQMessageConverter.java deleted file mode 100644 index 96c87a7..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/configuration/RocketMQMessageConverter.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.ruoyi.jianguan.rocket.configuration; - -import org.springframework.messaging.converter.*; -import org.springframework.util.ClassUtils; - -import java.util.ArrayList; -import java.util.List; - -public class RocketMQMessageConverter { - - private static final boolean JACKSON_PRESENT; - private static final boolean FASTJSON_PRESENT; - - static { - ClassLoader classLoader = RocketMQMessageConverter.class.getClassLoader(); - JACKSON_PRESENT = ClassUtils.isPresent("com.fasterxml.jackson,databind.ObjectMapper", classLoader) - && ClassUtils.isPresent("com.fasterxml.jackson.core.JsonGenerator", classLoader); - FASTJSON_PRESENT = ClassUtils.isPresent("com.alibaba.fastjson.JSON", classLoader) - && ClassUtils.isPresent("com.alibaba.fastjson.support.config.FastJsonConfig", classLoader); - } - private final CompositeMessageConverter messageConverter; - - public RocketMQMessageConverter(){ - List<MessageConverter> messageConverters = new ArrayList<>(); - ByteArrayMessageConverter byteArrayMessageConverter = new ByteArrayMessageConverter(); - byteArrayMessageConverter.setContentTypeResolver(null); - messageConverters.add(byteArrayMessageConverter); - messageConverters.add(new StringMessageConverter()); - if (JACKSON_PRESENT) { - messageConverters.add(new MappingJackson2MessageConverter()); - } - if(FASTJSON_PRESENT) { - try { - messageConverters.add( - (MessageConverter) ClassUtils.forName( - "com.alibaba.fastjson.support.spring.messaging.MappingFastJsonMessageConverter", ClassUtils.getDefaultClassLoader()).newInstance()); - } catch (ClassNotFoundException | IllegalAccessException | InstantiationException ignored) { - - } - } - messageConverter = new CompositeMessageConverter(messageConverters); - } - - public MessageConverter getMessageConverter(){ return messageConverter; } - -} diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/constant/EnhanceMessageConstant.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/constant/EnhanceMessageConstant.java deleted file mode 100644 index dc2e413..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/constant/EnhanceMessageConstant.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.ruoyi.jianguan.rocket.constant; - -public class EnhanceMessageConstant { - - /** - * 延时等级 - */ - public static final int FIVE_SECOND=5000; - /** - * 消息前缀 - */ - public static final String RETRY_PREFIX="retry_"; - -} diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/BmsAbortMessage.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/BmsAbortMessage.java deleted file mode 100644 index 48f0efd..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/BmsAbortMessage.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.ruoyi.jianguan.rocket.model; - -import com.ruoyi.jianguan.rocket.base.BaseMessage; -import lombok.Data; - -/** - * 充电阶段BMS中止 - **/ - -@Data -public class BmsAbortMessage extends BaseMessage { - - private String transaction_serial_number; // 交易流水号 - private String charging_pile_code; // 桩编码 - private String charging_gun_code; // 抢号 - private Integer bms_stop_charging_reason; // BMS 中止充电原因(1-2 位——所需求的 SOC 目标值,3-4 位——达到总电压的设定值,5-6 位——达到单体电压设定值,7-8 位——充电机主动中止) - private Integer bms_aborted_charging_fault_cause; // BMS 中止充电故障原因(1-2 位——绝缘故障,3-4 位——输出连接器过温故障,5-6 位——BMS 元件、输出连接器过温,7-8 位——充电连接器故障,9-10 位——电池组温度过高故障,11-12 位——高压继电器故障,13 位-14 位——检测点 2 电压检测故障,15-16 位——其他故障) - private Integer bms_aborted_charging_error_cause; // BMS 中止充电错误原因(1-2 位——电流过大,3-4 位——电压异常,5-8 位——预留位) - -} - - diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingOrderMessage.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingOrderMessage.java deleted file mode 100644 index 16a99a7..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/ChargingOrderMessage.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.ruoyi.jianguan.rocket.model; - -import com.ruoyi.jianguan.rocket.base.BaseMessage; -import lombok.Data; - -/** - * 充电桩计费模型请求 - **/ - -@Data -public class ChargingOrderMessage extends BaseMessage { - - private String orderNumber;// 订单编号 - private String soc;// soc - -} - - - diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/EndChargeMessage.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/EndChargeMessage.java deleted file mode 100644 index 27dd327..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/EndChargeMessage.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.ruoyi.jianguan.rocket.model; - -import com.ruoyi.jianguan.rocket.base.BaseMessage; -import lombok.Data; - -import java.math.BigDecimal; - -/** - * 充电结束 - **/ - -@Data -public class EndChargeMessage extends BaseMessage { - - private String transaction_serial_number; // 交易流水号 - private String charging_pile_code; // 桩编码 - private String charging_gun_code; // 抢号 - private BigDecimal bms_battery_charging_status; // BMS 中止荷电状态 SOC - private BigDecimal bms_minimum_battery_voltage; // BMS 动力蓄电池单体最低电压 - private BigDecimal bms_maximum_battery_voltage; // BMS 动力蓄电池单体最高电压 - private BigDecimal bms_minimum_battery_temperature; // BMS 动力蓄电池最低温度 - private BigDecimal bms_maximum_battery_temperature; // BMS 动力蓄电池最高温度 - private BigDecimal cumulative_charging_time; // 电桩累计充电时间 - private BigDecimal output_energy; // 电桩输出能量 - private String charger_code; // 电桩充电机编号 - -} - - diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/GunStatusMessage.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/GunStatusMessage.java deleted file mode 100644 index f459829..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/GunStatusMessage.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.ruoyi.jianguan.rocket.model; - -import com.ruoyi.jianguan.rocket.base.BaseMessage; -import lombok.Data; - -/** - * 充电桩计费模型请求 - **/ - -@Data -public class GunStatusMessage extends BaseMessage { - - private String fullNumber;// 枪完整编码 - -} - - - diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/MotorAbortMessage.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/MotorAbortMessage.java deleted file mode 100644 index f1d0bcd..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/MotorAbortMessage.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.ruoyi.jianguan.rocket.model; - -import com.ruoyi.jianguan.rocket.base.BaseMessage; -import lombok.Data; - -/** - * 充电阶段充电机中止 - **/ - -@Data -public class MotorAbortMessage extends BaseMessage { - - private String transaction_serial_number; // 交易流水号 - private String charging_pile_code; // 桩编码 - private String charging_gun_code; // 抢号 - private Integer charger_stops_charging_reason; // 充电机中止充电原因(1-2 位——达到充电机设定的条件中止,3-4 位——人工中止,5-6 位——异常中止) - private Integer charging_failure_cause; // 充电机中止充电故障原因(1-2 位——充电机过温故障,3-4 位——充电连接器故障,5-6 位——充电机内部过温故障,7-8 位——所需电量不能传送,9-10 位——充电机急停故障,11-12 位——其他故障,13-16 位——预留位) - private Integer charging_machine_stopped_charging_error_cause; // 充电机中止充电错误原因(1-2 位——电流不匹配,3-4 位——电压异常,5-8 位——预留位) - -} - - diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/QrCodeDeliveryMessage.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/QrCodeDeliveryMessage.java deleted file mode 100644 index 5a6584e..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/model/QrCodeDeliveryMessage.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.ruoyi.jianguan.rocket.model; - -import com.ruoyi.jianguan.rocket.base.BaseMessage; -import lombok.Data; - -/** - * - **/ - -@Data -public class QrCodeDeliveryMessage extends BaseMessage { - - private String charging_pile_code; // 桩编码 - private String charging_gun_code; // 枪编码 - private Integer code_format; // "0:第一种前缀+桩编号 1:第二种前缀+桩编号+枪编号" - private Integer prefix_length; // 二维码前缀长度长度最大不超过200 字节 - private String code_prefix; // 如:“www.baidu.com?No=” - private String qr_code; // 二维码内容,如:“www.baidu.com?No=3422000100023301” - -} - - diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/produce/ChargingMessageListener.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/produce/ChargingMessageListener.java deleted file mode 100644 index 6fb7674..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/produce/ChargingMessageListener.java +++ /dev/null @@ -1,325 +0,0 @@ -package com.ruoyi.jianguan.rocket.produce; - -import com.alibaba.fastjson2.JSONObject; -import com.ruoyi.chargingPile.api.feignClient.AccountingStrategyDetailClient; -import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient; -import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient; -import com.ruoyi.chargingPile.api.model.TChargingGun; -import com.ruoyi.integration.api.model.*; -import com.ruoyi.jianguan.model.ConnectorStatusInfo; -import com.ruoyi.jianguan.model.SupChargeOrderInfo; -import com.ruoyi.jianguan.model.SupEquipChargeStatus; -import com.ruoyi.jianguan.rocket.base.ChargingOrderMessage; -import com.ruoyi.jianguan.rocket.base.GunStatusMessage; -import com.ruoyi.jianguan.rocket.base.JianGuanMessage; -import com.ruoyi.jianguan.rocket.util.EnhanceMessageHandler; -import com.ruoyi.jianguan.util.ChuanYiChongSuperviseUtil; -import com.ruoyi.jianguan.util.SendTagConstant; -import com.ruoyi.jianguan.util.TCECSuperviseUtil; -import com.ruoyi.order.api.feignClient.ChargingOrderClient; -import com.ruoyi.order.api.model.TChargingOrder; -import com.ruoyi.other.api.domain.Operator; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.MessageModel; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; -import org.apache.rocketmq.spring.core.RocketMQListener; -import org.springframework.data.redis.core.RedisTemplate; -import org.springframework.stereotype.Component; -import org.springframework.util.StringUtils; - -import javax.annotation.Resource; -import java.math.BigDecimal; -import java.text.SimpleDateFormat; -import java.time.LocalDateTime; -import java.time.format.DateTimeFormatter; -import java.util.Date; - -@Slf4j -@Component -@RocketMQMessageListener( - messageModel = MessageModel.CLUSTERING, - consumerGroup = "jianguan_message", - topic = "jianguan_message", - selectorExpression = "jianguan_message" -) -public class ChargingMessageListener implements RocketMQListener<JianGuanMessage> { - - @Resource - private ChargingOrderClient chargingOrderClient; - @Resource - private AccountingStrategyDetailClient accountingStrategyDetailClient; - - @Resource - private ChargingPileClient chargingPileClient; - @Resource - private ChargingGunClient chargingGunClient; - - @Resource - private RedisTemplate redisTemplate; - @Resource - private TCECSuperviseUtil tcecSuperviseUtil; - @Resource - private ChuanYiChongSuperviseUtil chuanYiChongSuperviseUtil; - - private final static String operatorId = "906171535"; - - - /** - * 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型 - */ - @Override - public void onMessage(JianGuanMessage message) { - log.info("rocket收到的消息内容:{}", message); - String serviceId = message.getServiceId(); - if (!StringUtils.hasLength(serviceId)) { - return; - } - log.info("rocket收到的消息内容:{} {}", serviceId, message); - switch (serviceId) { - case SendTagConstant.GUN_STATUS: - GunStatusMessage gunStatusMessage = message.getGunStatusMessage(); - log.info("推送充电设备接口状态:{}", gunStatusMessage); - TChargingGun chargingGun = chargingGunClient.getChargingGunByFullNumber(gunStatusMessage.getFullNumber()).getData(); - if (chargingGun!=null){ - ConnectorStatusInfo connectorStatusInfo = new ConnectorStatusInfo(); - connectorStatusInfo.setOperatorID(operatorId); - connectorStatusInfo.setEquipmentOwnerID(operatorId); - connectorStatusInfo.setStationID(String.valueOf(chargingGun.getSiteId())); - connectorStatusInfo.setEquipmentID(String.valueOf(chargingGun.getChargingPileId())); - connectorStatusInfo.setConnectorID(chargingGun.getFullNumber()); - if (chargingGun.getEquipmentClassification()!=null){ - connectorStatusInfo.setEquipmentClassification(chargingGun.getEquipmentClassification()); - }else { - connectorStatusInfo.setEquipmentClassification(1); - } - switch (chargingGun.getStatus()){ - case 1: - connectorStatusInfo.setStatus(0); - break; - case 2: - connectorStatusInfo.setStatus(1); - break; - case 3: - connectorStatusInfo.setStatus(2); - break; - case 4: - connectorStatusInfo.setStatus(3); - break; - case 5: - connectorStatusInfo.setStatus(3); - break; - case 6: - connectorStatusInfo.setStatus(4); - break; - case 7: - connectorStatusInfo.setStatus(255); - break; - } - connectorStatusInfo.setUpdateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); - tcecSuperviseUtil.notificationStationStatus(new Operator(), connectorStatusInfo); - } - - break; - case SendTagConstant.ORDER_INFO: - ChargingOrderMessage orderInfoMessage = message.getOrderMessage(); - log.info("推送充电订单信息:{}", orderInfoMessage); - TChargingOrder chargingOrder1 = chargingOrderClient.getOrderByCode(orderInfoMessage.getOrderNumber()).getData(); - SupChargeOrderInfo supChargeOrderInfo = new SupChargeOrderInfo(); - supChargeOrderInfo.setOperatorID(operatorId); - supChargeOrderInfo.setEquipmentOwnerID(operatorId); - supChargeOrderInfo.setStationID(String.valueOf(chargingOrder1.getSiteId())); - supChargeOrderInfo.setEquipmentID(String.valueOf(chargingOrder1.getChargingPileId())); - supChargeOrderInfo.setOrderNo(operatorId+chargingOrder1.getCode()); - TChargingGun chargingGun1 = chargingGunClient.getChargingGunById(chargingOrder1.getChargingGunId()).getData(); - supChargeOrderInfo.setConnectorID(chargingGun1.getFullNumber()); - supChargeOrderInfo.setEquipmentClassification(1); - supChargeOrderInfo.setPushTimeStamp(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); - supChargeOrderInfo.setStartTime(chargingOrder1.getStartTime() != null ? chargingOrder1.getStartTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) : ""); - supChargeOrderInfo.setEndTime(chargingOrder1.getEndTime() != null ? chargingOrder1.getEndTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) : ""); - supChargeOrderInfo.setTotalPower(chargingOrder1.getElectrovalence()); - supChargeOrderInfo.setTotalElecMoney(chargingOrder1.getElectrovalence()); - supChargeOrderInfo.setTotalServiceMoney(chargingOrder1.getServiceCharge()); - supChargeOrderInfo.setTotalMoney(chargingOrder1.getOrderAmount()); - switch (chargingOrder1.getEndMode()){ - case 0: - supChargeOrderInfo.setStopReason(5); - supChargeOrderInfo.setStopDesc("异常终止"); - break; - case 1: - supChargeOrderInfo.setStopReason(0); - supChargeOrderInfo.setStopDesc("用户手动停止充电"); - break; - case 2: - supChargeOrderInfo.setStopReason(1); - supChargeOrderInfo.setStopDesc("客户归属地运营商平台停止充电"); - break; - case 3: - supChargeOrderInfo.setStopReason(1); - supChargeOrderInfo.setStopDesc("费用不足中止"); - break; - } - tcecSuperviseUtil.notificationChargeOrderInfo(new Operator(), supChargeOrderInfo); - break; - case SendTagConstant.ORDER_STATUS: - ChargingOrderMessage orderStatusMessage = message.getOrderMessage(); - log.info("推送充电订单状态:{}", orderStatusMessage); - TChargingOrder chargingOrder2 = chargingOrderClient.getOrderByCode(orderStatusMessage.getOrderNumber()).getData(); - SupEquipChargeStatus supEquipChargeStatus = new SupEquipChargeStatus(); - supEquipChargeStatus.setOperatorID(operatorId); - supEquipChargeStatus.setEquipmentOwnerID(operatorId); - supEquipChargeStatus.setStationID(String.valueOf(chargingOrder2.getSiteId())); - supEquipChargeStatus.setEquipmentID(String.valueOf(chargingOrder2.getChargingPileId())); - supEquipChargeStatus.setOrderNo(operatorId+chargingOrder2.getCode()); - switch (chargingOrder2.getStatus()){ - case 2: - supEquipChargeStatus.setConnectorStatus(1); - break; - case 3: - supEquipChargeStatus.setConnectorStatus(2); - break; - case 4: - supEquipChargeStatus.setConnectorStatus(3); - break; - case 5: - supEquipChargeStatus.setConnectorStatus(4); - break; - } - TChargingGun chargingGun2 = chargingGunClient.getChargingGunById(chargingOrder2.getChargingGunId()).getData(); - supEquipChargeStatus.setConnectorID(chargingGun2.getFullNumber()); - supEquipChargeStatus.setEquipmentClassification(1); - supEquipChargeStatus.setPushTimeStamp(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); - switch (chargingGun2.getStatus()){ - case 1: - supEquipChargeStatus.setConnectorStatus(0); - break; - case 2: - supEquipChargeStatus.setConnectorStatus(1); - break; - case 3: - supEquipChargeStatus.setConnectorStatus(2); - break; - case 4: - supEquipChargeStatus.setConnectorStatus(3); - break; - case 5: - supEquipChargeStatus.setConnectorStatus(3); - break; - case 6: - supEquipChargeStatus.setConnectorStatus(4); - break; - case 7: - supEquipChargeStatus.setConnectorStatus(255); - break; - } - supEquipChargeStatus.setCurrentA(chargingOrder2.getCurrent()); - - supEquipChargeStatus.setSOC(StringUtils.hasLength(orderStatusMessage.getSoc())?new BigDecimal(orderStatusMessage.getSoc()):new BigDecimal("1")); - supEquipChargeStatus.setStartTime(chargingOrder2.getStartTime() != null ? chargingOrder2.getStartTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) : ""); - supEquipChargeStatus.setEndTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); - supEquipChargeStatus.setTotalPower(chargingOrder2.getElectrovalence()); - tcecSuperviseUtil.notificationSupEquipChargeStatus(new Operator(), supEquipChargeStatus); - // 川逸充 - if (chargingOrder2.getRechargePaymentType()==3){ - JSONObject jsonObject = new JSONObject(); - jsonObject.put("StartChargeSeq",chargingOrder2.getCode()); - jsonObject.put("ConnectorID",chargingGun2.getFullNumber()); - LocalDateTime startTime = chargingOrder2.getStartTime(); - - //状态(0=未知,1=等待中/已插枪,2=启动中,3=充电中,4=停止中,5=已结束) - int tempStatus = 0; - switch (chargingOrder2.getStatus()){ - case 1: - tempStatus=1; - - case 2: - tempStatus=1; - jsonObject.put("StartChargeSeqStat",tempStatus); - if (startTime!=null){ - jsonObject.put("StartTime",startTime.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - }else{ - LocalDateTime now = LocalDateTime.now(); - // 转化为yyyy-MM-dd HH:mm:ss格式字符串 - jsonObject.put("StartTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - } - chuanYiChongSuperviseUtil.notificationStationStatus(new Operator(), jsonObject); - break; - case 3: - tempStatus=2; - jsonObject.put("StartChargeSeqStat",tempStatus); - if (startTime!=null){ - jsonObject.put("StartTime",startTime.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - }else{ - LocalDateTime now = LocalDateTime.now(); - // 转化为yyyy-MM-dd HH:mm:ss格式字符串 - jsonObject.put("StartTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - } - chuanYiChongSuperviseUtil.notificationStationStatus(new Operator(), jsonObject); - break; - case 4: - tempStatus=3; - jsonObject.put("StartChargeSeqStat",tempStatus); - if (startTime!=null){ - jsonObject.put("StartTime",startTime.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - }else{ - LocalDateTime now = LocalDateTime.now(); - // 转化为yyyy-MM-dd HH:mm:ss格式字符串 - jsonObject.put("StartTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - } - chuanYiChongSuperviseUtil.notificationStationStatus(new Operator(), jsonObject); - break; - case 5: - jsonObject.put("StartChargeSeqStat",4); - int temp = 0; - //充电枪状态(1=离线,2=空闲,3=占用(未充电),4=占用(充电中),5=占用(已充满),6=占用(预约锁定),7=故障) - switch (chargingGun2.getStatus()){ - case 1: - temp = 0; - break; - case 2: - temp=1; - break; - case 3: - temp=2; - break; - case 4: - temp=3; - break; - case 5: - temp=4; - break; - case 6: - temp=4; - break; - case 7: - temp = 255; - break; - } - jsonObject.put("ConnectorStatus",temp); - - jsonObject.put("CurrentA",chargingOrder2.getCurrent()); - jsonObject.put("VoltageA",chargingOrder2.getVoltage()); - LocalDateTime startTime2 = chargingOrder2.getStartTime(); - - if (startTime2!=null){ - jsonObject.put("StartTime",startTime2.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - }else{ - LocalDateTime now = LocalDateTime.now(); - // 转化为yyyy-MM-dd HH:mm:ss格式字符串 - jsonObject.put("StartTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - } - LocalDateTime now = LocalDateTime.now(); - // 转化为yyyy-MM-dd HH:mm:ss格式字符串 - jsonObject.put("EndTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - jsonObject.put("TotalPower",chargingOrder2.getElectricity()); - jsonObject.put("TotalMoney",chargingOrder2.getOrderAmount()); - chuanYiChongSuperviseUtil.notificationSupEquipChargeStatus(new Operator(), jsonObject); - break; - } - } - - - break; - } - } - -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/util/EnhanceMessageHandler.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/util/EnhanceMessageHandler.java deleted file mode 100644 index 13080a8..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/util/EnhanceMessageHandler.java +++ /dev/null @@ -1,151 +0,0 @@ -package com.ruoyi.jianguan.rocket.util; - -import com.alibaba.fastjson.JSONObject; -import com.ruoyi.jianguan.rocket.base.BaseMessage; -import com.ruoyi.jianguan.rocket.constant.EnhanceMessageConstant; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.client.producer.SendResult; -import org.apache.rocketmq.client.producer.SendStatus; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; - -import javax.annotation.Resource; - -@Slf4j -public abstract class EnhanceMessageHandler<T extends BaseMessage> { - /** - * 默认重试次数 - */ - private static final int MAX_RETRY_TIMES = 3; - - /** - * 延时等级 - */ - private static final int DELAY_LEVEL = EnhanceMessageConstant.FIVE_SECOND; - - - @Resource - private RocketMQEnhanceTemplate rocketMQEnhanceTemplate; - - /** - * 消息处理 - * - * @param message 待处理消息 - * @throws Exception 消费异常 - */ - protected abstract void handleMessage(T message) throws Exception; - - /** - * 超过重试次数消息,需要启用isRetry - * - * @param message 待处理消息 - */ - protected abstract void handleMaxRetriesExceeded(T message); - - - /** - * 是否需要根据业务规则过滤消息,去重逻辑可以在此处处理 - * @param message 待处理消息 - * @return true: 本次消息被过滤,false:不过滤 - */ - protected boolean filter(T message) { - return false; - } - - - /** - * 是否异常时重复发送 - * - * @return true: 消息重试,false:不重试 - */ - protected abstract boolean isRetry(); - - /** - * 消费异常时是否抛出异常 - * 返回true,则由rocketmq机制自动重试 - * false:消费异常(如果没有开启重试则消息会被自动ack) - */ - protected abstract boolean throwException(); - - /** - * 最大重试次数 - * - * @return 最大重试次数,默认5次 - */ - protected int getMaxRetryTimes() { - return MAX_RETRY_TIMES; - } - - /** - * isRetry开启时,重新入队延迟时间 - * @return -1:立即入队重试 - */ - protected int getDelayLevel() { - return DELAY_LEVEL; - } - - /** - * 使用模板模式构建消息消费框架,可自由扩展或删减 - */ - public void dispatchMessage(T message) { - // 基础日志记录被父类处理了 - log.info("消费者收到消息[{}]", JSONObject.toJSON(message)); - - if (filter(message)) { - log.info("消息id{}不满足消费条件,已过滤。",message.getKey()); - return; - } - // 超过最大重试次数时调用子类方法处理 - if (message.getRetryTimes() > getMaxRetryTimes()) { - handleMaxRetriesExceeded(message); - return; - } - try { - long now = System.currentTimeMillis(); - handleMessage(message); - long costTime = System.currentTimeMillis() - now; - log.info("消息{}消费成功,耗时[{}ms]", message.getKey(),costTime); - } catch (Exception e) { - log.error("消息{}消费异常", message.getKey(),e); - // 是捕获异常还是抛出,由子类决定 - if (throwException()) { - //抛出异常,由DefaultMessageListenerConcurrently类处理 - throw new RuntimeException(e); - } - //此时如果不开启重试机制,则默认ACK了 - if (isRetry()) { - handleRetry(message); - } - } - } - - protected void handleRetry(T message) { - // 获取子类RocketMQMessageListener注解拿到topic和tag - RocketMQMessageListener annotation = this.getClass().getAnnotation(RocketMQMessageListener.class); - if (annotation == null) { - return; - } - //重新构建消息体 - String messageSource = message.getSource(); - if(!messageSource.startsWith(EnhanceMessageConstant.RETRY_PREFIX)){ - message.setSource(EnhanceMessageConstant.RETRY_PREFIX + messageSource); - } - message.setRetryTimes(message.getRetryTimes() + 1); - - SendResult sendResult; - - try { - // 如果消息发送不成功,则再次重新发送,如果发送异常则抛出由MQ再次处理(异常时不走延迟消息) - sendResult = rocketMQEnhanceTemplate.send(annotation.topic(), annotation.selectorExpression(), message, getDelayLevel()); - } catch (Exception ex) { - // 此处捕获之后,相当于此条消息被消息完成然后重新发送新的消息 - //由生产者直接发送 - throw new RuntimeException(ex); - } - // 发送失败的处理就是不进行ACK,由RocketMQ重试 - if (sendResult.getSendStatus() != SendStatus.SEND_OK) { - throw new RuntimeException("重试消息发送失败"); - } - - } - -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/util/RocketMQEnhanceTemplate.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/util/RocketMQEnhanceTemplate.java deleted file mode 100644 index d27c69e..0000000 --- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/rocket/util/RocketMQEnhanceTemplate.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.ruoyi.jianguan.rocket.util; - -import com.alibaba.fastjson.JSONObject; -import com.ruoyi.jianguan.rocket.base.BaseMessage; -import com.ruoyi.jianguan.rocket.configuration.RocketEnhanceProperties; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.client.producer.SendResult; -import org.apache.rocketmq.spring.core.RocketMQTemplate; -import org.apache.rocketmq.spring.support.RocketMQHeaders; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.messaging.Message; -import org.springframework.messaging.support.MessageBuilder; -import org.springframework.util.StringUtils; - -import javax.annotation.Resource; - -@Slf4j -@RequiredArgsConstructor(onConstructor = @__(@Autowired)) -public class RocketMQEnhanceTemplate { - private final RocketMQTemplate template; - - @Resource - private RocketEnhanceProperties rocketEnhanceProperties; - - public RocketMQTemplate getTemplate() { - return template; - } - - /** - * 根据系统上下文自动构建隔离后的topic - * 构建目的地 - */ - public String buildDestination(String topic, String tag) { - topic = reBuildTopic(topic); - return topic + ":" + tag; - } - - /** - * 根据环境重新隔离topic - * @param topic 原始topic - */ - private String reBuildTopic(String topic) { - if(rocketEnhanceProperties.isEnabledIsolation() && StringUtils.hasText(rocketEnhanceProperties.getEnvironment())){ - return topic +"_" + rocketEnhanceProperties.getEnvironment(); - } - return topic; - } - - /** - * 发送同步消息 - */ - public <T extends BaseMessage> SendResult send(String topic, String tag, T message) { - // 注意分隔符 - return send(buildDestination(topic,tag), message); - } - - - public <T extends BaseMessage> SendResult send(String destination, T message) { - // 设置业务键,此处根据公共的参数进行处理 - // 更多的其它基础业务处理... - Message<T> sendMessage = MessageBuilder.withPayload(message).setHeader(RocketMQHeaders.TAGS, message.getKey()).build(); - SendResult sendResult = template.syncSend(destination, sendMessage); - // 此处为了方便查看给日志转了json,根据选择选择日志记录方式,例如ELK采集 - log.info("[{}]同步消息[{}]发送结果[{}]", destination, JSONObject.toJSON(message), JSONObject.toJSON(sendResult)); - return sendResult; - } - - /** - * 发送延迟消息 - */ - public <T extends BaseMessage> SendResult send(String topic, String tag, T message, int delayLevel) { - return send(buildDestination(topic,tag), message, delayLevel); - } - - public <T extends BaseMessage> SendResult send(String destination, T message, int delayLevel) { - Message<T> sendMessage = MessageBuilder.withPayload(message).setHeader(RocketMQHeaders.TAGS, message.getKey()).build(); - SendResult sendResult = template.syncSend(destination, sendMessage, 3000, delayLevel); - log.info("[{}]延迟等级[{}]消息[{}]发送结果[{}]", destination, delayLevel, JSONObject.toJSON(message), JSONObject.toJSON(sendResult)); - return sendResult; - } -} \ No newline at end of file diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/util/TaskUtil.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/util/TaskUtil.java new file mode 100644 index 0000000..25b3526 --- /dev/null +++ b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/util/TaskUtil.java @@ -0,0 +1,288 @@ +package com.ruoyi.jianguan.util; + +import com.alibaba.fastjson2.JSONObject; +import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient; +import com.ruoyi.chargingPile.api.model.TChargingGun; +import com.ruoyi.jianguan.model.ConnectorStatusInfo; +import com.ruoyi.jianguan.model.SupEquipChargeStatus; +import com.ruoyi.order.api.feignClient.ChargingOrderClient; +import com.ruoyi.order.api.model.TChargingOrder; +import com.ruoyi.order.api.vo.TChargingOrderVo; +import com.ruoyi.other.api.domain.Operator; +import lombok.extern.slf4j.Slf4j; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/7/12 9:10 + */ +@Slf4j +@Component +public class TaskUtil { + + @Resource + private ChargingGunClient chargingGunClient; + + private final static String operatorId = "906171535"; + @Resource + private TCECSuperviseUtil tcecSuperviseUtil; + @Resource + private ChargingOrderClient chargingOrderClient; + + @Resource + private RedisTemplate redisTemplate; + @Resource + private ChuanYiChongSuperviseUtil chuanYiChongSuperviseUtil; + + + /** + * 10秒定时推送枪状态 + */ + @Scheduled(fixedRate = 10000) + public void taskPushStatus(){ + pushStatus(); + } + + + /** + * 1分钟定时推送订单状态 + */ + @Scheduled(fixedRate = 60000) + public void taskPushOrderStatus(){ +// pushOrderStatus(); + } + + + /** + * 定时推送订单状态 + */ + public void pushOrderStatus(){ + TChargingOrderVo order = new TChargingOrderVo(); + order.setStatusList(new ArrayList<Integer>(){{ + add(3); + }}); + List<TChargingOrder> orders = chargingOrderClient.getChargingOrder(order).getData(); + for (TChargingOrder chargingOrder : orders) { + log.info("推送充电订单状态:{}", chargingOrder); + SupEquipChargeStatus supEquipChargeStatus = new SupEquipChargeStatus(); + supEquipChargeStatus.setOperatorID(operatorId); + supEquipChargeStatus.setEquipmentOwnerID(operatorId); + supEquipChargeStatus.setStationID(String.valueOf(chargingOrder.getSiteId())); + supEquipChargeStatus.setEquipmentID(String.valueOf(chargingOrder.getChargingPileId())); + supEquipChargeStatus.setOrderNo(operatorId+chargingOrder.getCode()); + switch (chargingOrder.getStatus()){ + case 2: + supEquipChargeStatus.setConnectorStatus(1); + break; + case 3: + supEquipChargeStatus.setConnectorStatus(2); + break; + case 4: + supEquipChargeStatus.setConnectorStatus(3); + break; + case 5: + supEquipChargeStatus.setConnectorStatus(4); + break; + } + TChargingGun chargingGun2 = chargingGunClient.getChargingGunById(chargingOrder.getChargingGunId()).getData(); + supEquipChargeStatus.setConnectorID(chargingGun2.getFullNumber()); + supEquipChargeStatus.setEquipmentClassification(1); + supEquipChargeStatus.setPushTimeStamp(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); + switch (chargingGun2.getStatus()){ + case 1: + supEquipChargeStatus.setConnectorStatus(0); + break; + case 2: + supEquipChargeStatus.setConnectorStatus(1); + break; + case 3: + supEquipChargeStatus.setConnectorStatus(2); + break; + case 4: + supEquipChargeStatus.setConnectorStatus(3); + break; + case 5: + supEquipChargeStatus.setConnectorStatus(3); + break; + case 6: + supEquipChargeStatus.setConnectorStatus(4); + break; + case 7: + supEquipChargeStatus.setConnectorStatus(255); + break; + } + supEquipChargeStatus.setCurrentA(chargingOrder.getCurrent()); + + supEquipChargeStatus.setSOC(null != chargingOrder.getTotalElectricity()?chargingOrder.getTotalElectricity():new BigDecimal("1")); + supEquipChargeStatus.setStartTime(chargingOrder.getStartTime() != null ? chargingOrder.getStartTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) : ""); + supEquipChargeStatus.setEndTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); + supEquipChargeStatus.setTotalPower(chargingOrder.getElectrovalence()); + tcecSuperviseUtil.notificationSupEquipChargeStatus(new Operator(), supEquipChargeStatus); + // 川逸充 + if (chargingOrder.getRechargePaymentType()==3){ + JSONObject jsonObject = new JSONObject(); + jsonObject.put("StartChargeSeq",chargingOrder.getCode()); + jsonObject.put("ConnectorID",chargingGun2.getFullNumber()); + LocalDateTime startTime = chargingOrder.getStartTime(); + + //状态(0=未知,1=等待中/已插枪,2=启动中,3=充电中,4=停止中,5=已结束) + int tempStatus = 0; + switch (chargingOrder.getStatus()){ + case 1: + tempStatus=1; + + case 2: + tempStatus=1; + jsonObject.put("StartChargeSeqStat",tempStatus); + if (startTime!=null){ + jsonObject.put("StartTime",startTime.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + }else{ + LocalDateTime now = LocalDateTime.now(); + // 转化为yyyy-MM-dd HH:mm:ss格式字符串 + jsonObject.put("StartTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + } + chuanYiChongSuperviseUtil.notificationStationStatus(new Operator(), jsonObject); + break; + case 3: + tempStatus=2; + jsonObject.put("StartChargeSeqStat",tempStatus); + if (startTime!=null){ + jsonObject.put("StartTime",startTime.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + }else{ + LocalDateTime now = LocalDateTime.now(); + // 转化为yyyy-MM-dd HH:mm:ss格式字符串 + jsonObject.put("StartTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + } + chuanYiChongSuperviseUtil.notificationStationStatus(new Operator(), jsonObject); + break; + case 4: + tempStatus=3; + jsonObject.put("StartChargeSeqStat",tempStatus); + if (startTime!=null){ + jsonObject.put("StartTime",startTime.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + }else{ + LocalDateTime now = LocalDateTime.now(); + // 转化为yyyy-MM-dd HH:mm:ss格式字符串 + jsonObject.put("StartTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + } + chuanYiChongSuperviseUtil.notificationStationStatus(new Operator(), jsonObject); + break; + case 5: + jsonObject.put("StartChargeSeqStat",4); + int temp = 0; + //充电枪状态(1=离线,2=空闲,3=占用(未充电),4=占用(充电中),5=占用(已充满),6=占用(预约锁定),7=故障) + switch (chargingGun2.getStatus()){ + case 1: + temp = 0; + break; + case 2: + temp=1; + break; + case 3: + temp=2; + break; + case 4: + temp=3; + break; + case 5: + temp=4; + break; + case 6: + temp=4; + break; + case 7: + temp = 255; + break; + } + jsonObject.put("ConnectorStatus",temp); + + jsonObject.put("CurrentA",chargingOrder.getCurrent()); + jsonObject.put("VoltageA",chargingOrder.getVoltage()); + LocalDateTime startTime2 = chargingOrder.getStartTime(); + + if (startTime2!=null){ + jsonObject.put("StartTime",startTime2.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + }else{ + LocalDateTime now = LocalDateTime.now(); + // 转化为yyyy-MM-dd HH:mm:ss格式字符串 + jsonObject.put("StartTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + } + LocalDateTime now = LocalDateTime.now(); + // 转化为yyyy-MM-dd HH:mm:ss格式字符串 + jsonObject.put("EndTime",now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + jsonObject.put("TotalPower",chargingOrder.getElectricity()); + jsonObject.put("TotalMoney",chargingOrder.getOrderAmount()); + chuanYiChongSuperviseUtil.notificationSupEquipChargeStatus(new Operator(), jsonObject); + break; + } + } + } + + + } + + + + + /** + * 推送枪状态到平台 + */ + public void pushStatus(){ + redisTemplate.keys("ping:*").forEach(key->{ + String fullNumber = key.toString().split(":")[1]; + log.info("推送枪状态到监管平台:{}",fullNumber); + TChargingGun chargingGun = chargingGunClient.getChargingGunByFullNumber(fullNumber).getData(); + if (chargingGun!=null){ + ConnectorStatusInfo connectorStatusInfo = new ConnectorStatusInfo(); + connectorStatusInfo.setOperatorID(operatorId); + connectorStatusInfo.setEquipmentOwnerID(operatorId); + connectorStatusInfo.setStationID(String.valueOf(chargingGun.getSiteId())); + connectorStatusInfo.setEquipmentID(String.valueOf(chargingGun.getChargingPileId())); + connectorStatusInfo.setConnectorID(chargingGun.getFullNumber()); + if (chargingGun.getEquipmentClassification()!=null){ + connectorStatusInfo.setEquipmentClassification(chargingGun.getEquipmentClassification()); + }else { + connectorStatusInfo.setEquipmentClassification(1); + } + switch (chargingGun.getStatus()){ + case 1: + connectorStatusInfo.setStatus(0); + break; + case 2: + connectorStatusInfo.setStatus(1); + break; + case 3: + connectorStatusInfo.setStatus(2); + break; + case 4: + connectorStatusInfo.setStatus(3); + break; + case 5: + connectorStatusInfo.setStatus(3); + break; + case 6: + connectorStatusInfo.setStatus(4); + break; + case 7: + connectorStatusInfo.setStatus(255); + break; + } + connectorStatusInfo.setUpdateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); + tcecSuperviseUtil.notificationStationStatus(new Operator(), connectorStatusInfo); + } + }); + } + + +} diff --git a/ruoyi-service/ruoyi-order/pom.xml b/ruoyi-service/ruoyi-order/pom.xml index 2850f9b..1d094f9 100644 --- a/ruoyi-service/ruoyi-order/pom.xml +++ b/ruoyi-service/ruoyi-order/pom.xml @@ -175,6 +175,12 @@ <artifactId>redisson-spring-boot-starter</artifactId> <version>3.16.8</version> </dependency> + <dependency> + <groupId>com.ruoyi</groupId> + <artifactId>ruoyi-api-jianguan</artifactId> + <version>3.6.2</version> + <scope>compile</scope> + </dependency> </dependencies> <build> diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java index a2db0c8..49ef82e 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java @@ -32,6 +32,7 @@ import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData; import com.ruoyi.integration.api.feignClient.*; import com.ruoyi.integration.api.model.*; +import com.ruoyi.integration.api.vo.ChargingOrderVo; import com.ruoyi.integration.api.vo.GetPlatformStopChargingReply; import com.ruoyi.integration.api.vo.StartChargeResult; import com.ruoyi.order.api.dto.SettlementConfirmAdd; @@ -229,6 +230,9 @@ @Autowired private RedissonClient redissonClient; + + @Resource + private ChargingMessageClient chargingMessageClient; @@ -807,24 +811,30 @@ //清除计时器中的无效数据 counter_map.remove(code); - TChargingOrder order = new TChargingOrder(); - order.setId(id); - order.setAppUserId(chargingOrder.getAppUserId()); if(0 == startup_result){ //启动失败 preChargeCheck1.setStartupSuccess(3); preChargeCheck1.setFailureCause(failure_cause); //启动失败后取消订单,退款操作 refund(code); - order.setStatus(-1); - order.setEndMode(0); + chargingOrder.setStatus(-1); + chargingOrder.setEndMode(0); }else{ //启动成功 preChargeCheck1.setStartupSuccess(2); - order.setStatus(3); - order.setStartTime(LocalDateTime.now()); + chargingOrder.setStatus(3); + chargingOrder.setStartTime(LocalDateTime.now()); } - this.updateById(order); + this.updateById(chargingOrder); + if(chargingOrder.getStatus() == 3){ + //推送监管平台订单状态 + new Thread(()->{ + ChargingOrderVo chargingOrderVo = new ChargingOrderVo(); + BeanUtils.copyProperties(chargingOrder, chargingOrderVo); + chargingMessageClient.pushOrderStatus(chargingOrderVo); + }).start(); + } + redisService.setCacheObject(key, preChargeCheck1, 24L, TimeUnit.HOURS); //推送三方平台订单状态 if(2 == chargingOrder.getOrderSource()){ @@ -928,6 +938,15 @@ } redisService.setCacheObject("AQJC_" + order.getChargingGunId(), preChargeCheck1, 24L, TimeUnit.HOURS); this.updateById(order); + + if(3 == order.getStatus()){ + //推送监管平台订单状态 + new Thread(()->{ + ChargingOrderVo chargingOrderVo = new ChargingOrderVo(); + BeanUtils.copyProperties(order, chargingOrderVo); + chargingMessageClient.pushOrderStatus(chargingOrderVo); + }).start(); + } //推送三方平台启动充电结果 if(2 == order.getOrderSource()){ StartChargeResult result = new StartChargeResult(); @@ -1245,13 +1264,11 @@ if(!order.getAppUserId().equals(userId)){ return AjaxResult.error("权限不足"); } - TChargingOrder chargingOrder = new TChargingOrder(); - chargingOrder.setId(Long.valueOf(id)); - chargingOrder.setAppUserId(order.getAppUserId()); - chargingOrder.setEndTime(LocalDateTime.now()); - chargingOrder.setStatus(4); - chargingOrder.setEndMode(1); - this.updateById(chargingOrder); + order.setEndTime(LocalDateTime.now()); + order.setStatus(4); + order.setEndMode(1); + this.updateById(order); + String code1 = order.getCode(); TChargingGun chargingGun = chargingGunClient.getChargingGunById(order.getChargingGunId()).getData(); //异步线程处理停机 @@ -1265,6 +1282,12 @@ sendMessageClient.platformStopCharging(platformStopCharging); log.info(code1 + ":-------------------远程停止充电请求-------------------"); log.info(platformStopCharging.toString()); + + //推送监管平台订单状态和订单详情 + ChargingOrderVo chargingOrderVo = new ChargingOrderVo(); + BeanUtils.copyProperties(order, chargingOrderVo); + chargingMessageClient.pushOrderInfo(chargingOrderVo); + chargingMessageClient.pushOrderStatus(chargingOrderVo); }); //推送三方平台 if(2 == order.getOrderSource()){ @@ -2250,7 +2273,7 @@ } chargingOrder.setChargingCapacity(query.getCharging_degree()); chargingOrder.setElectricity(query.getCharging_degree()); - chargingOrder.setTotalElectricity(new BigDecimal(100 - query.getSoc())); + chargingOrder.setTotalElectricity(new BigDecimal(query.getSoc())); this.updateById(chargingOrder); } } @@ -4131,7 +4154,6 @@ chargingOrder.setStatus(4); chargingOrder.setEndMode(1); this.updateById(chargingOrder); - tcecClient.notificationEquipChargeStatus(order.getStartChargeSeq(), order.getOperatorId()); String code1 = order.getCode(); @@ -4147,6 +4169,12 @@ sendMessageClient.platformStopCharging(platformStopCharging); log.info(code1 + ":-------------------远程停止充电请求-------------------"); log.info(platformStopCharging.toString()); + + //推送监管平台订单状态和订单详情 + ChargingOrderVo chargingOrderVo = new ChargingOrderVo(); + BeanUtils.copyProperties(chargingOrder, chargingOrderVo); + chargingMessageClient.pushOrderInfo(chargingOrderVo); + chargingMessageClient.pushOrderStatus(chargingOrderVo); }); return R.ok(); } diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java index 725396e..256c8d9 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java @@ -8,9 +8,11 @@ import com.ruoyi.chargingPile.api.model.Site; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.StringUtils; +import com.ruoyi.integration.api.feignClient.ChargingMessageClient; import com.ruoyi.integration.api.feignClient.UploadRealTimeMonitoringDataClient; import com.ruoyi.integration.api.model.TransactionRecord; import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData; +import com.ruoyi.integration.api.vo.ChargingOrderVo; import com.ruoyi.order.api.model.TChargingBill; import com.ruoyi.order.api.model.TChargingOrder; import com.ruoyi.order.api.model.TChargingOrderRefund; @@ -64,6 +66,9 @@ @Resource private TransactionRecordService transactionRecordService; + + @Resource + private ChargingMessageClient chargingMessageClient; private Integer port = null; @@ -127,6 +132,12 @@ R r = chargingOrderService.endChargeBillingCharge(vo); log.info("定时任务执行,充电中的订单处理结果:{}", JSON.toJSONString(r)); } + + //推送监管平台订单状态和订单详情 + ChargingOrderVo chargingOrderVo = new ChargingOrderVo(); + BeanUtils.copyProperties(order, chargingOrderVo); + chargingMessageClient.pushOrderInfo(chargingOrderVo); + chargingMessageClient.pushOrderStatus(chargingOrderVo); } } } -- Gitblit v1.7.1