From fd2ef6effe7b484c70079a7ac054ac4834b394d9 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期一, 01 四月 2024 15:29:49 +0800
Subject: [PATCH] 修复国标点播

---
 src/main/java/com/genersoft/iot/vmp/media/MediaServerConfig.java |   24 ++++++++++++++++--------
 1 files changed, 16 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/media/MediaServerConfig.java b/src/main/java/com/genersoft/iot/vmp/media/MediaServerConfig.java
index 3be8e4c..4eb1041 100755
--- a/src/main/java/com/genersoft/iot/vmp/media/MediaServerConfig.java
+++ b/src/main/java/com/genersoft/iot/vmp/media/MediaServerConfig.java
@@ -1,9 +1,9 @@
 package com.genersoft.iot.vmp.media;
 
 import com.genersoft.iot.vmp.conf.MediaConfig;
-import com.genersoft.iot.vmp.media.event.MediaServerChangeEvent;
+import com.genersoft.iot.vmp.media.event.mediaServer.MediaServerChangeEvent;
 import com.genersoft.iot.vmp.media.service.IMediaServerService;
-import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
+import com.genersoft.iot.vmp.media.zlm.dto.MediaServer;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -37,17 +37,25 @@
     public void run(String... strings) throws Exception {
         // 娓呯悊鎵�鏈夊湪绾胯妭鐐圭殑缂撳瓨淇℃伅
         mediaServerService.clearMediaServerForOnline();
-        MediaServerItem defaultMediaServer = mediaServerService.getDefaultMediaServer();
-        if (defaultMediaServer == null) {
-            mediaServerService.addToDatabase(mediaConfig.getMediaSerItem());
+        MediaServer defaultMediaServer = mediaServerService.getDefaultMediaServer();
+        MediaServer mediaSerItemInConfig = mediaConfig.getMediaSerItem();
+        if (defaultMediaServer != null && mediaSerItemInConfig.getId().equals(defaultMediaServer.getId())) {
+            mediaServerService.update(mediaSerItemInConfig);
         }else {
-            MediaServerItem mediaSerItem = mediaConfig.getMediaSerItem();
-            mediaServerService.updateToDatabase(mediaSerItem);
+            if (defaultMediaServer != null) {
+                mediaServerService.delete(defaultMediaServer.getId());
+            }
+            MediaServer mediaServerItem = mediaServerService.getOneFromDatabase(mediaSerItemInConfig.getId());
+            if (mediaServerItem == null) {
+                mediaServerService.add(mediaSerItemInConfig);
+            }else {
+                mediaServerService.update(mediaSerItemInConfig);
+            }
         }
         // 鍙戦�佸獟浣撹妭鐐瑰彉鍖栦簨浠�
         mediaServerService.syncCatchFromDatabase();
         // 鑾峰彇鎵�鏈夌殑zlm锛� 骞跺紑鍚富鍔ㄨ繛鎺�
-        List<MediaServerItem> all = mediaServerService.getAllFromDatabase();
+        List<MediaServer> all = mediaServerService.getAllFromDatabase();
         logger.info("[濯掍綋鑺傜偣] 鍔犺浇鑺傜偣鍒楄〃锛� 鍏眥}涓妭鐐�", all.size());
         MediaServerChangeEvent event = new MediaServerChangeEvent(this);
         event.setMediaServerItemList(all);

--
Gitblit v1.8.0