From acdb4a206f64cc7b39cee05d77bbc4e98258c27b Mon Sep 17 00:00:00 2001
From: liusuyi <13324259@qq.com>
Date: 星期二, 24 十月 2023 21:50:48 +0800
Subject: [PATCH] 相机校验是否唯一

---
 ard-work/src/main/java/com/ruoyi/media/service/impl/VtduServiceImpl.java |   59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 54 insertions(+), 5 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/media/service/impl/VtduServiceImpl.java b/ard-work/src/main/java/com/ruoyi/media/service/impl/VtduServiceImpl.java
index 456fad4..c08fb1d 100644
--- a/ard-work/src/main/java/com/ruoyi/media/service/impl/VtduServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/media/service/impl/VtduServiceImpl.java
@@ -1,16 +1,18 @@
 package com.ruoyi.media.service.impl;
 
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 
 import com.ruoyi.common.utils.DateUtils;
-import com.ruoyi.common.utils.SecurityUtils;
-import com.ruoyi.common.utils.uuid.IdUtils;
-import org.springframework.beans.factory.annotation.Autowired;
+import com.ruoyi.media.service.IMediaService;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 import com.ruoyi.media.mapper.VtduMapper;
 import com.ruoyi.media.domain.Vtdu;
 import com.ruoyi.media.service.IVtduService;
 
+import javax.annotation.PostConstruct;
 import javax.annotation.Resource;
 
 /**
@@ -20,9 +22,12 @@
  * @date 2023-08-29
  */
 @Service
+@Slf4j(topic = "vtdu")
 public class VtduServiceImpl implements IVtduService {
     @Resource
     private VtduMapper vtduMapper;
+    @Resource
+    private IMediaService mediaService;
 
     /**
      * 鏌ヨ娴佸獟浣撶鐞�
@@ -32,6 +37,7 @@
      */
     @Override
     public Vtdu selectVtduByName(String name) {
+
         return vtduMapper.selectVtduByName(name);
     }
 
@@ -54,7 +60,16 @@
      */
     @Override
     public int insertVtdu(Vtdu vtdu) {
-        vtdu.setCreateBy(SecurityUtils.getUserId());
+        log.debug("娴佸獟浣撱��" + vtdu.getName() + "銆戦�氶亾娣诲姞");
+        Map<String, String> map = mediaService.addPath(vtdu.getName(), vtdu.getRtspSource(), vtdu.getMode(), vtdu.getIsCode());
+        vtdu.setRtspUrl(map.get("rtspUrl"));
+        vtdu.setRtmpUrl(map.get("rtmpUrl"));
+        vtdu.setWebrtcUrl(map.get("webrtcUrl"));
+
+        vtdu.setName(vtdu.getName());
+        vtdu.setRtspSource(vtdu.getRtspSource());
+        vtdu.setIsCode(vtdu.getIsCode());
+        vtdu.setMode(vtdu.getMode());
         vtdu.setCreateTime(DateUtils.getNowDate());
         return vtduMapper.insertVtdu(vtdu);
     }
@@ -67,7 +82,16 @@
      */
     @Override
     public int updateVtdu(Vtdu vtdu) {
-        vtdu.setUpdateBy(SecurityUtils.getUserId());
+
+        log.debug("娴佸獟浣撱��" + vtdu.getName() + "銆戦�氶亾鏇存柊");
+        Map<String, String> map = mediaService.editPath(vtdu.getName(), vtdu.getRtspSource(), vtdu.getMode(), vtdu.getIsCode());
+        vtdu.setName(vtdu.getName());
+        vtdu.setRtspSource(vtdu.getRtspSource());
+        vtdu.setIsCode(vtdu.getIsCode());
+        vtdu.setMode(vtdu.getMode());
+        vtdu.setRtspUrl(map.get("rtspUrl"));
+        vtdu.setRtmpUrl(map.get("rtmpUrl"));
+        vtdu.setWebrtcUrl(map.get("webrtcUrl"));
         vtdu.setUpdateTime(DateUtils.getNowDate());
         return vtduMapper.updateVtdu(vtdu);
     }
@@ -80,6 +104,10 @@
      */
     @Override
     public int deleteVtduByNames(String[] names) {
+        for (String name : names) {
+            log.debug("娴佸獟浣撱��" + name + "銆戦�氶亾鍒犻櫎");
+        }
+        mediaService.removePath(names);
         return vtduMapper.deleteVtduByNames(names);
     }
 
@@ -91,6 +119,27 @@
      */
     @Override
     public int deleteVtduByName(String name) {
+        mediaService.removePath(name);
+        log.debug("娴佸獟浣撱��" + name + "銆戦�氶亾鍒犻櫎");
         return vtduMapper.deleteVtduByName(name);
     }
+
+    /**
+     * 鍒犻櫎娴佸獟浣撶鐞嗕俊鎭�
+     *
+     * @param cameraId 鐩告満ID
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteVtduByCameraId(String cameraId) {
+        Vtdu vtdu = new Vtdu();
+        vtdu.setCameraId(cameraId);
+        List<Vtdu> vtdus = vtduMapper.selectVtduList(vtdu);
+        if (vtdus.size() > 0) {
+            for (Vtdu v : vtdus) {
+                mediaService.removePath(v.getName());
+            }
+        }
+        return vtduMapper.deleteVtduByCameraId(cameraId);
+    }
 }

--
Gitblit v1.9.3