Browse Source

提交:验证列表生成:预警生成

pull/1/head
袁强 3 months ago
parent
commit
988d3e566d
  1. 5
      dk-api/api-business/src/main/java/org/dromara/business/api/RemoteBusinessAlertService.java
  2. 5
      dk-modules/business/src/main/java/org/dromara/business/dubbo/RemoteBusinessAlertServiceImpl.java
  3. 10
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/AiCompareController.java
  4. 29
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareAlertDTO.java
  5. 4
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/FrameDTO.java
  6. 4
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IAiCompareService.java
  7. 29
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareServiceImpl.java

5
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(预警工单)

5
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(预警工单)

10
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<Void> pictureFrame(@RequestBody FrameDTO frameDTO) {
return toAjax(aiCompareService.pictureFrame(frameDTO));
public R<Void> pictureFrame(@RequestBody Map<String,Object>objectMap) {
return toAjax(aiCompareService.pictureFrame(objectMap));
}
/**
@ -143,8 +145,8 @@ public class AiCompareController extends BaseController {
* 算法预警生成 算法使用
*/
@PostMapping("/expose/alert")
public R<Void> alert(@RequestBody List<Map<String,Object>> mapList) {
return toAjax(aiCompareService.alert(mapList));
public R<Void> alert(@RequestBody Map<String,Object>map) {
return toAjax(aiCompareService.alert(map));
}
/**

29
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<RemoteBusinessAlertVo> handleList;
}

4
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;
}

4
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<AiCompareMediaFileDTO> queryById(Long id);
Boolean pictureFrame(FrameDTO frameDTO);
Boolean pictureFrame(Map<String,Object>objectMap);
Boolean expose(List<Map<String,Object>> mapList);
Boolean alert(List<Map<String,Object>> mapList);
Boolean alert(Map<String,Object>map);
List<RemoteBusinessAlertVo> alertList(String jobId);
Boolean delAlertList(List<Long>ids);

29
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<AiComparePlateEntity> queryWrapper = new QueryWrapper<AiComparePlateEntity>().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(Map<String,Object>objectMap) {
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<Map<String, Object>> mapList) {
public Boolean alert(Map<String,Object>map) {
System.out.println(map);
AiCompareAlertDTO compareAlertDTO = Convert.convert(AiCompareAlertDTO.class,map);
RemoteBusinessAlertBo businessAlertBo=new RemoteBusinessAlertBo();
businessAlertService.saveBusinessAlert(businessAlertBo);
return null;
}

Loading…
Cancel
Save