|  |  | 
 |  |  |                 <el-input v-model="platform.name"></el-input> | 
 |  |  |               </el-form-item> | 
 |  |  |               <el-form-item label="SIP服务国标编码" prop="serverGBId"> | 
 |  |  |                 <el-input v-model="platform.serverGBId" clearable></el-input> | 
 |  |  |                 <el-input v-model="platform.serverGBId" clearable @input="serverGBIdChange"></el-input> | 
 |  |  |               </el-form-item> | 
 |  |  |               <el-form-item label="SIP服务国标域" prop="serverGBDomain"> | 
 |  |  |                 <el-input v-model="platform.serverGBDomain" clearable></el-input> | 
 |  |  | 
 |  |  |                 <el-input v-model="platform.serverIP" clearable></el-input> | 
 |  |  |               </el-form-item> | 
 |  |  |               <el-form-item label="SIP服务端口" prop="serverPort"> | 
 |  |  |                 <el-input v-model="platform.serverPort" clearable></el-input> | 
 |  |  |                 <el-input v-model="platform.serverPort" clearable type="number"></el-input> | 
 |  |  |               </el-form-item> | 
 |  |  |               <el-form-item label="设备国标编号" prop="deviceGBId"> | 
 |  |  |                 <el-input v-model="platform.deviceGBId" clearable></el-input> | 
 |  |  |                 <el-input v-model="platform.deviceGBId" clearable @input="deviceGBIdChange"></el-input> | 
 |  |  |               </el-form-item> | 
 |  |  |               <el-form-item label="本地IP" prop="deviceIp"> | 
 |  |  |                 <el-input v-model="platform.deviceIp" :disabled="true"></el-input> | 
 |  |  |               </el-form-item> | 
 |  |  |               <el-form-item label="本地端口" prop="devicePort"> | 
 |  |  |                 <el-input v-model="platform.devicePort" :disabled="true"></el-input> | 
 |  |  |                 <el-input v-model="platform.devicePort" :disabled="true" type="number"></el-input> | 
 |  |  |               </el-form-item> | 
 |  |  |             </el-form> | 
 |  |  |           </el-col> | 
 |  |  | 
 |  |  |               <el-form-item label="其他选项"> | 
 |  |  |                 <el-checkbox label="启用" v-model="platform.enable" @change="checkExpires"></el-checkbox> | 
 |  |  |                 <el-checkbox label="云台控制" v-model="platform.ptz"></el-checkbox> | 
 |  |  |                 <el-checkbox label="RTCP保活" v-model="platform.rtcp"></el-checkbox> | 
 |  |  |                 <el-checkbox label="共享所有直播流" v-model="platform.shareAllLiveStream"></el-checkbox> | 
 |  |  |               </el-form-item> | 
 |  |  |               <el-form-item> | 
 |  |  |                 <el-button type="primary" @click="onSubmit">{{ | 
 |  |  | 
 |  |  |   name: "platformEdit", | 
 |  |  |   props: {}, | 
 |  |  |   computed: {}, | 
 |  |  |   created() {}, | 
 |  |  |   data() { | 
 |  |  |     var deviceGBIdRules = async (rule, value, callback) => { | 
 |  |  |       console.log(value); | 
 |  |  | 
 |  |  |         callback(new Error("请输入设备国标编号")); | 
 |  |  |       } else { | 
 |  |  |         var exit = await this.deviceGBIdExit(value); | 
 |  |  |         console.log(exit); | 
 |  |  |         console.log(exit == "true"); | 
 |  |  |         console.log(exit === "true"); | 
 |  |  |         if (exit) { | 
 |  |  |           callback(new Error("设备国标编号已存在")); | 
 |  |  |         } else { | 
 |  |  | 
 |  |  |       onSubmit_text: "立即创建", | 
 |  |  |  | 
 |  |  |       platform: { | 
 |  |  |         id: null, | 
 |  |  |         enable: true, | 
 |  |  |         ptz: true, | 
 |  |  |         rtcp: false, | 
 |  |  |         name: "测试001", | 
 |  |  |         serverGBId: "34020000002000000001", | 
 |  |  |         serverGBDomain: "3402000000", | 
 |  |  |         serverIP: "192.168.1.141", | 
 |  |  |         serverPort: "5060", | 
 |  |  |         deviceGBId: "34020000001320001101", | 
 |  |  |         deviceIp: "192.168.1.20", | 
 |  |  |         devicePort: "5060", | 
 |  |  |         username: "34020000001320001101", | 
 |  |  |         password: "12345678", | 
 |  |  |         name: null, | 
 |  |  |         serverGBId: null, | 
 |  |  |         serverGBDomain: null, | 
 |  |  |         serverIP: null, | 
 |  |  |         serverPort: null, | 
 |  |  |         deviceGBId: null, | 
 |  |  |         deviceIp: null, | 
 |  |  |         devicePort: null, | 
 |  |  |         username: null, | 
 |  |  |         password: null, | 
 |  |  |         expires: 300, | 
 |  |  |         keepTimeout: 60, | 
 |  |  |         transport: "UDP", | 
 |  |  |         characterSet: "GB2312", | 
 |  |  |         shareAllLiveStream: false, | 
 |  |  |       }, | 
 |  |  |       rules: { | 
 |  |  |         name: [{ required: true, message: "请输入平台名称", trigger: "blur" }], | 
 |  |  | 
 |  |  |   methods: { | 
 |  |  |     openDialog: function (platform, callback) { | 
 |  |  |       var that = this; | 
 |  |  |       this.$axios | 
 |  |  |         .get(`/api/platforms/serverconfig`) | 
 |  |  |         .then(function (res) { | 
 |  |  |       if (platform == null) { | 
 |  |  |         this.onSubmit_text = "立即创建"; | 
 |  |  |         this.$axios({ | 
 |  |  |           method: 'get', | 
 |  |  |           url:`/api/platform/server_config` | 
 |  |  |         }).then(function (res) { | 
 |  |  |           console.log(res); | 
 |  |  |           that.platform.deviceGBId = res.data.username; | 
 |  |  |           that.platform.deviceIp = res.data.deviceIp; | 
 |  |  |           that.platform.devicePort = res.data.devicePort; | 
 |  |  |           that.platform.username = res.data.username; | 
 |  |  |           that.platform.password = res.data.password; | 
 |  |  |         }) | 
 |  |  |         .catch(function (error) { | 
 |  |  |         }).catch(function (error) { | 
 |  |  |           console.log(error); | 
 |  |  |         }); | 
 |  |  |       }else { | 
 |  |  |         this.platform.id = platform.id; | 
 |  |  |         this.platform.enable = platform.enable; | 
 |  |  |         this.platform.ptz = platform.ptz; | 
 |  |  |         this.platform.rtcp = platform.rtcp; | 
 |  |  |         this.platform.name = platform.name; | 
 |  |  |         this.platform.serverGBId = platform.serverGBId; | 
 |  |  |         this.platform.serverGBDomain = platform.serverGBDomain; | 
 |  |  |         this.platform.serverIP = platform.serverIP; | 
 |  |  |         this.platform.serverPort = platform.serverPort; | 
 |  |  |         this.platform.deviceGBId = platform.deviceGBId; | 
 |  |  |         this.platform.deviceIp = platform.deviceIp; | 
 |  |  |         this.platform.devicePort = platform.devicePort; | 
 |  |  |         this.platform.username = platform.username; | 
 |  |  |         this.platform.password = platform.password; | 
 |  |  |         this.platform.expires = platform.expires; | 
 |  |  |         this.platform.keepTimeout = platform.keepTimeout; | 
 |  |  |         this.platform.transport = platform.transport; | 
 |  |  |         this.platform.characterSet = platform.characterSet; | 
 |  |  |         this.platform.shareAllLiveStream = platform.shareAllLiveStream; | 
 |  |  |         this.onSubmit_text = "保存"; | 
 |  |  |       } | 
 |  |  |       this.showDialog = true; | 
 |  |  |       this.listChangeCallback = callback; | 
 |  |  |       if (platform != null) { | 
 |  |  |         this.platform = platform; | 
 |  |  |         this.onSubmit_text = "保存"; | 
 |  |  |       } else { | 
 |  |  |         this.onSubmit_text = "立即创建"; | 
 |  |  |     }, | 
 |  |  |     serverGBIdChange: function () { | 
 |  |  |       if (this.platform.serverGBId.length > 10) { | 
 |  |  |         this.platform.serverGBDomain = this.platform.serverGBId.substr(0, 10); | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |     deviceGBIdChange: function () { | 
 |  |  |  | 
 |  |  |       this.platform.username = this.platform.deviceGBId ; | 
 |  |  |     }, | 
 |  |  |     onSubmit: function () { | 
 |  |  |       console.log("onSubmit"); | 
 |  |  |       var that = this; | 
 |  |  |       that.$axios | 
 |  |  |         .post(`/api/platforms/save`, that.platform) | 
 |  |  |         .then(function (res) { | 
 |  |  |           console.log(res); | 
 |  |  |           console.log(res.data == "success"); | 
 |  |  |       that.$axios({ | 
 |  |  |         method: 'post', | 
 |  |  |         url:`/api/platform/save`, | 
 |  |  |         data: that.platform | 
 |  |  |       }).then(function (res) { | 
 |  |  |           if (res.data == "success") { | 
 |  |  |             that.$message({ | 
 |  |  |               showClose: true, | 
 |  |  | 
 |  |  |               that.listChangeCallback(); | 
 |  |  |             } | 
 |  |  |           } | 
 |  |  |         }) | 
 |  |  |         .catch(function (error) { | 
 |  |  |         }).catch(function (error) { | 
 |  |  |           console.log(error); | 
 |  |  |         }); | 
 |  |  |     }, | 
 |  |  |     close: function () { | 
 |  |  |       console.log("关闭添加视频平台"); | 
 |  |  |       this.showDialog = false; | 
 |  |  |       this.$refs.platform1.resetFields(); | 
 |  |  |       this.$refs.platform2.resetFields(); | 
 |  |  |       this.platform = { | 
 |  |  |         id: null, | 
 |  |  |         enable: true, | 
 |  |  |         ptz: true, | 
 |  |  |         rtcp: false, | 
 |  |  |         name: null, | 
 |  |  |         serverGBId: null, | 
 |  |  |         serverGBDomain: null, | 
 |  |  |         serverIP: null, | 
 |  |  |         serverPort: null, | 
 |  |  |         deviceGBId: null, | 
 |  |  |         deviceIp: null, | 
 |  |  |         devicePort: null, | 
 |  |  |         username: null, | 
 |  |  |         password: null, | 
 |  |  |         expires: 300, | 
 |  |  |         keepTimeout: 60, | 
 |  |  |         transport: "UDP", | 
 |  |  |         characterSet: "GB2312", | 
 |  |  |         shareAllLiveStream: false, | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |     deviceGBIdExit: async function (deviceGbId) { | 
 |  |  |       var result = false; | 
 |  |  |       var that = this; | 
 |  |  |       await that.$axios | 
 |  |  |         .post(`/api/platforms/exit/${deviceGbId}`) | 
 |  |  |       await that.$axios({ | 
 |  |  |                 method: 'post', | 
 |  |  |                 url:`/api/platform/exit/${deviceGbId}`}) | 
 |  |  |         .then(function (res) { | 
 |  |  |           result = res.data; | 
 |  |  |         }) | 
 |  |  | 
 |  |  | </script> | 
 |  |  |  | 
 |  |  | <style> | 
 |  |  | /* 谷歌 */ | 
 |  |  | input::-webkit-outer-spin-button, | 
 |  |  | input::-webkit-inner-spin-button { | 
 |  |  |   -webkit-appearance: none; | 
 |  |  |   appearance: none; | 
 |  |  |   margin: 0; | 
 |  |  | } | 
 |  |  | /* 火狐 */ | 
 |  |  | input{ | 
 |  |  |   -moz-appearance:textfield; | 
 |  |  | } | 
 |  |  | .control-wrapper-not-used { | 
 |  |  |   position: relative; | 
 |  |  |   width: 6.25rem; |