From d09d8f11f06ee6eeeb4c7f9bd6d35e6fbd49e05f Mon Sep 17 00:00:00 2001
From: jiang <893224616@qq.com>
Date: 星期四, 04 八月 2022 17:01:31 +0800
Subject: [PATCH] 修改‘修改pushkey’窗口的标题提示文案

---
 web_src/src/components/dialog/chooseChannelForStream.vue |  265 +++++++++++++++++++++++++---------------------------
 1 files changed, 128 insertions(+), 137 deletions(-)

diff --git a/web_src/src/components/dialog/chooseChannelForStream.vue b/web_src/src/components/dialog/chooseChannelForStream.vue
index 931a58e..1eec0b2 100644
--- a/web_src/src/components/dialog/chooseChannelForStream.vue
+++ b/web_src/src/components/dialog/chooseChannelForStream.vue
@@ -1,6 +1,33 @@
 <template>
 <div id="chooseChannelFoStream" >
-    <el-table ref="gbStreamsTable" :data="gbStreams" border style="width: 100%" :height="winHeight">
+    <div style="font-size: 17px; color: #606060; white-space: nowrap; line-height: 30px; font-family: monospace;">
+      <span v-if="catalogId == null">{{catalogName}}鐨勭洿鎾�氶亾</span>
+      <span v-if="catalogId != null">{{catalogName}}({{catalogId}})鐨勭洿鎾�氶亾</span>
+    </div>
+    <div style="background-color: #FFFFFF; margin-bottom: 1rem; position: relative; padding: 0.5rem; text-align: left;font-size: 14px;">
+
+      鎼滅储: <el-input @input="getChannelList" style="margin-right: 1rem; width: auto;" size="mini" placeholder="鍏抽敭瀛�" prefix-icon="el-icon-search" v-model="searchSrt" clearable> </el-input>
+
+<!--      娴佸獟浣�: <el-select size="mini" @change="getChannelList" style="margin-right: 1rem;" v-model="mediaServerId" placeholder="璇烽�夋嫨" default-first-option>-->
+<!--      <el-option label="鍏ㄩ儴" value=""></el-option>-->
+<!--      <el-option-->
+<!--        v-for="item in mediaServerList"-->
+<!--        :key="item.id"-->
+<!--        :label="item.id"-->
+<!--        :value="item.id">-->
+<!--      </el-option>-->
+<!--      </el-select>-->
+        鎺ㄦ祦鐘舵��: <el-select size="mini" style="margin-right: 1rem;" @change="getChannelList" v-model="pushing" placeholder="璇烽�夋嫨" default-first-option>
+        <el-option label="鍏ㄩ儴" value=""></el-option>
+        <el-option label="鎺ㄦ祦杩涜涓�" value="true"></el-option>
+        <el-option label="鎺ㄦ祦鏈繘琛�" value="false"></el-option>
+      </el-select>
+      <el-button v-if="catalogId !== null" icon="el-icon-delete" size="mini" style="margin-right: 1rem;" :disabled="gbStreams.length === 0 || multipleSelection.length === 0" type="danger" @click="batchDel">鎵归噺绉婚櫎</el-button>
+      <el-button v-if="catalogId === null" icon="el-icon-plus" size="mini" style="margin-right: 1rem;" :disabled="gbStreams.length === 0 || multipleSelection.length === 0" @click="batchAdd">鎵归噺娣诲姞</el-button>
+    </div>
+    <el-table ref="gbStreamsTable" :data="gbStreams" border style="width: 100%" :height="winHeight" :row-key="(row)=> row.app + row.stream" @selection-change="handleSelectionChange">
+        <el-table-column align="center" type="selection" :reserve-selection="true" width="55">
+        </el-table-column>
         <el-table-column prop="name" label="鍚嶇О" show-overflow-tooltip align="center">
         </el-table-column>
         <el-table-column prop="app" label="搴旂敤鍚�" show-overflow-tooltip align="center">
@@ -20,18 +47,21 @@
       <el-table-column label="鎿嶄綔" width="100" align="center" fixed="right" >
         <template slot-scope="scope">
           <el-button-group>
-            <el-button size="mini" icon="el-icon-plus" v-if="!scope.row.platformId" @click="add(scope.row)">娣诲姞</el-button>
-            <el-button size="mini" icon="el-icon-delete" v-if="scope.row.platformId" type="danger" @click="remove(scope.row)">绉婚櫎</el-button>
+            <el-button size="mini" icon="el-icon-plus" v-if="catalogId === null" @click="add(scope.row, scope)">娣诲姞</el-button>
+            <el-button size="mini" icon="el-icon-delete" v-if="catalogId !== null" type="danger" @click="remove(scope.row, scope)">绉婚櫎</el-button>
           </el-button-group>
         </template>
       </el-table-column>
     </el-table>
     <el-pagination style="float: right;margin-top: 1rem;" @size-change="handleSizeChange" @current-change="currentChange" :current-page="currentPage" :page-size="count" :page-sizes="[10, 20, 30, 50]" layout="total, sizes, prev, pager, next" :total="total">
     </el-pagination>
+    <getCatalog ref="getCatalog" :platformId="platformId" ></getCatalog>
 </div>
 </template>
 
 <script>
+import MediaServer from './../service/MediaServer'
+import getCatalog from './getCatalog'
 export default {
     name: 'chooseChannelFoStream',
     computed: {
@@ -43,73 +73,82 @@
         //     };
         // }
     },
-    props: ['platformId', 'catalogId',  'updateChoosedCallback'],
+    props: ['platformId', 'catalogId',  'catalogName'],
     created() {
         this.initData();
+        console.log(this.catalogId)
+    },
+    components: {
+      getCatalog,
     },
     data() {
         return {
             gbStreams: [],
             gbChoosechannel:{},
-            searchSrt: "",
             channelType: "",
             online: "",
             choosed: "",
             currentPage: 1,
             count: 10,
             total: 0,
-            eventEnanle: false,
+            searchSrt: "",
+            pushing: "",
+            mediaServerId: "",
+            mediaServerList: [],
+            mediaServerObj : new MediaServer(),
+            eventEnable: false,
+            multipleSelection: [],
             winHeight: window.innerHeight - 350,
 
         };
     },
     watch:{
         platformId(newData, oldData){
-            console.log(newData)
-            this.initData()
-
+            this.getChannelList()
+        },
+        catalogId(newData, oldData){
+            this.getChannelList()
         },
     },
     methods: {
         initData: function() {
+            this.mediaServerObj.getOnlineMediaServerList((data)=>{
+              this.mediaServerList = data.data;
+            })
             this.getChannelList();
         },
         currentChange: function (val) {
             this.currentPage = val;
-            this.initData();
+            this.getChannelList();
         },
         handleSizeChange: function (val) {
             this.count = val;
             console.log(val)
-            this.initData();
+            this.getChannelList();
 
         },
-        rowcheckedChanage: function (val, row) {
-            console.log(val)
-            console.log(row)
-        },
-        add: function (row) {
-          console.log(row)
-          row.catalogId = this.catalogId
-          row.platformId = this.platformId
-          this.$axios({
-            method:"post",
-            url:"/api/gbStream/add",
-            data:{
-              platformId: this.platformId,
-              catalogId: this.catalogId,
-              gbStreams:  [row],
-            }
-          }).then((res)=>{
-            console.log("淇濆瓨鎴愬姛")
-            if(this.updateChoosedCallback)this.updateChoosedCallback(this.catalogId)
-          }).catch(function (error) {
-            console.log(error);
-          });
-        },
-        remove: function (row) {
-          console.log(row)
+        add: function (row, scope) {
+          this.getCatalogFromUser((catalogId)=>{
+            this.$axios({
+              method:"post",
+              url:"/api/gbStream/add",
+              data:{
+                platformId: this.platformId,
+                catalogId: catalogId,
+                gbStreams:  [row],
+              }
+            }).then((res)=>{
+              console.log("淇濆瓨鎴愬姛")
+              // this.gbStreams.splice(scope.$index,1)
+              this.getChannelList();
+            }).catch(function (error) {
+              console.log(error);
+            });
+          })
 
+
+        },
+        remove: function (row, scope) {
           this.$axios({
             method:"delete",
             url:"/api/gbStream/del",
@@ -119,91 +158,11 @@
             }
           }).then((res)=>{
             console.log("绉婚櫎鎴愬姛")
-            if(this.updateChoosedCallback)this.updateChoosedCallback(row.catalogId)
-            row.platformId = null;
-            row.catalogId = null
+            // this.gbStreams.splice(scope.$index,1)
+            this.getChannelList();
           }).catch(function (error) {
             console.log(error);
           });
-        },
-        checkedChanage: function (val) {
-            var that = this;
-            if (!that.eventEnanle) {
-                return;
-            }
-
-            var newData = {};
-            var addData = [];
-            var delData = [];
-            if (val.length > 0) {
-                for (let i = 0; i < val.length; i++) {
-                    const element = val[i];
-                    var key = element.app + "_" + element.stream;
-                    newData[key] = element;
-                    if (!!!that.gbChoosechannel[key]){
-                        addData.push(element)
-                    }else{
-                        delete that.gbChoosechannel[key]
-                    }
-                }
-
-                 var oldKeys = Object.keys(that.gbChoosechannel);
-                if (oldKeys.length > 0) {
-                    for (let i = 0; i < oldKeys.length; i++) {
-                        const key = oldKeys[i];
-                        delData.push(that.gbChoosechannel[key])
-                    }
-                }
-
-            }else{
-                var oldKeys = Object.keys(that.gbChoosechannel);
-                if (oldKeys.length > 0) {
-                    for (let i = 0; i < oldKeys.length; i++) {
-                        const key = oldKeys[i];
-                        delData.push(that.gbChoosechannel[key])
-                    }
-                }
-            }
-
-            that.gbChoosechannel = newData;
-            if (Object.keys(addData).length >0) {
-                console.log(addData)
-                that.$axios({
-                    method:"post",
-                     url:"/api/gbStream/add",
-                    data:{
-                        platformId: that.platformId,
-                        catalogId: that.catalogId,
-                        gbStreams:  addData,
-                    }
-                }).then((res)=>{
-                    console.log("淇濆瓨鎴愬姛")
-                    if(this.updateChoosedCallback)this.updateChoosedCallback(this.catalogId)
-                }).catch(function (error) {
-                    console.log(error);
-                });
-            }
-            if (Object.keys(delData).length >0) {
-                console.log(delData)
-                 that.$axios({
-                    method:"delete",
-                    url:"/api/gbStream/del",
-                    data:{
-                        platformId: that.platformId,
-                        gbStreams:  delData,
-                    }
-                }).then((res)=>{
-                    console.log("绉婚櫎鎴愬姛")
-                   if(this.updateChoosedCallback)this.updateChoosedCallback(this.catalogId)
-                }).catch(function (error) {
-                    console.log(error);
-                });
-
-            }
-
-        },
-        shareAllCheckedChanage: function (val) {
-            this.chooseChanage(null, val)
         },
         getChannelList: function () {
             let that = this;
@@ -215,10 +174,9 @@
                     page: that.currentPage,
                     count: that.count,
                     query: that.searchSrt,
-                    online: that.online,
-                    choosed: that.choosed,
                     platformId: that.platformId,
-                    channelType: that.channelType
+                    catalogId: that.catalogId,
+                    mediaServerId: that.mediaServerId
                 }
                 })
                 .then(function (res) {
@@ -229,29 +187,62 @@
                     that.$nextTick(() => {
                         that.$refs.gbStreamsTable.doLayout();
                         // 榛樿閫変腑
-                        var chooseGBS = [];
-                        for (let i = 0; i < res.data.list.length; i++) {
-                            const row = res.data.list[i];
-                            console.log(row.platformId)
-                            if (row.platformId == that.platformId) {
-                                that.$refs.gbStreamsTable.toggleRowSelection(row, true);
-                                chooseGBS.push(row)
-                                that.gbChoosechannel[row.app+ "_" + row.stream] = row;
-
-                            }
-                        }
-                         that.eventEnanle = true;
-                        // that.checkedChanage(chooseGBS)
+                         that.eventEnable = true;
                     })
-                    console.log(that.gbChoosechannel)
                 })
                 .catch(function (error) {
                     console.log(error);
                 });
 
         },
-        handleGBSelectionChange: function() {
-            this.initData();
+        batchDel: function() {
+          this.$confirm(`纭杩�${this.multipleSelection.length}涓�氶亾鍚楋紵`, '鎻愮ず', {
+            confirmButtonText: '纭畾',
+            cancelButtonText: '鍙栨秷',
+            type: 'warning'
+          }).then(() => {
+            this.$axios({
+              method:"delete",
+              url:"/api/gbStream/del",
+              data:{
+                platformId: this.platformId,
+                gbStreams:  this.multipleSelection,
+              }
+            }).then((res)=>{
+              console.log("绉婚櫎鎴愬姛")
+              this.$refs.gbStreamsTable.clearSelection()
+              this.getChannelList();
+            }).catch(function (error) {
+              console.log(error);
+            });
+          }).catch(() => {
+          });
+
+        },
+        batchAdd: function() {
+          this.getCatalogFromUser((catalogId)=>{
+            this.$axios({
+              method:"post",
+              url:"/api/gbStream/add",
+              data:{
+                platformId: this.platformId,
+                catalogId: catalogId,
+                gbStreams:  this.multipleSelection,
+              }
+            }).then((res)=>{
+              console.log("淇濆瓨鎴愬姛")
+              this.$refs.gbStreamsTable.clearSelection()
+              this.getChannelList();
+            }).catch(function (error) {
+              console.log(error);
+            });
+          })
+        },
+        getCatalogFromUser(callback){
+            this.$refs.getCatalog.openDialog(callback)
+        },
+        handleSelectionChange: function (val) {
+          this.multipleSelection = val;
         },
     }
 };

--
Gitblit v1.8.0