From 69cd9f59a0fabf12f8c9147fcba7f69817a870b3 Mon Sep 17 00:00:00 2001
From: jiazx0107@163.com <jiazx0107@163.com>
Date: 星期一, 06 十一月 2023 23:40:59 +0800
Subject: [PATCH] 更新仓内抓拍2

---
 igds-security/src/main/java/com/ld/igds/timer/ScheduledSec.java |  189 +++++++++++++++++++++++++----------------------
 1 files changed, 100 insertions(+), 89 deletions(-)

diff --git a/igds-security/src/main/java/com/ld/igds/timer/ScheduledSec.java b/igds-security/src/main/java/com/ld/igds/timer/ScheduledSec.java
index faa3667..1a3720d 100644
--- a/igds-security/src/main/java/com/ld/igds/timer/ScheduledSec.java
+++ b/igds-security/src/main/java/com/ld/igds/timer/ScheduledSec.java
@@ -1,30 +1,27 @@
 package com.ld.igds.timer;
 
-import com.bstek.bdf2.core.model.DefaultCompany;
 import com.ld.igds.camera.ApiCameraManager;
 import com.ld.igds.camera.CameraUtil;
 import com.ld.igds.camera.data.ApiCameraResp;
 import com.ld.igds.camera.data.ApiSnapReq;
-import com.ld.igds.common.CoreCommonService;
 import com.ld.igds.data.ConfigData;
 import com.ld.igds.file.CoreFileService;
 import com.ld.igds.models.SecCamera;
 import com.ld.igds.models.SecSnapConf;
-import com.ld.igds.models.SecSnapDepot;
 import com.ld.igds.models.SnapSer;
 import com.ld.igds.sec.service.CoreSecCameraService;
-import com.ld.igds.sec.service.SecSnapService;
-import com.ld.igds.sec.service.SecurityService;
+import com.ld.igds.sec.service.SecSnapDepotService;
 import com.ld.igds.util.ContextUtil;
 import com.ld.igds.util.DateUtil;
-import com.ld.igds.view.manager.TempManager;
 import com.ld.igds.view.service.SnapSerService;
+
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.time.DateUtils;
+
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
 import javax.annotation.Resource;
+
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
@@ -37,109 +34,123 @@
 @Component(ScheduledSec.BEAN_ID)
 public class ScheduledSec {
 
-    public static final String BEAN_ID = "sec.scheduled";
+	public static final String BEAN_ID = "sec.scheduled";
 
-    @Resource
-    private ConfigData configData;
-    @Resource
-    private SecSnapService secSnapService;
-    @Resource
-    private CoreSecCameraService coreSecCameraService;
-    @Resource
-    private SnapSerService snapSerService;
-    @Resource
-    private CoreFileService fileService;
-    @Resource
-    private ApiCameraManager apiCameraManager;
+	@Resource
+	private ConfigData configData;
+	@Resource
+	private SecSnapDepotService secSnapService;
+	@Resource
+	private CoreSecCameraService coreSecCameraService;
+	@Resource
+	private SnapSerService snapSerService;
+	@Resource
+	private CoreFileService fileService;
+	@Resource
+	private ApiCameraManager apiCameraManager;
 
-    /**
-     * 姣忛棿闅�30鍒嗛挓鎵ц涓�娆�
-     */
-    @Scheduled(cron = "0 0/30 * * * ?")
-    public void scheduled30() {
+	/**
+	 * 浠�6-18鐐瑰紑濮嬫墽琛�
+	 */
+	@Scheduled(cron = "0 0 6,7,8,9,10,11,12,13,14,15,16,17,18 * * ? ")
+	public void scheduled30() {
 
-        //鎵ц鎶撴媿鍒ゆ柇
-        doExeSnap(new Date());
-    }
+		Date exeDate = new Date();
 
-    /**
-     * 瀹氭椂鎵ц鎶撴媿
-     */
-    private void doExeSnap(Date date) {
+		// 鎵ц鎶撴媿鍒ゆ柇
+		doExeSnap(exeDate);
+	}
 
-        if (configData.getSnapTime() < 0) return;
+	/**
+	 * 瀹氭椂鎵ц鎶撴媿
+	 */
+	private void doExeSnap(Date date) {
+		try {
+			// 鑾峰彇鎵�鏈夐厤缃姄鎷嶆憚鍍忓ご
+			List<SecSnapConf> list = secSnapService.listSnapConf(
+					configData.getDefaultCompanyId(), null);
 
-        //鑾峰彇褰撳墠绯荤粺鏃堕棿
-        int curHour = DateUtil.getHour(date);
-        if (curHour != configData.getSnapTime()) return;
+			if (null == list || list.isEmpty()) {
+				return;
+			}
+			SecSnapConf exeConf = list.get(0);
 
-        log.info("===================绯荤粺鎵ц瀹氭椂浠撳唴瑙嗛鎶撴媿==================");
+			// 鑾峰彇鎶撴媿鏃堕棿
+			int exeHour1 = exeConf.getActHour1();
+			int exeHour2 = exeConf.getActHour2();
+			int exeHour3 = exeConf.getActHour3();
 
+			if (exeHour1 == 0 && exeHour1 == 0 && exeHour1 == 0)
+				return;
 
-        try {
+			// 鑾峰彇褰撳墠绯荤粺鏃堕棿
+			int curHour = DateUtil.getHour(date);
+			
+			if(curHour != exeHour1 && curHour != exeHour2 && curHour !=exeHour3){
+				return;
+			}
 
-            List<SecSnapConf> list = secSnapService.listSnapConf(configData.getDefaultCompanyId(), null);
+			log.info("===================绯荤粺鎵ц瀹氭椂浠撳唴瑙嗛鎶撴媿==================");
 
-            if (null == list || list.isEmpty()) return;
+			SecCamera secCamera;
+			Map<String, SnapSer> snapSerMap = new HashMap<>();
+			SnapSer snapSer;
+			for (SecSnapConf snapConf : list) {
 
-            SecCamera secCamera;
-            Map<String, SnapSer> snapSerMap = new HashMap<>();
-            SnapSer snapSer;
-            for (SecSnapConf snapConf : list) {
+				secCamera = coreSecCameraService.getCameraById(
+						snapConf.getCompanyId(), snapConf.getCameraId());
+				
+				if (null == secCamera) continue;
 
-                if (null == snapConf.getDepotId()) continue;
+				snapSer = snapSerMap.get(snapConf.getDeptId());
+				if (null == snapSer) {
+					snapSer = snapSerService.getCacheByDeptId(snapConf.getDeptId());
+					snapSerMap.put(snapConf.getDeptId(), snapSer);
+				}
 
-                secCamera = coreSecCameraService.getCameraById(snapConf.getCompanyId(), snapConf.getCameraId());
+				if (null == snapSer) {
+					log.error("------------鎶撴媿涓洪厤缃姄鎷嶅垎鏈�----------");
+					continue;
+				}
 
-                if (null == secCamera) continue;
+				doExeSnapToData(secCamera, snapSer, snapConf);
 
-                snapSer = snapSerMap.get(snapConf.getDeptId());
-                if (null == snapSer) {
-                    snapSer = snapSerService.getCacheByDeptId(snapConf.getDeptId());
-                    snapSerMap.put(snapConf.getDeptId(), snapSer);
-                }
+				Thread.sleep(500);
+			}
+		} catch (Exception e) {
+			log.error("----------鎶撴媿鍚庡彴鍑洪敊---------{}", e);
+		}
+	}
 
-                if (null == snapSer) {
-                    log.error("------------鎶撴媿涓洪厤缃姄鎷嶅垎鏈�----------");
-                    continue;
-                }
+	private void doExeSnapToData(SecCamera secCamera, SnapSer snapSer,SecSnapConf snapConf) {
+		ApiSnapReq req = new ApiSnapReq();
+		req.setCompanyId(secCamera.getCompanyId());
+		req.setDeptId(secCamera.getDeptId());
+		req.setSn(secCamera.getSn());
+		req.setSnapType(secCamera.getSnapType());
+		req.setPlayType(secCamera.getPlayType());
+		req.setSerSn(snapSer.getSn());
+		req.setCameraName(secCamera.getName());
+		req.setBizId(null);
 
-                doExeSnapToData(secCamera, snapSer, snapConf);
+		req.setMediaAddr(CameraUtil.updateMediaAddr(secCamera.getMediaAddr(),
+				secCamera.getLoginId(), secCamera.getPwd(),
+				secCamera.getIpIn(), secCamera.getPortInC(),
+				secCamera.getChanNum()));
 
-                Thread.sleep(500);
-            }
-        } catch (Exception e) {
-            log.error("----------鎶撴媿鍚庡彴鍑洪敊---------{}", e);
-        }
-    }
+		String filePath = fileService.getSnapFilePath(new Date());
 
-    private void doExeSnapToData(SecCamera secCamera, SnapSer snapSer, SecSnapConf snapConf) {
-        ApiSnapReq req = new ApiSnapReq();
-        req.setCompanyId(secCamera.getCompanyId());
-        req.setDeptId(secCamera.getDeptId());
-        req.setSn(secCamera.getSn());
-        req.setSnapType(secCamera.getSnapType());
-        req.setPlayType(secCamera.getPlayType());
-        req.setSerSn(snapSer.getSn());
-        req.setCameraName(secCamera.getName());
-        req.setBizId(null);
+		req.setFilePath(filePath);
 
-        req.setMediaAddr(CameraUtil.updateMediaAddr(secCamera.getMediaAddr(), secCamera.getLoginId(),
-                secCamera.getPwd(), secCamera.getIpIn(), secCamera.getPortInC(), secCamera.getChanNum()));
+		// 璋冩暣闄勪欢鍚嶇О锛岄伩鍏嶅嚭鐜颁腑鏂�
+		String fileName = snapConf.getDeptId() + "_" + ContextUtil.getTimeId(1000) + ".jpg";
+		req.setFileName(fileName);
 
-        String filePath = fileService.getSnapFilePath(new Date());
+		// 鎵ц鎶撴媿
+		ApiCameraResp resp = apiCameraManager.getApiCameraService(secCamera.getPlayType()).snapImg(req);
+		resp.setFileName(fileName);
 
-        req.setFilePath(filePath);
-
-        //璋冩暣闄勪欢鍚嶇О锛岄伩鍏嶅嚭鐜颁腑鏂�
-        String fileName = snapConf.getDepotId() + "_" + ContextUtil.getTimeId(1000) + ".jpg";
-        req.setFileName(fileName);
-
-        //鎵ц鎶撴媿
-        ApiCameraResp resp = apiCameraManager.getApiCameraService(secCamera.getPlayType()).snapImg(req);
-        resp.setFileName(fileName);
-
-        //鎵ц璁板綍淇濆瓨
-        secSnapService.addData(snapConf, fileName, resp.getCode());
-    }
+		// 鎵ц璁板綍淇濆瓨
+		secSnapService.addData(snapConf, fileName, resp.getCode());
+	}
 }

--
Gitblit v1.9.3