Browse Source

Merge branch 'master' of http://106.13.50.125:13000/yuanqiang/dk_cloud_drone

# Conflicts:
#	dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceQrtzServiceImpl.java
master
吴远 3 months ago
parent
commit
196b4185be
  1. 5
      dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/property/PropertySetPublish.java
  2. 6
      dk-common/common-web/pom.xml
  3. 2
      dk-modules/business/src/main/java/org/dromara/business/BusinessApplication.java
  4. 6
      dk-modules/business/src/main/java/org/dromara/business/controller/BusinessTaskController.java
  5. 1
      dk-modules/business/src/main/java/org/dromara/business/service/IBusinessTaskService.java
  6. 17
      dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessTaskServiceImpl.java
  7. 13
      dk-modules/sample/src/main/java/org/dromara/sample/fegin/RemoteBusinessTaskFeign.java
  8. 70
      dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/MegaphoneController.java

5
dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/property/PropertySetPublish.java

@ -1,5 +1,6 @@
package org.dromara.common.sdk.mqtt.property; package org.dromara.common.sdk.mqtt.property;
import org.dromara.common.sdk.mqtt.CommonTopicResponse;
import org.dromara.common.sdk.mqtt.MegaphoneTopicRequest; import org.dromara.common.sdk.mqtt.MegaphoneTopicRequest;
import org.dromara.common.sdk.mqtt.MqttGatewayPublish; import org.dromara.common.sdk.mqtt.MqttGatewayPublish;
import org.dromara.common.sdk.mqtt.TopicConst; import org.dromara.common.sdk.mqtt.TopicConst;
@ -39,9 +40,9 @@ public class PropertySetPublish {
} }
public PropertySetReplyResultEnum publishPlayText(String topic, Object data, String method) { public CommonTopicResponse publishPlayText(String topic, Object data, String method) {
return gatewayPublish.publishPlayTextWithReply( return gatewayPublish.publishPlayTextWithReply(
PropertySetReplyResultEnum.class, topic, new MegaphoneTopicRequest<>() CommonTopicResponse.class, topic, new MegaphoneTopicRequest<>()
.setTid(UUID.randomUUID().toString()) .setTid(UUID.randomUUID().toString())
.setBid(null) .setBid(null)
.setMethod(method) .setMethod(method)

6
dk-common/common-web/pom.xml

@ -51,6 +51,12 @@
<optional>true</optional> <optional>true</optional>
</dependency> </dependency>
<!-- Spring Cloud OpenFeign 核心依赖 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<dependency> <dependency>
<groupId>net.dreamlu</groupId> <groupId>net.dreamlu</groupId>
<artifactId>mica-metrics</artifactId> <artifactId>mica-metrics</artifactId>

2
dk-modules/business/src/main/java/org/dromara/business/BusinessApplication.java

@ -5,6 +5,7 @@ import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.context.metrics.buffering.BufferingApplicationStartup; import org.springframework.boot.context.metrics.buffering.BufferingApplicationStartup;
import org.springframework.cloud.openfeign.EnableFeignClients;
/** /**
* @auther yq * @auther yq
@ -12,6 +13,7 @@ import org.springframework.boot.context.metrics.buffering.BufferingApplicationSt
*/ */
@EnableDubbo @EnableDubbo
@SpringBootApplication() @SpringBootApplication()
@EnableFeignClients
public class BusinessApplication { public class BusinessApplication {
public static void main(String[] args) { public static void main(String[] args) {
SpringApplication application = new SpringApplication(BusinessApplication.class); SpringApplication application = new SpringApplication(BusinessApplication.class);

6
dk-modules/business/src/main/java/org/dromara/business/controller/BusinessTaskController.java

@ -108,6 +108,12 @@ public class BusinessTaskController extends BaseController {
} }
@Log(title = "预约工单更新", businessType = BusinessType.UPDATE)
@PostMapping("/update/status")
public void updateTaskStatus(@RequestParam("waylineId") String waylineId,@RequestParam("status") String status,
@RequestParam("jobId")String jobId,@RequestParam("jobName") String jobName) {
businessTaskService.updateTaskStatus(waylineId,status,jobId,jobName);
}
} }

1
dk-modules/business/src/main/java/org/dromara/business/service/IBusinessTaskService.java

@ -72,4 +72,5 @@ public interface IBusinessTaskService {
BusinessTaskVo queryBusinessTask(String waylineId); BusinessTaskVo queryBusinessTask(String waylineId);
void updateTaskStatus(String waylineId, String status, String jobId, String jobName);
} }

17
dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessTaskServiceImpl.java

@ -8,6 +8,7 @@ import org.dromara.business.domain.bo.BusinessTaskBo;
import org.dromara.business.domain.vo.BusinessTaskVo; import org.dromara.business.domain.vo.BusinessTaskVo;
import org.dromara.business.mapper.BusinessTaskMapper; import org.dromara.business.mapper.BusinessTaskMapper;
import org.dromara.business.service.IBusinessTaskService; import org.dromara.business.service.IBusinessTaskService;
import org.dromara.common.core.constant.BusinessConstants;
import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.TableDataInfo;
@ -156,4 +157,20 @@ public class BusinessTaskServiceImpl implements IBusinessTaskService {
public BusinessTaskVo queryBusinessTask(String waylineId) { public BusinessTaskVo queryBusinessTask(String waylineId) {
return baseMapper.queryBusinessTask(waylineId); return baseMapper.queryBusinessTask(waylineId);
} }
@Override
public void updateTaskStatus(String waylineId, String status, String jobId, String jobName) {
BusinessTaskVo businessTaskVo = this.queryBusinessTask(waylineId);
if(businessTaskVo != null){
BusinessTask businessTask = new BusinessTask();
businessTask.setId(businessTaskVo.getId());
businessTask.setStatus(status);
if(BusinessConstants.TASK_STATUS_3.equals(status)){
businessTask.setJobId(jobId);
businessTask.setJobName(jobName);
businessTask.setCompleteTime(new Date());
}
this.update(businessTask);
}
}
} }

13
dk-modules/sample/src/main/java/org/dromara/sample/fegin/RemoteBusinessTaskFeign.java

@ -0,0 +1,13 @@
package org.dromara.sample.fegin;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
@FeignClient(name = "business")
public interface RemoteBusinessTaskFeign {
@PostMapping("/update/status")
void updateTaskStatus(@RequestParam("waylineId") String waylineId, @RequestParam("status") String status,
@RequestParam("jobId")String jobId, @RequestParam("jobName") String jobName);
}

70
dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/MegaphoneController.java

@ -10,16 +10,17 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboReference;
import org.dromara.business.api.RemoteBusinessTaskService; import org.dromara.business.api.RemoteBusinessTaskService;
import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.common.sdk.cloudapi.wayline.WaylineMethodEnum;
import org.dromara.common.sdk.common.HttpResultResponse; import org.dromara.common.sdk.common.HttpResultResponse;
import org.dromara.common.sdk.common.PaginationData; import org.dromara.common.sdk.common.PaginationData;
import org.dromara.common.sdk.exception.CloudSDKErrorEnum; import org.dromara.common.sdk.exception.CloudSDKErrorEnum;
import org.dromara.common.sdk.mqtt.CommonTopicRequest; import org.dromara.common.sdk.mqtt.*;
import org.dromara.common.sdk.mqtt.MegaphoneTopicRequest;
import org.dromara.common.sdk.mqtt.MqttGatewayPublish;
import org.dromara.common.sdk.mqtt.TopicConst;
import org.dromara.common.sdk.mqtt.property.PropertySetPublish; import org.dromara.common.sdk.mqtt.property.PropertySetPublish;
import org.dromara.common.sdk.mqtt.property.PropertySetReplyResultEnum; import org.dromara.common.sdk.mqtt.property.PropertySetReplyResultEnum;
import org.dromara.common.sdk.mqtt.property.TopicPropertySetRequest; import org.dromara.common.sdk.mqtt.property.TopicPropertySetRequest;
import org.dromara.common.sdk.mqtt.services.ServicesPublish;
import org.dromara.common.sdk.mqtt.services.ServicesReplyReceiver;
import org.dromara.common.sdk.mqtt.services.TopicServicesRequest;
import org.dromara.sample.manage.model.dto.*; import org.dromara.sample.manage.model.dto.*;
import org.dromara.sample.manage.service.IDeviceService; import org.dromara.sample.manage.service.IDeviceService;
import org.dromara.system.api.RemoteConfigService; import org.dromara.system.api.RemoteConfigService;
@ -29,6 +30,9 @@ import org.springframework.web.bind.annotation.*;
import java.util.*; import java.util.*;
import static org.dromara.common.sdk.mqtt.MqttGatewayPublish.DEFAULT_RETRY_COUNT;
import static org.dromara.common.sdk.mqtt.MqttGatewayPublish.DEFAULT_RETRY_TIMEOUT;
/** /**
* @author sean.zhou * @author sean.zhou
* @version 0.1 * @version 0.1
@ -44,6 +48,9 @@ public class MegaphoneController {
@Resource @Resource
private MqttGatewayPublish gatewayPublish; private MqttGatewayPublish gatewayPublish;
@Resource
private ServicesPublish servicesPublish;
@Resource @Resource
PropertySetPublish propertySetPublish; PropertySetPublish propertySetPublish;
@ -61,10 +68,16 @@ public class MegaphoneController {
@RequestParam("gatewaySn") String gatewaySn, @RequestParam("gatewaySn") String gatewaySn,
@RequestBody PlayStartDTO param @RequestBody PlayStartDTO param
) { ) {
String top = TOPIC+"gatewaySn"+"/services"; String top = TOPIC+gatewaySn+"/services";
//发送mqtt //发送mqtt
propertySetPublish.publishPlayText(top,param,"speaker_tts_play_start"); CommonTopicResponse<ServicesReplyReceiver> servicesReplyReceiverCommonTopicResponse = gatewayPublish.publishWithReply(
return HttpResultResponse.success(); ServicesReplyReceiver.class, top, new TopicServicesRequest<>()
.setTid(UUID.randomUUID().toString())
.setBid(null)
.setTimestamp(System.currentTimeMillis())
.setMethod("speaker_tts_play_start")
.setData(param), DEFAULT_RETRY_COUNT, DEFAULT_RETRY_TIMEOUT);
return HttpResultResponse.success(servicesReplyReceiverCommonTopicResponse);
} }
/** /**
@ -80,8 +93,14 @@ public class MegaphoneController {
) { ) {
String top = TOPIC+gatewaySn+"/services"; String top = TOPIC+gatewaySn+"/services";
//发送mqtt //发送mqtt
propertySetPublish.publishPlayText(top,param,"speaker_replay"); CommonTopicResponse<ServicesReplyReceiver> servicesReplyReceiverCommonTopicResponse = gatewayPublish.publishWithReply(
return HttpResultResponse.success(); ServicesReplyReceiver.class, top, new TopicServicesRequest<>()
.setTid(UUID.randomUUID().toString())
.setBid(null)
.setTimestamp(System.currentTimeMillis())
.setMethod("speaker_replay")
.setData(param), DEFAULT_RETRY_COUNT, DEFAULT_RETRY_TIMEOUT);
return HttpResultResponse.success(servicesReplyReceiverCommonTopicResponse);
} }
/** /**
* 喊话器-暂停播放文档 * 喊话器-暂停播放文档
@ -96,8 +115,14 @@ public class MegaphoneController {
) { ) {
String top = TOPIC+gatewaySn+"/services"; String top = TOPIC+gatewaySn+"/services";
//发送mqtt //发送mqtt
propertySetPublish.publishPlayText(top,param,"speaker_play_stop"); CommonTopicResponse<ServicesReplyReceiver> servicesReplyReceiverCommonTopicResponse = gatewayPublish.publishWithReply(
return HttpResultResponse.success(); ServicesReplyReceiver.class, top, new TopicServicesRequest<>()
.setTid(UUID.randomUUID().toString())
.setBid(null)
.setTimestamp(System.currentTimeMillis())
.setMethod("speaker_play_stop")
.setData(param), DEFAULT_RETRY_COUNT, DEFAULT_RETRY_TIMEOUT);
return HttpResultResponse.success(servicesReplyReceiverCommonTopicResponse);
} }
/** /**
@ -113,8 +138,14 @@ public class MegaphoneController {
) { ) {
String top = TOPIC+gatewaySn+"/services"; String top = TOPIC+gatewaySn+"/services";
//发送mqtt //发送mqtt
propertySetPublish.publishPlayText(top,param,"speaker_play_mode_set"); CommonTopicResponse<ServicesReplyReceiver> servicesReplyReceiverCommonTopicResponse = gatewayPublish.publishWithReply(
return HttpResultResponse.success(); ServicesReplyReceiver.class, top, new TopicServicesRequest<>()
.setTid(UUID.randomUUID().toString())
.setBid(null)
.setTimestamp(System.currentTimeMillis())
.setMethod("speaker_play_mode_set")
.setData(param), DEFAULT_RETRY_COUNT, DEFAULT_RETRY_TIMEOUT);
return HttpResultResponse.success(servicesReplyReceiverCommonTopicResponse);
} }
@ -127,20 +158,25 @@ public class MegaphoneController {
*/ */
@PostMapping("/{workspace_id}/widgetValueSet") @PostMapping("/{workspace_id}/widgetValueSet")
@Operation(summary = "喊话器-设置音量。", description = "喊话器-设置音量。") @Operation(summary = "喊话器-设置音量。", description = "喊话器-设置音量。")
public int widgetValueSet(@PathVariable("workspace_id") String workspaceId, public HttpResultResponse widgetValueSet(@PathVariable("workspace_id") String workspaceId,
@RequestParam("gatewaySn") String gatewaySn, @RequestParam("gatewaySn") String gatewaySn,
@RequestBody PlayVolumeDTO param @RequestBody PlayVolumeDTO param
) { ) {
String top = TOPIC+gatewaySn+"/services"; String top = TOPIC+gatewaySn+"/services";
//发送mqtt //发送mqtt
PropertySetReplyResultEnum psdkWidgetValueSet = propertySetPublish.publishPlayText(top,param,"psdk_widget_value_set"); CommonTopicResponse<ServicesReplyReceiver> servicesReplyReceiverCommonTopicResponse = gatewayPublish.publishWithReply(
return psdkWidgetValueSet.getResult(); ServicesReplyReceiver.class, top, new TopicServicesRequest<>()
.setTid(UUID.randomUUID().toString())
.setBid(null)
.setTimestamp(System.currentTimeMillis())
.setMethod("speaker_play_volume_set")
.setData(param), DEFAULT_RETRY_COUNT, DEFAULT_RETRY_TIMEOUT);
return HttpResultResponse.success(servicesReplyReceiverCommonTopicResponse);
} }
/** /**
* 获取媒体流ip * 获取媒体流ip
* Get the topology list of all online devices in one workspace. * Get the topology list of all online devices in one workspace.

Loading…
Cancel
Save