Browse Source

提交

master
袁强 3 months ago
parent
commit
b7dddcaaf6
  1. 36
      dk-modules/business/src/main/java/org/dromara/business/controller/BusinessAlertController.java
  2. 12
      dk-modules/business/src/main/java/org/dromara/business/domain/BusinessAlert.java
  3. 1
      dk-modules/business/src/main/java/org/dromara/business/domain/bo/BusinessAlertBo.java
  4. 10
      dk-modules/business/src/main/java/org/dromara/business/domain/vo/BusinessAlertVo.java
  5. 4
      dk-modules/business/src/main/java/org/dromara/business/service/IBusinessAlertService.java
  6. 23
      dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessAlertServiceImpl.java
  7. 3
      dk-modules/sample/src/main/java/org/dromara/sample/manage/model/dto/DisobeyDTO.java

36
dk-modules/business/src/main/java/org/dromara/business/controller/BusinessAlertController.java

@ -1,20 +1,22 @@
package org.dromara.business.controller; package org.dromara.business.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.apache.dubbo.config.annotation.DubboReference;
import org.dromara.business.domain.BusinessAlert; import org.dromara.business.domain.BusinessAlert;
import org.dromara.business.domain.bo.BusinessAlertBo; import org.dromara.business.domain.bo.BusinessAlertBo;
import org.dromara.business.domain.vo.BusinessAlertVo;
import org.dromara.business.service.IBusinessAlertService; import org.dromara.business.service.IBusinessAlertService;
import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController; import org.dromara.common.web.core.BaseController;
import org.dromara.workflow.api.RemoteWorkflowService;
import org.dromara.workflow.api.domain.RemoteStartProcess;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping; import java.util.List;
import org.springframework.web.bind.annotation.RestController;
/** /**
* 预警服务 * 预警服务
@ -31,6 +33,8 @@ public class BusinessAlertController extends BaseController {
private final IBusinessAlertService businessAlertService; private final IBusinessAlertService businessAlertService;
@DubboReference(timeout = 30000)
private RemoteWorkflowService remoteWorkflowService;
/** /**
* 查询全部预警/待办/已完成/忽略 * 查询全部预警/待办/已完成/忽略
@ -41,6 +45,28 @@ public class BusinessAlertController extends BaseController {
return businessAlertService.getInfo(bo,pageQuery,alertCode); return businessAlertService.getInfo(bo,pageQuery,alertCode);
} }
/**
* 查询全部预警/待办/已完成/忽略
*/
@Operation(summary ="ai实时流预警保存",description = "ai实时流预警保存")
@PostMapping("/saveAlert")
public void saveAlert(BusinessAlertVo vo) {
vo.setBusinessType(2);
BusinessAlert businessAlert = businessAlertService.addBusinessAlert(vo);
RemoteStartProcess startProcess = new RemoteStartProcess();
startProcess.setBusinessId(businessAlert.getAlertId());
startProcess.setFlowCode("alertChz");
remoteWorkflowService.startWorkFlowBatch(List.of(startProcess));
}
/**
* 查询全部预警/待办/已完成/忽略
*/
@Operation(summary ="ai实时流预警保存",description = "ai实时流预警保存")
@PostMapping("/saveAlertList")
public void saveAlert(List<BusinessAlertVo> alertVoList) {
businessAlertService.addBusinessAlertList(alertVoList);
}
} }

12
dk-modules/business/src/main/java/org/dromara/business/domain/BusinessAlert.java

@ -1,16 +1,14 @@
package org.dromara.business.domain; package org.dromara.business.domain;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.translation.annotation.Translation; import org.dromara.common.translation.annotation.Translation;
import org.dromara.common.translation.constant.TransConstant; import org.dromara.common.translation.constant.TransConstant;
import java.io.Serial;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
* 预警任务对象 business_alert * 预警任务对象 business_alert
@ -237,4 +235,6 @@ public class BusinessAlert {
@TableField(exist = false) @TableField(exist = false)
private String alertId; private String alertId;
//1:图片比对预警 2:AI实时预警
private Integer businessType;
} }

1
dk-modules/business/src/main/java/org/dromara/business/domain/bo/BusinessAlertBo.java

@ -240,5 +240,6 @@ public class BusinessAlertBo {
private String endTime; private String endTime;
private String aiName; private String aiName;
private Integer businessType;
} }

10
dk-modules/business/src/main/java/org/dromara/business/domain/vo/BusinessAlertVo.java

@ -1,21 +1,13 @@
package org.dromara.business.domain.vo; package org.dromara.business.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.github.linpeilie.annotations.AutoMapper; import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data; import lombok.Data;
import org.dromara.business.domain.BusinessAlert; import org.dromara.business.domain.BusinessAlert;
import org.dromara.common.core.enums.BusinessStatusEnum;
import org.dromara.common.translation.annotation.Translation;
import org.dromara.common.translation.constant.TransConstant;
import java.io.Serial; import java.io.Serial;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
@ -210,4 +202,6 @@ public class BusinessAlertVo implements Serializable {
private String assignUserName; private String assignUserName;
private Date createTime; private Date createTime;
//1:图片比对预警 2:AI实时预警
private Integer businessType;
} }

4
dk-modules/business/src/main/java/org/dromara/business/service/IBusinessAlertService.java

@ -33,9 +33,9 @@ public interface IBusinessAlertService {
* @param param 预警任务 * @param param 预警任务
* @return 是否新增成功 * @return 是否新增成功
*/ */
Boolean addBusinessAlert(BusinessAlertBo param); BusinessAlert addBusinessAlert(BusinessAlertVo param);
void addBusinessAlertList(List<BusinessAlertVo> alertVoList);
/** /**
* 批量新增预警任务 * 批量新增预警任务

23
dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessAlertServiceImpl.java

@ -29,6 +29,7 @@ import org.dromara.system.api.RemoteLabelPostService;
import org.dromara.system.api.domain.vo.RemoteAiLabelPostVo; import org.dromara.system.api.domain.vo.RemoteAiLabelPostVo;
import org.dromara.system.api.domain.vo.RemoteUserVo; import org.dromara.system.api.domain.vo.RemoteUserVo;
import org.dromara.workflow.api.RemoteWorkflowService; import org.dromara.workflow.api.RemoteWorkflowService;
import org.dromara.workflow.api.domain.RemoteStartProcess;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -61,6 +62,7 @@ public class BusinessAlertServiceImpl implements IBusinessAlertService {
@DubboReference @DubboReference
RemoteLabelPostService remoteLablePostService; RemoteLabelPostService remoteLablePostService;
/** /**
* 新增预警任务 * 新增预警任务
* *
@ -68,9 +70,26 @@ public class BusinessAlertServiceImpl implements IBusinessAlertService {
* @return 是否新增成功 * @return 是否新增成功
*/ */
@Override @Override
public Boolean addBusinessAlert(BusinessAlertBo param) { public BusinessAlert addBusinessAlert(BusinessAlertVo param) {
BusinessAlert alert = MapstructUtils.convert(param, BusinessAlert.class); BusinessAlert alert = MapstructUtils.convert(param, BusinessAlert.class);
return this.baseMapper.insert(alert) > 0; alert.setCreateTime(new Date());
this.baseMapper.insert(alert);
return alert;
}
@Override
public void addBusinessAlertList(List<BusinessAlertVo> alertVoList) {
if(!alertVoList.isEmpty()) {
for (BusinessAlertVo alertVo : alertVoList) {
alertVo.setBusinessType(2);
BusinessAlert alert = addBusinessAlert(alertVo);
RemoteStartProcess startProcess = new RemoteStartProcess();
startProcess.setBusinessId(alert.getAlertId());
startProcess.setFlowCode("alertChz");
remoteWorkflowService.startWorkFlowBatch(List.of(startProcess));
}
}
} }
/** /**

3
dk-modules/sample/src/main/java/org/dromara/sample/manage/model/dto/DisobeyDTO.java

@ -21,4 +21,7 @@ public class DisobeyDTO {
private String model; private String model;
private List<String> type; private List<String> type;
//拉流地址
private String rempUrl;
} }

Loading…
Cancel
Save