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.extension.plugins.pagination.Page;
import org.apache.dubbo.config.annotation.DubboReference;
import org.dromara.business.api.RemoteBusinessTaskService;
import org.dromara.common.core.constant.BusinessConstants;
import org.dromara.common.core.constant.DeviceQrtzConstants;
@ -65,7 +66,7 @@ public class DeviceQrtzServiceImpl implements IDeviceQrtzService {
private IWaylineFileMapper waylineFileMapper;
@Autowired
private IFlightTaskService flightTaskService;
@Autowired
@DubboReference
private RemoteBusinessTaskService remoteBusinessTaskService;
@Override
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")
public R<Void> pictureFrame(@RequestBody Map<String,Object> map) {
return toAjax(aiCompareService.expose(map));
public R<Void> expose(@RequestBody List<Map<String,Object>> mapList) {
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 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*/
private String fileId;
private Long compareId;
@Schema(description = "文件名")
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{
private Long id;
/**
* 比对id
* */
private Long compareId;
/**
* 任务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;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import lombok.*;
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
@EqualsAndHashCode(callSuper = true)
@TableName("ai_compare")
public class AiCompareEntity extends BaseEntity {
public class AiCompareEntity {
@TableId(type = IdType.AUTO)
private Long id;
@ -64,6 +62,25 @@ public class AiCompareEntity extends BaseEntity {
* 任务id
* */
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);
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.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.entity.AiCompareEntity;
import org.dromara.sample.wayline.model.entity.AiComparePlateEntity;
@ -71,7 +72,7 @@ public class AiCompareServiceImpl implements IAiCompareService {
QueryWrapper<AiCompareEntity> wrapper = Wrappers.query();
wrapper
.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.getJobName()), "lower(job_name)", StringUtils.lowerCase(bo.getJobName()))
.between(params.get("beginTime") != null && params.get("endTime") != null,
@ -103,7 +104,7 @@ public class AiCompareServiceImpl implements IAiCompareService {
aiCompareEntity.setJobId(serviceInfo.getJobId());
aiCompareEntity.setJobName(serviceInfo.getJobName());
aiCompareEntity.setTotalNum(serviceInfo.getPictureNumber());
aiCompareEntity.setCreateBy(loginUser.getUserId());
aiCompareEntity.setCreateId(loginUser.getUserId());
aiCompareEntity.setNickName(loginUser.getNickname());
aiCompareEntity.setDeptName(loginUser.getDeptName());
aiCompareEntity.setCreateDept(loginUser.getDeptId());
@ -185,15 +186,35 @@ public class AiCompareServiceImpl implements IAiCompareService {
throw new RuntimeException("未获取到违建数据");
}
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;
}
@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;
}
@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
ai.id as compareId,
mf.file_index,
mf.file_id,
mf.file_name,

Loading…
Cancel
Save