From 24c590478e764c6f9a5899fefaaf80cc819b857b Mon Sep 17 00:00:00 2001 From: guanj Date: Tue, 29 Jul 2025 08:33:04 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=B5=8B=E8=AF=95=E7=94=A8?= =?UTF-8?q?=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 1 + public/favicon.ico | Bin 6791 -> 21351 bytes public/favicon1.ico | Bin 0 -> 6791 bytes src/api/system-boot/dictTree.ts | 4 +- src/components/echarts/rmsboxi.vue | 30 +- src/components/echarts/shushiboxi.vue | 24 +- src/components/table/defaultAttribute.ts | 2 +- src/layouts/admin/components/globalPopUp.vue | 91 ++++++ src/layouts/admin/components/navMenus.vue | 85 +++-- src/styles/element.css | 29 +- src/styles/element.min.css | 2 +- src/styles/element.scss | 26 +- src/utils/mqtt.ts | 251 +++++++++++++++ src/utils/webSocketClient.ts | 4 +- .../terminal/TerminalManagement/index.vue | 33 +- .../pqs/business/terminal/deviceter/index.vue | 195 +++++++----- .../terminal/userLedger/components/detail.vue | 2 +- .../business/terminal/userLedger/index.vue | 4 +- .../detailed/overLabelDetails/index.vue | 4 +- .../monitoringPoint/online/index.vue | 1 - .../online/wentaishujufenxi/index.vue | 6 +- .../Region/thermodynamicDiagram/index.vue | 17 +- .../monitoringPoint/online/index.vue | 2 +- .../monitoringPoint/online/navigation/map.vue | 3 +- src/views/pqs/voltageSags/overview/index.vue | 7 +- src/views/system/subject/form/index.vue | 292 ++++++++++++++---- 26 files changed, 880 insertions(+), 235 deletions(-) create mode 100644 public/favicon1.ico create mode 100644 src/layouts/admin/components/globalPopUp.vue create mode 100644 src/utils/mqtt.ts diff --git a/package.json b/package.json index d8c8c3f2..fd5466d5 100644 --- a/package.json +++ b/package.json @@ -56,6 +56,7 @@ "mathjax": "^3.2.2", "min-dash": "^4.2.1", "mitt": "^3.0.1", + "mqtt": "^5.13.3", "nprogress": "^0.2.0", "pinia": "^2.1.7", "pinia-plugin-persistedstate": "^3.2.1", diff --git a/public/favicon.ico b/public/favicon.ico index fe16b5adb805be552e37da2e99cd37b95b7dd0e3..029a1f39ec9ebba2997c214deff5fb5c644eefa1 100644 GIT binary patch literal 21351 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 z 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 O>e8`ihjZ;lefxilbd_rW literal 6791 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 { // 单位绑定 export function codeDicTree(data: any) { return createAxios({ - url: '/system-boot/dicTree/codeDicTree', - method: 'get', + url: '/system-boot/dictTree/queryByCodeList', + method: 'post', params: data }) } diff --git a/src/components/echarts/rmsboxi.vue b/src/components/echarts/rmsboxi.vue index 9ff7e3fe..376f2aaa 100644 --- a/src/components/echarts/rmsboxi.vue +++ b/src/components/echarts/rmsboxi.vue @@ -134,15 +134,29 @@ export default { }, methods: { backbxlb() { - this.waveDatas = [] - if(this.myChartess){this.myChartess.dispose(); this.myChartess=null; } - if(this.myChartess1){this.myChartess1.dispose(); this.myChartess1=null; } - if(this.myChartess2){this.myChartess2.dispose(); this.myChartess2=null; } - if(this.myChartess3){this.myChartess3.dispose(); this.myChartess3=null; } - if(this.myChartess4){this.myChartess4.dispose(); this.myChartess4=null; } - if(this.myChartess5){this.myChartess5.dispose(); this.myChartess5=null; } + this.waveDatas = [] + + // 清理所有可能的 echarts 实例 + const chartNames = ['myChartess', 'myChartess1', 'myChartess2', 'myChartess3', 'myChartess4', 'myChartess5'] + + chartNames.forEach(name => { + if (this[name]) { + this[name].dispose() + this[name] = null + } + }) + + // 断开 echarts 实例连接 + echarts.disconnect(chartNames.map(name => this[name]).filter(Boolean)) + // this.waveDatas = [] + // if(this.myChartess){this.myChartess.dispose(); this.myChartess=null; } + // if(this.myChartess1){this.myChartess1.dispose(); this.myChartess1=null; } + // if(this.myChartess2){this.myChartess2.dispose(); this.myChartess2=null; } + // if(this.myChartess3){this.myChartess3.dispose(); this.myChartess3=null; } + // if(this.myChartess4){this.myChartess4.dispose(); this.myChartess4=null; } + // if(this.myChartess5){this.myChartess5.dispose(); this.myChartess5=null; } - echarts.disconnect([this.myChartess,this.myChartess1,this.myChartess2,this.myChartess3,this.myChartess4,this.myChartess5]) + // echarts.disconnect([this.myChartess,this.myChartess1,this.myChartess2,this.myChartess3,this.myChartess4,this.myChartess5]) // if (this.echartlist.length > 0) { diff --git a/src/components/echarts/shushiboxi.vue b/src/components/echarts/shushiboxi.vue index 48842a18..f6d5631f 100644 --- a/src/components/echarts/shushiboxi.vue +++ b/src/components/echarts/shushiboxi.vue @@ -122,16 +122,20 @@ export default { }, methods: { backbxlb() { - this.waveDatas = [] - if(this.myChartess){this.myChartess.dispose(); this.myChartess=null; } - if(this.myChartess1){this.myChartess1.dispose(); this.myChartess1=null; } - if(this.myChartess2){this.myChartess2.dispose(); this.myChartess2=null; } - if(this.myChartess3){this.myChartess3.dispose(); this.myChartess3=null; } - if(this.myChartess4){this.myChartess4.dispose(); this.myChartess4=null; } - if(this.myChartess5){this.myChartess5.dispose(); this.myChartess5=null; } - - echarts.disconnect([this.myChartess,this.myChartess1,this.myChartess2,this.myChartess3,this.myChartess4,this.myChartess5]) - + this.waveDatas = [] + + // 清理所有可能的 echarts 实例 + const chartNames = ['myChartess', 'myChartess1', 'myChartess2', 'myChartess3', 'myChartess4', 'myChartess5'] + + chartNames.forEach(name => { + if (this[name]) { + this[name].dispose() + this[name] = null + } + }) + + // 断开 echarts 实例连接 + echarts.disconnect(chartNames.map(name => this[name]).filter(Boolean)) // this.echartlist.forEach(item => { // if (item) { diff --git a/src/components/table/defaultAttribute.ts b/src/components/table/defaultAttribute.ts index 67c9ce92..88bdb307 100644 --- a/src/components/table/defaultAttribute.ts +++ b/src/components/table/defaultAttribute.ts @@ -4,7 +4,7 @@ export const defaultAttribute: VxeTableProps = { align: 'center', headerCellClassName: 'table-header-cell', border: true, - // stripe: true, + size: 'small', columnConfig: { resizable: true }, rowConfig: { isCurrent: true, isHover: true }, diff --git a/src/layouts/admin/components/globalPopUp.vue b/src/layouts/admin/components/globalPopUp.vue new file mode 100644 index 00000000..9ac9713b --- /dev/null +++ b/src/layouts/admin/components/globalPopUp.vue @@ -0,0 +1,91 @@ + + + diff --git a/src/layouts/admin/components/navMenus.vue b/src/layouts/admin/components/navMenus.vue index 36a05438..144b28ec 100644 --- a/src/layouts/admin/components/navMenus.vue +++ b/src/layouts/admin/components/navMenus.vue @@ -1,29 +1,46 @@ @@ -62,6 +81,7 @@ import { ElMessage } from 'element-plus' import Config from './config.vue' import { useAdminInfo } from '@/stores/adminInfo' import router from '@/router' +import globalPopUp from './globalPopUp.vue' import { routePush } from '@/utils/router' import { fullUrl } from '@/utils/common' import html2canvas from 'html2canvas' @@ -80,7 +100,7 @@ const state = reactive({ showLayoutDrawer: false, showAdminInfoPopover: false }) - +const globalPopUpRef = ref() const savePng = () => { html2canvas(document.body, { scale: 1, @@ -122,6 +142,9 @@ const handleCommand = (key: string) => { break } } +const temporaryLandingEvent = () => { + globalPopUpRef.value.open() +} diff --git a/src/styles/element.css b/src/styles/element.css index 28506adc..8bfb875e 100644 --- a/src/styles/element.css +++ b/src/styles/element.css @@ -68,7 +68,7 @@ } .el-dialog__header .el-dialog__headerbtn:hover .el-icon { - color: #409eff; + color: #ccc; } .el-dialog__header .el-dialog__title { @@ -244,3 +244,30 @@ .el-select__input-wrapper { width: 11px; } + +.el-drawer__header { + background: var(--el-color-primary); + padding: 18px; + margin-right: 0px; +} + +.el-drawer__header .el-drawer__close-btn { + top: 5px; +} + +.el-drawer__header .el-drawer__close-btn .el-icon { + color: var(--el-color-white); +} + +.el-drawer__header .el-drawer__close-btn:hover .el-icon { + color: #ccc; +} + +.el-drawer__header .el-drawer__title { + color: var(--el-color-white); + font-size: 18px; +} + +.el-drawer__body { + padding: 10px; +} diff --git a/src/styles/element.min.css b/src/styles/element.min.css index c54b3016..fd735819 100644 --- a/src/styles/element.min.css +++ b/src/styles/element.min.css @@ -1 +1 @@ -.el-input .el-input__inner{height:30px;line-height:calc(var(--el-input-height, 40px) - 4px)}.datetime-picker{height:32px;padding-top:0;padding-bottom:0}.el-divider__text.is-center{transform:translateX(-50%) translateY(-62%)}.el-menu{user-select:none}.el-menu .el-menu-item:hover,.el-menu .el-sub-menu__title:hover{background-color:var(--el-menu-hover-color) !important;color:var(--el-menu-active-color) !important}.el-menu .el-menu-item:hover .icon,.el-menu .el-sub-menu__title:hover .icon{color:var(--el-menu-active-color) !important}.atooltip{margin-top:0px !important;padding:0 !important}.el-dialog{padding:0px !important}.el-dialog .el-dialog__footer{padding:15px;box-shadow:var(--el-box-shadow);width:100%;bottom:0}.el-dialog__body{max-height:60vh;overflow-y:auto;padding:10px}.el-dialog__header{background:var(--el-color-primary);padding:15px;margin-right:0px}.el-dialog__header .el-dialog__headerbtn{top:5px}.el-dialog__header .el-dialog__headerbtn .el-icon{color:var(--el-color-white)}.el-dialog__header .el-dialog__headerbtn:hover .el-icon{color:#409eff}.el-dialog__header .el-dialog__title{color:var(--el-color-white)}.el-table{--el-table-border-color:var(--ba-border-color)}.el-card{border:none}.el-card__header{border-bottom:1px solid var(--el-border-color-extra-light)}.el-textarea__inner{padding:5px 11px}.el-overlay-dialog,.el-tabs__content,.ba-scroll-style{scrollbar-width:none}.el-overlay-dialog::-webkit-scrollbar,.el-tabs__content::-webkit-scrollbar,.ba-scroll-style::-webkit-scrollbar{width:5px;height:5px}.el-overlay-dialog::-webkit-scrollbar-thumb,.el-tabs__content::-webkit-scrollbar-thumb,.ba-scroll-style::-webkit-scrollbar-thumb{background:#eaeaea;border-radius:var(--el-border-radius-base);box-shadow:none;-webkit-box-shadow:none}.el-overlay-dialog:hover::-webkit-scrollbar-thumb:hover,.el-tabs__content:hover::-webkit-scrollbar-thumb:hover,.ba-scroll-style:hover::-webkit-scrollbar-thumb:hover{background:#c8c9cc}.ba-input-item-radio{margin-bottom:10px}.ba-input-item-radio .el-radio-group .el-radio{margin-bottom:8px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active{background:var(--el-color-primary);color:var(--el-color-white)}.el-tabs__header{margin-bottom:0}.el-form--inline .el-form-item{margin-bottom:10px}.el-tabs--border-card>.el-tabs__content{padding:10px}.el-page-header__header{line-height:32px}.el-page-header__header .el-page-header__content{font-size:14px;font-weight:700}.el-select{min-width:200px}.el-tabs__content{height:calc(100% - 40px)}.el-tabs__content .el-tab-pane{height:100%}.el-button--primary:focus{color:var(--el-color-white);outline:0}.el-button--primary:hover{color:var(--el-color-white);border-color:var(--el-color-primary-light-3);background-color:var(--el-color-primary-light-3);outline:0}.el-button.is-plain:focus{color:var(--el-button-text-color);border-color:var(--el-button-border-color)}.el-button.is-plain:hover{color:var(--el-color-primary);border-color:var(--el-color-primary)}.el-button.is-link:focus{color:var(--el-button-text-color)}.el-button.is-link:hover{color:var(--el-button-hover-link-text-color)}.el-button--primary.is-link:hover,.el-button--primary.is-plain:hover,.el-button--primary.is-text:hover{color:var(--el-color-primary-light-5);background-color:var(--el-color-primary-light-9) !important}.el-divider--horizontal{margin:15px 0}.el-step__title{cursor:pointer}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner,.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:var(--el-color-primary);opacity:0.6}.sgmap-ctrl-bottom-left{display:none !important}.el-drawer__header{margin-bottom:0 !important}.el-pagination__sizes .el-select{min-width:128px}.el-card__header{padding:10px}.el-card__header span{font-size:16px;font-weight:600}.el-select__input-wrapper{width:11px} +.el-input .el-input__inner{height:30px;line-height:calc(var(--el-input-height, 40px) - 4px)}.datetime-picker{height:32px;padding-top:0;padding-bottom:0}.el-divider__text.is-center{transform:translateX(-50%) translateY(-62%)}.el-menu{user-select:none}.el-menu .el-menu-item:hover,.el-menu .el-sub-menu__title:hover{background-color:var(--el-menu-hover-color) !important;color:var(--el-menu-active-color) !important}.el-menu .el-menu-item:hover .icon,.el-menu .el-sub-menu__title:hover .icon{color:var(--el-menu-active-color) !important}.atooltip{margin-top:0px !important;padding:0 !important}.el-dialog{padding:0px !important}.el-dialog .el-dialog__footer{padding:15px;box-shadow:var(--el-box-shadow);width:100%;bottom:0}.el-dialog__body{max-height:60vh;overflow-y:auto;padding:10px}.el-dialog__header{background:var(--el-color-primary);padding:15px;margin-right:0px}.el-dialog__header .el-dialog__headerbtn{top:5px}.el-dialog__header .el-dialog__headerbtn .el-icon{color:var(--el-color-white)}.el-dialog__header .el-dialog__headerbtn:hover .el-icon{color:#ccc}.el-dialog__header .el-dialog__title{color:var(--el-color-white)}.el-table{--el-table-border-color:var(--ba-border-color)}.el-card{border:none}.el-card__header{border-bottom:1px solid var(--el-border-color-extra-light)}.el-textarea__inner{padding:5px 11px}.el-overlay-dialog,.el-tabs__content,.ba-scroll-style{scrollbar-width:none}.el-overlay-dialog::-webkit-scrollbar,.el-tabs__content::-webkit-scrollbar,.ba-scroll-style::-webkit-scrollbar{width:5px;height:5px}.el-overlay-dialog::-webkit-scrollbar-thumb,.el-tabs__content::-webkit-scrollbar-thumb,.ba-scroll-style::-webkit-scrollbar-thumb{background:#eaeaea;border-radius:var(--el-border-radius-base);box-shadow:none;-webkit-box-shadow:none}.el-overlay-dialog:hover::-webkit-scrollbar-thumb:hover,.el-tabs__content:hover::-webkit-scrollbar-thumb:hover,.ba-scroll-style:hover::-webkit-scrollbar-thumb:hover{background:#c8c9cc}.ba-input-item-radio{margin-bottom:10px}.ba-input-item-radio .el-radio-group .el-radio{margin-bottom:8px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active{background:var(--el-color-primary);color:var(--el-color-white)}.el-tabs__header{margin-bottom:0}.el-form--inline .el-form-item{margin-bottom:10px}.el-tabs--border-card>.el-tabs__content{padding:10px}.el-page-header__header{line-height:32px}.el-page-header__header .el-page-header__content{font-size:14px;font-weight:700}.el-select{min-width:200px}.el-tabs__content{height:calc(100% - 40px)}.el-tabs__content .el-tab-pane{height:100%}.el-button--primary:focus{color:var(--el-color-white);outline:0}.el-button--primary:hover{color:var(--el-color-white);border-color:var(--el-color-primary-light-3);background-color:var(--el-color-primary-light-3);outline:0}.el-button.is-plain:focus{color:var(--el-button-text-color);border-color:var(--el-button-border-color)}.el-button.is-plain:hover{color:var(--el-color-primary);border-color:var(--el-color-primary)}.el-button.is-link:focus{color:var(--el-button-text-color)}.el-button.is-link:hover{color:var(--el-button-hover-link-text-color)}.el-button--primary.is-link:hover,.el-button--primary.is-plain:hover,.el-button--primary.is-text:hover{color:var(--el-color-primary-light-5);background-color:var(--el-color-primary-light-9) !important}.el-divider--horizontal{margin:15px 0}.el-step__title{cursor:pointer}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner,.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:var(--el-color-primary);opacity:0.6}.sgmap-ctrl-bottom-left{display:none !important}.el-drawer__header{margin-bottom:0 !important}.el-pagination__sizes .el-select{min-width:128px}.el-card__header{padding:10px}.el-card__header span{font-size:16px;font-weight:600}.el-select__input-wrapper{width:11px}.el-drawer__header{background:var(--el-color-primary);padding:18px;margin-right:0px}.el-drawer__header .el-drawer__close-btn{top:5px}.el-drawer__header .el-drawer__close-btn .el-icon{color:var(--el-color-white)}.el-drawer__header .el-drawer__close-btn:hover .el-icon{color:#ccc}.el-drawer__header .el-drawer__title{color:var(--el-color-white);font-size:18px}.el-drawer__body{padding:10px} diff --git a/src/styles/element.scss b/src/styles/element.scss index 8b58b702..69b3f003 100644 --- a/src/styles/element.scss +++ b/src/styles/element.scss @@ -63,7 +63,7 @@ } .el-dialog__headerbtn:hover { .el-icon { - color: #409eff; + color: #ccc; } } @@ -232,4 +232,28 @@ .el-select__input-wrapper { width: 11px; } +.el-drawer__header { + background: var(--el-color-primary); + padding: 18px; + margin-right: 0px; + .el-drawer__close-btn { + top: 5px; + .el-icon { + color: var(--el-color-white); + } + } + .el-drawer__close-btn:hover { + .el-icon { + color: #ccc; + } + } + + .el-drawer__title { + color: var(--el-color-white); + font-size: 18px; + } +} +.el-drawer__body { + padding: 10px; +} diff --git a/src/utils/mqtt.ts b/src/utils/mqtt.ts new file mode 100644 index 00000000..cb88f244 --- /dev/null +++ b/src/utils/mqtt.ts @@ -0,0 +1,251 @@ +import type { MqttClient, OnMessageCallback, IClientOptions, IClientSubscribeOptions } from 'mqtt'; +import mqtt from 'mqtt'; + +interface MQTTOptions { + protocolId?: string; + qos?: 0 | 1 | 2; + clean?: boolean; + connectTimeout?: number; + clientId?: string; + username?: string; + password?: string; + reconnectPeriod?: number; // 重连间隔(ms) + maxReconnectTimes?: number; // 最大重连次数 +} + +class MQTT { + private topic: string; + private client: MqttClient | null = null; + private isConnected: boolean = false; + private reconnectCount: number = 0; + private maxReconnectTimes: number; + private reconnectPeriod: number; + private isManuallyDisconnected: boolean = false; + private defaultOptions: MQTTOptions = { + protocolId: 'MQTT', + qos: 2, + clean: true, + connectTimeout: 30 * 1000, + clientId: `mqttjs_${Math.random().toString(16).substr(2, 8)}`, + username: 't_user', + password: 'njcnpqs', + reconnectPeriod: 1000, // 默认1秒重试一次 + maxReconnectTimes: 3, // 默认最大重连5次 + }; + + constructor(topic: string, options: MQTTOptions = {}) { + this.topic = topic; + this.maxReconnectTimes = options.maxReconnectTimes || this.defaultOptions.maxReconnectTimes!; + this.reconnectPeriod = options.reconnectPeriod || this.defaultOptions.reconnectPeriod!; + + // 合并选项 + this.defaultOptions = { ...this.defaultOptions, ...options }; + } + + /** + * 初始化 MQTT 客户端 + * @returns Promise + */ + async init(): Promise { + if (this.client) { + throw new Error('MQTT 客户端已初始化'); + } + + try { + const response = await fetch('/'); + const mqttUrl = response.headers.get('X-Mqtt-Url') || 'ws://192.168.1.68:8083/mqtt'; + + this.client = mqtt.connect(mqttUrl, this.defaultOptions as IClientOptions); + this.setupEventListeners(); + + // 等待连接成功或超时 + return new Promise((resolve, reject) => { + const timeout = setTimeout(() => { + if (!this.isConnected) { + reject(new Error('MQTT 连接超时')); + } + }, this.defaultOptions.connectTimeout); + + this.client?.on('connect', () => { + clearTimeout(timeout); + this.isConnected = true; + this.reconnectCount = 0; // 连接成功重置重连计数 + resolve(); + }); + + this.client?.on('error', (error) => { + clearTimeout(timeout); + console.error('MQTT 连接错误:', error); + reject(error); + }); + }); + } catch (error) { + console.error('初始化 MQTT 失败:', error); + throw error; + } + } + + /** + * 设置事件监听器 + */ + private setupEventListeners(): void { + if (!this.client) return; + + this.client.on('close', () => { + console.log('MQTT 连接已关闭'); + this.isConnected = false; + }); + + this.client.on('offline', () => { + console.log('MQTT 客户端离线'); + this.isConnected = false; + }); + + this.client.on('reconnect', () => { + console.log(`MQTT 正在尝试重连 (${this.reconnectCount + 1}/${this.maxReconnectTimes})...`); + + // 检查是否超过最大重连次数 + if (this.reconnectCount >= this.maxReconnectTimes) { + console.log('已达到最大重连次数,停止重连'); + this.client?.end(true); + this.client = null; + return; + } + + this.reconnectCount++; + }); + } + + /** + * 订阅主题 + * @param subscribeOptions 可选的订阅选项 + * @returns Promise + */ + async subscribe(subscribeOptions: IClientSubscribeOptions = {}): Promise { + if (!this.client || !this.isConnected) { + throw new Error('MQTT 客户端未连接'); + } + + return new Promise((resolve, reject) => { + this.client?.subscribe( + this.topic, + { qos: this.defaultOptions.qos, ...subscribeOptions }, + (error) => { + if (error) { + console.error('订阅失败:', error); + reject(error); + } else { + console.log('订阅成功'); + resolve(); + } + } + ); + }); + } + + /** + * 取消订阅 + * @returns Promise + */ + async unsubscribe(): Promise { + if (!this.client || !this.isConnected) { + throw new Error('MQTT 客户端未连接'); + } + + return new Promise((resolve, reject) => { + this.client?.unsubscribe(this.topic, (error) => { + if (error) { + console.error('取消订阅失败:', error); + reject(error); + } else { + console.log('取消订阅成功'); + resolve(); + } + }); + }); + } + + /** + * 设置消息回调 + * @param callback 消息回调函数 + */ + onMessage(callback: OnMessageCallback): void { + if (!this.client) { + throw new Error('MQTT 客户端未初始化'); + } + this.client.on('message', callback); + } + + /** + * 发布消息 + * @param message 要发布的消息 + * @param options 发布选项 + * @returns Promise + */ + async publish( + message: string | Buffer, + options: { qos?: 0 | 1 | 2; retain?: boolean } = {} + ): Promise { + if (!this.client || !this.isConnected) { + throw new Error('MQTT 客户端未连接'); + } + + return new Promise((resolve, reject) => { + this.client?.publish( + this.topic, + message, + { qos: this.defaultOptions.qos, ...options }, + (error) => { + if (error) { + console.error('消息发布失败:', error); + reject(error); + } else { + console.log('消息发布成功'); + resolve(); + } + } + ); + }); + } + + /** + * 断开连接 + * @param force 是否强制断开 + */ + disconnect(force: boolean = false): void { + this.isManuallyDisconnected = true; + + if (this.client) { + this.client.end(force, () => { + console.log('MQTT 连接已断开'); + this.isConnected = false; + this.client = null; + }); + } + } + + /** + * 检查连接状态 + * @returns boolean + */ + isConnectedToBroker(): boolean { + return this.isConnected; + } + + /** + * 获取当前重连次数 + * @returns number + */ + getReconnectCount(): number { + return this.reconnectCount; + } + + /** + * 重置重连计数器 + */ + resetReconnectCount(): void { + this.reconnectCount = 0; + } +} + +export default MQTT; \ No newline at end of file diff --git a/src/utils/webSocketClient.ts b/src/utils/webSocketClient.ts index 6deae6d4..b7dbe0d8 100644 --- a/src/utils/webSocketClient.ts +++ b/src/utils/webSocketClient.ts @@ -45,10 +45,10 @@ export default class SocketService { } const response = await fetch('/') - const mqttUrl = response.headers.get('X-Mqtt-Url') + const WebSocketUrl = response.headers.get('X-WebSocket-Url') setTimeout(() => { // ws://192.168.1.69:10407/mgtt/api/pushMessage/ - const url = (mqttUrl || 'ws://192.168.1.68:10407/api/pushMessage/') + id + const url = (WebSocketUrl || 'ws://192.168.1.68:10407/api/pushMessage/') + id this.ws = new WebSocket(url) this.ws.onopen = () => this.handleOpen() diff --git a/src/views/pqs/business/terminal/TerminalManagement/index.vue b/src/views/pqs/business/terminal/TerminalManagement/index.vue index cc757040..4cc79618 100644 --- a/src/views/pqs/business/terminal/TerminalManagement/index.vue +++ b/src/views/pqs/business/terminal/TerminalManagement/index.vue @@ -89,39 +89,18 @@ - + diff --git a/src/views/pqs/business/terminal/deviceter/index.vue b/src/views/pqs/business/terminal/deviceter/index.vue index e98ff05d..f25783cc 100644 --- a/src/views/pqs/business/terminal/deviceter/index.vue +++ b/src/views/pqs/business/terminal/deviceter/index.vue @@ -53,23 +53,15 @@ 修改提交 + + + 当前操作节点: + - -
- - 当前操作节点: - +
{{ index == 0 ? '' : ' > ' }}{{ item }}
- - - +
@@ -1609,13 +1601,12 @@ placeholder="请输入电网侧变电站" > --> - - + { } }) const plevel = ref(0) +const nodeDataList=ref() +const nodeEventList=ref() const nodeClick = (e: anyObj, data: any) => { + nodeDataList.value = data + nodeEventList.value = e plevel.value = data.data.plevel treeClickCount.value++ if (treeClickCount.value > 2) return @@ -2355,8 +2350,10 @@ const next = async () => { const black = () => { pageStatus.value = 1 busBarIndex.value = '0' - deviceIndex.value = '0'; - lineIndex.value = '0'; + deviceIndex.value = '0' + lineIndex.value = '0' + nodeClick(nodeEventList.value,nodeDataList.value) + } // 确认提交 const onsubmit = () => { @@ -2880,58 +2877,107 @@ const evaluate = (node: any) => { evaluate(node.parent) } } -const selectChanged = (value: any) => { - if (value === '3d68ceef26a579efe2fe0cdc654911b7') { - setTheDefaultValue(10, 0.38 * 1000, 0.38 * 100) - - //750kv - } else if (value === '4cf2d844c47a15a1c16a65b4bbfd1b0e') { - setTheDefaultValue(7000, 750 * 1000, 750 * 100) - - //6kv - } else if (value === '37b81bf8aa0fd54098716da3fc0ee433') { - setTheDefaultValue(100, 6 * 1000, 6 * 100) - - //10kv - } else if (value === 'e3da890104e3c4ae1f005021411a1fd7') { - setTheDefaultValue(100, 10 * 1000, 10 * 100) - - //20kv - } else if (value === '87065e15765e5899114a6d6b9e4fb3cb') { - setTheDefaultValue(200, 20 * 1000, 20 * 100) - - //35kv - } else if (value === '8529cfa11356a0666afd3f9fa4da09a4') { - setTheDefaultValue(250, 35 * 1000, 35 * 100) - - //66kv - } else if (value === '9ce75596a3368da4adf3374b4fc3b619') { - setTheDefaultValue(500, 66 * 1000, 66 * 100) - - //110kv - } else if (value === 'e96d74b79bd50ad0bc00a405246f1e1f') { - setTheDefaultValue(750, 110 * 1000, 110 * 100) - - //220kv - } else if (value === '1b7b58ed8fcc2992b95334eaa9010c41') { - setTheDefaultValue(2000, 220 * 1000, 220 * 100) - - //330kv - } else if (value === 'c1b37350a67f5e229a1f96ace0ad04dc') { - setTheDefaultValue(3000, 330 * 1000, 330 * 100) - - //500kv - } else if (value === '1fa650685c77db1656c70f9db4a2edc6') { - setTheDefaultValue(4500, 500 * 1000, 500 * 100) - - //1000kv - } else if (value === '674cf02fb3fcfd9f99fd786cfca090df') { - setTheDefaultValue(9000, 1000 * 1000, 1000 * 100) - } else { - setTheDefaultValue(10, 10, 10) +const selectChanged = async (value: any) => { + let num: any = voltageLevelArr.filter(item => item.id == value)[0].value + let capacity = 10 + switch (num) { + case '500': + capacity = 4500 + break + case '330': + capacity = 3000 + break + case '220': + capacity = 2000 + break + case '110': + capacity = 750 + break + case '35': + capacity = 259 + break + case '10': + capacity = 100 + break + case '6': + capacity = 100 + break + case '0.38': + capacity = 10 + break + case '20': + capacity = 200 + break + case '66': + capacity = 500 + break + case '750': + capacity = 7000 + break + case '800': + capacity = 7000 + break + case '1000': + capacity = 9000 + break } - setvoltageDev(voltageLevelArr.filter(item => item.id == value)[0].value) + setTimeout(() => { + setTheDefaultValue(capacity, num * 1000, num < 1 ? num * 1000 : 100) + setvoltageDev(num) + }, 0) + + // // 0.38 + // if (value === '3d68ceef26a579efe2fe0cdc654911b7') { + // setTheDefaultValue(10, 0.38 * 1000, 0.38 * 1000) + + // //750kv + // } else if (value === '4cf2d844c47a15a1c16a65b4bbfd1b0e') { + // setTheDefaultValue(7000, 750 * 1000, 100) + + // //6kv + // } else if (value === '37b81bf8aa0fd54098716da3fc0ee433') { + // setTheDefaultValue(100, 6 * 1000, 100) + + // //10kv + // } else if (value === 'e3da890104e3c4ae1f005021411a1fd7') { + // setTheDefaultValue(100, 10 * 1000, 100) + + // //20kv + // } else if (value === '87065e15765e5899114a6d6b9e4fb3cb') { + // setTheDefaultValue(200, 20 * 1000, 100) + + // //35kv + // } else if (value === '8529cfa11356a0666afd3f9fa4da09a4') { + // setTheDefaultValue(250, 35 * 1000, 100) + + // //66kv + // } else if (value === '9ce75596a3368da4adf3374b4fc3b619') { + // setTheDefaultValue(500, 66 * 1000, 100) + + // //110kv + // } else if (value === 'e96d74b79bd50ad0bc00a405246f1e1f') { + // setTheDefaultValue(750, 110 * 1000, 100) + + // //220kv + // } else if (value === '1b7b58ed8fcc2992b95334eaa9010c41') { + // setTheDefaultValue(2000, 220 * 1000, 100) + + // //330kv + // } else if (value === 'c1b37350a67f5e229a1f96ace0ad04dc') { + // setTheDefaultValue(3000, 330 * 1000, 100) + + // //500kv + // } else if (value === '1fa650685c77db1656c70f9db4a2edc6') { + // setTheDefaultValue(4500, 500 * 1000, 100) + + // //1000kv + // } else if (value === '674cf02fb3fcfd9f99fd786cfca090df') { + // setTheDefaultValue(9000, 1000 * 1000, 100) + // } else { + // setTheDefaultValue(10, 1, 1) + // } + // setvoltageDev(voltageLevelArr.filter(item => item.id == value)[0].value) } const setTheDefaultValue = (capacity: number, pt1: number, pt2: number) => { @@ -3005,10 +3051,10 @@ const area = () => { month = '0' + (month + 1) } let day: any = data.getDate() - if (day >= 10) { - day = day + if (day >= 10) { + day = day } else { - day = '0' + (day ) + day = '0' + day } deviceBODetail.value.thisTimeCheck = year + '-' + month + '-' + day deviceBODetail.value.loginTime = year + '-' + month + '-' + day @@ -3087,9 +3133,12 @@ area() } .title { width: 500px; + overflow: hidden; // display: flex; white-space: nowrap; font-weight: bold; +} +.titleScroll { animation: scroll 10s linear infinite; /* 滚动动画 */ } @keyframes scroll { diff --git a/src/views/pqs/business/terminal/userLedger/components/detail.vue b/src/views/pqs/business/terminal/userLedger/components/detail.vue index a88a060d..2b98b3b5 100644 --- a/src/views/pqs/business/terminal/userLedger/components/detail.vue +++ b/src/views/pqs/business/terminal/userLedger/components/detail.vue @@ -114,7 +114,7 @@ label="装机容量(MW)" > - {{ proviteData.ratePower }} + {{ proviteData?.ratePower }} 新增 删除 - + diff --git a/src/views/pqs/harmonicMonitoring/detailed/overLabelDetails/index.vue b/src/views/pqs/harmonicMonitoring/detailed/overLabelDetails/index.vue index 7323fe4a..d9633208 100644 --- a/src/views/pqs/harmonicMonitoring/detailed/overLabelDetails/index.vue +++ b/src/views/pqs/harmonicMonitoring/detailed/overLabelDetails/index.vue @@ -3,12 +3,12 @@