Browse Source

feat: 纠偏算法新增纠偏后抓拍校准图片

master
yinhuaiwei 3 weeks ago
parent
commit
1e6eb4d87c
4 changed files with 59 additions and 20 deletions
  1. +10
    -2
      inspect-main/inspect-main-task/src/main/java/com/inspect/task/domain/PatrolData.java
  2. +1
    -1
      inspect-main/inspect-main-task/src/main/java/com/inspect/task/service/IPatrolTaskService.java
  3. +46
    -17
      inspect-main/inspect-main-task/src/main/java/com/inspect/task/service/impl/PatrolTaskServiceImpl.java
  4. +2
    -0
      inspect-main/inspect-main-task/src/main/resources/mapper/task/PatrolResultMapper.xml

+ 10
- 2
inspect-main/inspect-main-task/src/main/java/com/inspect/task/domain/PatrolData.java View File

@ -80,7 +80,8 @@ public class PatrolData implements Comparable<PatrolData> {
private String filePath;
private String suggestion;
// 纠偏后的图片
private String originalValue;
public String warnStatus(String ws) {
@ -243,6 +244,10 @@ public class PatrolData implements Comparable<PatrolData> {
return this.suggestion;
}
public String getOriginalValue() {
return originalValue;
}
public void setDeviceName(String deviceName) {
this.deviceName = deviceName;
}
@ -355,7 +360,9 @@ public class PatrolData implements Comparable<PatrolData> {
this.suggestion = suggestion;
}
public void setOriginalValue(String originalValue) {
this.originalValue = originalValue;
}
protected boolean canEqual(Object other) {
return other instanceof PatrolData;
@ -407,6 +414,7 @@ public class PatrolData implements Comparable<PatrolData> {
", imageNormalUrlPath='" + imageNormalUrlPath + '\'' +
", filePath='" + filePath + '\'' +
", suggestion='" + suggestion + '\'' +
", originalValue='" + originalValue + '\'' +
'}';
}
}

+ 1
- 1
inspect-main/inspect-main-task/src/main/java/com/inspect/task/service/IPatrolTaskService.java View File

@ -51,7 +51,7 @@ public interface IPatrolTaskService {
List<Map<String, String>> pointStatistics();
void correctionAlgorithm(PatrolData patrolData);
boolean correctionAlgorithm(PatrolData patrolData);
void executeAsync(PatrolTaskStatus taskStatus);


+ 46
- 17
inspect-main/inspect-main-task/src/main/java/com/inspect/task/service/impl/PatrolTaskServiceImpl.java View File

@ -5,6 +5,8 @@ import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.inspect.analysis.domain.ResultAnalysis;
import com.inspect.analysis.mapper.ResultAnalysisMapper;
import com.inspect.base.core.sftp.SftpClient;
import com.inspect.base.core.sftp.SftpUploadEntity;
import com.inspect.base.core.utils.DateUtils;
import com.inspect.base.core.utils.HttpClientUtils;
import com.inspect.base.core.utils.StringUtils;
@ -33,6 +35,8 @@ import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;
import java.util.List;
@Slf4j
@EnableScheduling
@Service
@ -48,6 +52,8 @@ public class PatrolTaskServiceImpl implements IPatrolTaskService {
@Autowired
private TaskCalendarGenerator taskCalendarGenerator;
@Autowired
private SftpClient sftpClient;
final ResultAnalysisMapper resultAnalysisMapper;
@ -110,7 +116,7 @@ public class PatrolTaskServiceImpl implements IPatrolTaskService {
}
public int updatePatrolTask(PatrolTask patrolTask) {
int count = this.patrolTaskMapper.updatePatrolTask(patrolTask);
int count = this.patrolTaskMapper.updatePatrolTask(patrolTask);
taskCalendarGenerator.onTaskChange();
return count;
}
@ -153,16 +159,17 @@ public class PatrolTaskServiceImpl implements IPatrolTaskService {
return this.resultAnalysisMapper.pointStatistics();
}
public void correctionAlgorithm(PatrolData patrolData) {
@Override
public boolean correctionAlgorithm(PatrolData patrolData) {
log.info("controller correctionAlgorithm pointId: {}, resValue: {}",
patrolData.getPointId(),
patrolData.getResValue());
final Map<String, Object> result = patrolTaskMapper.selectChannelCodeByPatrolPointId(patrolData.getPointId());
final String channelCode = (String)result.get("channel_code");
final String presetPosCode = (String)result.get("preset_pos_code");
final String presetPosName = (String)result.get("preset_pos_name");
final String channelCode = (String) result.get("channel_code");
final String presetPosCode = (String) result.get("preset_pos_code");
final String presetPosName = (String) result.get("preset_pos_name");
final Integer patrolPointId = (Integer) result.get("patrol_point_id");
final String videoNvrCode = (String)result.get("video_nvr_code");
final String videoNvrCode = (String) result.get("video_nvr_code");
log.info("controller correctionAlgorithm channelCode: {}, presetPosCode: {}, presetPosName: {}, patrolPointId: {}, videoNvrCode: {}",
channelCode,
presetPosCode,
@ -178,10 +185,10 @@ public class PatrolTaskServiceImpl implements IPatrolTaskService {
+ "&name=" + URLEncoder.encode(presetPosName, ("UTF-8"))
+ "&id=" + patrolPointId
+ "&host=" + "null"
+ "&port=" + "null"
+ "&username=" + "null"
+ "&password=" + "null"
+ "&address=" + "null";
+ "&port=" + "null"
+ "&username=" + "null"
+ "&password=" + "null"
+ "&address=" + "null";
log.info("controller correctionAlgorithm preset url2: {}, param2: {}", url2, param2);
HttpClientUtils.get(url2, param2);
} catch (Exception e) {
@ -207,7 +214,7 @@ public class PatrolTaskServiceImpl implements IPatrolTaskService {
String controlPara1 = "";
String controlPara2 = "";
if(list.size() == 2 && list.get(0).size() == 2 && list.get(1).size() == 2) {
if (list.size() == 2 && list.get(0).size() == 2 && list.get(1).size() == 2) {
controlPara1 = list.get(0).get(0) + "," + list.get(0).get(1);
controlPara2 = list.get(1).get(0) + "," + list.get(1).get(1);
}
@ -217,9 +224,9 @@ public class PatrolTaskServiceImpl implements IPatrolTaskService {
+ "&code=" + channelCode
+ "&controlCode=" + "31"
+ "&controlPara1=" + controlPara1
+ "&controlPara2=" + controlPara2
;
+ "&controlPara2=" + controlPara2;
log.info("controller correctionAlgorithm correction param: {}", param);
// 设置预置位
try {
HttpClientUtils.get(url, param);
Thread.sleep(5000);
@ -228,8 +235,7 @@ public class PatrolTaskServiceImpl implements IPatrolTaskService {
final String param3 = "command=correctionSet"
+ "&code=" + channelCode
+ "&preset=" + presetPosCode
+ "&name=" + URLEncoder.encode(presetPosName, ("UTF-8"))
;
+ "&name=" + URLEncoder.encode(presetPosName, ("UTF-8"));
try {
HttpClientUtils.get(url3, param3);
} catch (Exception e) {
@ -238,14 +244,37 @@ public class PatrolTaskServiceImpl implements IPatrolTaskService {
} catch (Exception e) {
log.info("controller correctionAlgorithm HttpClientUtils.get execute exception: {}", e.getMessage());
}
if(!StringUtils.isEmpty(patrolData.getLineId())) {
// 抓拍新点位图片
final String urlCapture = "http://199.199.199.154:9906" + "/api/v1/device/channelsnap"
+ "?serial=" + videoNvrCode
+ "&realtime=true"
+ "&code=" + channelCode;
String fileTypeDir = "snap/";
String fileName = "correction_" + System.currentTimeMillis() + ".jpg";
String filePath = "";
try {
String[] split = urlCapture.split("\\?");
SftpUploadEntity sftpUploadEntity = new SftpUploadEntity(HttpClientUtils.getStream(split[0], split[split.length - 1]));
sftpUploadEntity.setFilePath(fileTypeDir);
sftpUploadEntity.setFileName(fileName.split(StringUtils.HASHTAG)[0]);
filePath = sftpClient.upload(sftpUploadEntity);
} catch (Exception e) {
log.info("correction ftp error:{}", e.getMessage());
}
// 更新结果
if (!StringUtils.isEmpty(patrolData.getLineId()) && filePath != "") {
ResultAnalysis resultAnalysis = new ResultAnalysis();
resultAnalysis.setLineId(Long.valueOf(patrolData.getLineId()));
resultAnalysis.setResStatus("4");
resultAnalysis.setDescription("已完成纠偏");
log.info("controller correctionAlgorithm updateResultAnalysis: {}", resultAnalysis);
resultAnalysis.setOriginalValue(filePath);
resultAnalysisMapper.updateResultAnalysis(resultAnalysis);
log.info("controller correctionAlgorithm updateResultAnalysis: {}", resultAnalysis);
return true;
}
return false;
}
/**


+ 2
- 0
inspect-main/inspect-main-task/src/main/resources/mapper/task/PatrolResultMapper.xml View File

@ -183,6 +183,7 @@
<result property="channelName" column="channel_name"/>
<result property="imageNormalUrlPath" column="image_normal_url_path"/>
<result property="filePath" column="file_path"/>
<result property="originalValue" column="original_value"/>
</resultMap>
<select id="selectPatrolDataResultByTaskCode" parameterType="PatrolResult" resultMap="PatrolDataResult">
@ -233,6 +234,7 @@
b.filter,
b.request_id,
b.res_img_url as img_analysis,
b.original_value,
b.res_status,
d.device_name,
e.area_name,


Loading…
Cancel
Save