From a8c424e49db9213e879bf6c44cebccdfddaa1808 Mon Sep 17 00:00:00 2001 From: BradyXu <brady_xu@outlook.com> Date: 星期日, 12 五月 2024 02:00:55 +0800 Subject: [PATCH] 修复sip绑定监听多网卡IP时,新增上级平台新增失败的问题,本地IP改成从配置的多IP下拉选择 --- web_src/src/components/dialog/platformEdit.vue | 108 ++++++++++++++++++++++++++++------------------------- 1 files changed, 57 insertions(+), 51 deletions(-) diff --git a/web_src/src/components/dialog/platformEdit.vue b/web_src/src/components/dialog/platformEdit.vue old mode 100644 new mode 100755 index d2ebb84..06cb7c4 --- a/web_src/src/components/dialog/platformEdit.vue +++ b/web_src/src/components/dialog/platformEdit.vue @@ -32,20 +32,30 @@ <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-select v-model="platform.deviceIp" placeholder="璇烽�夋嫨涓庝笂绾х浉閫氱殑缃戝崱" style="width: 100%"> + <el-option + v-for="ip in deviceIp" + :key="ip" + :label="ip" + :value="ip"> + </el-option> + </el-select> </el-form-item> <el-form-item label="鏈湴绔彛" prop="devicePort"> <el-input v-model="platform.devicePort" :disabled="true" type="number"></el-input> + </el-form-item> + <el-form-item label="SDP鍙戞祦IP" prop="sendStreamIp"> + <el-input v-model="platform.sendStreamIp"></el-input> </el-form-item> </el-form> </el-col> <el-col :span="12"> <el-form ref="platform2" :rules="rules" :model="platform" label-width="160px"> - <el-form-item label="SIP璁よ瘉鐢ㄦ埛鍚�" prop="username"> - <el-input v-model="platform.username"></el-input> - </el-form-item> <el-form-item label="琛屾斂鍖哄垝" prop="administrativeDivision"> <el-input v-model="platform.administrativeDivision" clearable></el-input> + </el-form-item> + <el-form-item label="SIP璁よ瘉鐢ㄦ埛鍚�" prop="username"> + <el-input v-model="platform.username"></el-input> </el-form-item> <el-form-item label="SIP璁よ瘉瀵嗙爜" prop="password"> <el-input v-model="platform.password" ></el-input> @@ -78,12 +88,6 @@ <el-option label="8" value="8"></el-option> </el-select> </el-form-item> - <el-form-item label="鐩綍缁撴瀯" prop="treeType" > - <el-select v-model="platform.treeType" style="width: 100%" > - <el-option key="WGS84" label="琛屾斂鍖哄垝" value="CivilCode"></el-option> - <el-option key="GCJ02" label="涓氬姟鍒嗙粍" value="BusinessGroup"></el-option> - </el-select> - </el-form-item> <el-form-item label="瀛楃闆�" prop="characterSet"> <el-select v-model="platform.characterSet" @@ -96,8 +100,11 @@ </el-form-item> <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="鎷夎捣绂荤嚎鎺ㄦ祦" v-model="platform.startOfflinePush"></el-checkbox> +<!-- <el-checkbox label="浜戝彴鎺у埗" v-model="platform.ptz"></el-checkbox>--> + <el-checkbox label="鎷夎捣鎺ㄦ祦" v-model="platform.startOfflinePush"></el-checkbox> + <el-checkbox label="RTCP淇濇椿" v-model="platform.rtcp" @change="rtcpCheckBoxChange"></el-checkbox> + <el-checkbox label="娑堟伅閫氶亾" v-model="platform.asMessageChannel" ></el-checkbox> + <el-checkbox label="鎺ㄩ�侀�氶亾" v-model="platform.autoPushChannel" ></el-checkbox> </el-form-item> <el-form-item> <el-button type="primary" @click="onSubmit">{{ @@ -144,6 +151,8 @@ enable: true, ptz: true, rtcp: false, + asMessageChannel: false, + autoPushChannel: false, name: null, serverGBId: null, serverGBDomain: null, @@ -154,15 +163,16 @@ devicePort: null, username: null, password: null, - expires: 300, + expires: 3600, keepTimeout: 60, transport: "UDP", characterSet: "GB2312", startOfflinePush: false, catalogGroup: 1, - administrativeDivision: null, - treeType: "BusinessGroup", + administrativeDivision: "", + sendStreamIp: null, }, + deviceIp: [], // 瀛樺偍鐢ㄦ埛閫夋嫨鐨勮澶嘔P rules: { name: [{ required: true, message: "璇疯緭鍏ュ钩鍙板悕绉�", trigger: "blur" }], serverGBId: [ @@ -196,11 +206,11 @@ console.log(res); if (res.data.code === 0) { that.platform.deviceGBId = res.data.data.username; - that.platform.deviceIp = res.data.data.deviceIp; + that.deviceIp = res.data.data.deviceIp.split(','); that.platform.devicePort = res.data.data.devicePort; that.platform.username = res.data.data.username; that.platform.password = res.data.data.password; - that.platform.treeType = "BusinessGroup"; + that.platform.sendStreamIp = res.data.data.sendStreamIp; that.platform.administrativeDivision = res.data.data.username.substr(0, 6); } @@ -212,13 +222,15 @@ this.platform.enable = platform.enable; this.platform.ptz = platform.ptz; this.platform.rtcp = platform.rtcp; + this.platform.asMessageChannel = platform.asMessageChannel; + this.platform.autoPushChannel = platform.autoPushChannel; 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.deviceIp = platform.deviceIp.split(','); this.platform.devicePort = platform.devicePort; this.platform.username = platform.username; this.platform.password = platform.password; @@ -229,8 +241,8 @@ this.platform.catalogId = platform.catalogId; this.platform.startOfflinePush = platform.startOfflinePush; this.platform.catalogGroup = platform.catalogGroup; + this.platform.sendStreamIp = platform.sendStreamIp; this.platform.administrativeDivision = platform.administrativeDivision; - this.platform.treeType = platform.treeType; this.onSubmit_text = "淇濆瓨"; this.saveUrl = "/api/platform/save"; } @@ -248,50 +260,34 @@ if (this.platform.administrativeDivision == null) { this.platform.administrativeDivision = this.platform.deviceGBId.substr(0, 6); } - }, onSubmit: function () { - if (this.onSubmit_text === "淇濆瓨") { - this.$confirm("淇敼鐩綍缁撴瀯浼氬鑷村叧鑱旂洰褰曚笌閫氶亾鏁版嵁琚竻绌�", '鎻愮ず', { - dangerouslyUseHTMLString: true, - confirmButtonText: '纭畾', - cancelButtonText: '鍙栨秷', - center: true, - type: 'warning' - }).then(() => { - this.saveForm() - }).catch(() => { - - }); - }else { - this.saveForm() - } + this.saveForm() }, saveForm: function (){ - var that = this; - that.$axios({ + this.$axios({ method: 'post', url: this.saveUrl, - data: that.platform - }).then(function (res) { + data: this.platform + }).then((res) =>{ if (res.data.code === 0) { - that.$message({ + this.$message({ showClose: true, message: "淇濆瓨鎴愬姛", type: "success", }); - that.showDialog = false; - if (that.listChangeCallback != null) { - that.listChangeCallback(); + this.showDialog = false; + if (this.listChangeCallback != null) { + this.listChangeCallback(); } }else { - that.$message({ + this.$message({ showClose: true, message: res.data.msg, type: "error", }); } - }).catch(function (error) { + }).catch((error)=> { console.log(error); }); }, @@ -304,6 +300,8 @@ enable: true, ptz: true, rtcp: false, + asMessageChannel: false, + autoPushChannel: false, name: null, serverGBId: null, administrativeDivision: null, @@ -315,11 +313,10 @@ devicePort: null, username: null, password: null, - expires: 300, + expires: 3600, keepTimeout: 60, transport: "UDP", characterSet: "GB2312", - treeType: "BusinessGroup", startOfflinePush: false, catalogGroup: 1, } @@ -328,7 +325,7 @@ var result = false; var that = this; await that.$axios({ - method: 'post', + method: 'get', url:`/api/platform/exit/${deviceGbId}`}) .then(function (res) { if (res.data.code === 0) { @@ -341,10 +338,19 @@ return result; }, checkExpires: function() { - if (this.platform.enable && this.platform.expires == "0") { - this.platform.expires = "300"; + if (this.platform.enable && this.platform.expires === "0") { + this.platform.expires = "3600"; } - } + }, + rtcpCheckBoxChange: function (result){ + if (result) { + this.$message({ + showClose: true, + message: "寮�鍚疪TCP淇濇椿闇�瑕佷笂绾у钩鍙版敮鎸侊紝鍙互閬垮厤鏃犳晥鎺ㄦ祦", + type: "warning", + }); + } + }, }, }; </script> -- Gitblit v1.8.0