From 4cc399ce39f47a8db8a97f057e141e6e5d4f9736 Mon Sep 17 00:00:00 2001 From: lin <648540858@qq.com> Date: Wed, 23 Jul 2025 20:58:23 +0800 Subject: [PATCH] =?UTF-8?q?[1078]=20=E5=A2=9E=E5=8A=A0=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E7=94=B5=E8=AF=9D=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/package.json | 3 +- web/public/static/file/设置电话本模板.xlsx | Bin 0 -> 9899 bytes web/src/api/jtDevice.js | 7 + web/src/store/modules/jtDevice.js | 12 +- .../views/jtDevice/dialog/mediaAttribute.vue | 2 +- web/src/views/jtDevice/dialog/phoneBook.vue | 216 ++++++++++++++++++ web/src/views/jtDevice/list.vue | 15 +- 7 files changed, 248 insertions(+), 7 deletions(-) create mode 100644 web/public/static/file/设置电话本模板.xlsx create mode 100755 web/src/views/jtDevice/dialog/phoneBook.vue diff --git a/web/package.json b/web/package.json index dffd8cbfc..599d489ae 100644 --- a/web/package.json +++ b/web/package.json @@ -36,7 +36,8 @@ "vue-contextmenujs": "^1.4.11", "vue-router": "3.0.6", "vue-ztree-2.0": "^1.0.4", - "vuex": "3.1.0" + "vuex": "3.1.0", + "xlsx": "^0.18.5" }, "devDependencies": { "@vue/cli-plugin-babel": "4.4.4", diff --git a/web/public/static/file/设置电话本模板.xlsx b/web/public/static/file/设置电话本模板.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..a993210dcbb22ff62a7701d63cda7ffd28207c16 GIT binary patch literal 9899 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 Z|7yrkQ-u4uSur7 { + setPhoneBook(data).then(response => { + const { data } = response + resolve(data) + }).catch(error => { + reject(error) + }) + }) } } diff --git a/web/src/views/jtDevice/dialog/mediaAttribute.vue b/web/src/views/jtDevice/dialog/mediaAttribute.vue index 656a84821..31290a3c1 100755 --- a/web/src/views/jtDevice/dialog/mediaAttribute.vue +++ b/web/src/views/jtDevice/dialog/mediaAttribute.vue @@ -18,7 +18,7 @@ {{ audioSamplingBitsEnum[attributeData.audioSamplingBits] }} {{ attributeData.audioFrameLength }} {{ attributeData.audioOutputEnable === 0 ? '不支持':'支持' }} - {{ attributeData.audioChannelMax === 0 ? '不支持':'支持' }} + {{ attributeData.audioChannelMax }} {{ videoEncoderEnum[attributeData.videoEncoder] }} diff --git a/web/src/views/jtDevice/dialog/phoneBook.vue b/web/src/views/jtDevice/dialog/phoneBook.vue new file mode 100755 index 000000000..35b9df1d8 --- /dev/null +++ b/web/src/views/jtDevice/dialog/phoneBook.vue @@ -0,0 +1,216 @@ + + + + + diff --git a/web/src/views/jtDevice/list.vue b/web/src/views/jtDevice/list.vue index 599b177d4..9ad4861a5 100755 --- a/web/src/views/jtDevice/list.vue +++ b/web/src/views/jtDevice/list.vue @@ -117,8 +117,8 @@ 文本下发 电话回拨 - - + + 设置电话本 驾驶员信息 @@ -154,6 +154,7 @@ + @@ -168,11 +169,13 @@ import driverInfo from './dialog/driverInfo.vue' import connectionServer from './dialog/connectionServer.vue' import controlDoor from './dialog/controlDoor.vue' import mediaAttribute from './dialog/mediaAttribute.vue' +import phoneBook from './dialog/phoneBook.vue' export default { name: 'App', components: { - deviceEdit, configInfo, attribute, position, textMsg, telephoneCallback, driverInfo, connectionServer, controlDoor, mediaAttribute + deviceEdit, configInfo, attribute, position, textMsg, telephoneCallback, driverInfo, connectionServer, controlDoor + , mediaAttribute, phoneBook }, data() { return { @@ -293,6 +296,8 @@ export default { this.connection(itemData) } else if (command === 'mediaAttribute') { this.queryMediaAttribute(itemData) + } else if (command === 'setPhoneBook') { + this.setPhoneBook(itemData) } else { this.$message.info('尚不支持') } @@ -367,12 +372,14 @@ export default { connection: function(itemData) { this.$refs.connectionServer.openDialog(itemData.phoneNumber) }, + setPhoneBook: function(itemData) { + this.$refs.phoneBook.openDialog(itemData.phoneNumber) + }, queryMediaAttribute: function(itemData) { this.$store.dispatch('jtDevice/queryMediaAttribute', itemData.phoneNumber) .then((data) => { this.$refs.mediaAttribute.openDialog(data) }) - }, controlDoor: function(itemData) { this.$refs.controlDoor.openDialog(itemData.phoneNumber)