From 51faf3e9c3c613e7fb12db6c88356946f2429e0c Mon Sep 17 00:00:00 2001
From: czt <czt18638530771@163.com>
Date: 星期五, 12 十二月 2025 17:35:30 +0800
Subject: [PATCH] 调整安防视频页面及逻辑
---
fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/security/SecurityController.java | 180 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 179 insertions(+), 1 deletions(-)
diff --git a/fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/security/SecurityController.java b/fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/security/SecurityController.java
index 6b07a28..037aa65 100644
--- a/fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/security/SecurityController.java
+++ b/fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/security/SecurityController.java
@@ -1,8 +1,24 @@
package com.fzzy.sys.controller.security;
+import com.fzzy.igds.constant.CameraPlayType;
+import com.fzzy.igds.constant.Constant;
+import com.fzzy.igds.data.PageResponse;
+import com.fzzy.igds.domain.Camera;
+import com.fzzy.igds.domain.Dept;
+import com.fzzy.igds.service.CoreDeptService;
+import com.fzzy.igds.utils.ContextUtil;
+import com.fzzy.sys.manager.security.SecManager;
+import com.ruoyi.common.core.domain.entity.SysUser;
import lombok.extern.slf4j.Slf4j;
+import com.ruoyi.common.utils.StringUtils;
import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
+import javax.annotation.Resource;
+import java.util.List;
/**
* @Description 瀹夐槻controller灞�
@@ -11,15 +27,177 @@
*/
@Slf4j
@Controller
-@RequestMapping("/security")
+@RequestMapping("security")
public class SecurityController {
private static final String prefix = "security";
+ @Resource
+ private SecManager secManager;
+ @Resource
+ private CoreDeptService deptService;
+
+ /**
+ * 搴撳尯瀹夐槻椤甸潰
+ * @param type 1.琛ㄧず2.5D楦熺灠鍥鹃〉闈㈤瑙堬紱2.琛ㄧず鍒楄〃棰勮椤甸潰
+ * @param view
+ * @return
+ */
+ @RequestMapping("/video-dept")
+ public String videoDept(@RequestParam(value = "type", required = false) String type,
+ ModelMap view) {
+
+ if (StringUtils.isBlank(type)) {
+ type = "2";
+ }
+
+ SysUser user = ContextUtil.getLoginUser();
+ view.put(Constant.MODEL_KEY_LOGIN_USER, user);
+
+ String deptId = ContextUtil.subDeptId(user);
+ view.put("deptId", deptId);
+
+ List<Camera> listCamera = secManager.listCamera(deptId, user.getCompanyId());
+ view.put("listCamera", listCamera);
+
+ //榛樿鐩戞帶鍒楄〃椤甸潰
+ String viewUrl = prefix + "/video-list-dept";
+
+ if("1".equals(type)){
+ viewUrl = prefix + "/video-aerial-dept";
+
+ //楦熺灠鍥�
+ Dept dept = deptService.getDeptById(deptId);
+ if (dept != null && StringUtils.isNotEmpty(dept.getImgPath())) {
+ view.put("backgroundImg", dept.getImgPath());
+ }
+ }
+ if("2".equals(type)){
+ viewUrl = prefix + "/video-list-dept";
+ }
+
+ return viewUrl;
+ }
+
+ /**
+ * 鐩戠瀹夐槻椤甸潰
+ * @param type 1.琛ㄧず2.5D楦熺灠鍥鹃〉闈㈤瑙堬紱2.琛ㄧず鍒楄〃棰勮椤甸潰
+ * @param view
+ * @return
+ */
+ @RequestMapping("/video-super")
+ public String videoSuper(@RequestParam(value = "type", required = false) String type,
+ ModelMap view) {
+
+ if (StringUtils.isBlank(type)) {
+ type = "2";
+ }
+
+ SysUser user = ContextUtil.getLoginUser();
+ view.put(Constant.MODEL_KEY_LOGIN_USER, user);
+
+ String deptId = ContextUtil.subDeptId(user);
+ view.put("deptId", deptId);
+
+ List<Camera> listCamera = secManager.listCamera(deptId, user.getCompanyId());
+ view.put("listCamera", listCamera);
+
+ //榛樿鐩戞帶鍒楄〃椤甸潰
+ String viewUrl = prefix + "/video-list-dept";
+
+ if("1".equals(type)){
+ viewUrl = prefix + "/video-aerial-dept";
+
+ //楦熺灠鍥�
+ Dept dept = deptService.getDeptById(deptId);
+ if (dept != null && StringUtils.isNotEmpty(dept.getImgPath())) {
+ view.put("backgroundImg", dept.getImgPath());
+ }
+ }
+ if("2".equals(type)){
+ viewUrl = prefix + "/video-list-dept";
+ }
+
+ return viewUrl;
+ }
+
+ /**
+ * 楦熺灠鍥鹃〉闈� -- 瑙嗛鎾斁锛岄�氳繃鎾斁鍙傛暟涓嶅悓璺宠浆涓嶅悓椤甸潰鎾斁
+ *
+ * @param cameraId 鎽勫儚鏈虹郴缁烮D
+ * @param playType 閰嶇疆鐨勬挱鏀炬柟寮�
+ * @param time 鏃堕棿鍙傛暟锛屾棤鍏蜂綋鍚箟
+ * @return
+ */
+ @RequestMapping("/video-play")
+ public String play(@RequestParam(value = "cameraId", required = true) String cameraId,
+ @RequestParam(value = "playType", required = false) String playType,
+ @RequestParam(value = "time", required = false) String time,
+ ModelMap view) {
+
+ SysUser user = ContextUtil.getLoginUser();
+
+ // 璁剧疆榛樿鎾斁鏂瑰紡
+ if (org.apache.commons.lang3.StringUtils.isEmpty(playType)) {
+ playType = CameraPlayType.PLAY_TYPE_VLC.getCode();
+ }
+
+ // 璁剧疆鎽勫儚澶翠俊鎭�
+ Camera camera = secManager.getCameraById(null, cameraId);
+ if (camera == null) {
+ view.put("errorMsg", "鑾峰彇瑙嗛璁惧鍑洪敊锛岃鍏堝埛鏂扮紦瀛橈紒");
+ }
+ view.put("cameraData", camera);
+
+ String viewUrl = prefix + "/video-webrtc";
+
+ //WEB-RTC鎾斁
+ if (CameraPlayType.PLAY_TYPE_WEB_RTC.getCode().equals(playType)) {
+ viewUrl = prefix + "/video-webrtc";
+ }
+
+ return viewUrl;
+ }
+
+ /***
+ * 瑙嗛楦熺灠鍥句腑鏇存敼鎽勫儚澶翠綅缃�
+ *
+ * @param params
+ * @return
+ */
+ @RequestMapping("/update-pos")
+ @ResponseBody
+ public PageResponse<String> updatePos(
+ @RequestBody List<Camera> params) {
+ return secManager.updatePos(params);
+ }
+ /**
+ * 棣栭〉鎬昏
+ *
+ * @return
+ */
+ @RequestMapping("/quantity")
+ public String infrared(
+ @RequestParam(value = "type", required = false) String type,
+ ModelMap view) {
+ SysUser user = ContextUtil.getLoginUser();
+ view.put(Constant.MODEL_KEY_LOGIN_USER, user);
+ String deptId = ContextUtil.subDeptId(user);
+ view.put("deptId", deptId);
+// List<InfraredCamera> listCamera = infraredManager.listCamera(deptId, user.getCompanyId());
+//
+// if(null == listCamera){
+// listCamera = new ArrayList<>();
+// listCamera.add(new InfraredCamera());
+// }
+// view.put("listCamera", listCamera);
+
+ return prefix + "/quantity";
+ }
}
--
Gitblit v1.9.3