From 1eb6016fcf65889266b5fbac8a0e2f7db27ac2ef Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期三, 20 十一月 2024 11:52:16 +0800
Subject: [PATCH] 视频录像导出日期调整

---
 ycl-server/src/main/java/com/ycl/task/OsdTask.java |   56 +++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 45 insertions(+), 11 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/task/OsdTask.java b/ycl-server/src/main/java/com/ycl/task/OsdTask.java
index 9408335..1eca90f 100644
--- a/ycl-server/src/main/java/com/ycl/task/OsdTask.java
+++ b/ycl-server/src/main/java/com/ycl/task/OsdTask.java
@@ -47,15 +47,38 @@
     private UYErrorTypeCheckService uyErrorTypeCheckService;
     @Autowired
     private YwPointService pointService;
+    @Value("${HK.userName}")
+    public String HKUserName;
+    @Value("${HK.password}")
+    public String HKPassword;
+    @Value("${DH.userName}")
+    public String DHUserName;
+    @Value("${DH.password}")
+    public String DHPassword;
+    @Value("${YS.userName}")
+    public String YSUserName;
+    @Value("${YS.password}")
+    public String YSPassword;
     /**
      * 閫氳繃鏌ongoDB姣忔棩涓�鏈轰竴妗f暟鎹幏鍙栬澶噄p
      * 閫氳繃璁惧ip銆佸搧鐗岃皟鐢ㄤ笉鍚宎pi鑾峰彇osd淇℃伅
      * 姣斿mongoDB涓�鏈轰竴妗d俊鎭紝鏁寸悊鎴恟esult瀛樺叆mongo
      * 鍚屾鍝佺墝鍒癿ysql
      */
-    //TODO锛氬ぇ鍗庡姩鎬佸簱linux鎹綅缃�
     public void getOSD() throws ExecutionException, InterruptedException {
         log.info("寮�濮嬭幏鍙朞SD");
+//        //娴峰悍璁惧娴嬭瘯
+//        //鍏ㄦ櫙
+//        OSDResult osd1 = HKApi.getOsdByIP("51031140001320359101","51.95.99.112", HKUserName, HKPassword);
+//        log.info("娴峰悍鍏ㄦ櫙:{}",osd1);
+//        //缁嗚妭
+//        OSDResult osd2 = HKApi.getOsdByIP("51031140001321359101","51.95.99.112", HKUserName, HKPassword);
+//        log.info("娴峰悍缁嗚妭:{}",osd2);
+//        //澶у崕璁惧娴嬭瘯
+//        OSDResult osd3 = DHApi.getOsd("51030244001320120201","51.95.4.3", DHUserName, DHPassword);
+//        log.info("澶у崕鍏ㄦ櫙:{}",osd3);
+//        OSDResult osd4 = DHApi.getOsd("51030244001321120201","51.95.4.3", DHUserName, DHPassword);
+//        log.info("澶у崕缁嗚妭:{}",osd4);
         //鏌ヤ竴鏈轰竴妗onitor
         Query query = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
         List<MonitorQualifyResult> oneMachineFileResults = mongoTemplate.find(query, MonitorQualifyResult.class);
@@ -75,7 +98,7 @@
             List<Future<OSDResult>> futureList = new ArrayList<>(48);
             List<OSDResult> osdResultList = new ArrayList<>();
             for (TMonitor monitor : monitors) {
-                OSDCheckThread thread = new OSDCheckThread(monitor);
+                OSDCheckThread thread = new OSDCheckThread(monitor,HKUserName,HKPassword,DHUserName,DHPassword,YSUserName,YSPassword);
                 Future<OSDResult> future = executorService.submit(thread);
                 futureList.add(future);
             }
@@ -88,12 +111,13 @@
             List<OsdCheckResult> checkResults = new ArrayList<>();
             Map<String, TMonitor> monitorMap = monitors.stream().collect(Collectors.toMap(TMonitor::getSerialNumber, Function.identity()));
             for (OSDResult osdResult : osdResultList) {
-                TMonitor monitor = monitorMap.get(osdResult.getSerialNumber());
-                //灏佽OsdCheckResult
-                OsdCheckResult osdCheckResult = getOsdCheckResult(osdResult, monitor);
-                checkCorrect(osdResult, monitor, osdCheckResult);
-                log.info("鏍¢獙缁撴灉锛歿}",osdCheckResult);
-                checkResults.add(osdCheckResult);
+                if(osdResult!=null) {
+                    TMonitor monitor = monitorMap.get(osdResult.getSerialNumber());
+                    //灏佽OsdCheckResult
+                    OsdCheckResult osdCheckResult = getOsdCheckResult(osdResult, monitor);
+                    checkCorrect(osdResult, monitor, osdCheckResult);
+                    checkResults.add(osdCheckResult);
+                }
             }
             log.info("缁撴灉鏁版嵁澶у皬:{}", checkResults.size());
             //缁撴灉瀛樺叆mongo
@@ -116,6 +140,7 @@
     private OsdCheckResult getOsdCheckResult(OSDResult osdResult, TMonitor monitor) {
         OsdCheckResult osdCheckResult = new OsdCheckResult();
         osdCheckResult.setDeviceNo(osdResult.getSerialNumber());
+        osdCheckResult.setNo(osdResult.getSerialNumber());
         osdCheckResult.setIp(monitor.getIp());
         osdCheckResult.setDeviceType(monitor.getCameraFunType());
         osdCheckResult.setCheckTime(osdResult.getCheckTime());
@@ -140,16 +165,19 @@
             } else {
                 osdCheckResult.setOsdTimeCorrect(ApiConstants.OSD_Error);
             }
+        }else {
+            osdCheckResult.setOsdTimeCorrect(ApiConstants.OSD_Unknown);
         }
         //妫�鏌ラ�氶亾鍚嶆槸鍚︽纭�
-        //鏍¢獙瑙勫垯锛岃繖閲屾殏鏃朵笉姣旇緝鍏ㄦ櫙鍜岀粏鑺備袱瀛椼��
         if (!StringUtils.isEmpty(osdResult.getName()) && !StringUtils.isEmpty(monitor.getName())) {
-            if (monitor.getName().equals(osdResult.getName()) || monitor.getName().replace("鍏ㄦ櫙", "缁嗚妭").equals(osdResult.getName()) || monitor.getName().replace("缁嗚妭", "鍏ㄦ櫙").equals(osdResult.getName())) {
+            if (monitor.getName().equals(osdResult.getName())) {
                 osdCheckResult.setOsdNameCorrect(ApiConstants.OSD_Correct);
                 osdCheckResult.setOsdName(osdResult.getName());
             } else {
                 osdCheckResult.setOsdNameCorrect(ApiConstants.OSD_Error);
             }
+        }else {
+            osdCheckResult.setOsdNameCorrect(ApiConstants.OSD_Unknown);
         }
         //妫�鏌ョ渷鏄惁姝g‘
         if (!StringUtils.isEmpty(osdResult.getOSD1())) {
@@ -158,6 +186,8 @@
             } else {
                 osdCheckResult.setOsdProvinceCorrect(ApiConstants.OSD_Error);
             }
+        }else {
+            osdCheckResult.setOsdProvinceCorrect(ApiConstants.OSD_Unknown);
         }
         //妫�鏌ュ競鏄惁姝g‘
         if (!StringUtils.isEmpty(osdResult.getOSD2())) {
@@ -166,15 +196,19 @@
             } else {
                 osdCheckResult.setOsdCityCorrect(ApiConstants.OSD_Error);
             }
+        }else {
+            osdCheckResult.setOsdCityCorrect(ApiConstants.OSD_Unknown);
         }
         //妫�鏌ュ尯鍘挎槸鍚︽纭�
         if (!StringUtils.isEmpty(osdResult.getOSD3())) {
             AreaDeptEnum areaDeptEnum = AreaDeptEnum.fromCode(monitor.getSerialNumber().substring(0, 6));
-            if (areaDeptEnum != null && osdResult.getOSD3().equals(areaDeptEnum.getName())) {
+            if (areaDeptEnum != null && osdResult.getOSD3().equals(areaDeptEnum.getOsdName())) {
                 osdCheckResult.setOsdPartCorrect(ApiConstants.OSD_Correct);
             } else {
                 osdCheckResult.setOsdPartCorrect(ApiConstants.OSD_Error);
             }
+        }else {
+            osdCheckResult.setOsdPartCorrect(ApiConstants.OSD_Unknown);
         }
     }
 

--
Gitblit v1.8.0