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 { 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; } 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; /** 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> 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; } 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(); } } } 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(); } } } igds-security/src/main/java/com/ld/igds/sec/service/SecSnapService.java
ÎļþÒÑɾ³ý 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; 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; 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> 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); } } 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; 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()); } } 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> <!-- æ¥å£å ï¼å æ¬ä¸æµ·æ¥å£åãæ°è±¡æ¥å£ãä¸ç»´æ¥å£--> <!-- æ¥å£å ï¼å æ¬ä¸æµ·æ¥å£åãæ°è±¡æ¥å£ãä¸ç»´æ¥å£ <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> --> <!-- ç§æåè®®-æ£æ¥çµå <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> 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 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> 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>