diff --git a/dk-api/api-sample/pom.xml b/dk-api/api-sample/pom.xml
deleted file mode 100644
index 156e0ac..0000000
--- a/dk-api/api-sample/pom.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
- org.dromara
- dk-api
- ${revision}
-
- 4.0.0
-
- api-sample
-
- api-sample无人机接口模块
-
-
-
-
-
-
- org.dromara
- common-core
-
-
-
-
diff --git a/dk-api/api-sample/src/main/java/org/dromara/business/api/RemoteBusinessAlertService.java b/dk-api/api-sample/src/main/java/org/dromara/business/api/RemoteBusinessAlertService.java
deleted file mode 100644
index 88b19c7..0000000
--- a/dk-api/api-sample/src/main/java/org/dromara/business/api/RemoteBusinessAlertService.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package org.dromara.business.api;
-
-
-
-/**
- * 预警服务
- *
- * @author Lion Li
- */
-public interface RemoteBusinessAlertService {
-
-
- /**
- * 更新此条预警审批时候的状态
- * @param businessId 业务id(预警、工单)
- * @param flowStatus 流程状态
- */
- void updateAlertStatus(String businessId, String flowStatus,Boolean isIllegal,String alertType,String message,String assignName);
-}
diff --git a/dk-api/api-sample/src/main/java/org/dromara/business/api/RemoteBusinessTaskService.java b/dk-api/api-sample/src/main/java/org/dromara/business/api/RemoteBusinessTaskService.java
deleted file mode 100644
index c0780ec..0000000
--- a/dk-api/api-sample/src/main/java/org/dromara/business/api/RemoteBusinessTaskService.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package org.dromara.business.api;
-
-/**
- * @auther yq
- * @data 2025/3/18
- */
-public interface RemoteBusinessTaskService {
-
-
- /**
- * 更新预约工单状态
- * @param fileId 航线id
- * @param jobId 飞行记录id
- * @param isJobStatus 飞行状态
- */
- void updateTaskStatus(String fileId, String jobId,Boolean isJobStatus);
-}
diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/mapper/IAiCompareMapper.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/mapper/IAiCompareMapper.java
index ac3d6cb..09e0b1b 100644
--- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/mapper/IAiCompareMapper.java
+++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/mapper/IAiCompareMapper.java
@@ -11,5 +11,5 @@ import java.util.List;
*/
public interface IAiCompareMapper extends BaseMapper {
- ListlistMediaFile(AiCompareEntity aiCompareEntity);
+ ListlistMediaFile(String jobId);
}
diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareMediaFileDTO.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareMediaFileDTO.java
index e511aeb..0b9761e 100644
--- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareMediaFileDTO.java
+++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareMediaFileDTO.java
@@ -23,7 +23,6 @@ import java.util.Date;
public class AiCompareMediaFileDTO {
- private String id;
/**上云文件id*/
private String fileId;
@@ -36,31 +35,12 @@ public class AiCompareMediaFileDTO {
@Schema(description = "文件所属的工作区")
private String workspaceId;
- @Schema(description = "桶中文件的关链字")
- private String objectKey;
-
- @Schema(description = "此属性仅适用于由Pilot上传的图像文件。0:正常图片;1:全景。")
- private String subFileType;
-
- @Schema(description = "是否原始图像")
- private Boolean isOriginal;
-
- @Schema(description = "创建文件的无人机的sn。")
- private String drone;
-
- @Schema(description = "创建文件的无人机有效载荷的名称。")
- private String payload;
-
- @Schema(description = "文件的小指纹。此属性仅适用于由Pilot上传的媒体文件")
- private String tinnyFingerprint;
-
- @Schema(description = "文件的指纹。此属性仅适用于由Pilot上传的媒体文件。")
- private String fingerprint;
private Date createTime;
private String jobId;
+ private String mateFileId;
@Schema(description = "模板图片名称")
private String mateFileName;
@@ -70,6 +50,11 @@ public class AiCompareMediaFileDTO {
@Schema(description = "模板拍照时间")
private Date mateFileDate;
+ @Schema(description = "文件所属的工作区")
+ private String mateWorkspaceId;
+ @Schema(description = "下标")
+ private Integer mateFileIndex;
-
+ @Schema(description = "算法图班")
+ private Integer patternUrl;
}
diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IAiCompareQueueService.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IAiCompareQueueService.java
index f0310a3..e6b8d45 100644
--- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IAiCompareQueueService.java
+++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IAiCompareQueueService.java
@@ -18,4 +18,8 @@ public interface IAiCompareQueueService {
ListtemplateList(String waylineId, Date createTime);
AiCompareQueueEntity getInfo(Long queueId);
Boolean updateStatus(List ids,String queueType);
+
+
+ //用于无人机飞行处理后通知,将航线加入到未比对列表
+ Boolean addWaylineJobToQueue(String jobId);
}
diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IAiCompareService.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IAiCompareService.java
index db044dc..9c08aef 100644
--- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IAiCompareService.java
+++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IAiCompareService.java
@@ -25,4 +25,5 @@ public interface IAiCompareService {
List queryById(Long id);
Boolean pictureFrame(Map compare);
+
}
diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareQueueServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareQueueServiceImpl.java
index 263e92c..f353c1d 100644
--- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareQueueServiceImpl.java
+++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareQueueServiceImpl.java
@@ -9,11 +9,17 @@ import com.tdunning.math.stats.Sort;
import lombok.Data;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+import org.apache.dubbo.config.annotation.DubboReference;
import org.apache.poi.ss.formula.functions.T;
+import org.dromara.business.api.RemoteBusinessTaskService;
+import org.dromara.common.core.constant.AiCompareStatusConstants;
+import org.dromara.common.core.constant.BusinessConstants;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.sample.media.mapper.IFileMapper;
+import org.dromara.sample.media.model.MediaFileEntity;
import org.dromara.sample.wayline.mapper.IAiCompareQueueMapper;
import org.dromara.sample.wayline.mapper.IWaylineJobMapper;
import org.dromara.sample.wayline.model.dto.AiCompareDTO;
@@ -41,6 +47,9 @@ public class AiCompareQueueServiceImpl implements IAiCompareQueueService {
private final IAiCompareQueueMapper aiCompareQueueMapper;
private final IWaylineJobMapper waylineJobMapper;
+ private final IFileMapper fileMapper;
+ @DubboReference
+ private final RemoteBusinessTaskService remoteBusinessTaskService;
@Override
public TableDataInfo queueList(AiCompareQueueDTO bo, PageQuery pageQuery) {
return TableDataInfo.build(aiCompareQueueMapper.selectPage(pageQuery.build(),this.buildAiCompareDTOQueryWrapper(bo)));
@@ -81,4 +90,25 @@ public class AiCompareQueueServiceImpl implements IAiCompareQueueService {
public Boolean updateStatus(List ids,String queueType) {
return aiCompareQueueMapper.updateStatus(ids,queueType);
}
+
+ @Override
+ public Boolean addWaylineJobToQueue(String jobId) {
+ boolean flag = false;
+ WaylineJobEntity waylineJob = waylineJobMapper.selectOne(Wrappers.lambdaQuery().eq(WaylineJobEntity::getJobId, jobId));
+ if(waylineJob!=null){
+ AiCompareQueueEntity aiCompareQueueEntity = new AiCompareQueueEntity();
+ aiCompareQueueEntity.setWaylineId(waylineJob.getFileId());
+ aiCompareQueueEntity.setWaylineName(waylineJob.getName());
+ aiCompareQueueEntity.setJobId(jobId);
+ aiCompareQueueEntity.setJobName(waylineJob.getName());
+ Long selectCount = fileMapper.selectCount(Wrappers.lambdaQuery().eq(MediaFileEntity::getJobId, jobId).eq(MediaFileEntity::getFileType, "jpeg"));
+ aiCompareQueueEntity.setPictureNumber(selectCount.intValue());
+ aiCompareQueueEntity.setCreateTime(new Date());
+ aiCompareQueueEntity.setQueueType(AiCompareStatusConstants.QUEUW_TYPE_0);
+ flag= aiCompareQueueMapper.insert(aiCompareQueueEntity)>0;
+ //去查询当前的航线是否是预约工单的是就更改完成
+ remoteBusinessTaskService.updateTaskStatus(waylineJob.getFileId(), BusinessConstants.TASK_STATUS_3,null,null);
+ }
+ return flag;
+ }
}
diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareServiceImpl.java
index 729d53a..37dd8e1 100644
--- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareServiceImpl.java
+++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareServiceImpl.java
@@ -3,6 +3,7 @@ package org.dromara.sample.wayline.service.impl;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
+import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -15,8 +16,13 @@ import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.satoken.utils.LoginHelper;
+import org.dromara.common.sdk.mqtt.CommonTopicRequest;
import org.dromara.common.sdk.mqtt.MqttGatewayPublish;
import org.dromara.common.sdk.mqtt.TopicConst;
+import org.dromara.sample.media.mapper.IFileMapper;
+import org.dromara.sample.media.model.MediaFileEntity;
+import org.dromara.sample.media.service.IFileService;
+import org.dromara.sample.media.service.IMediaService;
import org.dromara.sample.wayline.mapper.IAiCompareMapper;
import org.dromara.sample.wayline.mapper.IWaylineJobMapper;
import org.dromara.sample.wayline.model.dto.AiCompareDTO;
@@ -48,6 +54,7 @@ public class AiCompareServiceImpl implements IAiCompareService {
private final IAiCompareQueueService aiCompareQueueService;
private final IAiCompareMapper aiCompareMapper;
private final IWaylineJobMapper waylineJobMapper;
+ private final IFileService fileService;
private final MqttGatewayPublish mqttGatewayPublish;
@Override
public TableDataInfo queryPageList(AiCompareDTO bo, PageQuery pageQuery) {
@@ -113,18 +120,23 @@ public class AiCompareServiceImpl implements IAiCompareService {
}
}
String topic = TopicConst.IMAGE +TopicConst.COMPARE;
-
- // mqttGatewayPublish.publish(topic,byId,1);
+ List mediaFileDTOS = listMediaFile(aiCompareEntity.getJobId());
+ mqttGatewayPublish.publish(topic, new CommonTopicRequest().setData(mediaFileDTOS),1);
insertList.add(aiCompareEntity);
}
List resultList = aiCompareMapper.insertOrUpdate(insertList, 10);
- System.out.println(resultList);
List list =compareDTOList.stream().map(e->Convert.toLong(e.get("queueId"))).collect(Collectors.toList());
-
return aiCompareQueueService.updateStatus(list,AiCompareStatusConstants.QUEUW_TYPE_1);
}
- public List