Merge remote-tracking branch 'origin/guoshengxiong' into guoshengxiong

This commit is contained in:
guo 2024-03-12 16:47:08 +08:00
commit a809f2fb1c
2 changed files with 87 additions and 0 deletions

View File

@ -301,6 +301,44 @@ public class HikvisionCall {
return null;
}
/**
* 测试获取人员详情
*
* @return
*/
@GetMapping("/getCameraOnline")
public Result getCameraOnline() {
Project project = projectMapper.selectOne(new LambdaQueryWrapper<Project>().eq(Project::getProjectSn, "B717CB992D054A878FDAFB4A5C169947"));
JSONArray cameraOnline = getCameraOnline(project).getJSONArray("list");
long online = cameraOnline.stream().filter(c -> JSONObject.parseObject(c.toString()).getString("online").equals("1")).count();
long online1 = cameraOnline.stream().filter(c -> JSONObject.parseObject(c.toString()).getString("online").equals("0")).count();
long online2 = cameraOnline.stream().filter(c -> JSONObject.parseObject(c.toString()).getString("online") == null).count();
Map<String, Object> resultMap = new HashMap<>();
resultMap.put("online", online);
resultMap.put("online1", online1);
resultMap.put("online2", online2);
return Result.success(resultMap);
}
/**
* 获取编码设备在线状态
*
* @return
*/
@GetMapping("/getEncodeDeviceOnline")
public Result getEncodeDeviceOnline() {
Project project = projectMapper.selectOne(new LambdaQueryWrapper<Project>().eq(Project::getProjectSn, "B717CB992D054A878FDAFB4A5C169947"));
JSONArray encodedDevice = getEncodeDeviceOnline(project).getJSONArray("list");
long online = encodedDevice.stream().filter(c -> JSONObject.parseObject(c.toString()).getString("online").equals("1")).count();
long online1 = encodedDevice.stream().filter(c -> JSONObject.parseObject(c.toString()).getString("online").equals("0")).count();
long online2 = encodedDevice.stream().filter(c -> JSONObject.parseObject(c.toString()).getString("online") == null).count();
Map<String, Object> resultMap = new HashMap<>();
resultMap.put("online", online);
resultMap.put("online1", online1);
resultMap.put("online2", online2);
return Result.success(resultMap);
}
/**
* 获取车辆颜色
*
@ -1194,6 +1232,46 @@ public class HikvisionCall {
return null;
}
/**
* 获取监控点在线状态
* @param project
*/
public JSONObject getCameraOnline(Project project) {
final String ARTEMIS_PATH = "/artemis";
final String path = ARTEMIS_PATH + "/api/nms/v1/online/camera/get";
String host = "https://" + project.getArtemisConfigHost();
JSONObject requestParam = new JSONObject();
String rs = HikvisionUtil.doPost(host, path, JSONArray.toJSONString(requestParam), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
if (rs == null) {
return null;
}
JSONObject jod = HikvisionUtil.getJSONObjectData(rs);
if (jod != null) {
return jod;
}
return null;
}
/**
* 获取编码设备在线状态
* @param project
*/
public JSONObject getEncodeDeviceOnline(Project project) {
final String ARTEMIS_PATH = "/artemis";
final String path = ARTEMIS_PATH + "/api/nms/v1/online/encode_device/get";
String host = "https://" + project.getArtemisConfigHost();
JSONObject requestParam = new JSONObject();
String rs = HikvisionUtil.doPost(host, path, JSONArray.toJSONString(requestParam), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
JSONObject jod = HikvisionUtil.getJSONObjectData(rs);
if (rs == null) {
return null;
}
if (jod != null) {
return jod;
}
return null;
}
private HikvisionOrganization getHikvisionOrganization(Project project) {
HikvisionOrganization hikvisionOrganization = new HikvisionOrganization();
hikvisionOrganization.setClientId(null);

View File

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.gexin.fastjson.JSON;
import com.zhgd.jeecg.common.api.vo.Result;
import com.zhgd.jeecg.common.mybatis.EntityMap;
import com.zhgd.xmgl.modules.car.entity.CarCamera;
import com.zhgd.xmgl.modules.car.entity.CarPassRecord;
import com.zhgd.xmgl.modules.car.entity.vo.TodayOutInNumber;
import com.zhgd.xmgl.modules.car.service.ICarCameraService;
@ -228,6 +229,14 @@ public class CarPassRecordController {
return rs;
}
@ApiOperation(value = "接收车辆摄像头传过来的车辆通行记录", notes = "接收车辆摄像头传过来的车辆通行记录", httpMethod = "POST")
@PostMapping(value = "/saveCarPassRecord")
public Result<Object> saveCarPassRecord(@RequestBody CarPassRecord carPassRecord) {
CarCamera camera = carCameraService.getOne(Wrappers.<CarCamera>lambdaQuery().eq(CarCamera::getCameraId, carPassRecord.getCameraId()));
Map<String, Object> resultMap = carPassRecordService.saveCameraCarPassRecord(carPassRecord.getCarNumber(), carPassRecord.getCarLogo(), carPassRecord.getColor(), camera.getProjectSn(), carPassRecord.getCameraId(), carPassRecord.getType() == 0 ? "in" : "out", carPassRecord.getImageUrl(), null);
return Result.success(resultMap);
}
private List<Map<String, Object>> getCarTitle(String action, String type, String plateNum, Integer redCode, Integer systemType) {
List<Map<String, Object>> list = new ArrayList<>();
String title = "";