From fc2288417c148badd79d1b4021bd059b3b8eac4b Mon Sep 17 00:00:00 2001 From: wuyuan <15505152113@163.com> Date: Fri, 6 Jun 2025 19:05:36 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=96=E6=B6=88=E8=B4=9F=E8=BD=BD=E6=8E=A7?= =?UTF-8?q?=E5=88=B6=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../map/api/AbstractOfflineMapService.java | 27 ++++++++++++++----- 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/map/api/AbstractOfflineMapService.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/map/api/AbstractOfflineMapService.java index 28f2c25..9426236 100644 --- a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/map/api/AbstractOfflineMapService.java +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/map/api/AbstractOfflineMapService.java @@ -10,12 +10,12 @@ import org.dromara.common.sdk.config.version.CloudSDKVersionEnum; import org.dromara.common.sdk.config.version.GatewayManager; import org.dromara.common.sdk.config.version.GatewayTypeEnum; import org.dromara.common.sdk.mqtt.ChannelName; +import org.dromara.common.sdk.mqtt.MqttGatewayPublish; import org.dromara.common.sdk.mqtt.MqttReply; +import org.dromara.common.sdk.mqtt.TopicConst; import org.dromara.common.sdk.mqtt.requests.TopicRequestsRequest; import org.dromara.common.sdk.mqtt.requests.TopicRequestsResponse; -import org.dromara.common.sdk.mqtt.services.ServicesPublish; -import org.dromara.common.sdk.mqtt.services.ServicesReplyData; -import org.dromara.common.sdk.mqtt.services.TopicServicesResponse; +import org.dromara.common.sdk.mqtt.services.*; import org.dromara.common.sdk.mqtt.state.TopicStateRequest; import org.dromara.common.sdk.mqtt.state.TopicStateResponse; import jakarta.annotation.Resource; @@ -23,6 +23,11 @@ import org.springframework.integration.annotation.ServiceActivator; import org.springframework.messaging.Message; import org.springframework.messaging.MessageHeaders; +import java.util.Objects; +import java.util.UUID; + +import static org.springframework.integration.context.IntegrationContextUtils.DEFAULT_TIMEOUT; + /** * @author sean @@ -34,6 +39,10 @@ public abstract class AbstractOfflineMapService { @Resource private ServicesPublish servicesPublish; + @Resource + private MqttGatewayPublish gatewayPublish; + + /** * When the offline map is closed, offline map synchronization will no longer automatically synchronize. * @param request data @@ -83,9 +92,15 @@ public abstract class AbstractOfflineMapService { @ServiceActivator(inputChannel = ChannelName.INBOUND_REQUESTS_OFFLINE_MAP_GET, outputChannel = ChannelName.OUTBOUND_REQUESTS) @CloudSDKVersion(since = CloudSDKVersionEnum.V1_0_1, include = GatewayTypeEnum.DOCK2) public void offlineMapGet(TopicRequestsRequest request, MessageHeaders headers) { - servicesPublish.publish( - request.getGateway(), - "offline_map_get"); + MqttReply success = MqttReply.success(); + String topic = TopicConst.THING_MODEL_PRE + TopicConst.PRODUCT + Objects.requireNonNull(request.getGateway()) + TopicConst.SERVICES_SUF; + gatewayPublish.publish( + topic,0, new TopicServicesRequest<>() + .setTid(UUID.randomUUID().toString()) + .setBid(null) + .setTimestamp(System.currentTimeMillis()) + .setMethod("offline_map_get") + .setData(success)); //throw new UnsupportedOperationException("offlineMapGet not implemented"); } }