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/sec/service/SecurityService.java | 1
igds-basic/src/main/java/com/ld/igds/basic/controller/FileController.java | 4
igds-core/src/main/java/com/ld/igds/data/ConfigData.java | 6
igds-security/src/main/java/com/ld/igds/sec/service/impl/CoreSecFireServiceImpl.java | 1
igds-security/src/main/java/com/ld/igds/sec/view/SecSnapDepot.view.xml | 187 +++++++++++---
igds-security/src/main/java/com/ld/igds/timer/JobLampService.java | 1
igds-security/src/main/java/com/ld/igds/timer/ScheduledSec.java | 189 +++++++------
igds-inout/src/main/java/com/ld/igds/timer/DepotBookStoreScheduled.java | 3
igds-parent-pom/pom.xml | 6
/dev/null | 62 ----
igds-security/src/main/java/com/ld/igds/models/SecSnapConf.java | 17 +
igds-security/src/main/java/com/ld/igds/models/SecSnapDepot.java | 27 +
igds-web/src/main/resources/templates/index/index.html | 2
igds-web/src/main/resources/templates/admin/home.html | 6
igds-security/src/main/java/com/ld/igds/sec/service/SecSnapDepotService.java | 98 +++++++
igds-security/src/main/java/com/ld/igds/sec/view/SecSnapDepotPR.java | 105 +++++++
igds-web/src/main/resources/media.properties | 1
igds-web/pom.xml | 23 +
18 files changed, 504 insertions(+), 235 deletions(-)
diff --git a/igds-basic/src/main/java/com/ld/igds/basic/controller/FileController.java b/igds-basic/src/main/java/com/ld/igds/basic/controller/FileController.java
index 4398625..1ce6b66 100644
--- a/igds-basic/src/main/java/com/ld/igds/basic/controller/FileController.java
+++ b/igds-basic/src/main/java/com/ld/igds/basic/controller/FileController.java
@@ -111,12 +111,12 @@
*
* @param fileName
* @param timeStr
- * 鎶撴媿鐨勫勾鏈堟棩鏃跺垎绉� yyyyMMddHHmmss
+ * 鎶撴媿鐨勫勾鏈堟棩鏃跺垎绉� yyyyMMdd
* @param response
* @return
* @throws IOException
*/
- @RequestMapping(value = "/view-snap-depot", method = RequestMethod.GET, produces = { "application/vnd.ms-excel;charset=UTF-8" })
+ @RequestMapping(value = "/get-snap-depot", method = RequestMethod.GET, produces = { "application/vnd.ms-excel;charset=UTF-8" })
public String getDepotSnap(String fileName, String timeStr,
HttpServletResponse response) throws IOException {
diff --git a/igds-core/src/main/java/com/ld/igds/data/ConfigData.java b/igds-core/src/main/java/com/ld/igds/data/ConfigData.java
index b0a3065..8d6318b 100644
--- a/igds-core/src/main/java/com/ld/igds/data/ConfigData.java
+++ b/igds-core/src/main/java/com/ld/igds/data/ConfigData.java
@@ -36,10 +36,4 @@
@Value("${igds.weather-path}")
private String weatherPath;
- /**
- * 鎶撴媿鏃堕棿閰嶇疆
- */
- @Value("${igds.default.snap-time}")
- private int snapTime = -1;
-
}
diff --git a/igds-inout/src/main/java/com/ld/igds/timer/DepotBookStoreScheduled.java b/igds-inout/src/main/java/com/ld/igds/timer/DepotBookStoreScheduled.java
index 7889cae..90a74d0 100644
--- a/igds-inout/src/main/java/com/ld/igds/timer/DepotBookStoreScheduled.java
+++ b/igds-inout/src/main/java/com/ld/igds/timer/DepotBookStoreScheduled.java
@@ -32,9 +32,6 @@
public static final String BEAN_ID = "inout.depotBookStoreScheduled";
@Resource
- private InoutService inoutService;
-
- @Resource
private CoreCommonService commonService;
/**
diff --git a/igds-parent-pom/pom.xml b/igds-parent-pom/pom.xml
index 3e6bdec..cfdd261 100644
--- a/igds-parent-pom/pom.xml
+++ b/igds-parent-pom/pom.xml
@@ -39,12 +39,6 @@
</exclusion>
</exclusions>
</dependency>
-
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-websocket</artifactId>
- <version>${spring.boot.version}</version>
- </dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
diff --git a/igds-security/src/main/java/com/ld/igds/models/SecSnapConf.java b/igds-security/src/main/java/com/ld/igds/models/SecSnapConf.java
index bf58aeb..1432f61 100644
--- a/igds-security/src/main/java/com/ld/igds/models/SecSnapConf.java
+++ b/igds-security/src/main/java/com/ld/igds/models/SecSnapConf.java
@@ -16,7 +16,6 @@
@Entity
@Table(name = "D_SEC_SNAP_CONF")
public class SecSnapConf {
-
@Id
@Column(name = "ID_", length = 40)
@PropertyDef(label = "涓婚敭")
@@ -29,7 +28,7 @@
@Column(name = "DEPT_ID_", length = 30)
@PropertyDef(label = "鎵�灞炲垎搴�")
private String deptId;
-
+
@Column(name = "DEPOT_ID_", length = 50)
@PropertyDef(label = "鎵�灞炰粨搴�")
private String depotId;
@@ -38,7 +37,19 @@
@PropertyDef(label = "鍏宠仈鎽勫儚澶�")
private String cameraId;
- @Column(name = "UPDATE_TIME_", length = 1)
+ @Column(name = "ACT_HOUR1_")
+ @PropertyDef(label = "鎵ц鏃堕棿1")
+ private int actHour1;
+
+ @Column(name = "ACT_HOUR2_")
+ @PropertyDef(label = "鎵ц鏃堕棿2")
+ private int actHour2;
+
+ @Column(name = "ACT_HOUR3_")
+ @PropertyDef(label = "鎵ц鏃堕棿3")
+ private int actHour3;
+
+ @Column(name = "UPDATE_TIME_")
@PropertyDef(label = "鏇存柊鏃堕棿")
private Date updateTime;
}
diff --git a/igds-security/src/main/java/com/ld/igds/models/SecSnapDepot.java b/igds-security/src/main/java/com/ld/igds/models/SecSnapDepot.java
index e713b26..5e528d0 100644
--- a/igds-security/src/main/java/com/ld/igds/models/SecSnapDepot.java
+++ b/igds-security/src/main/java/com/ld/igds/models/SecSnapDepot.java
@@ -38,10 +38,10 @@
@Column(name = "CAMERA_ID_", length = 50)
@PropertyDef(label = "鍏宠仈鎽勫儚澶�")
private String cameraId;
-
+
@Column(name = "RESULT_", length = 30)
@PropertyDef(label = "鎶撴媿缁撴灉")
- private String result="SUCCESS";
+ private String result = "SUCCESS";
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
@Column(name = "UPDATE_TIME_")
@@ -60,4 +60,27 @@
@PropertyDef(label = "棰勭疆浣嶇紪鍙�")
private String preset;
+ public SecSnapDepot() {
+ }
+
+ public SecSnapDepot(String id, String companyId, String deptId, String depotId, String cameraId, String result, Date updateTime, String fileSuffix, String fileName, String preset) {
+ this.id = id;
+ this.companyId = companyId;
+ this.deptId = deptId;
+ this.depotId = depotId;
+ this.cameraId = cameraId;
+ this.result = result;
+ this.updateTime = updateTime;
+ this.fileSuffix = fileSuffix;
+ this.fileName = fileName;
+ this.preset = preset;
+ }
+
+ public SecSnapDepot(String tag) {
+ if ("TEST".equals(tag)) {
+ this.id = "TEST";
+ this.fileName = "./static/images/img-fail.jpg";
+ this.updateTime = new Date();
+ }
+ }
}
diff --git a/igds-security/src/main/java/com/ld/igds/sec/service/SecSnapDepotService.java b/igds-security/src/main/java/com/ld/igds/sec/service/SecSnapDepotService.java
index dc525f6..f5e606b 100644
--- a/igds-security/src/main/java/com/ld/igds/sec/service/SecSnapDepotService.java
+++ b/igds-security/src/main/java/com/ld/igds/sec/service/SecSnapDepotService.java
@@ -2,13 +2,19 @@
import com.bstek.bdf2.core.orm.hibernate.HibernateDao;
import com.bstek.dorado.data.provider.Page;
+import com.ld.igds.models.SecSnapConf;
import com.ld.igds.models.SecSnapDepot;
+import com.ld.igds.util.ContextUtil;
import com.ld.igds.util.DateUtil;
+
import org.apache.commons.lang3.StringUtils;
+import org.hibernate.Query;
+import org.hibernate.Session;
import org.springframework.stereotype.Repository;
import java.util.Date;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
@Repository
@@ -48,4 +54,96 @@
this.pagingQuery(page, hql, countHql, args);
}
+
+
+ /**
+ * 鏍规嵁鏉′欢鑾峰彇閰嶇疆绫诲埆
+ *
+ * @param companyId 缁勭粐缂栫爜锛屼笉鍙负绌�
+ * @param deptId 鎵�灞炲垎搴擄紝鍙负绌�
+ * @return 鏌ヨ缁撴灉
+ */
+ public List<SecSnapConf> listSnapConf(String companyId, String deptId) {
+ String hql = " from " + SecSnapConf.class.getName()
+ + " where companyId=:companyId";
+
+ Map<String, Object> args = new HashMap<>();
+ args.put("companyId", companyId);
+ if (StringUtils.isNotEmpty(deptId)) {
+ hql += " and deptId =:deptId";
+ args.put("deptId", deptId);
+ }
+
+ return this.query(hql, args);
+ }
+
+ public void addData(SecSnapConf snapConf, String fileName, String result) {
+ Session session = this.getSessionFactory().openSession();
+ try {
+ SecSnapDepot data = new SecSnapDepot();
+ data.setId(ContextUtil.getUUID());
+ data.setCompanyId(snapConf.getCompanyId());
+ data.setDeptId(snapConf.getDeptId());
+ data.setResult(result);
+ data.setUpdateTime(new Date());
+ data.setFileSuffix("jpg");
+ data.setFileName(fileName);
+ session.save(data);
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ session.flush();
+ session.close();
+ }
+ }
+
+
+ public void addConf(SecSnapConf conf) {
+ Session session = this.getSessionFactory().openSession();
+ try {
+ conf.setId(ContextUtil.getUUID());
+ conf.setUpdateTime(new Date());
+ session.save(conf);
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ session.flush();
+ session.close();
+ }
+ }
+
+
+ public void updateConf(SecSnapConf conf) {
+ Session session = this.getSessionFactory().openSession();
+ try {
+ conf.setUpdateTime(new Date());
+ session.save(conf);
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ session.flush();
+ session.close();
+ }
+ }
+
+
+ public void updateActHour(SecSnapConf conf) {
+ String hql = " update "+SecSnapConf.class.getName()+" set actHour1=:actHour1,actHour2=:actHour2,actHour3=:actHour3 where companyId=:companyId and deptId=:deptId";
+
+ Session session = this.getSessionFactory().openSession();
+ try {
+ Query q = session.createQuery(hql);
+ q.setInteger("actHour1", conf.getActHour1());
+ q.setInteger("actHour2", conf.getActHour2());
+ q.setInteger("actHour3", conf.getActHour3());
+ q.setString("companyId", conf.getCompanyId());
+ q.setString("deptId", conf.getDeptId());
+ q.executeUpdate();
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ session.flush();
+ session.close();
+ }
+ }
}
diff --git a/igds-security/src/main/java/com/ld/igds/sec/service/SecSnapService.java b/igds-security/src/main/java/com/ld/igds/sec/service/SecSnapService.java
deleted file mode 100644
index 7dce8b4..0000000
--- a/igds-security/src/main/java/com/ld/igds/sec/service/SecSnapService.java
+++ /dev/null
@@ -1,62 +0,0 @@
-package com.ld.igds.sec.service;
-
-import com.bstek.bdf2.core.orm.hibernate.HibernateDao;
-import com.ld.igds.models.SecSnapConf;
-import com.ld.igds.models.SecSnapDepot;
-import com.ld.igds.util.ContextUtil;
-import org.apache.commons.lang3.StringUtils;
-import org.hibernate.Session;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class SecSnapService extends HibernateDao {
-
-
- /**
- * 鏍规嵁鏉′欢鑾峰彇閰嶇疆绫诲埆
- *
- * @param companyId 缁勭粐缂栫爜锛屼笉鍙负绌�
- * @param deptId 鎵�灞炲垎搴擄紝鍙负绌�
- * @return 鏌ヨ缁撴灉
- */
- public List<SecSnapConf> listSnapConf(String companyId, String deptId) {
- String hql = " from " + SecSnapConf.class.getName()
- + " where companyId=:companyId";
-
- Map<String, Object> args = new HashMap<>();
- args.put("companyId", companyId);
- if (StringUtils.isNotEmpty(deptId)) {
- hql += " and deptId =:deptId";
- args.put("deptId", deptId);
- }
-
- return this.query(hql, args);
- }
-
- public void addData(SecSnapConf snapConf, String fileName, String result) {
- Session session = this.getSessionFactory().openSession();
- try {
- SecSnapDepot data = new SecSnapDepot();
- data.setId(ContextUtil.getUUID());
- data.setCompanyId(snapConf.getCompanyId());
- data.setDeptId(snapConf.getDeptId());
- data.setCameraId(snapConf.getCameraId());
- data.setResult(result);
- data.setUpdateTime(new Date());
- data.setFileSuffix("jpg");
- data.setFileName(fileName);
-
- session.save(data);
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- session.flush();
- session.close();
- }
- }
-}
diff --git a/igds-security/src/main/java/com/ld/igds/sec/service/SecurityService.java b/igds-security/src/main/java/com/ld/igds/sec/service/SecurityService.java
index 15878a8..7293220 100644
--- a/igds-security/src/main/java/com/ld/igds/sec/service/SecurityService.java
+++ b/igds-security/src/main/java/com/ld/igds/sec/service/SecurityService.java
@@ -8,7 +8,6 @@
import org.apache.commons.lang3.StringUtils;
import org.hibernate.Session;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
diff --git a/igds-security/src/main/java/com/ld/igds/sec/service/impl/CoreSecFireServiceImpl.java b/igds-security/src/main/java/com/ld/igds/sec/service/impl/CoreSecFireServiceImpl.java
index 1430e27..16132ae 100644
--- a/igds-security/src/main/java/com/ld/igds/sec/service/impl/CoreSecFireServiceImpl.java
+++ b/igds-security/src/main/java/com/ld/igds/sec/service/impl/CoreSecFireServiceImpl.java
@@ -4,7 +4,6 @@
import com.ld.igds.sec.dto.SecurityParam;
import com.ld.igds.sec.mapper.SecFireServiceMapper;
import com.ld.igds.sec.service.CoreSecFireService;
-import com.ld.igds.util.RedisUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
diff --git a/igds-security/src/main/java/com/ld/igds/sec/view/SecSnapDepot.view.xml b/igds-security/src/main/java/com/ld/igds/sec/view/SecSnapDepot.view.xml
index e273e91..c26d1d1 100644
--- a/igds-security/src/main/java/com/ld/igds/sec/view/SecSnapDepot.view.xml
+++ b/igds-security/src/main/java/com/ld/igds/sec/view/SecSnapDepot.view.xml
@@ -20,6 +20,11 @@
<PropertyDef name="depotId">
<Property></Property>
<Property name="label">鎵�灞炰粨搴�</Property>
+ <Property name="mapping">
+ <Property name="mapValues">${dorado.getDataProvider("depotPR#getAllCache").getResult()}</Property>
+ <Property name="keyProperty">id</Property>
+ <Property name="valueProperty">name</Property>
+ </Property>
</PropertyDef>
<PropertyDef name="cameraId">
<Property></Property>
@@ -29,19 +34,19 @@
<Property name="dataType">Date</Property>
<Property name="label">鏇存柊鏃堕棿</Property>
</PropertyDef>
- <PropertyDef name="zpsj">
- <Property name="dataType">Date</Property>
- <Property name="label">鎶撴媿鏃堕棿</Property>
+ <PropertyDef name="result">
+ <Property></Property>
+ <Property name="label">鎶撴媿缁撴灉</Property>
</PropertyDef>
- <PropertyDef name="txwjhzm">
+ <PropertyDef name="fileSuffix">
<Property></Property>
<Property name="label">鍥惧儚鏂囦欢鍚庣紑鍚�</Property>
</PropertyDef>
- <PropertyDef name="wjmc">
+ <PropertyDef name="fileName">
<Property></Property>
<Property name="label">鏂囦欢鍚嶇О</Property>
</PropertyDef>
- <PropertyDef name="yzwbh">
+ <PropertyDef name="preset">
<Property></Property>
<Property name="label">棰勭疆浣嶇紪鍙�</Property>
</PropertyDef>
@@ -60,22 +65,47 @@
<Property></Property>
<Property name="label">鎵�灞炲垎搴�</Property>
</PropertyDef>
- <PropertyDef name="depotId">
- <Property></Property>
- <Property name="label">鎵�灞炰粨搴�</Property>
- </PropertyDef>
- <PropertyDef name="cameraId">
- <Property></Property>
- <Property name="label">鍏宠仈鎽勫儚澶�</Property>
- </PropertyDef>
<PropertyDef name="updateTime">
<Property name="dataType">Date</Property>
<Property name="label">鏇存柊鏃堕棿</Property>
</PropertyDef>
+ <PropertyDef name="depotId">
+ <Property></Property>
+ <Property name="label">鎵�灞炰粨搴�</Property>
+ <Property name="mapping">
+ <Property name="mapValues">${dorado.getDataProvider("depotPR#getAllCache").getResult()}</Property>
+ <Property name="keyProperty">id</Property>
+ <Property name="valueProperty">name</Property>
+ </Property>
+ </PropertyDef>
+ <PropertyDef name="cameraId">
+ <Property></Property>
+ <Property name="label">鍏宠仈鎽勫儚澶�</Property>
+ <Property name="mapping">
+ <Property name="mapValues">${dorado.getDataProvider("securityPR#listCamera").getResult()}</Property>
+ <Property name="keyProperty">id</Property>
+ <Property name="valueProperty">name</Property>
+ </Property>
+ </PropertyDef>
+ <PropertyDef name="actHour1">
+ <Property name="dataType">int</Property>
+ <Property name="label">绗竴娆�</Property>
+ <Property name="displayFormat"># 鐐�</Property>
+ </PropertyDef>
+ <PropertyDef name="actHour2">
+ <Property name="dataType">int</Property>
+ <Property name="label">绗簩娆�</Property>
+ <Property name="displayFormat"># 鐐�</Property>
+ </PropertyDef>
+ <PropertyDef name="actHour3">
+ <Property name="dataType">int</Property>
+ <Property name="label">绗笁娆�</Property>
+ <Property name="displayFormat"># 鐐�</Property>
+ </PropertyDef>
</DataType>
<DataType name="dtQuery">
<PropertyDef name="depotId">
- <Property/>
+ <Property></Property>
<Property name="label">鎵�灞炰粨搴�</Property>
</PropertyDef>
<PropertyDef name="start">
@@ -85,6 +115,18 @@
<PropertyDef name="end">
<Property name="label">鎴鏃ユ湡</Property>
<Property name="dataType">Date</Property>
+ </PropertyDef>
+ <PropertyDef name="actHour1">
+ <Property name="dataType">int</Property>
+ <Property name="label">绗竴娆�</Property>
+ </PropertyDef>
+ <PropertyDef name="actHour2">
+ <Property name="dataType">int</Property>
+ <Property name="label">绗簩娆�</Property>
+ </PropertyDef>
+ <PropertyDef name="actHour3">
+ <Property name="dataType">int</Property>
+ <Property name="label">绗笁娆�</Property>
</PropertyDef>
</DataType>
</Model>
@@ -98,10 +140,15 @@
</DataSet>
<DataSet id="dsConf">
<Property name="dataType">[dtConf]</Property>
+ <Property name="dataProvider">secSnapDepotPR#listConf</Property>
</DataSet>
<DataSet id="dsQuery">
<ClientEvent name="onReady">self.insert({});</ClientEvent>
<Property name="dataType">dtQuery</Property>
+ </DataSet>
+ <DataSet id="dsParam">
+ <Property name="dataType">dtConf</Property>
+ <Property name="dataProvider">secSnapDepotPR#getConfActHour</Property>
</DataSet>
<Panel layout="regionPadding:10">
<Property name="caption">瑙嗛鍥惧儚淇℃伅绠$悊</Property>
@@ -160,14 +207,15 @@
<Container layoutConstraint="center">
<Property name="exClassName">bg-color</Property>
<DataBlockView>
- <ClientEvent name="onRenderBlock">
-var time = arg.data.get("zpsj").formatDate("Y-m-d H:i");
-var hwdm = arg.data.getText("hwdm");
-var cfdm = arg.data.getText("cfdm");
-var kqdm = arg.data.getText("kqdm");
-var imgSrc = "../../grain/file/get-depot-snap?filePath="+arg.data.get("wjdz");
-var htm = "<div><img src='"+imgSrc+"' style='height:250px; width:100%;'><div><span style='padding-left:10px;'>搴撳尯锛�"+kqdm+"</span><span style='float:right;padding-right:10px;'>浠撴埧锛�"+cfdm+"</span></div><div><span style='padding-left:10px;'>璐т綅锛�"+hwdm+"</span><span style='float:right;padding-right:10px;'>鏃堕棿锛�"+time+"</span></div></div>";
-
+ <ClientEvent name="onRenderBlock">var id = arg.data.get("id");
+var time = arg.data.get("updateTime").formatDate("Y-m-d H:i");
+var timeStr = arg.data.get("updateTime").formatDate("Ymd");
+var depotId = arg.data.getText("depotId");
+var imgSrc = "../../basic/file/get-snap-depot?fileName="+arg.data.get("fileName")+"&timeStr="+timeStr;
+var htm = "<div><img src='./static/images/img-fail.jpg' style='height:250px; width:100%;'><div><span style='padding-left:10px;'>浠撳簱锛氭湭鏌ヨ鍒版暟鎹�</span><span style='float:right;padding-right:10px;'>鏃堕棿锛�"+time+"</span></div></div>";
+if("TEST" != id){
+ htm = "<div><img src='"+imgSrc+"' style='height:250px; width:100%;'><div><span style='padding-left:10px;'>浠撳簱锛�"+depotId+"</span><span style='float:right;padding-right:10px;'>鏃堕棿锛�"+time+"</span></div></div>";
+}
arg.dom.innerHTML = htm;
arg.progressDefault=false;</ClientEvent>
<Property name="dataSet">dsMain</Property>
@@ -192,25 +240,72 @@
<Tools/>
</Panel>
<Dialog id="dialogConf">
+ <Property name="width">750</Property>
+ <Property name="caption">浠撳唴鎶撴媿閰嶇疆</Property>
<Buttons/>
<Children>
- <ToolBar>
- <ToolBarButton>
- <Property name="caption">鏂板</Property>
- </ToolBarButton>
- </ToolBar>
- <DataGrid>
- <Property name="dataSet">dsConf</Property>
- <DataColumn name="depotId">
- <Property name="property">depotId</Property>
- </DataColumn>
- <DataColumn name="cameraId">
- <Property name="property">cameraId</Property>
- </DataColumn>
- <DataColumn name="updateTime">
- <Property name="property">updateTime</Property>
- </DataColumn>
- </DataGrid>
+ <FieldSet>
+ <Property name="caption">鎶撴媿鎽勫儚澶撮厤缃�</Property>
+ <Buttons>
+ <Button>
+ <ClientEvent name="onClick">view.get("#dsConf").insert();</ClientEvent>
+ <Property name="caption">鏂板閰嶇疆</Property>
+ </Button>
+ <Button>
+ <Property name="caption">淇濆瓨閰嶇疆</Property>
+ <Property name="action">updateConf</Property>
+ </Button>
+ </Buttons>
+ <Children>
+ <DataGrid layoutConstraint="padding:10px">
+ <Property name="dataSet">dsConf</Property>
+ <Property name="height">400</Property>
+ <RowNumColumn/>
+ <DataColumn name="depotId">
+ <Property name="property">depotId</Property>
+ </DataColumn>
+ <DataColumn name="cameraId">
+ <Property name="property">cameraId</Property>
+ </DataColumn>
+ </DataGrid>
+ </Children>
+ </FieldSet>
+ <FieldSet>
+ <Property name="caption">鎶撴媿鏃堕棿閰嶇疆</Property>
+ <Property name="height">150</Property>
+ <Buttons>
+ <Button>
+ <ClientEvent name="onClick">var data = view.get("#dsParam.data");
+view.get("#ajaxSnapTime").set("parameter",data).execute();</ClientEvent>
+ <Property name="caption">淇濆瓨鎶撴椂闂�</Property>
+ </Button>
+ </Buttons>
+ <Children>
+ <AutoForm>
+ <Property name="dataSet">dsParam</Property>
+ <Property name="cols">*,*,*</Property>
+ <Property name="labelAlign">right</Property>
+ <AutoFormElement>
+ <Property name="name">actHour1</Property>
+ <Property name="property">actHour1</Property>
+ <Property name="trigger">listHour</Property>
+ <Editor/>
+ </AutoFormElement>
+ <AutoFormElement>
+ <Property name="name">actHour2</Property>
+ <Property name="property">actHour2</Property>
+ <Property name="trigger">listHour</Property>
+ <Editor/>
+ </AutoFormElement>
+ <AutoFormElement>
+ <Property name="name">actHour3</Property>
+ <Property name="property">actHour3</Property>
+ <Property name="trigger">listHour</Property>
+ <Editor/>
+ </AutoFormElement>
+ </AutoForm>
+ </Children>
+ </FieldSet>
</Children>
<Tools/>
</Dialog>
@@ -218,5 +313,17 @@
<Property name="service">videoImgPR#delData</Property>
<Property name="confirmMessage">褰撳墠鏁版嵁鍒犻櫎鍚庢棤娉曟仮澶嶏紝璇风‘璁よ鍒犻櫎涔堬紵</Property>
</AjaxAction>
+ <UpdateAction id="updateConf">
+ <Property name="dataResolver">secSnapDepotPR#updateConf</Property>
+ <UpdateItem>
+ <Property name="dataSet">dsConf</Property>
+ </UpdateItem>
+ </UpdateAction>
+ <AjaxAction id="ajaxSnapTime">
+ <Property name="service">secSnapDepotPR#updateActHour</Property>
+ </AjaxAction>
+ <ListDropDown id="listHour">
+ <Property name="items">0,7,8,9,10,11,12,13,14,15,16,17,18</Property>
+ </ListDropDown>
</View>
</ViewConfig>
diff --git a/igds-security/src/main/java/com/ld/igds/sec/view/SecSnapDepotPR.java b/igds-security/src/main/java/com/ld/igds/sec/view/SecSnapDepotPR.java
index e99feef..313da6a 100644
--- a/igds-security/src/main/java/com/ld/igds/sec/view/SecSnapDepotPR.java
+++ b/igds-security/src/main/java/com/ld/igds/sec/view/SecSnapDepotPR.java
@@ -1,14 +1,22 @@
package com.ld.igds.sec.view;
import com.bstek.dorado.annotation.DataProvider;
+import com.bstek.dorado.annotation.DataResolver;
+import com.bstek.dorado.annotation.Expose;
import com.bstek.dorado.data.provider.Page;
+import com.ld.igds.models.SecSnapConf;
import com.ld.igds.models.SecSnapDepot;
import com.ld.igds.sec.service.SecSnapDepotService;
import com.ld.igds.util.ContextUtil;
+
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
+
+import java.util.ArrayList;
+import java.util.Collection;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
/**
@@ -33,12 +41,101 @@
public void pageSnapDepot(Page<SecSnapDepot> page, Map<String, Object> param)
throws Exception {
- if(null == param) param = new HashMap<>();
+ if (null == param) param = new HashMap<>();
param.put("companyId", ContextUtil.getCompanyId());
param.put("deptId", ContextUtil.subDeptId(null));
- snapDepotService.pageSnapDepot(page,param);
+ snapDepotService.pageSnapDepot(page, param);
+
+ //娣诲姞4鏉℃祴璇曟暟鎹�
+ if (null == page.getEntities() || page.getEntities().isEmpty()) {
+ Collection<SecSnapDepot> list = new ArrayList<>();
+ list.add(new SecSnapDepot("TEST"));
+ list.add(new SecSnapDepot("TEST"));
+ list.add(new SecSnapDepot("TEST"));
+ list.add(new SecSnapDepot("TEST"));
+
+ page.setEntities(list);
+ }
}
-
-
+
+
+
+ /**
+ * secSnapDepotPR#getConfActHour
+ *
+ * 榛樿鑾峰彇绗竴鏉℃暟鎹殑閰嶇疆淇℃伅锛屽鏋滄病鏈夊氨杩斿洖涓�涓┖鐨勫璞�
+ * @param page
+ * @param param
+ * @return
+ * @throws Exception
+ */
+ @DataProvider
+ public SecSnapConf getConfActHour()throws Exception {
+ List<SecSnapConf> list = snapDepotService.listSnapConf(ContextUtil.getCompanyId(), ContextUtil.subDeptId(null));
+ if(null == list || list.isEmpty()) return new SecSnapConf();
+ return list.get(0);
+ }
+
+
+ /**
+ * secSnapDepotPR#listConf
+ *
+ * 榛樿鑾峰彇绗竴鏉℃暟鎹殑閰嶇疆淇℃伅锛屽鏋滄病鏈夊氨杩斿洖涓�涓┖鐨勫璞�
+ * @param page
+ * @param param
+ * @return
+ * @throws Exception
+ */
+ @DataProvider
+ public List<SecSnapConf> listConf()throws Exception {
+ return snapDepotService.listSnapConf(ContextUtil.getCompanyId(), ContextUtil.subDeptId(null));
+ }
+
+
+ /**
+ * secSnapDepotPR#updateConf
+ * @param items
+ * @throws Exception
+ */
+ @DataResolver
+ public void updateConf(List<SecSnapConf> items)throws Exception {
+ if(null ==items || items.isEmpty() ) return;
+ for(SecSnapConf conf:items){
+ if(null == conf.getId()){
+ if(null == conf.getCompanyId()){
+ conf.setCompanyId(ContextUtil.getCompanyId());
+ }
+ if(null == conf.getDeptId()){
+ conf.setDeptId(ContextUtil.subDeptId(null));
+ }
+
+ snapDepotService.addConf(conf);
+ }else{
+ snapDepotService.updateConf(conf);
+ }
+ }
+
+ }
+
+
+ /**
+ * secSnapDepotPR#updateActHour
+ * @param items
+ * @throws Exception
+ */
+ @Expose
+ public void updateActHour(SecSnapConf conf)throws Exception {
+
+ if(null == conf.getCompanyId()){
+ conf.setCompanyId(ContextUtil.getCompanyId());
+ }
+ if(null == conf.getDeptId()){
+ conf.setDeptId(ContextUtil.subDeptId(null));
+ }
+
+ //鍚屾鏇存柊鎵�鏈夌殑鎵ц鏃堕棿涓�鑷�
+ snapDepotService.updateActHour(conf);
+
+ }
}
diff --git a/igds-security/src/main/java/com/ld/igds/timer/JobLampService.java b/igds-security/src/main/java/com/ld/igds/timer/JobLampService.java
index b4725a5..0cdeb60 100644
--- a/igds-security/src/main/java/com/ld/igds/timer/JobLampService.java
+++ b/igds-security/src/main/java/com/ld/igds/timer/JobLampService.java
@@ -13,7 +13,6 @@
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
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());
+ }
}
diff --git a/igds-web/pom.xml b/igds-web/pom.xml
index 7809de5..d4e3164 100644
--- a/igds-web/pom.xml
+++ b/igds-web/pom.xml
@@ -119,12 +119,13 @@
<version>${igds.version}</version>
</dependency>
- <!-- APP -鍙��-->
+ <!-- APP -鍙��
<dependency>
<groupId>com.ld.igds</groupId>
<artifactId>igds-api-phone</artifactId>
<version>${igds.version}</version>
</dependency>
+ -->
<!-- 鍏朵粬閫氱敤鍝佺墝鍗忚 -->
<dependency>
@@ -144,15 +145,15 @@
</dependency>
- <!-- 鎺ュ彛鍖咃紝鍖呮嫭涓婃捣鎺ュ彛鍜屻�佹皵璞℃帴鍙c�佷笁缁存帴鍙�-->
+ <!-- 鎺ュ彛鍖咃紝鍖呮嫭涓婃捣鎺ュ彛鍜屻�佹皵璞℃帴鍙c�佷笁缁存帴鍙�
<dependency>
<groupId>com.ld.igds</groupId>
<artifactId>igds-api-inte</artifactId>
<version>${igds.version}</version>
- </dependency>
+ </dependency>-->
- <!-- 绉佹湁鍗忚-椋庢鑷磋繙-->
+ <!-- 绉佹湁鍗忚-椋庢鑷磋繙
<dependency>
<groupId>com.ld.igds</groupId>
<artifactId>igds-protocol-fzzy3</artifactId>
@@ -168,6 +169,7 @@
</exclusion>
</exclusions>
</dependency>
+ -->
<!-- MODBUS-TCP
<dependency>
@@ -202,7 +204,8 @@
<groupId>log4j</groupId>
</exclusion>
</exclusions>
- </dependency>-->
+ </dependency>
+ -->
<!-- 绉佹湁鍗忚-璐濆崥绮儏-->
<dependency>
@@ -253,7 +256,8 @@
<groupId>log4j</groupId>
</exclusion>
</exclusions>
- </dependency>-->
+ </dependency>
+ -->
<!-- 绉佹湁鍗忚-姝f潵鐢靛瓙
<dependency>
@@ -270,7 +274,8 @@
<groupId>log4j</groupId>
</exclusion>
</exclusions>
- </dependency>-->
+ </dependency>
+ -->
<!-- 娴峰悍杞︾墝璇嗗埆-SDK
<dependency>
@@ -287,7 +292,9 @@
<groupId>log4j</groupId>
</exclusion>
</exclusions>
- </dependency>-->
+ </dependency>
+ -->
+
</dependencies>
<dependencyManagement>
diff --git a/igds-web/src/main/resources/media.properties b/igds-web/src/main/resources/media.properties
index a29a86d..68d7255 100644
--- a/igds-web/src/main/resources/media.properties
+++ b/igds-web/src/main/resources/media.properties
@@ -34,6 +34,7 @@
hik.mapMedia.5318.appSecret=2SrVYEybgnLYYBjvv08l
hik.mapMedia.5318.contextPath=/artemis
hik.mapMedia.5318.regionIndexCodes=[]
+
#-----演示环境-----#
hik.mapMedia.5000.ip=192.168.66.200
hik.mapMedia.5000.wanIp=221.8.37.106
diff --git a/igds-web/src/main/resources/templates/admin/home.html b/igds-web/src/main/resources/templates/admin/home.html
index a0499e0..1f20896 100644
--- a/igds-web/src/main/resources/templates/admin/home.html
+++ b/igds-web/src/main/resources/templates/admin/home.html
@@ -130,12 +130,6 @@
<!-- <span class="text-muted text-xs block" th:text="${loginUser.cname}">绠$悊鍛�<b class="caret"></b></span>-->
</span>
</a>
-<!-- <ul class="dropdown-menu animated fadeInRight m-t-xs">-->
-<!-- <li><a class="J_menuItem"-->
-<!-- href="./com.ld.igds.sys.UserCenter.d">涓汉涓績</a></li>-->
-<!-- <li class="divider"></li>-->
-<!-- <li><a href="./log-out">瀹夊叏閫�鍑�</a></li>-->
-<!-- </ul>-->
</div>
<div class="logo-element">绮簱</div>
</li>
diff --git a/igds-web/src/main/resources/templates/index/index.html b/igds-web/src/main/resources/templates/index/index.html
index 96aae90..a14ecce 100644
--- a/igds-web/src/main/resources/templates/index/index.html
+++ b/igds-web/src/main/resources/templates/index/index.html
@@ -47,7 +47,7 @@
<div class="i-top-r">
<a id="menu-group" href="./home-group" target="_self" class="i-top-btn dis-none">
<i class="i-icon">
- <img th:src="@{/static/images/i-icon-sy.png}" style="height: 28px;width: 28px;"/>
+ <img th:src="@{/static/images/i-icon-sy.png}" style="height:28px;width: 28px;"/>
</i>
棣栭〉
</a>
--
Gitblit v1.9.3