diff --git a/admin/src/main/java/com/multictrl/modules/business/controller/DockController.java b/admin/src/main/java/com/multictrl/modules/business/controller/DockController.java index 6a706b4..f9ce55a 100644 --- a/admin/src/main/java/com/multictrl/modules/business/controller/DockController.java +++ b/admin/src/main/java/com/multictrl/modules/business/controller/DockController.java @@ -50,7 +50,6 @@ public class DockController { @DataFilter @RequiresPermissions("bus:dock:page") public Result> page(@Parameter(hidden = true) @RequestParam Map params) { - params.put("scenario", "inspection"); PageData page = dockService.pageList(params); return new Result>().ok(page); diff --git a/admin/src/main/java/com/multictrl/modules/business/controller/MultiController.java b/admin/src/main/java/com/multictrl/modules/business/controller/MultiController.java index 2e15b63..a7039f1 100644 --- a/admin/src/main/java/com/multictrl/modules/business/controller/MultiController.java +++ b/admin/src/main/java/com/multictrl/modules/business/controller/MultiController.java @@ -50,7 +50,6 @@ public class MultiController { @DataFilter @RequiresPermissions("bus:dock:page") public Result> page(@Parameter(hidden = true) @RequestParam Map params) { - params.put("scenario", "multi"); PageData page = multiService.pageList(params); return new Result>().ok(page); @@ -118,14 +117,14 @@ public class MultiController { return new Result<>(); } - @DeleteMapping("/updateMultiGroupDevice") + @DeleteMapping("/deleteMultiGroupDevice") @Operation(summary = "蛙跳组解绑设备") @LogOperation("蛙跳组解绑设备") - @RequiresPermissions("bus:multi:updateMultiGroupDevice") - public Result updateMultiGroupDevice(@RequestBody List ids) { + @RequiresPermissions("bus:multi:deleteMultiGroupDevice") + public Result deleteMultiGroupDevice(@RequestBody List dockSn) { //效验数据 - AssertUtils.isListEmpty(ids, "ids"); - multiService.deleteMultiGroupDevice(ids); + AssertUtils.isListEmpty(dockSn, "dockSn"); + multiService.deleteMultiGroupDevice(dockSn); return new Result<>(); } diff --git a/admin/src/main/java/com/multictrl/modules/business/controller/ZhiMouController.java b/admin/src/main/java/com/multictrl/modules/business/controller/ZhiMouController.java index 0229348..dd25e9e 100644 --- a/admin/src/main/java/com/multictrl/modules/business/controller/ZhiMouController.java +++ b/admin/src/main/java/com/multictrl/modules/business/controller/ZhiMouController.java @@ -97,7 +97,7 @@ public class ZhiMouController { @Operation(summary = "下载AI检测报告") @PostMapping("/downloadReport") - @RequiresPermissions("ai:zhiMou:downloadReport") + @RequiresPermissions("bus:zhiMou:downloadReport") public ResponseEntity getReportByBusinessId(@RequestBody DownloadReport downloadReport) { ValidatorUtils.validateEntity(downloadReport); byte[] reportBytes = zhiMouService.downloadReport(downloadReport); diff --git a/admin/src/main/java/com/multictrl/modules/business/dto/multi/MultiGroupDeviceDTO.java b/admin/src/main/java/com/multictrl/modules/business/dto/multi/MultiGroupDeviceDTO.java index 39664c1..3e25a83 100644 --- a/admin/src/main/java/com/multictrl/modules/business/dto/multi/MultiGroupDeviceDTO.java +++ b/admin/src/main/java/com/multictrl/modules/business/dto/multi/MultiGroupDeviceDTO.java @@ -4,11 +4,11 @@ import com.fasterxml.jackson.annotation.JsonProperty; import com.multictrl.common.validator.group.AddGroup; import com.multictrl.common.validator.group.UpdateGroup; import io.swagger.v3.oas.annotations.media.Schema; -import jakarta.validation.constraints.NotBlank; import java.util.List; import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; import lombok.Data; /** @@ -22,14 +22,14 @@ public class MultiGroupDeviceDTO { /** * 蛙跳组id */ - @NotBlank(message = "{group.id.require}", groups = {AddGroup.class, UpdateGroup.class}) + @NotNull(message = "蛙跳组标识不能为空", groups = {AddGroup.class, UpdateGroup.class}) @JsonProperty(required = true) @Schema(description = "蛙跳组id") private Long groupId; /** * 网关sn */ - @NotEmpty(message = "{gateway.sns.require}", groups = {AddGroup.class, UpdateGroup.class}) + @NotEmpty(message = "设备网关sn不能为空", groups = {AddGroup.class, UpdateGroup.class}) @JsonProperty(required = true) @Schema(description = "设备网关sn列表") private List gatewaySns; diff --git a/admin/src/main/java/com/multictrl/modules/business/handler/ZhiMouCallbackHandler.java b/admin/src/main/java/com/multictrl/modules/business/handler/ZhiMouCallbackHandler.java index 8f42db4..c8555bb 100644 --- a/admin/src/main/java/com/multictrl/modules/business/handler/ZhiMouCallbackHandler.java +++ b/admin/src/main/java/com/multictrl/modules/business/handler/ZhiMouCallbackHandler.java @@ -17,18 +17,18 @@ import org.springframework.stereotype.Component; @Slf4j @Component @RequiredArgsConstructor -public class ZhiMouCallbackHandler implements MessageHandler{ +public class ZhiMouCallbackHandler implements MessageHandler { private final ZhimouCallbackDao zhimouCallbackDao; @Override public void handleMessage(String topic, String payload, String gateway) { log.debug("zhiMouCallback --> topic: {}, payload: {}", topic, payload); JSONObject data = JsonUtils.parseObject(payload, JSONObject.class); - if(data!=null){ + if (data != null) { String event = data.getStr("event"); - if("start".equals(event)||"stop".equals(event)){ + if ("start".equals(event) || "stop".equals(event)) { ZhimouCallbackEntity entity = new ZhimouCallbackEntity(); - entity.setAppId(data.getStr("appId")); + entity.setAppId(data.getStr("app_id")); entity.setBusinessId(data.getStr("business_id")); entity.setDevice(data.getStr("device")); entity.setEvent(event); diff --git a/admin/src/main/java/com/multictrl/modules/business/q20/handler/Q20StatusHandler.java b/admin/src/main/java/com/multictrl/modules/business/q20/handler/Q20StatusHandler.java index 72add74..d9558b6 100644 --- a/admin/src/main/java/com/multictrl/modules/business/q20/handler/Q20StatusHandler.java +++ b/admin/src/main/java/com/multictrl/modules/business/q20/handler/Q20StatusHandler.java @@ -91,7 +91,7 @@ public class Q20StatusHandler implements MessageHandler { message.set("timestamp", System.currentTimeMillis()); message.remove(BusinessConstant.NEED_REPLY); String replyTopic = topic + Q20Constant.STATUS_REPLY_SUFFIX; - mqttPushService.pushMessageByClient1(replyTopic, message.toString()); + mqttPushService.pushMessageByClient1NotLog(replyTopic, message.toString()); // log.debug("Q20 status --> 已回复, topic: {}", replyTopic); } } diff --git a/admin/src/main/java/com/multictrl/modules/business/service/MqttPushService.java b/admin/src/main/java/com/multictrl/modules/business/service/MqttPushService.java index cee4808..4336509 100644 --- a/admin/src/main/java/com/multictrl/modules/business/service/MqttPushService.java +++ b/admin/src/main/java/com/multictrl/modules/business/service/MqttPushService.java @@ -34,6 +34,11 @@ public class MqttPushService { setHeader("mqtt_topic", topic).build()); } + public void pushMessageByClient1NotLog(String topic, String msg) { + mqttOutboundHandler1.send(MessageBuilder.withPayload(msg). + setHeader("mqtt_topic", topic).build()); + } + /** * 客户端2推送消息 该连接处理drc控制的协议交互 * diff --git a/admin/src/main/java/com/multictrl/modules/business/service/MultiService.java b/admin/src/main/java/com/multictrl/modules/business/service/MultiService.java index 69a8bc1..b077e0e 100644 --- a/admin/src/main/java/com/multictrl/modules/business/service/MultiService.java +++ b/admin/src/main/java/com/multictrl/modules/business/service/MultiService.java @@ -29,7 +29,7 @@ public interface MultiService { void updateMultiGroup(MultiGroupDTO multiGroupDTO); // void updateMultiGroupDevice(MultiGroupDeviceDTO multiGroupDeviceDTO); - void deleteMultiGroupDevice(List ids); + void deleteMultiGroupDevice(List dockSn); void deleteMultiGroup(List ids); diff --git a/admin/src/main/java/com/multictrl/modules/business/service/impl/DockServiceImpl.java b/admin/src/main/java/com/multictrl/modules/business/service/impl/DockServiceImpl.java index 53e0408..bf5673b 100644 --- a/admin/src/main/java/com/multictrl/modules/business/service/impl/DockServiceImpl.java +++ b/admin/src/main/java/com/multictrl/modules/business/service/impl/DockServiceImpl.java @@ -51,6 +51,7 @@ public class DockServiceImpl extends CrudServiceImpl wrapper = new QueryWrapper<>(); wrapper.eq(StrUtil.isNotBlank(id), "id", id); @@ -58,7 +59,10 @@ public class DockServiceImpl extends CrudServiceImpl qw.like("dock_name", key).or().eq("dock_sn", key)); if (dockSns != null) { - wrapper.notIn("dock_sn", (List) dockSns); + wrapper.in("dock_sn", (List) dockSns); + } + if (notDockSns != null) { + wrapper.notIn("dock_sn", (List) notDockSns); } wrapper.orderByDesc("update_date"); @@ -88,6 +92,7 @@ public class DockServiceImpl extends CrudServiceImpl pageList(Map params) { + params.put("scenario", "inspection"); PageData page = page(params); for (DockDTO dockDTO : page.getList()) { Integer dockModeCode = djiBaseService.getDockModeCode(dockDTO.getDockSn()); diff --git a/admin/src/main/java/com/multictrl/modules/business/service/impl/MultiServiceImpl.java b/admin/src/main/java/com/multictrl/modules/business/service/impl/MultiServiceImpl.java index 5819668..487327f 100644 --- a/admin/src/main/java/com/multictrl/modules/business/service/impl/MultiServiceImpl.java +++ b/admin/src/main/java/com/multictrl/modules/business/service/impl/MultiServiceImpl.java @@ -70,7 +70,8 @@ public class MultiServiceImpl implements MultiService { if (CollUtil.isNotEmpty(multiGroupDeviceEntities)) { dockSns = multiGroupDeviceEntities.stream().map(MultiGroupDeviceEntity::getGatewaySn).toList(); } - params.put("dockSns", dockSns); + params.put("notDockSns", dockSns); + params.put("scenario", "multi"); PageData page = dockService.page(params); addDockProperty(page.getList()); return page; @@ -127,8 +128,9 @@ public class MultiServiceImpl implements MultiService { }*/ @Override - public void deleteMultiGroupDevice(List ids) { - multiGroupDeviceDao.deleteByIds(ids); + public void deleteMultiGroupDevice(List dockSn) { + multiGroupDeviceDao.delete(new QueryWrapper() + .in("gateway_sn", dockSn)); } @Transactional(rollbackFor = Exception.class) diff --git a/admin/src/main/java/com/multictrl/modules/business/service/impl/ZhiMouServiceImpl.java b/admin/src/main/java/com/multictrl/modules/business/service/impl/ZhiMouServiceImpl.java index 3b63b85..3a2b39e 100644 --- a/admin/src/main/java/com/multictrl/modules/business/service/impl/ZhiMouServiceImpl.java +++ b/admin/src/main/java/com/multictrl/modules/business/service/impl/ZhiMouServiceImpl.java @@ -207,7 +207,8 @@ public class ZhiMouServiceImpl implements ZhiMouService { zhiMouTask.setMode("video"); zhiMouTask.setAppId(zhiMouAiStart.getAppId()); zhiMouTask.setDevice(dockSn); - zhiMouTask.setBusinessId((String) CacheUtils.get(BusinessConstant.IN_FLIGHT_WORKING_TASK_ID + dockSn)); + String dockTaskId = (String) CacheUtils.get(BusinessConstant.WORKING_TASK_ID + dockSn); + zhiMouTask.setBusinessId(dockTaskId); zhiMouTask.setRules(zhiMouAiStart.getRules()); zhiMouTask.setInput(srsService.getUavPushLiveUrl(dockSn)); zhiMouTask.setOutput(srsService.getUavAiPushLiveUrl(dockSn)); @@ -257,6 +258,7 @@ public class ZhiMouServiceImpl implements ZhiMouService { .header(AUTHORIZATION, BEARER + zhiMouInfo.getToken()) .execute() .body(); + log.debug("invoke zhiMou start dockTaskId: {}", dockTaskId); log.debug("invoke zhiMou start request: {},result: {}", jsonObject, result); if (StrUtil.isNotBlank(result)) { return JSONObject.parse(result);