diff --git a/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/jm/service/impl/JmJobServiceImpl.java b/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/jm/service/impl/JmJobServiceImpl.java index 5e76e0f..7a53212 100644 --- a/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/jm/service/impl/JmJobServiceImpl.java +++ b/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/jm/service/impl/JmJobServiceImpl.java @@ -25,6 +25,7 @@ import com.zhangy.skyeye.kmz.KmzGen; import com.zhangy.skyeye.publics.consts.ExecStatusEnum; import com.zhangy.skyeye.publics.consts.FileTypeEnum; import com.zhangy.skyeye.publics.consts.UavAirlineUploadEnum; +import com.zhangy.skyeye.publics.consts.WebSocketKey; import com.zhangy.skyeye.publics.service.SysFileTypeService; import com.zhangy.skyeye.publics.utils.CoordUtil; import com.zhangy.skyeye.py.service.IPyAirlineService; @@ -39,6 +40,7 @@ import com.zhangy.skyeye.sar.service.ISarMtiPointService; import com.zhangy.skyeye.sar.service.ISarMtiTrailService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.messaging.simp.SimpMessagingTemplate; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -82,6 +84,8 @@ public class JmJobServiceImpl implements JmJobService { private QuartzService quartzService; @Autowired private JmAirlinePlanService jmAirlinePlanService; + @Autowired + private SimpMessagingTemplate simpMessagingTemplate; @Override public IPage selectPage(JmJobPageDTO param) { @@ -454,6 +458,12 @@ public class JmJobServiceImpl implements JmJobService { sarControlService.sendUdp(controlParam); // 标记缓存状态,确保断连重新发送请求时不会重复执行 // uav.setSarStatus(ExecStatusEnum.OVER); + + // 只会通知一次? + // 通知前端任务停止 + JmJobStatusWsDTO wsVo = new JmJobStatusWsDTO(id, uav.getUavId()); + wsVo.setJobStatus(ExecStatusEnum.OVER.getValue()); + simpMessagingTemplate.convertAndSend(WebSocketKey.JM_JOB_STATUS, wsVo); }); // 删除缓存任务信息 jobStatusService.remove(id);