From f52be3039975b41f24f8df02b71b60911aa7c63a Mon Sep 17 00:00:00 2001
From: walkTtalk <irwenjing@gmail.com>
Date: 星期六, 26 二月 2022 00:01:35 +0800
Subject: [PATCH] Fix issue #347: 修改前端启动报错

---
 web_src/src/components/CloudRecord.vue |   33 +++++++++++++++++++++------------
 1 files changed, 21 insertions(+), 12 deletions(-)

diff --git a/web_src/src/components/CloudRecord.vue b/web_src/src/components/CloudRecord.vue
index 284578b..78f8a46 100644
--- a/web_src/src/components/CloudRecord.vue
+++ b/web_src/src/components/CloudRecord.vue
@@ -6,20 +6,22 @@
 			</el-header>
 			<el-main>
         <div style="background-color: #FFFFFF; margin-bottom: 1rem; position: relative; padding: 0.5rem; text-align: left;">
-          <span style="font-size: 1rem; font-weight: bold;">浜戠褰曞儚</span>
+          <span v-if="!recordDetail" >浜戠褰曞儚</span>
+          <el-page-header v-if="recordDetail"  @back="backToList" content="浜戠褰曞儚">
+          </el-page-header>
           <div style="position: absolute; right: 5rem; top: 0.3rem;">
-            鑺傜偣閫夋嫨: <el-select size="mini" @change="chooseMediaChange" style="width: 16rem; margin-right: 1rem;" v-model="mediaServer" placeholder="璇烽�夋嫨" default-first-option>
+            鑺傜偣閫夋嫨:
+            <el-select size="mini" @change="chooseMediaChange" style="width: 16rem; margin-right: 1rem;" v-model="mediaServerId" placeholder="璇烽�夋嫨" :disabled="recordDetail">
             <el-option
               v-for="item in mediaServerList"
               :key="item.id"
-              :label="item.id + '( ' + item.streamIp + ' )'"
-              :value="item">
+              :label="item.id"
+              :value="item.id">
             </el-option>
           </el-select>
           </div>
           <div style="position: absolute; right: 1rem; top: 0.3rem;">
             <el-button v-if="!recordDetail" icon="el-icon-refresh-right" circle size="mini" :loading="loading" @click="getRecordList()"></el-button>
-            <el-button v-if="recordDetail" icon="el-icon-arrow-left" circle size="mini" @click="backToList()"></el-button>
           </div>
         </div>
         <div v-if="!recordDetail">
@@ -52,7 +54,7 @@
             :total="total">
           </el-pagination>
         </div>
-        <cloud-record-detail ref="cloudRecordDetail" v-if="recordDetail" :recordFile="chooseRecord" :mediaServer="mediaServer" ></cloud-record-detail>
+        <cloud-record-detail ref="cloudRecordDetail" v-if="recordDetail" :recordFile="chooseRecord" :mediaServerId="mediaServerId" :mediaServerPath="mediaServerPath" ></cloud-record-detail>
 			</el-main>
 		</el-container>
 	</div>
@@ -70,7 +72,8 @@
 		data() {
 			return {
         mediaServerList: [], // 婊呬綋鑺傜偣鍒楄〃
-        mediaServer: null, // 濯掍綋鏈嶅姟
+        mediaServerId: null, // 濯掍綋鏈嶅姟
+        mediaServerPath: null, // 濯掍綋鏈嶅姟鍦板潃
         recordList: [], // 璁惧鍒楄〃
         chooseRecord: null, // 濯掍綋鏈嶅姟
 
@@ -110,10 +113,15 @@
       },
       getMediaServerList: function (){
         let that = this;
-        that.mediaServerObj.getMediaServerList((data)=>{
-          that.mediaServerList = data;
+        that.mediaServerObj.getOnlineMediaServerList((data)=>{
+          that.mediaServerList = data.data;
           if (that.mediaServerList.length > 0) {
-            that.mediaServer = that.mediaServerList[0]
+            that.mediaServerId = that.mediaServerList[0].id
+            let port = that.mediaServerList[0].httpPort;
+            if (location.protocol === "https:" && that.mediaServerList[0].httpSSlPort) {
+              port = that.mediaServerList[0].httpSSlPort
+            }
+            that.mediaServerPath = location.protocol + "//" + that.mediaServerList[0].streamIp + ":" + port
             that.getRecordList();
           }
         })
@@ -122,7 +130,7 @@
         let that = this;
         this.$axios({
           method: 'get',
-          url:`/record_proxy/${that.mediaServer.generalMediaServerId}/api/record/list`,
+          url:`/record_proxy/${that.mediaServerId}/api/record/list`,
           params: {
             page: that.currentPage,
             count: that.count
@@ -142,7 +150,8 @@
       },
       chooseMediaChange(val){
           console.log(val)
-          this.mediaServer = val;
+          this.total = 0;
+          this.recordList = [];
           this.getRecordList();
       },
       showRecordDetail(row){

--
Gitblit v1.8.0