From ac1a4a027a7bd88efb32e9da666bdba4b5fa166f Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期五, 14 一月 2022 17:04:26 +0800 Subject: [PATCH] 支持国标级联的目录订阅功能 --- web_src/src/components/dialog/platformEdit.vue | 159 +++++++++++++++++++++++++++++++++-------------------- 1 files changed, 99 insertions(+), 60 deletions(-) diff --git a/web_src/src/components/dialog/platformEdit.vue b/web_src/src/components/dialog/platformEdit.vue index 4a916e8..62a6957 100644 --- a/web_src/src/components/dialog/platformEdit.vue +++ b/web_src/src/components/dialog/platformEdit.vue @@ -17,7 +17,7 @@ <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> @@ -26,16 +26,16 @@ <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> @@ -75,8 +75,8 @@ </el-form-item> <el-form-item label="鍏朵粬閫夐」"> <el-checkbox label="鍚敤" v-model="platform.enable" @change="checkExpires"></el-checkbox> - <el-checkbox label="浜戝彴鎺у埗" v-model="platform.PTZEnable"></el-checkbox> - <el-checkbox label="RTCP淇濇椿" v-model="platform.rtcp"></el-checkbox> + <el-checkbox label="浜戝彴鎺у埗" v-model="platform.ptz"></el-checkbox> + <el-checkbox label="鍏变韩鎵�鏈夌洿鎾祦" v-model="platform.shareAllLiveStream"></el-checkbox> </el-form-item> <el-form-item> <el-button type="primary" @click="onSubmit">{{ @@ -97,7 +97,6 @@ name: "platformEdit", props: {}, computed: {}, - created() {}, data() { var deviceGBIdRules = async (rule, value, callback) => { console.log(value); @@ -105,9 +104,6 @@ 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 { @@ -120,43 +116,27 @@ showDialog: false, isLoging: false, onSubmit_text: "绔嬪嵆鍒涘缓", - // platform: { - // enable: false, - // PTZEnable: 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", - // }, + platform: { + id: null, enable: true, - PTZEnable: 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" }], @@ -181,36 +161,64 @@ 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.platform.catalogId = platform.catalogId; + 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, @@ -222,22 +230,42 @@ 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; }) @@ -256,6 +284,17 @@ </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; -- Gitblit v1.8.0