Browse Source

红外图片引用接口

master
wangxun 6 months ago
parent
commit
f94593cfe7
6 changed files with 102 additions and 3 deletions
  1. +9
    -0
      src/main/java/com/inspect/simulator/controller/InfraredController.java
  2. +8
    -0
      src/main/java/com/inspect/simulator/mapper/ResultAnalysisMapper.java
  3. +7
    -0
      src/main/java/com/inspect/simulator/service/ResultAnalysisService.java
  4. +66
    -0
      src/main/java/com/inspect/simulator/service/impl/ResultAnnalysisServiceImpl.java
  5. +1
    -3
      src/main/resources/mapper/PatrolPresetPosMapper.xml
  6. +11
    -0
      src/main/resources/mapper/ResultAnalysisMapper.xml

+ 9
- 0
src/main/java/com/inspect/simulator/controller/InfraredController.java View File

@ -5,6 +5,7 @@ import com.inspect.simulator.domain.Infrared.*;
import com.inspect.simulator.hikVision.utils.StringUtils;
import com.inspect.simulator.service.HikVisionService;
import com.inspect.simulator.hikVision.utils.AjaxResult;
import com.inspect.simulator.service.ResultAnalysisService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@ -12,6 +13,7 @@ import org.springframework.core.io.InputStreamResource;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
@ -27,6 +29,9 @@ public class InfraredController {
@Autowired
private HikVisionService hikVisionService;
@Resource
private ResultAnalysisService resultAnnalysisService;
/**
* ----登录----
* nvrIp nvrIp
@ -146,5 +151,9 @@ public class InfraredController {
response.put("close", 1);
return response;
}
@PostMapping("/ir/channelImg")
public String getChannelImg(@RequestParam("patrolPointId") String patrolPointId) {
return resultAnnalysisService.selectChannelImgByPatrolPointId(patrolPointId);
}
}

+ 8
- 0
src/main/java/com/inspect/simulator/mapper/ResultAnalysisMapper.java View File

@ -0,0 +1,8 @@
package com.inspect.simulator.mapper;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface ResultAnalysisMapper {
String selectChannelImgByPatrolPointId(String patrolPointId);
}

+ 7
- 0
src/main/java/com/inspect/simulator/service/ResultAnalysisService.java View File

@ -0,0 +1,7 @@
package com.inspect.simulator.service;
public interface ResultAnalysisService {
String selectChannelImgByPatrolPointId(String patrolPointId);
}

+ 66
- 0
src/main/java/com/inspect/simulator/service/impl/ResultAnnalysisServiceImpl.java View File

@ -0,0 +1,66 @@
package com.inspect.simulator.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.inspect.simulator.mapper.ResultAnalysisMapper;
import com.inspect.simulator.service.ResultAnalysisService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class ResultAnnalysisServiceImpl implements ResultAnalysisService {
@Resource
private ResultAnalysisMapper resultAnalysisMapper;
@Override
public String selectChannelImgByPatrolPointId(String patrolPointId) {
String resImageUrl=null;
String jsonStr = resultAnalysisMapper.selectChannelImgByPatrolPointId(patrolPointId);
resImageUrl = extractResImageUrl(jsonStr, patrolPointId);
if (resImageUrl==null){
try {
JSONObject jsonObject = JSONObject.parseObject(jsonStr);
resImageUrl = jsonObject.getString("resImageUrl");
} catch (Exception e) {
e.getMessage();
}
}
return resImageUrl != null ? resImageUrl : "Image URL not found";
}
public String extractResImageUrl(String jsonStr, String objectId) {
if (jsonStr == null || jsonStr.isEmpty()) {
return null;
}
try {
JSONObject json = JSONObject.parseObject(jsonStr);
String[] listKeys = {"resultList"};
for (String key : listKeys) {
if (json.containsKey(key)) {
JSONArray items = json.getJSONArray(key);
for (int i = 0; i < items.size(); i++) {
JSONObject item = items.getJSONObject(i);
if (objectId.equals(item.getString("objectId"))) {
JSONArray results = item.getJSONArray("results");
if (results != null && !results.isEmpty()) {
JSONObject firstResult = results.getJSONObject(0);
if (firstResult.containsKey("resImageUrl")) {
return firstResult.getString("resImageUrl");
}
}
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}

+ 1
- 3
src/main/resources/mapper/PatrolPresetPosMapper.xml View File

@ -93,7 +93,5 @@
where a.patrol_point_id = #{patrolPointId}
</select>
<select id="selectChannelImgByPatrolPointId" parameterType="integer" resultType="string">
select channel_img from patrol_preset_pos where patrol_point_id = #{patrolPointId}
</select>
</mapper>

+ 11
- 0
src/main/resources/mapper/ResultAnalysisMapper.xml View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.inspect.simulator.mapper.ResultAnalysisMapper">
<select id="selectChannelImgByPatrolPointId" parameterType="string" resultType="string">
select result_content from result_analysis
where objectId = #{patrolPointId} order by line_id limit 1;
</select>
</mapper>

Loading…
Cancel
Save