Browse Source

Merge remote-tracking branch 'origin/master'

pull/1/head
吴远 3 months ago
parent
commit
c7e6aaaaae
  1. 3
      dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceQrtzServiceImpl.java
  2. 17
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/AiCompareController.java
  3. 11
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareDTO.java
  4. 1
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareMediaFileDTO.java
  5. 4
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiComparePlateDTO.java
  6. 27
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/entity/AiCompareEntity.java
  7. 3
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IAiCompareService.java
  8. 31
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareServiceImpl.java
  9. 1
      dk-modules/sample/src/main/resources/mapper/AiCompareMapper.xml

3
dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceQrtzServiceImpl.java

@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.dubbo.config.annotation.DubboReference;
import org.dromara.business.api.RemoteBusinessTaskService; import org.dromara.business.api.RemoteBusinessTaskService;
import org.dromara.common.core.constant.BusinessConstants; import org.dromara.common.core.constant.BusinessConstants;
import org.dromara.common.core.constant.DeviceQrtzConstants; import org.dromara.common.core.constant.DeviceQrtzConstants;
@ -65,7 +66,7 @@ public class DeviceQrtzServiceImpl implements IDeviceQrtzService {
private IWaylineFileMapper waylineFileMapper; private IWaylineFileMapper waylineFileMapper;
@Autowired @Autowired
private IFlightTaskService flightTaskService; private IFlightTaskService flightTaskService;
@Autowired @DubboReference
private RemoteBusinessTaskService remoteBusinessTaskService; private RemoteBusinessTaskService remoteBusinessTaskService;
@Override @Override
public TableDataInfo<DeviceQrtzEntity> listManageDeviceQrtz(Page page, DeviceQrtzDTO deviceQrtzDTO) { public TableDataInfo<DeviceQrtzEntity> listManageDeviceQrtz(Page page, DeviceQrtzDTO deviceQrtzDTO) {

17
dk-modules/sample/src/main/java/org/dromara/sample/wayline/controller/AiCompareController.java

@ -132,12 +132,19 @@ public class AiCompareController extends BaseController {
} }
/** /**
* 算法预警生成 * 算法结果
*/ */
@Log(title = "算法预警生成", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping("/expose") @PostMapping("/expose")
public R<Void> pictureFrame(@RequestBody Map<String,Object> map) { public R<Void> expose(@RequestBody List<Map<String,Object>> mapList) {
return toAjax(aiCompareService.expose(map)); return toAjax(aiCompareService.expose(mapList));
}
/**
* 算法预警生成
*/
@PostMapping("/expose/alert")
public R<Void> alert(@RequestBody List<Map<String,Object>> mapList) {
return toAjax(aiCompareService.expose(mapList));
} }
} }

11
dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareDTO.java

@ -95,7 +95,7 @@ public class AiCompareDTO implements Serializable {
* 创建者 * 创建者
*/ */
private Long createBy; private Long createId;
/** /**
*用户昵称 *用户昵称
* */ * */
@ -105,16 +105,7 @@ public class AiCompareDTO implements Serializable {
*/ */
private Date createTime; private Date createTime;
/**
* 更新者
*/
private Long updateBy;
/**
* 更新时间
*/
private Date updateTime;
/** /**
* 请求参数 * 请求参数

1
dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiCompareMediaFileDTO.java

@ -27,6 +27,7 @@ public class AiCompareMediaFileDTO {
/**上云文件id*/ /**上云文件id*/
private String fileId; private String fileId;
private Long compareId;
@Schema(description = "文件名") @Schema(description = "文件名")
private String fileName; private String fileName;

4
dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/dto/AiComparePlateDTO.java

@ -17,6 +17,10 @@ import org.dromara.sample.wayline.model.entity.AiComparePlateEntity;
public class AiComparePlateDTO{ public class AiComparePlateDTO{
private Long id; private Long id;
/**
* 比对id
* */
private Long compareId;
/** /**
* 任务id * 任务id
* */ * */

27
dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/entity/AiCompareEntity.java

@ -1,11 +1,10 @@
package org.dromara.sample.wayline.model.entity; package org.dromara.sample.wayline.model.entity;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.common.mybatis.core.domain.BaseEntity;
import java.util.Date;
/** /**
@ -13,9 +12,8 @@ import org.dromara.common.mybatis.core.domain.BaseEntity;
* @data 2025/3/21 * @data 2025/3/21
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true)
@TableName("ai_compare") @TableName("ai_compare")
public class AiCompareEntity extends BaseEntity { public class AiCompareEntity {
@TableId(type = IdType.AUTO) @TableId(type = IdType.AUTO)
private Long id; private Long id;
@ -64,6 +62,25 @@ public class AiCompareEntity extends BaseEntity {
* 任务id * 任务id
* */ * */
private String jobId; private String jobId;
/**
* 创建部门
*/
private Long createDept;
/**
* 创建者
*/
private Long createId;
/**
* 创建时间
*/
private Date createTime;
} }

3
dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/IAiCompareService.java

@ -26,5 +26,6 @@ public interface IAiCompareService {
List<AiCompareMediaFileDTO> queryById(Long id); List<AiCompareMediaFileDTO> queryById(Long id);
Boolean pictureFrame(FrameDTO frameDTO); Boolean pictureFrame(FrameDTO frameDTO);
Boolean expose(Map<String,Object> map); Boolean expose(List<Map<String,Object>> mapList);
Boolean alert(List<Map<String,Object>> mapList);
} }

31
dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareServiceImpl.java

@ -30,6 +30,7 @@ import org.dromara.sample.wayline.mapper.IAiComparePlateMapper;
import org.dromara.sample.wayline.mapper.IWaylineJobMapper; import org.dromara.sample.wayline.mapper.IWaylineJobMapper;
import org.dromara.sample.wayline.model.dto.AiCompareDTO; import org.dromara.sample.wayline.model.dto.AiCompareDTO;
import org.dromara.sample.wayline.model.dto.AiCompareMediaFileDTO; 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.FrameDTO;
import org.dromara.sample.wayline.model.entity.AiCompareEntity; import org.dromara.sample.wayline.model.entity.AiCompareEntity;
import org.dromara.sample.wayline.model.entity.AiComparePlateEntity; import org.dromara.sample.wayline.model.entity.AiComparePlateEntity;
@ -71,7 +72,7 @@ public class AiCompareServiceImpl implements IAiCompareService {
QueryWrapper<AiCompareEntity> wrapper = Wrappers.query(); QueryWrapper<AiCompareEntity> wrapper = Wrappers.query();
wrapper wrapper
.eq(StringUtils.isNotEmpty(bo.getStatus()), "status",bo.getStatus()) .eq(StringUtils.isNotEmpty(bo.getStatus()), "status",bo.getStatus())
.eq(ObjectUtil.isNotEmpty(bo.getCreateBy()), "create_by",bo.getCreateBy()) .eq(ObjectUtil.isNotEmpty(bo.getCreateId()), "create_by",bo.getCreateId())
.like(StringUtils.isNotBlank(bo.getDeptName()), "lower(dept_name)", StringUtils.lowerCase(bo.getDeptName())) .like(StringUtils.isNotBlank(bo.getDeptName()), "lower(dept_name)", StringUtils.lowerCase(bo.getDeptName()))
.like(StringUtils.isNotBlank(bo.getJobName()), "lower(job_name)", StringUtils.lowerCase(bo.getJobName())) .like(StringUtils.isNotBlank(bo.getJobName()), "lower(job_name)", StringUtils.lowerCase(bo.getJobName()))
.between(params.get("beginTime") != null && params.get("endTime") != null, .between(params.get("beginTime") != null && params.get("endTime") != null,
@ -103,7 +104,7 @@ public class AiCompareServiceImpl implements IAiCompareService {
aiCompareEntity.setJobId(serviceInfo.getJobId()); aiCompareEntity.setJobId(serviceInfo.getJobId());
aiCompareEntity.setJobName(serviceInfo.getJobName()); aiCompareEntity.setJobName(serviceInfo.getJobName());
aiCompareEntity.setTotalNum(serviceInfo.getPictureNumber()); aiCompareEntity.setTotalNum(serviceInfo.getPictureNumber());
aiCompareEntity.setCreateBy(loginUser.getUserId()); aiCompareEntity.setCreateId(loginUser.getUserId());
aiCompareEntity.setNickName(loginUser.getNickname()); aiCompareEntity.setNickName(loginUser.getNickname());
aiCompareEntity.setDeptName(loginUser.getDeptName()); aiCompareEntity.setDeptName(loginUser.getDeptName());
aiCompareEntity.setCreateDept(loginUser.getDeptId()); aiCompareEntity.setCreateDept(loginUser.getDeptId());
@ -185,15 +186,35 @@ public class AiCompareServiceImpl implements IAiCompareService {
throw new RuntimeException("未获取到违建数据"); throw new RuntimeException("未获取到违建数据");
} }
String topic = TopicConst.IMAGE +TopicConst.FRAME; String topic = TopicConst.IMAGE +TopicConst.FRAME;
List<AiCompareMediaFileDTO> mediaFileDTOS = listMediaFile(frameDTO.getJobId(),3600,false);
mqttGatewayPublish.publish(topic,new CommonTopicRequest().setData(mediaFileDTOS),1); mqttGatewayPublish.publish(topic,new CommonTopicRequest().setData(frameDTO),1);
return true; return true;
} }
@Override @Override
public Boolean expose(Map<String, Object> map) { public Boolean expose(List<Map<String,Object>> mapList) {
if(!mapList.isEmpty()){
List<AiComparePlateDTO> plateDTOS = Convert.toList(AiComparePlateDTO.class, mapList);
plateDTOS.parallelStream().forEach(e-> {
AiComparePlateEntity plateEntity = new AiComparePlateEntity();
plateEntity.setFileId(e.getFileId());
plateEntity.setPatternName(e.getPatternName());
aiComparePlateMapper.delete(new QueryWrapper<AiComparePlateEntity>().eq("file_id", e.getFileId()));
aiComparePlateMapper.insert(plateEntity);
});
Long compareId = plateDTOS.get(0).getCompareId();
AiCompareEntity compareEntity = aiCompareMapper.selectById(compareId);
compareEntity.setStatus(AiCompareStatusConstants.COMPARE_STATUS_2);
compareEntity.setIllegalNum(plateDTOS.size());
aiCompareMapper.updateById(compareEntity);
}
return true; return true;
} }
@Override
public Boolean alert(List<Map<String, Object>> mapList) {
return null;
}
} }

1
dk-modules/sample/src/main/resources/mapper/AiCompareMapper.xml

@ -10,6 +10,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="listMediaFile" resultType="org.dromara.sample.wayline.model.dto.AiCompareMediaFileDTO"> <select id="listMediaFile" resultType="org.dromara.sample.wayline.model.dto.AiCompareMediaFileDTO">
SELECT SELECT
ai.id as compareId,
mf.file_index, mf.file_index,
mf.file_id, mf.file_id,
mf.file_name, mf.file_name,

Loading…
Cancel
Save