From 0c8d20900c14651cb50180ade4ccd0e2074796b4 Mon Sep 17 00:00:00 2001
From: czt <czt18638530771@163.com>
Date: 星期三, 07 一月 2026 18:38:01 +0800
Subject: [PATCH] 质押监管接口解析
---
fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/ApiV1Resp.java | 59 +++
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/GatewaySerService.java | 61 +--
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/EventInfoService.java | 20 +
fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/ApiV1Controller.java | 97 +++++
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapConfService.java | 39 +-
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/FileService.java | 117 ++++--
fzzy-igdss-web/src/main/java/com/fzzy/security/SnapRecordController.java | 2
fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3020.java | 44 ++
fzzy-igdss-core/src/main/java/com/fzzy/igds/utils/Base64Util.java | 88 +++++
fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/ApiV1Req.java | 26 +
fzzy-igdss-web/src/main/java/com/fzzy/security/EventInfoController.java | 2
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapRecordService.java | 18
fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/util/ApiV1Constant.java | 30 +
fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/Param3031.java | 26 +
fzzy-igdss-web/src/main/java/com/fzzy/grain/manager/GrainExportBuilder.java | 4
fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3031.java | 95 +++++
fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/GatewaySer.java | 17
fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3021.java | 44 ++
fzzy-igdss-web/src/main/java/com/fzzy/common/manager/ExportManager.java | 4
fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/Param3030.java | 21 +
/dev/null | 4
fzzy-igdss-web/src/main/resources/templates/security/snapRecord.html | 0
fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3030.java | 84 ++++
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SecCameraService.java | 25 +
fzzy-igdss-web/src/main/resources/templates/security/eventInfo.html | 0
fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3010.java | 58 +++
26 files changed, 864 insertions(+), 121 deletions(-)
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/GatewaySer.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/GatewaySer.java
index a624e5c..fe0c363 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/GatewaySer.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/GatewaySer.java
@@ -2,14 +2,15 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
import com.fzzy.igds.constant.Constant;
+import com.ruoyi.common.annotation.Excel;
import lombok.Data;
import lombok.EqualsAndHashCode;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.Table;
+
+import javax.persistence.*;
import java.io.Serializable;
+import java.util.Date;
/**
* @Description 缃戝叧閰嶇疆
@@ -29,7 +30,7 @@
private static final long serialVersionUID = 1L;
@Id
- @Column(name = "id", columnDefinition = "varchar(40) COMMENT '缃戝叧ID'")
+ @Column(name = "id", columnDefinition = "varchar(40) COMMENT '缃戝叧ID,鍚孲N'")
@TableField("id")
private String id;
@@ -81,4 +82,10 @@
@TableField("remark")
private String remark;
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ @Column(name = "heartbeat_time", columnDefinition = "DATETIME COMMENT '蹇冭烦鏃堕棿'")
+ @Temporal(TemporalType.TIMESTAMP)
+ @TableField("heartbeat_time")
+ private Date heartbeatTime;
+
}
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/EventInfoService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/EventInfoService.java
index 296e8b1..a5f6be8 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/EventInfoService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/EventInfoService.java
@@ -5,6 +5,7 @@
import com.fzzy.igds.data.BaseResp;
import com.fzzy.igds.data.IgdsBaseParam;
import com.fzzy.igds.domain.EventInfo;
+import com.fzzy.igds.domain.SnapRecord;
import com.fzzy.igds.mapper.EventInfoMapper;
import com.fzzy.igds.utils.ContextUtil;
import com.fzzy.igds.utils.DateUtil;
@@ -101,4 +102,23 @@
return eventInfoMapper.selectList(queryWrapper);
}
+ /**
+ * 鎸佷箙鍖栦繚瀛�
+ * @param info
+ */
+ public void addData(EventInfo info) {
+ if(StringUtils.isBlank(info.getId())){
+ info.setId(ContextUtil.generateId());
+ }
+ if(StringUtils.isBlank(info.getCompanyId())){
+ info.setCompanyId(ContextUtil.getCompanyId());
+ }
+
+ info.setUpdateBy(ContextUtil.getLoginUserName());
+ info.setUpdateTime(new Date());
+ info.setCreateBy(ContextUtil.getLoginUserName());
+ info.setCreateTime(new Date());
+ eventInfoMapper.insert(info);
+ }
+
}
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/FileService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/FileService.java
index 7ed02f2..5c3c073 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/FileService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/FileService.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.fzzy.igds.domain.FileInfo;
import com.fzzy.igds.mapper.FileMapper;
+import com.fzzy.igds.utils.Base64Util;
import com.fzzy.igds.utils.ContextUtil;
import com.ruoyi.common.config.FrameworkConfig;
import org.apache.commons.lang3.time.DateFormatUtils;
@@ -98,15 +99,7 @@
}
/**
- *
- * @param id
- */
- public void delFile(String id) {
- fileMapper.deleteById(id);
- }
-
- /**
- * 鑾峰彇鍑哄叆搴撴枃浠惰矾寰�
+ * 鏍规嵁绫诲瀷鑾峰彇鏂囦欢璺緞
* @param pathTag
* @return
*/
@@ -114,19 +107,51 @@
if(StringUtils.isBlank(pathTag)){
pathTag = "COMMON";
}
+ if("EVENT".equals(pathTag)) return getEventFilePath();
+ if("SNAP".equals(pathTag)) return getSnapFilePath();
if("INOUT".equals(pathTag)) return getInoutFilePath();
if("PATROL".equals(pathTag)) return getPatrolFilePath();
if("DEPT".equals(pathTag)) return getDeptFilePath();
+ if("TEMP".equals(pathTag)) return getTempFilePath();
+ if("CONF".equals(pathTag)) return getConfPath();
+ if("TEMPLATE".equals(pathTag)) return getTemplateFilePath();
+ if("WORD".equals(pathTag)) return getWordPath();
return getCommonFilePath();
}
/**
- * 鑾峰彇鍑哄叆搴撴枃浠惰矾寰�
+ * 鑾峰彇浜嬩欢鏂囦欢璺緞
+ * @return
+ */
+ public String getEventFilePath() {
+ String basePath = FrameworkConfig.getProfile() + "EVENT/" + DateFormatUtils.format(new Date(), "yyyyMM") + "/";
+ File file = new File(basePath);
+ if (!file.exists()) {
+ file.mkdirs();
+ }
+ return basePath;
+ }
+
+ /**
+ * 鑾峰彇鎶撴媿鏂囦欢璺緞
+ * @return
+ */
+ public String getSnapFilePath() {
+ String basePath = FrameworkConfig.getProfile() + "SNAP/" + DateFormatUtils.format(new Date(), "yyyyMM") + "/";
+ File file = new File(basePath);
+ if (!file.exists()) {
+ file.mkdirs();
+ }
+ return basePath;
+ }
+
+ /**
+ * 鑾峰彇宸℃鏂囦欢璺緞
* @return
*/
public String getPatrolFilePath() {
- String basePath = FrameworkConfig.getProfile() + "INOUT/" + DateFormatUtils.format(new Date(), "yyyyMM") + "/";
+ String basePath = FrameworkConfig.getProfile() + "PATROL/" + DateFormatUtils.format(new Date(), "yyyyMM") + "/";
File file = new File(basePath);
if (!file.exists()) {
file.mkdirs();
@@ -179,15 +204,11 @@
/**
* 鑾峰彇涓存椂璺緞
- * @param companyId
* @return
*/
- public String getTempFilePath(String companyId) {
+ public String getTempFilePath() {
String basePath = FrameworkConfig.getProfile() + "TEMP/";
- if (org.apache.commons.lang3.StringUtils.isNotEmpty(companyId)) {
- basePath += companyId + "/";
- }
File file = new File(basePath);
if (!file.exists()) {
file.mkdirs();
@@ -207,6 +228,42 @@
file.mkdirs();
}
return basePath;
+ }
+
+ /**
+ * 鑾峰彇妯℃澘璺緞锛氭墍鏈夋ā鏉跨粺涓�鏀惧湪TEMPLATE/鐩綍涓�
+ * @return
+ */
+ public String getTemplateFilePath() {
+ String basePath = FrameworkConfig.getProfile() + "TEMPLATE/";
+ File file = new File(basePath);
+ if (!file.exists()) {
+ file.mkdirs();
+ }
+ return basePath;
+ }
+
+ /**
+ * 鑾峰彇word璺緞
+ * @return
+ */
+ public String getWordPath() {
+
+ String basePath = FrameworkConfig.getProfile() + "WORD/";
+ File file = new File(basePath);
+ if (!file.exists()) {
+ file.mkdirs();
+ }
+ return basePath;
+ }
+
+ /**
+ * base64杞浘鐗囦繚瀛�
+ * @param filePath
+ * @param imgData
+ */
+ public void baseImg2Disk(String filePath, String imgData) {
+ Base64Util.generateImage(imgData, filePath);
}
/**
@@ -252,33 +309,5 @@
return path;
}
- /**
- * 鑾峰彇妯℃澘璺緞锛氭墍鏈夋ā鏉跨粺涓�鏀惧湪TEMPLATE/鐩綍涓�
- * @return
- */
- public String getTemplateFilePath() {
- String basePath = FrameworkConfig.getProfile() + "TEMPLATE/";
- File file = new File(basePath);
- if (!file.exists()) {
- file.mkdirs();
- }
- return basePath;
- }
- /**
- * 鑾峰彇word璺緞
- * @param deptId
- * @return
- */
- public String getWordPath(String deptId) {
- if(StringUtils.isBlank(deptId)){
- deptId = "0000";
- }
- String basePath = FrameworkConfig.getProfile() + deptId + "/WORD/";
- File file = new File(basePath);
- if (!file.exists()) {
- file.mkdirs();
- }
- return basePath;
- }
}
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/GatewaySerService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/GatewaySerService.java
index 0c67c5d..d39fea2 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/GatewaySerService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/GatewaySerService.java
@@ -12,6 +12,7 @@
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.service.ISysDeptService;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.*;
@@ -102,19 +103,40 @@
if (StringUtils.isEmpty(ser.getDeptId())) {
ser.setDeptId(ContextUtil.subDeptId(null));
}
- if (StringUtils.isBlank(ser.getUpdateBy())) {
+
+ ser.setUpdateBy(ContextUtil.getLoginUserName());
+ ser.setUpdateTime(new Date());
+ if (StringUtils.isBlank(ser.getCreateBy())) {
+ ser.setHeartbeatTime(new Date());
ser.setCreateBy(ContextUtil.getLoginUserName());
ser.setCreateTime(new Date());
- ser.setUpdateBy(ContextUtil.getLoginUserName());
- ser.setUpdateTime(new Date());
gatewaySerMapper.insert(ser);
} else {
- ser.setUpdateBy(ContextUtil.getLoginUserName());
- ser.setUpdateTime(new Date());
gatewaySerMapper.updateById(ser);
}
refreshCache(ser.getCompanyId());
+ }
+
+ /**
+ * 寮傛鏇存柊缃戝叧鐘舵��
+ * @param ser 淇℃伅
+ * @param status 鐘舵��
+ * @param isUpdateTime 鏄惁鏇存柊蹇冭烦鏃堕棿
+ */
+ @Async
+ public void updateStatus(GatewaySer ser, String status, boolean isUpdateTime) {
+
+ if(isUpdateTime){
+ //蹇冭烦鏃堕棿
+ ser.setHeartbeatTime(new Date());
+ }
+
+ ser.setUpdateTime(new Date());
+ ser.setStatus(status);
+ gatewaySerMapper.updateById(ser);
+
+ setCacheSer(ser);
}
/**
@@ -128,34 +150,6 @@
//鍒犻櫎缂撳瓨
delCache(ser);
- }
-
- /**
- * 鏍规嵁鍒嗘満ID鑾峰彇鍒嗘満淇℃伅
- *
- * @param companyId
- * @param deptId
- * @return
- */
- public List<GatewaySer> getCacheSerByDeptId(String companyId, String deptId) {
- if (StringUtils.isEmpty(deptId)) {
- return null;
- }
- if (StringUtils.isEmpty(companyId)) {
- companyId = ContextUtil.getCompanyId();
- }
- String patten = RedisConst.buildKey(companyId, RedisConst.KEY_DEVICE_SER_LIST, deptId) + "*";
- Collection<String> keys = redisCache.keys(patten);
- if (null == keys) {
- return null;
- }
-
- List<GatewaySer> list = new ArrayList<>();
- for (String key : keys) {
- list.add((GatewaySer) redisCache.getCacheObject(key));
- }
-
- return list;
}
/**
@@ -178,7 +172,6 @@
return null;
}
- List<GatewaySer> list = new ArrayList<>();
GatewaySer ser = null;
for (String key : keys) {
ser = (GatewaySer) redisCache.getCacheObject(key);
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SecCameraService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SecCameraService.java
index ae72ad5..cfb1b9c 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SecCameraService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SecCameraService.java
@@ -6,6 +6,7 @@
import com.fzzy.igds.domain.Camera;
import com.fzzy.igds.mapper.CameraMapper;
import com.fzzy.igds.utils.ContextUtil;
+import com.fzzy.igds.utils.DateUtil;
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
@@ -73,6 +74,30 @@
}
/**
+ * 鑾峰彇鏇存柊鐩戞帶鏁伴噺
+ * @param deptId
+ * @param start
+ * @param end
+ * @return
+ */
+ public int getUpdateCount(String deptId, Date start, Date end) {
+
+ QueryWrapper<Camera> queryWrapper = new QueryWrapper<>();
+
+ if(StringUtils.isNotBlank(deptId)){
+ queryWrapper.eq("dept_id", deptId);
+ }
+ if (null != start) {
+ queryWrapper.ge("update_time", start);
+ }
+ if (null != end) {
+ queryWrapper.le("update_time", end);
+ }
+
+ return cameraMapper.selectCount(queryWrapper);
+ }
+
+ /**
* 淇濆瓨鏁版嵁
* @param data
*/
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapConfService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapConfService.java
index 2447654..ac7a622 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapConfService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapConfService.java
@@ -2,15 +2,12 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.fzzy.igds.data.BaseResp;
-import com.fzzy.igds.data.IgdsBaseParam;
import com.fzzy.igds.domain.SnapConf;
import com.fzzy.igds.mapper.SnapConfMapper;
import com.fzzy.igds.utils.ContextUtil;
-import com.ruoyi.common.core.text.Convert;
import com.ruoyi.common.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
-
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@@ -39,13 +36,26 @@
}
/**
- * 鏍规嵁ID鏌ヨ璇︽儏
- *
- * @param id 涓婚敭ID
- * @return 瀹炰綋瀵硅薄
+ * 鑾峰彇鏇存柊閰嶇疆鏁伴噺
+ * @param deptId
+ * @param start
+ * @param end
+ * @return
*/
- public SnapConf selectById(String id) {
- return snapConfMapper.selectById(id);
+ public int getUpdateCount(String deptId, Date start, Date end) {
+
+ QueryWrapper<SnapConf> queryWrapper = new QueryWrapper<>();
+
+ if(StringUtils.isNotBlank(deptId)){
+ queryWrapper.eq("dept_id", deptId);
+ }
+ if (null != start) {
+ queryWrapper.ge("update_time", start);
+ }
+ if (null != end) {
+ queryWrapper.le("update_time", end);
+ }
+ return snapConfMapper.selectCount(queryWrapper);
}
/**
@@ -87,17 +97,6 @@
return BaseResp.error("鏇存柊澶辫触锛�" + e.getMessage());
}
}
-
- /**
- * 鍒犻櫎鎸囧畾ID鐨勬暟鎹�
- *
- * @param param 瑕佸垹闄ょ殑璁板綍
- * @return 鎿嶄綔缁撴灉
- */
- public BaseResp deleteData(SnapConf param) {
- return snapConfMapper.deleteById(param) > 0 ? BaseResp.success() : BaseResp.error("鍒犻櫎澶辫触");
- }
-
/**
* 鏇存柊鎵ц鏃堕棿
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapRecordService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapRecordService.java
index 73b5df0..507d246 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapRecordService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapRecordService.java
@@ -97,20 +97,22 @@
}
/**
- * 鏂板鏁版嵁
- *
+ * 鎸佷箙鍖栦繚瀛�
* @param snapRecord
- * @author sgj
- * @date 2025/12/10
*/
- public BaseResp addData(SnapRecord snapRecord) {
- snapRecord.setId(ContextUtil.generateId());
- snapRecord.setCompanyId(ContextUtil.getCompanyId());
+ public void addData(SnapRecord snapRecord) {
+ if(StringUtils.isBlank(snapRecord.getId())){
+ snapRecord.setId(ContextUtil.generateId());
+ }
+ if(StringUtils.isBlank(snapRecord.getCompanyId())){
+ snapRecord.setCompanyId(ContextUtil.getCompanyId());
+ }
+
snapRecord.setUpdateBy(ContextUtil.getLoginUserName());
snapRecord.setUpdateTime(new Date());
snapRecord.setCreateBy(ContextUtil.getLoginUserName());
snapRecord.setCreateTime(new Date());
- return snapRecordMapper.insert(snapRecord) > 0 ? BaseResp.success() : BaseResp.error("娣诲姞澶辫触");
+ snapRecordMapper.insert(snapRecord);
}
/**
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/utils/Base64Util.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/utils/Base64Util.java
new file mode 100644
index 0000000..47f7052
--- /dev/null
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/utils/Base64Util.java
@@ -0,0 +1,88 @@
+package com.fzzy.igds.utils;
+
+import sun.misc.BASE64Decoder;
+import sun.misc.BASE64Encoder;
+
+import java.io.*;
+
+/**
+ * @Description 鍥剧墖Base澶勭悊
+ * @Author CZT
+ * @Date 2026/1/7 11:07
+ */
+public class Base64Util {
+
+ public static String BASE_IMG_START = "data:image/jpg;base64,";
+
+ /**
+ * 鏍规嵁鍦板潃锛屾妸鍥剧墖杞崲涓築ase64瀛楃涓�
+ * <p>
+ * data:image/jpg;base64,
+ *
+ * @param diskFile
+ * @return
+ */
+ public static String getImageStr(String diskFile) {
+ InputStream in = null;
+ byte[] data = null;
+ // 璇诲彇鍥剧墖瀛楄妭鏁扮粍
+ try {
+ in = new FileInputStream(diskFile);
+ data = new byte[in.available()];
+ in.read(data);
+ // in.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ } finally {
+ try {
+ if (null != in)
+ in.close();
+ } catch (Exception e) {
+ }
+ }
+ BASE64Encoder encoder = new BASE64Encoder();
+ return BASE_IMG_START + encoder.encode(data);
+ }
+
+ /**
+ * 瀵瑰瓧鑺傛暟缁勫瓧绗︿覆杩涜Base64瑙g爜骞剁敓鎴愬浘鐗�
+ *
+ * @param imgStr
+ * @return
+ */
+ public static boolean generateImage(String imgStr, String diskFile) {
+ if (imgStr == null)
+ return false;
+
+ if (imgStr.startsWith("data:")) {
+ imgStr = imgStr.substring(BASE_IMG_START.length());
+ }
+ BASE64Decoder decoder = new BASE64Decoder();
+ OutputStream out = null;
+ try {
+ // Base64瑙g爜
+ byte[] b = decoder.decodeBuffer(imgStr);
+ for (int i = 0; i < b.length; ++i) {
+ if (b[i] < 0) {
+ b[i] += 256;
+ }
+ }
+ // 鐢熸垚jpeg鍥剧墖
+ out = new FileOutputStream(diskFile);
+ out.write(b);
+ out.flush();
+ // out.close();
+ return true;
+ } catch (Exception e) {
+ return false;
+ } finally {
+ try {
+ if (null != out)
+ out.close();
+ } catch (Exception e) {
+
+ }
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/ApiV1Controller.java b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/ApiV1Controller.java
new file mode 100644
index 0000000..9309e97
--- /dev/null
+++ b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/ApiV1Controller.java
@@ -0,0 +1,97 @@
+package com.fzzy.igds.api.v1;
+
+import com.fzzy.igds.api.v1.data.ApiV1Req;
+import com.fzzy.igds.api.v1.data.ApiV1Resp;
+import com.fzzy.igds.api.v1.service.*;
+import com.fzzy.igds.api.v1.util.ApiV1Constant;
+import com.fzzy.igds.constant.Constant;
+import com.fzzy.igds.domain.GatewaySer;
+import com.fzzy.igds.service.GatewaySerService;
+import com.alibaba.fastjson.JSONObject;
+import lombok.extern.slf4j.Slf4j;
+import com.ruoyi.common.utils.StringUtils;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+import javax.annotation.Resource;
+
+/**
+ * @Description 鐩戠鎺ュ彛瑙f瀽鍏ュ彛
+ * @Author CZT
+ * @Date 2026/1/7 10:25
+ */
+@Slf4j
+@Controller
+@RequestMapping("api/igdss/v1")
+public class ApiV1Controller {
+
+ @Resource
+ private GatewaySerService gatewaySerService;
+ @Resource
+ private ApiV1Service3010 apiV1Service3010;
+ @Resource
+ private ApiV1Service3020 apiV1Service3020;
+ @Resource
+ private ApiV1Service3021 apiV1Service3021;
+ @Resource
+ private ApiV1Service3030 apiV1Service3030;
+ @Resource
+ private ApiV1Service3031 apiV1Service3031;
+
+
+ @PostMapping
+ @ResponseBody
+ public ApiV1Resp<Object> gateway(@RequestBody ApiV1Req<JSONObject> req) {
+
+ log.info("璐ㄦ娂鐩戠鎺ュ彛V1锛屾敹鍒板簱鍖虹綉鍏充俊鎭�={}", req);
+ try {
+
+ //鍙傛暟鏍¢獙
+ if (req == null) {
+ return ApiV1Resp.error("鍙傛暟鏈夎锛�", req);
+ }
+
+ //鏍¢獙鎺ュ彛缂栫爜鍜岀綉鍏砈N
+ if (StringUtils.isEmpty(req.getFunctionId()) || StringUtils.isEmpty(req.getSn())) {
+ return ApiV1Resp.error("鍙傛暟鏈夎锛�", req);
+ }
+
+ //鏍¢獙缃戝叧鏄惁瀛樺湪
+ GatewaySer gatewaySer = gatewaySerService.getCacheSerById(null, req.getSn());
+ if (null == gatewaySer) {
+ return ApiV1Resp.error("褰撳墠缃戝叧<SN=" + req.getSn() + ">鏆傛湭娣诲姞锛岃鏍告煡锛�", req);
+ }
+
+ //寮傛鏇存柊缃戝叧鐘舵��
+ gatewaySerService.updateStatus(gatewaySer, Constant.YN_Y, ApiV1Constant.API_FUNCTION_3010.equals(req.getFunctionId()));
+
+ //瑙f瀽
+ String functionId = req.getFunctionId();
+ switch (functionId) {
+ case ApiV1Constant.API_FUNCTION_3010:
+ return apiV1Service3010.analysis(req, gatewaySer);
+ case ApiV1Constant.API_FUNCTION_3020:
+ return apiV1Service3020.analysis(req, gatewaySer);
+ case ApiV1Constant.API_FUNCTION_3021:
+ return apiV1Service3021.analysis(req, gatewaySer);
+ case ApiV1Constant.API_FUNCTION_3030:
+ return apiV1Service3030.analysis(req, gatewaySer);
+ case ApiV1Constant.API_FUNCTION_3031:
+ return apiV1Service3031.analysis(req, gatewaySer);
+ }
+
+ return ApiV1Resp.error("鎺ュ彛缂栫爜<" + functionId + ">涓嶅瓨鍦紝璇锋牳鏌ワ紒", req);
+
+ } catch (Exception e) {
+
+ log.info("璐ㄦ娂鐩戠鎺ュ彛V1锛屾帴鍙hВ鏋愬紓甯�={}", e.toString());
+
+ return ApiV1Resp.error("瑙f瀽寮傚父锛�", req);
+ }
+
+ }
+
+}
diff --git a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/ApiV1Req.java b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/ApiV1Req.java
new file mode 100644
index 0000000..a22e8f1
--- /dev/null
+++ b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/ApiV1Req.java
@@ -0,0 +1,26 @@
+package com.fzzy.igds.api.v1.data;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @Description 鎺ュ彛璇锋眰灏佽绫�
+ * @Author CZT
+ * @Date 2026/1/7 9:59
+ */
+@Data
+public class ApiV1Req<T> implements Serializable {
+
+ /*-----娑堟伅澶�-----*/
+ private String sn; //璁惧銆佺郴缁熺紪鐮�
+ private String auth; //鏉冮檺鏍囪瘑
+ private String sign; //鏉冮檺绛惧悕
+ private String outId; //鑷畾涔夌紪鐮�
+ private String functionId; //鍔熻兘鐮�
+ private Long timestamp; //鏃堕棿鎴�
+
+ /*-----娑堟伅浣�-----*/
+ private T data;
+
+}
diff --git a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/ApiV1Resp.java b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/ApiV1Resp.java
new file mode 100644
index 0000000..c607b6a
--- /dev/null
+++ b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/ApiV1Resp.java
@@ -0,0 +1,59 @@
+package com.fzzy.igds.api.v1.data;
+
+import com.alibaba.fastjson.JSONObject;
+import lombok.Data;
+import java.io.Serializable;
+
+/**
+ * @Description 鎺ュ彛鍥炲灏佽绫�
+ * @Author CZT
+ * @Date 2026/1/7 10:02
+ */
+@Data
+public class ApiV1Resp<T> implements Serializable {
+
+ /**
+ * 杩斿洖鐮�
+ */
+ public static final String CODE_SUCCESS = "200";
+ public static final String CODE_ERROR = "400";
+
+ /*-----娑堟伅澶�-----*/
+ private String sn; //璁惧銆佺郴缁熺紪鐮�
+ private String auth; //鏉冮檺鏍囪瘑
+ private String sign; //鏉冮檺绛惧悕
+ private String outId; //鑷畾涔夌紪鐮�
+ private String functionId; //鍔熻兘鐮�
+ private Long timestamp; //鏃堕棿鎴�
+ private String respCode; //杩斿洖鐮�
+ private String respMsg; //杩斿洖璇存槑
+
+ /*-----娑堟伅浣�-----*/
+ private T data;
+
+
+ public ApiV1Resp() {
+ super();
+ }
+
+ public ApiV1Resp(String respCode, String respMsg, T data, ApiV1Req<JSONObject> req) {
+ this.data = data;
+ this.sn = req.getSn();
+ this.auth = req.getAuth();
+ this.sign = req.getSign();
+ this.outId = req.getOutId();
+ this.functionId = req.getFunctionId();
+ this.timestamp = System.currentTimeMillis();
+ this.respCode = respCode;
+ this.respMsg = respMsg;
+ }
+
+ public static ApiV1Resp<Object> success(Object data, ApiV1Req<JSONObject> req) {
+ return new ApiV1Resp<>(CODE_SUCCESS, null, data, req);
+ }
+
+ public static ApiV1Resp<Object> error(String respMsg, ApiV1Req<JSONObject> req) {
+ return new ApiV1Resp<>(CODE_ERROR, respMsg, null, req);
+ }
+
+}
diff --git a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/Param3030.java b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/Param3030.java
new file mode 100644
index 0000000..3e16fa0
--- /dev/null
+++ b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/Param3030.java
@@ -0,0 +1,21 @@
+package com.fzzy.igds.api.v1.data;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @Description 鎶撴媿淇℃伅灏佽绫�
+ * @Author CZT
+ * @Date 2026/1/7 10:20
+ */
+@Data
+public class Param3030 implements Serializable {
+
+ private String cameraId;
+ private String cameraName;
+ private String result;
+ private String tags;
+ private String snapTime;
+ private String imgBase64;
+}
diff --git a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/Param3031.java b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/Param3031.java
new file mode 100644
index 0000000..40e341c
--- /dev/null
+++ b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/Param3031.java
@@ -0,0 +1,26 @@
+package com.fzzy.igds.api.v1.data;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @Description
+ * @Author CZT
+ * @Date 2026/1/7 10:21
+ */
+@Data
+public class Param3031 implements Serializable {
+
+ private String cameraId;
+ private String cameraName;
+ private String name;
+ private String bizType;
+ private String type;
+ private String level;
+ private String info;
+ private String time;
+ private String tags;
+ private String imgBase64;
+
+}
diff --git a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/package-info.java b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/package-info.java
deleted file mode 100644
index 15c8a09..0000000
--- a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/data/package-info.java
+++ /dev/null
@@ -1,4 +0,0 @@
-/**
- * 璐ㄦ娂鐩戠鎺ュ彛鍖�
- */
-package com.fzzy.igds.api.v1.data;
\ No newline at end of file
diff --git a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3010.java b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3010.java
new file mode 100644
index 0000000..b0728b8
--- /dev/null
+++ b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3010.java
@@ -0,0 +1,58 @@
+package com.fzzy.igds.api.v1.service;
+
+import com.fzzy.igds.api.v1.data.ApiV1Req;
+import com.fzzy.igds.api.v1.data.ApiV1Resp;
+import com.fzzy.igds.api.v1.util.ApiV1Constant;
+import com.fzzy.igds.domain.GatewaySer;
+import com.fzzy.igds.service.SecCameraService;
+import com.fzzy.igds.service.SnapConfService;
+import com.alibaba.fastjson.JSONObject;
+import com.ruoyi.common.utils.StringUtils;
+import org.springframework.stereotype.Component;
+import javax.annotation.Resource;
+import java.util.Date;
+
+/**
+ * @Description 蹇冭烦瑙f瀽
+ * @Author CZT
+ * @Date 2026/1/7 11:01
+ */
+@Component
+public class ApiV1Service3010 {
+
+ @Resource
+ private SecCameraService cameraService;
+ @Resource
+ private SnapConfService snapConfService;
+
+ /**
+ *
+ * @param req
+ * @param gatewaySer
+ * @return
+ */
+ public ApiV1Resp<Object> analysis(ApiV1Req<JSONObject> req, GatewaySer gatewaySer) {
+
+ Date end = new Date();
+ Date start = gatewaySer.getHeartbeatTime();
+ String functionId = "";
+
+ //鍒ゆ柇鎶撴媿閰嶇疆鏄惁鏈夋洿鏂�
+ int snapConfCount = snapConfService.getUpdateCount(gatewaySer.getDeptId(), start, end);
+ if (snapConfCount > 0) {
+ functionId += ApiV1Constant.API_FUNCTION_3020 + ",";
+ }
+
+ //鍒ゆ柇鐩戞帶鏄湁鏇存柊
+ int cameraCount = cameraService.getUpdateCount(gatewaySer.getDeptId(), start, end);
+ if (cameraCount > 0) {
+ functionId += ApiV1Constant.API_FUNCTION_3021 + ",";
+ }
+
+ if (StringUtils.isNotBlank(functionId)) {
+ req.setFunctionId(functionId);
+ }
+
+ return ApiV1Resp.success(null, req);
+ }
+}
diff --git a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3020.java b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3020.java
new file mode 100644
index 0000000..655a1a8
--- /dev/null
+++ b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3020.java
@@ -0,0 +1,44 @@
+package com.fzzy.igds.api.v1.service;
+
+import com.fzzy.igds.api.v1.data.ApiV1Req;
+import com.fzzy.igds.api.v1.data.ApiV1Resp;
+import com.fzzy.igds.domain.GatewaySer;
+import com.fzzy.igds.domain.SnapConf;
+import com.fzzy.igds.service.SnapConfService;
+import com.alibaba.fastjson.JSONObject;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @Description 鎶撴媿閰嶇疆瑙f瀽
+ * @Author CZT
+ * @Date 2026/1/7 11:03
+ */
+@Component
+public class ApiV1Service3020 {
+
+ @Resource
+ private SnapConfService snapConfService;
+
+ /**
+ *
+ * @param req
+ * @param gatewaySer
+ * @return
+ */
+ public ApiV1Resp<Object> analysis(ApiV1Req<JSONObject> req, GatewaySer gatewaySer) {
+
+ //鑾峰彇搴撳尯涓嬫墍鏈夋姄鎷嶉厤缃�
+ List<SnapConf> list = snapConfService.selectList(gatewaySer.getDeptId());
+
+ if(null == list || list.isEmpty()){
+ return ApiV1Resp.error("鏈幏鍙栧埌鎶撴媿閰嶇疆淇℃伅锛�", req);
+ }
+
+ return ApiV1Resp.success(list, req);
+
+ }
+
+}
diff --git a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3021.java b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3021.java
new file mode 100644
index 0000000..95eb356
--- /dev/null
+++ b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3021.java
@@ -0,0 +1,44 @@
+package com.fzzy.igds.api.v1.service;
+
+import com.fzzy.igds.api.v1.data.ApiV1Req;
+import com.fzzy.igds.api.v1.data.ApiV1Resp;
+import com.fzzy.igds.domain.Camera;
+import com.fzzy.igds.domain.GatewaySer;
+import com.fzzy.igds.service.SecCameraService;
+import com.alibaba.fastjson.JSONObject;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @Description 鐩戞帶閰嶇疆瑙f瀽
+ * @Author CZT
+ * @Date 2026/1/7 11:05
+ */
+@Component
+public class ApiV1Service3021 {
+
+ @Resource
+ private SecCameraService cameraService;
+
+ /**
+ *
+ * @param req
+ * @param gatewaySer
+ * @return
+ */
+ public ApiV1Resp<Object> analysis(ApiV1Req<JSONObject> req, GatewaySer gatewaySer) {
+
+ //鑾峰彇搴撳尯涓嬫墍鏈夌洃鎺т俊鎭�
+ List<Camera> list = cameraService.getCameraByDeptId(gatewaySer.getCompanyId(), gatewaySer.getDeptId());
+
+ if(null == list || list.isEmpty()){
+ return ApiV1Resp.error("鏈幏鍙栧埌鐩戞帶淇℃伅锛�", req);
+ }
+
+ return ApiV1Resp.success(list, req);
+
+ }
+
+}
diff --git a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3030.java b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3030.java
new file mode 100644
index 0000000..428f874
--- /dev/null
+++ b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3030.java
@@ -0,0 +1,84 @@
+package com.fzzy.igds.api.v1.service;
+
+import com.fzzy.igds.api.v1.data.ApiV1Req;
+import com.fzzy.igds.api.v1.data.ApiV1Resp;
+import com.fzzy.igds.api.v1.data.Param3030;
+import com.fzzy.igds.domain.GatewaySer;
+import com.alibaba.fastjson.JSONObject;
+import com.fzzy.igds.domain.SnapRecord;
+import com.fzzy.igds.service.FileService;
+import com.fzzy.igds.service.SnapRecordService;
+import com.fzzy.igds.utils.ContextUtil;
+import com.ruoyi.common.config.FrameworkConfig;
+import org.apache.commons.lang3.time.DateUtils;
+import org.springframework.scheduling.annotation.Async;
+import org.springframework.stereotype.Component;
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @Description 鎶撴媿瑙f瀽
+ * @Author CZT
+ * @Date 2026/1/7 11:07
+ */
+@Component
+public class ApiV1Service3030 {
+
+ @Resource
+ private SnapRecordService snapRecordService;
+ @Resource
+ private FileService fileService;
+
+ /**
+ *
+ * @param req
+ * @param gatewaySer
+ * @return
+ */
+ public ApiV1Resp<Object> analysis(ApiV1Req<JSONObject> req, GatewaySer gatewaySer) throws Exception{
+
+ //杞寲涓哄璞�
+ List<Param3030> list = JSONObject.parseArray(req.getData().toString(), Param3030.class);
+
+ if(null == list || list.isEmpty()){
+ return ApiV1Resp.error("鎶撴媿淇℃伅涓虹┖锛屼笉瑙f瀽锛�", req);
+ }
+
+ step1(list, gatewaySer);
+
+ return ApiV1Resp.success(null, req);
+ }
+
+ /**
+ * 寮傛瑙f瀽
+ * @param list
+ */
+ @Async
+ public void step1(List<Param3030> list, GatewaySer gatewaySer) throws Exception {
+
+ SnapRecord snapRecord;
+ for (Param3030 param3030 : list) {
+ snapRecord = new SnapRecord();
+ snapRecord.setId(ContextUtil.generateId());
+ snapRecord.setCompanyId(gatewaySer.getCompanyId());
+ snapRecord.setDeptId(gatewaySer.getDeptId());
+ snapRecord.setCameraId(param3030.getCameraId());
+ snapRecord.setResult(param3030.getResult());
+ snapRecord.setTags(param3030.getTags());
+ snapRecord.setSnapTime(DateUtils.parseDate(param3030.getSnapTime(),"yyyy-MM-dd HH:mm:ss"));
+
+ //base64杞寲涓哄浘鐗囦繚瀛�
+ String savePath = fileService.getFileSavePath("SNAP");
+ String fileName = ContextUtil.UUID() + ".jpg";
+ String filePath = savePath+fileName;
+ fileService.baseImg2Disk(filePath, param3030.getImgBase64());
+
+ //璁剧疆淇濆瓨鍥剧墖璺緞
+ snapRecord.setImgName(filePath.replace(FrameworkConfig.getProfile(), "/profile/"));
+
+ snapRecordService.addData(snapRecord);
+ }
+
+ }
+
+}
diff --git a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3031.java b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3031.java
new file mode 100644
index 0000000..5758f58
--- /dev/null
+++ b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/service/ApiV1Service3031.java
@@ -0,0 +1,95 @@
+package com.fzzy.igds.api.v1.service;
+
+import com.fzzy.igds.api.v1.data.ApiV1Req;
+import com.fzzy.igds.api.v1.data.ApiV1Resp;
+import com.fzzy.igds.api.v1.data.Param3030;
+import com.fzzy.igds.api.v1.data.Param3031;
+import com.fzzy.igds.constant.WarnStatus;
+import com.fzzy.igds.domain.EventInfo;
+import com.fzzy.igds.domain.GatewaySer;
+import com.alibaba.fastjson.JSONObject;
+import com.fzzy.igds.domain.SnapRecord;
+import com.fzzy.igds.service.EventInfoService;
+import com.fzzy.igds.service.FileService;
+import com.fzzy.igds.utils.ContextUtil;
+import com.ruoyi.common.config.FrameworkConfig;
+import org.apache.commons.lang3.time.DateUtils;
+import org.springframework.scheduling.annotation.Async;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @Description AI浜嬩欢瑙f瀽
+ * @Author CZT
+ * @Date 2026/1/7 11:09
+ */
+@Component
+public class ApiV1Service3031 {
+
+ @Resource
+ private EventInfoService eventInfoService;
+ @Resource
+ private FileService fileService;
+
+ /**
+ *
+ * @param req
+ * @param gatewaySer
+ * @return
+ */
+ public ApiV1Resp<Object> analysis(ApiV1Req<JSONObject> req, GatewaySer gatewaySer) throws Exception {
+
+ //杞寲涓哄璞�
+ List<Param3031> list = JSONObject.parseArray(req.getData().toString(), Param3031.class);
+
+ if(null == list || list.isEmpty()){
+ return ApiV1Resp.error("鎶撴媿淇℃伅涓虹┖锛屼笉瑙f瀽锛�", req);
+ }
+
+ step1(list, gatewaySer);
+
+ return ApiV1Resp.success(null, req);
+
+ }
+
+ /**
+ * 寮傛瑙f瀽
+ * @param list
+ */
+ @Async
+ public void step1(List<Param3031> list, GatewaySer gatewaySer) throws Exception {
+
+ EventInfo info;
+ for (Param3031 param : list) {
+
+ info = new EventInfo();
+ info.setId(ContextUtil.generateId());
+ info.setCompanyId(gatewaySer.getCompanyId());
+ info.setDeptId(gatewaySer.getDeptId());
+ info.setSerId(param.getCameraId());
+ info.setName(param.getName());
+ info.setBizType(param.getBizType());
+ info.setType(param.getType());
+ info.setLevel(param.getLevel());
+ info.setInfo(param.getInfo());
+ info.setTime(DateUtils.parseDate(param.getTime(),"yyyy-MM-dd HH:mm:ss"));
+ info.setTags(param.getTags());
+
+
+ //base64杞寲涓哄浘鐗囦繚瀛�
+ String savePath = fileService.getFileSavePath("EVENT");
+ String fileName = ContextUtil.UUID() + ".jpg";
+ String filePath = savePath+fileName;
+ fileService.baseImg2Disk(filePath, param.getImgBase64());
+
+ //璁剧疆淇濆瓨鍥剧墖璺緞
+ info.setImgName(filePath.replace(FrameworkConfig.getProfile(), "/profile/"));
+
+ eventInfoService.addData(info);
+ }
+
+ }
+
+}
diff --git a/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/util/ApiV1Constant.java b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/util/ApiV1Constant.java
new file mode 100644
index 0000000..2fa3236
--- /dev/null
+++ b/fzzy-igdss-inte/src/main/java/com/fzzy/igds/api/v1/util/ApiV1Constant.java
@@ -0,0 +1,30 @@
+package com.fzzy.igds.api.v1.util;
+
+/**
+ * @Description 鎺ュ彛甯搁噺绫�
+ * @Author CZT
+ * @Date 2026/1/7 10:03
+ */
+public class ApiV1Constant {
+
+ /*----------鎺ュ彛缂栫爜----------*/
+ /**
+ * 蹇冭烦鎺ュ彛缂栫爜
+ */
+ public static final String API_FUNCTION_3010 = "3010";
+ /**
+ * 鍚屾鎶撴媿閰嶇疆鎺ュ彛缂栫爜
+ */
+ public static final String API_FUNCTION_3020 = "3020";
+ /**
+ * 鍚屾鐩戞帶閰嶇疆鎺ュ彛缂栫爜
+ */
+ public static final String API_FUNCTION_3021 = "3021";
+ /**
+ * 鎺ㄩ�佹姄鎷嶄俊鎭帴鍙g紪鐮�
+ */
+ public static final String API_FUNCTION_3030 = "3030";
+ public static final String API_FUNCTION_3031 = "3031";
+
+
+}
diff --git a/fzzy-igdss-web/src/main/java/com/fzzy/common/manager/ExportManager.java b/fzzy-igdss-web/src/main/java/com/fzzy/common/manager/ExportManager.java
index a348d5a..3159036 100644
--- a/fzzy-igdss-web/src/main/java/com/fzzy/common/manager/ExportManager.java
+++ b/fzzy-igdss-web/src/main/java/com/fzzy/common/manager/ExportManager.java
@@ -52,7 +52,7 @@
}
//鑾峰彇妯℃澘璺緞
- String templatePath = fileService.getTemplateFilePath();
+ String templatePath = fileService.getFileSavePath("TEMPLATE");
File file = new File(templatePath + templateName);
if (!file.exists()) {
log.error("妯℃澘鏂囦欢涓嶅瓨鍦紝涓嶆墽琛屽鍑猴紒");
@@ -60,7 +60,7 @@
}
//鑾峰彇鏂囦欢淇濆瓨璺緞,浠ュ簱鍖哄垎寮�
- String savePath = fileService.getWordPath(null);
+ String savePath = fileService.getFileSavePath(null);
param.setTemplatePath(templatePath);
param.setTemplateName(templateName);
diff --git a/fzzy-igdss-web/src/main/java/com/fzzy/grain/manager/GrainExportBuilder.java b/fzzy-igdss-web/src/main/java/com/fzzy/grain/manager/GrainExportBuilder.java
index cb5cb57..0879a2d 100644
--- a/fzzy-igdss-web/src/main/java/com/fzzy/grain/manager/GrainExportBuilder.java
+++ b/fzzy-igdss-web/src/main/java/com/fzzy/grain/manager/GrainExportBuilder.java
@@ -88,7 +88,7 @@
}
result = ContextUtil.getTimeId() + ".xls";
- String tempPath = fileService.getTempFilePath(depot == null ? ContextUtil.getCompanyId() : depot.getCompanyId());
+ String tempPath = fileService.getFileSavePath("TEMP");
FileOutputStream fos = new FileOutputStream(tempPath + "/" + result);
toWorkbook.write(fos);
if (null != fos) fos.close();
@@ -104,7 +104,7 @@
private HSSFWorkbook getFromWorkBook(GrainData data, Depot depot) throws Exception {
FileInputStream fis = null;
- String filePath = fileService.getConfPath();
+ String filePath = fileService.getFileSavePath("CONF");
try {
//鑾峰彇妯$増鐨勫悕绉帮紝娉ㄦ剰绛掍粨鍚嶇О閰嶇疆瑙勫垯
if (StringUtils.isEmpty(data.getCableCir())) {
diff --git a/fzzy-igdss-web/src/main/java/com/fzzy/security/EventInfoController.java b/fzzy-igdss-web/src/main/java/com/fzzy/security/EventInfoController.java
index 79acef5..257f8ca 100644
--- a/fzzy-igdss-web/src/main/java/com/fzzy/security/EventInfoController.java
+++ b/fzzy-igdss-web/src/main/java/com/fzzy/security/EventInfoController.java
@@ -26,7 +26,7 @@
@RequestMapping("/security/eventInfo")
public class EventInfoController {
- private static final String prefix = "security/eventInfo";
+ private static final String prefix = "security";
@Resource
private EventInfoManager eventInfoManager;
diff --git a/fzzy-igdss-web/src/main/java/com/fzzy/security/SnapRecordController.java b/fzzy-igdss-web/src/main/java/com/fzzy/security/SnapRecordController.java
index 81928d3..a3d2368 100644
--- a/fzzy-igdss-web/src/main/java/com/fzzy/security/SnapRecordController.java
+++ b/fzzy-igdss-web/src/main/java/com/fzzy/security/SnapRecordController.java
@@ -23,7 +23,7 @@
@RequestMapping("/security/snap/snapRecord")
public class SnapRecordController {
- private static final String prefix = "security/snap/snapRecord";
+ private static final String prefix = "security";
@Resource
private SnapRecordManager snapRecordManager;
diff --git a/fzzy-igdss-web/src/main/resources/templates/security/eventInfo/eventInfo.html b/fzzy-igdss-web/src/main/resources/templates/security/eventInfo.html
similarity index 100%
rename from fzzy-igdss-web/src/main/resources/templates/security/eventInfo/eventInfo.html
rename to fzzy-igdss-web/src/main/resources/templates/security/eventInfo.html
diff --git a/fzzy-igdss-web/src/main/resources/templates/security/snap/snapRecord/snapRecord.html b/fzzy-igdss-web/src/main/resources/templates/security/snapRecord.html
similarity index 100%
rename from fzzy-igdss-web/src/main/resources/templates/security/snap/snapRecord/snapRecord.html
rename to fzzy-igdss-web/src/main/resources/templates/security/snapRecord.html
--
Gitblit v1.9.3