ycl-common/src/main/java/com/ycl/service/oss/impl/OssServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-platform/src/main/java/com/ycl/dto/video/Camera.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-platform/src/main/java/com/ycl/dto/video/HttpResponseResult.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-platform/src/main/java/com/ycl/dto/video/PageResult.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-platform/src/main/java/com/ycl/util/VideoUtil.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ycl-platform/src/test/java/com/ycl/sccgplatform/Test1.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
ycl-common/src/main/java/com/ycl/service/oss/impl/OssServiceImpl.java
@@ -145,6 +145,9 @@ } public static String getcontentType(String FilenameExtension) { if (FilenameExtension.equalsIgnoreCase(".mp4")||FilenameExtension.equalsIgnoreCase(".mov")) { return "video/mp4"; } if (FilenameExtension.equalsIgnoreCase(".bmp")) { return "image/bmp"; } ycl-platform/src/main/java/com/ycl/dto/video/Camera.java
New file @@ -0,0 +1,45 @@ package com.ycl.dto.video; import lombok.Data; import java.util.Date; @Data public class Camera { private String cameraIndexCode; private String gbIndexCode; private String name; private String deviceIndexCode; private String longitude; private String latitude; private String altitude; private Integer pixel; private Integer cameraType; private String cameraTypeName; private String installPlace; private String matrixCode; private Integer chanNum; private String viewshed; private String capabilitySet; private String capabilitySetName; private String intelligentSet; private String intelligentSetName; private String recordLocation; private String recordLocationName; private Integer ptzController; private String ptzControllerName; private String deviceResourceType; private String deviceResourceTypeName; private String channelType; private String channelTypeName; private Integer transType; private String transTypeName; private Date updateTime; private String unitIndexCode; private String treatyType; private String treatyTypeName; private Date createTime; private Integer status; private String statusName; } ycl-platform/src/main/java/com/ycl/dto/video/HttpResponseResult.java
New file @@ -0,0 +1,11 @@ package com.ycl.dto.video; import com.alibaba.fastjson.JSONObject; import lombok.Data; @Data public class HttpResponseResult{ private String code; private String msg; private JSONObject data; } ycl-platform/src/main/java/com/ycl/dto/video/PageResult.java
New file @@ -0,0 +1,18 @@ package com.ycl.dto.video; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.util.List; @Data @AllArgsConstructor @NoArgsConstructor public class PageResult<T> { private Integer total; private Integer pageSize; private Integer pageNo; private List<T> list; } ycl-platform/src/main/java/com/ycl/util/VideoUtil.java
@@ -1,13 +1,19 @@ package com.ycl.util; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import cn.hutool.json.JSONObject; import com.fasterxml.jackson.databind.ObjectMapper; import com.ycl.api.CommonResult; import com.hikvision.artemis.sdk.ArtemisHttpUtil; import com.hikvision.artemis.sdk.config.ArtemisConfig; import com.ycl.dto.v1.Req.FirstReq; import com.ycl.dto.v1.Req.SecondReq; import com.ycl.dto.v1.Res.FirstRes; import com.ycl.dto.video.Camera; import com.ycl.dto.video.HttpResponseResult; import com.ycl.dto.video.PageResult; import com.ycl.utils.MD5Util; import lombok.SneakyThrows; import org.apache.http.HttpResponse; import org.apache.http.util.EntityUtils; import org.springframework.beans.factory.annotation.Value; import org.springframework.http.*; import org.springframework.http.client.ClientHttpResponse; @@ -17,6 +23,9 @@ import org.springframework.web.client.RestTemplate; import java.net.URI; import java.util.HashMap; import java.util.List; import java.util.Map; @Component public class VideoUtil { @@ -118,4 +127,57 @@ return "获取地址失败,请检查code值"; } } private final String ARTEMIS_PATH = "/artemis"; private final String HOST = "10.53.133.82:1443"; private final String APP_KEY = "29967737"; private final String APP_SECRET = "LElVf9Ct3ykStZHCmFNZ"; public PageResult<Camera> callPostCameras(Integer pageNo, Integer pageSize, String treeCode) throws Exception { ArtemisConfig config = new ArtemisConfig(); config.setHost(HOST); // 代理API网关nginx服务器ip端口 config.setAppKey(APP_KEY); // 秘钥appkey config.setAppSecret(APP_SECRET);// 秘钥appSecret final String getSecurityApi = ARTEMIS_PATH + "/api/resource/v1/cameras"; // 接口路径 Map<String, String> path = new HashMap<String, String>(2) { { put("https://", getSecurityApi); } }; Map<String, String> head = new HashMap<String, String>(2) { //get请求的head参数 { put("headpost", "sky-test"); } }; Map<String, String> query = new HashMap<String, String>(2) { //get请求的head参数 { put("domainId", "0"); } }; JSONObject jsonBody = new JSONObject(); jsonBody.put("pageNo", pageNo); jsonBody.put("pageSize", pageSize); jsonBody.put("treeCode", treeCode); String body = jsonBody.toString(); //参数根据接口实际情况设置 HttpResponse result = ArtemisHttpUtil.doPostStringImgArtemis(config, path, body, query, null, "application/json", head); try { String strResult = EntityUtils.toString(result.getEntity()); HttpResponseResult responseResult = com.alibaba.fastjson.JSONObject.parseObject(strResult, HttpResponseResult.class); if ("0".equals(responseResult.getCode())) { com.alibaba.fastjson.JSONObject jsonObject = responseResult.getData(); String strList = jsonObject.getString("list"); Integer total = Integer.parseInt(jsonObject.getString("total")); Integer resultPageSize = Integer.parseInt(jsonObject.getString("pageSize")); Integer resultPageNo = Integer.parseInt(jsonObject.getString("pageNo")); List<Camera> ls = com.alibaba.fastjson.JSONObject.parseArray(strList, Camera.class); PageResult<Camera> pageResult = new PageResult<>(total, resultPageSize, resultPageNo, ls); return pageResult; } } catch (Exception e) { e.printStackTrace(); } return null; } } ycl-platform/src/test/java/com/ycl/sccgplatform/Test1.java
@@ -1,6 +1,9 @@ package com.ycl.sccgplatform; import com.ycl.dto.statistics.CategoryDto; import com.alibaba.fastjson.JSONObject; import com.ycl.dto.video.Camera; import com.ycl.dto.video.HttpResponseResult; import com.ycl.dto.video.PageResult; import com.ycl.mapper.unlawful.UnlawfulMapper; import com.ycl.service.oss.OssService; import org.junit.jupiter.api.Test; @@ -13,8 +16,6 @@ import java.util.List; import java.util.UUID; import static com.alibaba.druid.util.Utils.loadFromFile; @SpringBootTest public class Test1 { @@ -25,9 +26,71 @@ private UnlawfulMapper unlawfuldao; @Test void test(){ void test() { // List<CategoryDto> data = unlawfuldao.getDataByType(0, 5,"2022-12-14 17:19:01", "2022-12-14 17:19:03"); // System.out.println(data); String msg = "{\n" + " \"code\": \"0\",\n" + " \"msg\": \"success\",\n" + " \"data\": {\n" + " \"total\": 1,\n" + " \"pageSize\": 20,\n" + " \"pageNo\": 1,\n" + " \"list\": [\n" + " {\n" + " \"cameraIndexCode\": \"90ad77d8057c43dab140b77361606927\",\n" + " \"gbIndexCode\": \"12000000051210000000\",\n" + " \"name\": \"Camera_01\",\n" + " \"deviceIndexCode\": \"f5da3e320bcb483da6bef4b3f86de779\",\n" + " \"longitude\": \"120.216123284763\",\n" + " \"latitude\": \"30.21168569675452\",\n" + " \"altitude\": \"88\",\n" + " \"pixel\": 1,\n" + " \"cameraType\": 1,\n" + " \"cameraTypeName\": \"半球\",\n" + " \"installPlace\": \"街道\",\n" + " \"matrixCode\": \"2076c586b0a94a6ba639b44eda9e76e9\",\n" + " \"chanNum\": 1,\n" + " \"viewshed\": \"{\\\"horizontalValue\\\":\\\"13.80000\\\",\\\"azimuth\\\":\\\"109.23000\\\",\\\"visibleRadius\\\":\\\"48.00000\\\"}\",\n" + " \"capabilitySet\": \"@event_face@\",\n" + " \"capabilitySetName\": \"人脸采集能力\",\n" + " \"intelligentSet\": \"@face@\",\n" + " \"intelligentSetName\": \"人脸结构化能力\",\n" + " \"recordLocation\": \"0\",\n" + " \"recordLocationName\": \"中心存储\",\n" + " \"ptzController\": 1,\n" + " \"ptzControllerName\": \"DVR\",\n" + " \"deviceResourceType\": \"ENCODE_DEVICE\",\n" + " \"deviceResourceTypeName\": \"编码设备\",\n" + " \"channelType\": \"digital\",\n" + " \"channelTypeName\": \"数字通道\",\n" + " \"transType\": 0,\n" + " \"transTypeName\": \"UDP\",\n" + " \"updateTime\": \"2021-06-15T00:00:00.000+08:00\",\n" + " \"unitIndexCode\": \"083b2031c1db4f368f015fe2562e0012\",\n" + " \"treatyType\": \"20005\",\n" + " \"treatyTypeName\": \"ONVIF\",\n" + " \"createTime\": \"2021-06-15T00:00:00.000+08:00\",\n" + " \"status\": 0,\n" + " \"statusName\": \"不在线\"\n" + " }\n" + " ]\n" + " }\n" + "}\n"; HttpResponseResult responseResult = com.alibaba.fastjson.JSONObject.parseObject(msg, HttpResponseResult.class); if ("0".equals(responseResult.getCode())) { JSONObject jsonObject = responseResult.getData(); String strList = jsonObject.getString("list"); Integer total = Integer.parseInt(jsonObject.getString("total")); Integer pageSize = Integer.parseInt(jsonObject.getString("pageSize")); Integer pageNo = Integer.parseInt(jsonObject.getString("pageNo")); List<Camera> ls = JSONObject.parseArray(strList, Camera.class); PageResult<Camera> pageResult = new PageResult<>(total, pageSize, pageNo, ls); System.out.println(ls.size()); } } // @Test @@ -37,17 +100,17 @@ // } @Test void test2(){ void test2() { double v = Double.parseDouble("1.0"); double v1 = Double.parseDouble("3.0"); System.out.println(v / v1); } @Test void test3(){ void test3() { System.out.println("sczf/" + String.valueOf(UUID.randomUUID())); } @Test void test4() throws Exception { String extension = "jpg";