From 988d3e566d7e344f6dce4bc7fc5d9860f72a7db1 Mon Sep 17 00:00:00 2001 From: yq183 <645046984@qq.com> Date: Sat, 29 Mar 2025 23:07:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=EF=BC=9A=E9=AA=8C=E8=AF=81?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E7=94=9F=E6=88=90=EF=BC=9A=E9=A2=84=E8=AD=A6?= =?UTF-8?q?=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/RemoteBusinessAlertService.java | 5 +++- .../dubbo/RemoteBusinessAlertServiceImpl.java | 5 ++++ .../controller/AiCompareController.java | 10 ++++--- .../wayline/model/dto/AiCompareAlertDTO.java | 29 +++++++++++++++++++ .../sample/wayline/model/dto/FrameDTO.java | 4 +++ .../wayline/service/IAiCompareService.java | 4 +-- .../service/impl/AiCompareServiceImpl.java | 29 +++++++++++-------- 7 files changed, 67 insertions(+), 19 deletions(-) create mode 100644 dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareAlertDTO.java diff --git a/dk-api/api-business/src/main/java/org/dromara/business/api/RemoteBusinessAlertService.java b/dk-api/api-business/src/main/java/org/dromara/business/api/RemoteBusinessAlertService.java index e7138d7..eb14684 100644 --- a/dk-api/api-business/src/main/java/org/dromara/business/api/RemoteBusinessAlertService.java +++ b/dk-api/api-business/src/main/java/org/dromara/business/api/RemoteBusinessAlertService.java @@ -13,7 +13,10 @@ import java.util.List; */ public interface RemoteBusinessAlertService { - + /** + * 生成预警,待验证状态 + */ + void saveBusinessAlert(RemoteBusinessAlertBo businessAlertBo); /** * 更新此条预警审批时候的状态 * @param businessId 业务id(预警、工单) diff --git a/dk-modules/business/src/main/java/org/dromara/business/dubbo/RemoteBusinessAlertServiceImpl.java b/dk-modules/business/src/main/java/org/dromara/business/dubbo/RemoteBusinessAlertServiceImpl.java index 3551115..18b80c3 100644 --- a/dk-modules/business/src/main/java/org/dromara/business/dubbo/RemoteBusinessAlertServiceImpl.java +++ b/dk-modules/business/src/main/java/org/dromara/business/dubbo/RemoteBusinessAlertServiceImpl.java @@ -26,6 +26,11 @@ public class RemoteBusinessAlertServiceImpl implements RemoteBusinessAlertServic private final IBusinessAlertService businessAlertService; + @Override + public void saveBusinessAlert(RemoteBusinessAlertBo businessAlertBo) { + + } + /** * 更新此条预警审批时候的状态 * @param businessId 业务id(预警、工单) diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/AiCompareController.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/AiCompareController.java index c6c89af..8e217c9 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/AiCompareController.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/AiCompareController.java @@ -6,6 +6,7 @@ import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; import org.dromara.business.api.domain.vo.RemoteBusinessAlertVo; import org.dromara.common.core.domain.R; +import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.EditGroup; import org.dromara.common.idempotent.annotation.RepeatSubmit; @@ -127,8 +128,9 @@ public class AiCompareController extends BaseController { @Log(title = "预警画框", businessType = BusinessType.INSERT) @RepeatSubmit() @PostMapping("/pictureFrame") - public R pictureFrame(@RequestBody FrameDTO frameDTO) { - return toAjax(aiCompareService.pictureFrame(frameDTO)); + public R pictureFrame(@RequestBody MapobjectMap) { + + return toAjax(aiCompareService.pictureFrame(objectMap)); } /** @@ -143,8 +145,8 @@ public class AiCompareController extends BaseController { * 算法预警生成 算法使用 */ @PostMapping("/expose/alert") - public R alert(@RequestBody List> mapList) { - return toAjax(aiCompareService.alert(mapList)); + public R alert(@RequestBody Mapmap) { + return toAjax(aiCompareService.alert(map)); } /** diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareAlertDTO.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareAlertDTO.java new file mode 100644 index 0000000..89e54e1 --- /dev/null +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareAlertDTO.java @@ -0,0 +1,29 @@ +package org.dromara.sample.wayline.model.dto; + +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.dromara.business.api.domain.bo.RemoteBusinessAlertBo; +import org.dromara.business.api.domain.vo.RemoteBusinessAlertVo; +import org.dromara.sample.wayline.model.entity.AiComparePlateEntity; + +import java.util.List; + +/** + * @auther yq + * @data 2025/3/29 + */ +@Data +@EqualsAndHashCode() +public class AiCompareAlertDTO { + + private String fileId; + private String compareId; + + private String jobId; + private String jobName; + + private String discernImgUrl; + + private List handleList; +} diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/FrameDTO.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/FrameDTO.java index 908171f..886f697 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/FrameDTO.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/FrameDTO.java @@ -32,6 +32,7 @@ public class FrameDTO { */ private String jobId; + private String jobName; /** * * 像素坐标集合 @@ -44,4 +45,7 @@ public class FrameDTO { */ private String fileUrl; + + /**模板图片*/ + private String mateFileUrl; } 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 c994ff5..0d1f49e 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 @@ -26,9 +26,9 @@ public interface IAiCompareService { AiCompareEntity getInfo(Long id); List queryById(Long id); - Boolean pictureFrame(FrameDTO frameDTO); + Boolean pictureFrame(MapobjectMap); Boolean expose(List> mapList); - Boolean alert(List> mapList); + Boolean alert(Mapmap); List alertList(String jobId); Boolean delAlertList(Listids); 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 ec86bdb..18f6f60 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 @@ -17,6 +17,7 @@ import org.dromara.business.api.domain.vo.RemoteBusinessAlertVo; 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; @@ -32,10 +33,7 @@ import org.dromara.sample.media.service.IMediaService; import org.dromara.sample.wayline.mapper.IAiCompareMapper; import org.dromara.sample.wayline.mapper.IAiComparePlateMapper; import org.dromara.sample.wayline.mapper.IWaylineJobMapper; -import org.dromara.sample.wayline.model.dto.AiCompareDTO; -import org.dromara.sample.wayline.model.dto.AiCompareMediaFileDTO; -import org.dromara.sample.wayline.model.dto.AiComparePlateDTO; -import org.dromara.sample.wayline.model.dto.FrameDTO; +import org.dromara.sample.wayline.model.dto.*; import org.dromara.sample.wayline.model.entity.AiCompareEntity; import org.dromara.sample.wayline.model.entity.AiComparePlateEntity; import org.dromara.sample.wayline.model.entity.AiCompareQueueEntity; @@ -150,7 +148,7 @@ public class AiCompareServiceImpl implements IAiCompareService { if(isIllegal){ QueryWrapper queryWrapper = new QueryWrapper().eq("file_id", e.getFileId()); AiComparePlateEntity plateEntity = aiComparePlateMapper.selectOne(queryWrapper); - e.setPatternUrl(fileService.getObjectUrlOne(MinIOConstants.BUCKET_PATTERN,plateEntity.getPatternName(),seconds).toString()); + e.setPatternUrl(fileService.getObjectUrlOne(MinIOConstants.BUCKET_ALERT,plateEntity.getPatternName(),seconds).toString()); } }); } @@ -187,12 +185,16 @@ public class AiCompareServiceImpl implements IAiCompareService { return listMediaFile(aiCompareEntity.getJobId(),3600,true); } @Override - public Boolean pictureFrame(FrameDTO frameDTO) { - if(!frameDTO.getFrameList().isEmpty()){ - throw new RuntimeException("未获取到违建数据"); - } + public Boolean pictureFrame(MapobjectMap) { + FrameDTO frameDTO = Convert.convert(FrameDTO.class, objectMap); + AiCompareEntity aiCompareEntity = aiCompareMapper.selectById(frameDTO.getCompareId()); + aiCompareEntity.setStatus(AiCompareStatusConstants.COMPARE_STATUS_3); + aiCompareEntity.setId(frameDTO.getCompareId()); + aiCompareMapper.updateById(aiCompareEntity); + frameDTO.setJobName(aiCompareEntity.getJobName()); + frameDTO.setFileUrl(fileService.getObjectUrlOne(MinIOConstants.BUCKET_MEDIAFILE,frameDTO.getFileUrl(),3600).toString()); + frameDTO.setMateFileUrl(fileService.getObjectUrlOne(MinIOConstants.BUCKET_MEDIAFILE,frameDTO.getMateFileUrl(),3600).toString()); String topic = TopicConst.IMAGE +TopicConst.FRAME; - mqttGatewayPublish.publish(topic,new CommonTopicRequest().setData(frameDTO),1); return true; } @@ -218,9 +220,12 @@ public class AiCompareServiceImpl implements IAiCompareService { } @Override - public Boolean alert(List> mapList) { - + public Boolean alert(Mapmap) { + System.out.println(map); + AiCompareAlertDTO compareAlertDTO = Convert.convert(AiCompareAlertDTO.class,map); + RemoteBusinessAlertBo businessAlertBo=new RemoteBusinessAlertBo(); + businessAlertService.saveBusinessAlert(businessAlertBo); return null; }