From b01ad9d698d44c55f8d4b72d4262fe3922694012 Mon Sep 17 00:00:00 2001 From: liub Date: Tue, 25 Nov 2025 16:08:45 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=B5=8B=E8=AF=95App?= =?UTF-8?q?=E7=9A=84=E9=83=A8=E5=88=86=E6=96=87=E4=BB=B6,=E4=BF=AE?= =?UTF-8?q?=E5=A4=8Dloading=E6=9C=89=E6=97=B6=E4=B8=8D=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/global-loading/global-loading.vue | 1 + manifest.json | 3 +- pages/102/HBY102.vue | 125 +- pages/6155/deviceDetail.vue | 12 +- pages/BlueTooth/ModeSetting/HBY6155.vue | 1947 ----------- pages/BlueTooth/ModeSetting/HBY6155V1.vue | 1925 ----------- pages/BlueTooth/ModeSetting/HBY650.vue | 1892 ----------- pages/BlueTooth/ModeSetting/HBY650_1.vue | 1899 ----------- pages/BlueTooth/ModeSetting/HBY670V1.vue | 2837 ----------------- pages/BlueTooth/ModeSetting/ModeSetting.vue | 1499 --------- pages/BlueTooth/ModeSetting/VideoSend.vue | 472 --- pages/BlueTooth/ModeSetting/VideoSend_1.vue | 517 --- pages/BlueTooth/ModeSetting/VideoSend_670.vue | 537 ---- pages/BlueTooth/ModeSetting/index.vue | 115 - pages/BlueTooth/ModeSetting/update.vue | 273 -- pages/common/addBLE/addEquip.vue | 20 +- static/images/common/BJQ4877.png | Bin 41350 -> 40859 bytes utils/BleHelper.js | 18 +- utils/BleReceive.js | 39 +- utils/request.js | 2 +- 20 files changed, 131 insertions(+), 14002 deletions(-) delete mode 100644 pages/BlueTooth/ModeSetting/HBY6155.vue delete mode 100644 pages/BlueTooth/ModeSetting/HBY6155V1.vue delete mode 100644 pages/BlueTooth/ModeSetting/HBY650.vue delete mode 100644 pages/BlueTooth/ModeSetting/HBY650_1.vue delete mode 100644 pages/BlueTooth/ModeSetting/HBY670V1.vue delete mode 100644 pages/BlueTooth/ModeSetting/ModeSetting.vue delete mode 100644 pages/BlueTooth/ModeSetting/VideoSend.vue delete mode 100644 pages/BlueTooth/ModeSetting/VideoSend_1.vue delete mode 100644 pages/BlueTooth/ModeSetting/VideoSend_670.vue delete mode 100644 pages/BlueTooth/ModeSetting/index.vue delete mode 100644 pages/BlueTooth/ModeSetting/update.vue diff --git a/components/global-loading/global-loading.vue b/components/global-loading/global-loading.vue index 0848bec..2a73aab 100644 --- a/components/global-loading/global-loading.vue +++ b/components/global-loading/global-loading.vue @@ -100,6 +100,7 @@ if (options.dotColors) { this.colorIndex = 0 } + this.visible = true; }, // 阻止触摸移动事件 diff --git a/manifest.json b/manifest.json index 9058167..e142c32 100644 --- a/manifest.json +++ b/manifest.json @@ -24,7 +24,8 @@ "Geolocation" : {}, "Maps" : {}, "Record" : {}, - "VideoPlayer" : {} + "VideoPlayer" : {}, + "Push" : {} }, /* 应用发布信息 */ "distribute" : { diff --git a/pages/102/HBY102.vue b/pages/102/HBY102.vue index c11daab..6b0816d 100644 --- a/pages/102/HBY102.vue +++ b/pages/102/HBY102.vue @@ -48,8 +48,9 @@ 闯入报警! - + {{getWarDevice(formData.sta_sosadd)}} + @@ -171,10 +172,9 @@ hideLoading, updateLoading } from '@/utils/loading.js' - import { - request, + import request, { baseURL - } from '../../utils/request'; + } from '@/utils/request.js' import Common from '@/utils/Common.js' const pagePath = "/pages/102/HBY102"; @@ -432,6 +432,7 @@ }, methods: { + actionSett(item, index) { if (item.group == 'sta_LedType') { this.sosSetting(item, index); @@ -736,20 +737,7 @@ urls: [img] }) }, - getWarDevice(macStr){//获取正在报警的设备名 - let f = this.groupDevices.find(v => { - return v.deviceMac === macStr; - }); - if (f) { - return f.deviceName; - } - - if(macStr == this.device.deviceMac) { - return this.device.deviceName; - } - - return ''; - }, + bleValueNotify(receive, device, path, recArr) { //订阅消息 if (receive.deviceId !== this.formData.deviceId) { return; @@ -770,14 +758,21 @@ this.formData[key] = json[key]; } }); + let msg = []; if (this.formData.sta_PowerPercent <= 20) { msg.push("设备电量低"); } - + if (json.sta_sosadd_off == this.formData.sta_sosadd) { + this.formData.sta_sosadd = ""; + let name=this.getWarDevice(json.sta_sosadd_off); + msg.push('"' + name + '"取消报警'); + } if (this.formData.sta_sosadd !== "") { + console.log("查询设备中"); this.searchDevice(this.formData.sta_sosadd).catch(ex => {}).then(dev => { + console.log("dev=", dev); if (dev) { msg.push('"' + dev.deviceName + '"闯入报警中'); } else { @@ -798,9 +793,9 @@ // this.formData.sta_IntrusTime=instrusionTime; // }, 1000); } else { - clearInterval(instrusionTime); - instrusionTime = 0; - this.formData.sta_IntrusTime = 0; + // clearInterval(instrusionTime); + // instrusionTime = 0; + // this.formData.sta_IntrusTime = 0; } if (msg.length > 0) { this.showMsg(msg.join(',')); @@ -808,6 +803,26 @@ }, + + getWarDevice(macStr) { + if (macStr) { + + if (!macStr.includes(':')) { + macStr = macStr.replace(/(.{2})/g, '$1:').slice(0, -1) + } + + let f = this.groupDevices.find(v => { + return v.deviceMac === macStr; + }); + + if (f) { + return f.deviceName; + } + } + + return ""; + }, + searchDevice(macStr) { return new Promise((resolve, reject) => { if (macStr.includes(':')) { @@ -819,45 +834,59 @@ let f = this.groupDevices.find(v => { return v.deviceMac === macStr; }); + console.log("111111111"); if (f) { + console.log("找到设备", f); resolve(f); return; } - + console.log("111111111"); if (macStr == this.device.deviceMac) { + console.log("当前设备", this.device); resolve(this.device); return; } + console.log("111111111"); + try { - request({ - url: '/app/device/getDeviceInfoByDeviceMac', - method: 'GET', - data: { - deviceMac: these.device.macAddress - } - }).then(res => { - console.log("获取设备信息", res); - if (res && res.code == 200) { - console.log("res=", res); - let data = res.data; - if (data) { - this.groupDevices.push({ - deviceMac: data.deviceMac, - deviceName: data.deviceName - }) - resolve(data); - return; + request({ + url: '/app/device/getDeviceInfoByDeviceMac', + method: 'GET', + data: { + deviceMac: macStr } - } + }).then(res => { + console.log("获取设备信息", res); + if (res && res.code == 200) { + console.log("res=", res); + let data = res.data; + if (data) { + this.groupDevices.push({ + deviceMac: data.deviceMac, + deviceName: data.deviceName + }) + resolve(data); + return; + } + } else { + console.log("222222222"); + } + + resolve(null); + + }).catch(ex => { + console.error("查询设备出现异常:", ex); + resolve(null); + + }).finally(com => { + console.log("complete") + }); + } catch (err) { + console.error("err=", err); resolve(null); - - }).catch(ex => { - - resolve(null); - - }); + } }); }, diff --git a/pages/6155/deviceDetail.vue b/pages/6155/deviceDetail.vue index d31c03c..9745cca 100644 --- a/pages/6155/deviceDetail.vue +++ b/pages/6155/deviceDetail.vue @@ -175,7 +175,7 @@ baseURL } from '@/utils/request.js'; - var pagePath = "/pages/6155/HBY6155"; + var pagePath = "/pages/6155/deviceDetail"; var ble = null; var these = null; @@ -575,7 +575,7 @@ keys.forEach((key) => { if (key in these.formData) { // 确保响应式更新 - console.log(`更新字段 ${key}: ${these.formData[key]} -> ${json[key]}`); + // console.log(`更新字段 ${key}: ${these.formData[key]} -> ${json[key]}`); these.$set(these.formData, key, json[key]); } else { console.log(`字段 ${key} 不在 formData 中,跳过更新`); @@ -584,7 +584,7 @@ // 强制触发视图更新,确保电量显示同步 these.$forceUpdate(); - console.log("更新后的电量:", these.formData.battary); + // console.log("更新后的电量:", these.formData.battary); if (this.formData.battary <= 20) { this.showPop({ @@ -911,7 +911,7 @@ "clientid": clientid }, formData: { - code: 2, + code: 1, width: width, height: height }, @@ -942,6 +942,8 @@ resolve(res.data); return; + }else{ + console.log("res.data=",res.data); } } @@ -1087,7 +1089,7 @@ dataView.setUint8(packetSize - 1, 0xFF); } let inteval = parseInt(this.inteval ? this.inteval : 80); - console.log(inteval, 'intevalinteval'); + // console.log(inteval, 'intevalinteval'); ble.sendData(f.deviceId, buffer, f.writeServiceId, f .wirteCharactId).then(() => { if (ReSendNo) { diff --git a/pages/BlueTooth/ModeSetting/HBY6155.vue b/pages/BlueTooth/ModeSetting/HBY6155.vue deleted file mode 100644 index 3ff9f9a..0000000 --- a/pages/BlueTooth/ModeSetting/HBY6155.vue +++ /dev/null @@ -1,1947 +0,0 @@ - - - - - \ No newline at end of file diff --git a/pages/BlueTooth/ModeSetting/HBY6155V1.vue b/pages/BlueTooth/ModeSetting/HBY6155V1.vue deleted file mode 100644 index 06aa86a..0000000 --- a/pages/BlueTooth/ModeSetting/HBY6155V1.vue +++ /dev/null @@ -1,1925 +0,0 @@ - - - - - \ No newline at end of file diff --git a/pages/BlueTooth/ModeSetting/HBY650.vue b/pages/BlueTooth/ModeSetting/HBY650.vue deleted file mode 100644 index 07ebe45..0000000 --- a/pages/BlueTooth/ModeSetting/HBY650.vue +++ /dev/null @@ -1,1892 +0,0 @@ - - - - - \ No newline at end of file diff --git a/pages/BlueTooth/ModeSetting/HBY650_1.vue b/pages/BlueTooth/ModeSetting/HBY650_1.vue deleted file mode 100644 index 8338463..0000000 --- a/pages/BlueTooth/ModeSetting/HBY650_1.vue +++ /dev/null @@ -1,1899 +0,0 @@ - - - - - \ No newline at end of file diff --git a/pages/BlueTooth/ModeSetting/HBY670V1.vue b/pages/BlueTooth/ModeSetting/HBY670V1.vue deleted file mode 100644 index c457ae4..0000000 --- a/pages/BlueTooth/ModeSetting/HBY670V1.vue +++ /dev/null @@ -1,2837 +0,0 @@ - - - - - \ No newline at end of file diff --git a/pages/BlueTooth/ModeSetting/ModeSetting.vue b/pages/BlueTooth/ModeSetting/ModeSetting.vue deleted file mode 100644 index c464993..0000000 --- a/pages/BlueTooth/ModeSetting/ModeSetting.vue +++ /dev/null @@ -1,1499 +0,0 @@ - - - - - \ No newline at end of file diff --git a/pages/BlueTooth/ModeSetting/VideoSend.vue b/pages/BlueTooth/ModeSetting/VideoSend.vue deleted file mode 100644 index 3ea69bb..0000000 --- a/pages/BlueTooth/ModeSetting/VideoSend.vue +++ /dev/null @@ -1,472 +0,0 @@ - - - - - \ No newline at end of file diff --git a/pages/BlueTooth/ModeSetting/VideoSend_1.vue b/pages/BlueTooth/ModeSetting/VideoSend_1.vue deleted file mode 100644 index 1c1eadb..0000000 --- a/pages/BlueTooth/ModeSetting/VideoSend_1.vue +++ /dev/null @@ -1,517 +0,0 @@ - - - - - \ No newline at end of file diff --git a/pages/BlueTooth/ModeSetting/VideoSend_670.vue b/pages/BlueTooth/ModeSetting/VideoSend_670.vue deleted file mode 100644 index 1e8bc89..0000000 --- a/pages/BlueTooth/ModeSetting/VideoSend_670.vue +++ /dev/null @@ -1,537 +0,0 @@ - - - - - \ No newline at end of file diff --git a/pages/BlueTooth/ModeSetting/index.vue b/pages/BlueTooth/ModeSetting/index.vue deleted file mode 100644 index d0edfba..0000000 --- a/pages/BlueTooth/ModeSetting/index.vue +++ /dev/null @@ -1,115 +0,0 @@ - - - - - \ No newline at end of file diff --git a/pages/BlueTooth/ModeSetting/update.vue b/pages/BlueTooth/ModeSetting/update.vue deleted file mode 100644 index e814728..0000000 --- a/pages/BlueTooth/ModeSetting/update.vue +++ /dev/null @@ -1,273 +0,0 @@ - - - - - diff --git a/pages/common/addBLE/addEquip.vue b/pages/common/addBLE/addEquip.vue index a9cac65..d4fd506 100644 --- a/pages/common/addBLE/addEquip.vue +++ b/pages/common/addBLE/addEquip.vue @@ -171,6 +171,7 @@ }, onLoad(option) { let search = option.search; + ble = bleTool.getBleTool(); these = this; eventChannel = this.getOpenerEventChannel(); const systemInfo = uni.getSystemInfoSync(); @@ -216,7 +217,7 @@ } let StartSubsrib = () => { these.EquipMents = []; - ble = bleTool.getBleTool(); + //蓝牙不可用的回调 ble.addStateBreakCallback(res => { if (these.Status.isPageHidden) { @@ -291,7 +292,9 @@ }, pagePath); //搜索到新设备的回调 + ble.addDeviceFound((arr) => { + // console.log("发现设备", arr); if (these.Status.isPageHidden) { return; } @@ -352,17 +355,18 @@ }, pagePath); - } - if (search) { - StartSubsrib(); - } + + + StartSubsrib(); + eventChannel.on('detailData', function(rec) { console.log("接收到父页面的参数:", rec); these.device = rec.data; - StartSubsrib(); + console.log("11111") + these.refreshBleList(); }); @@ -386,11 +390,11 @@ Promise.allSettled(promis).finally(() => { ble.StopSearch().finally(res => { - console.log("停止搜索成功"); + console.log("停止搜索成功"); these.EquipMents = []; these.PairEquip = []; ble.StartSearch().then(result => { - console.log("开始搜索成功"); + console.log("开始搜索成功"); }).catch(err => { console.error("开始搜索失败,err=", err); if (err.code === 10001) { diff --git a/static/images/common/BJQ4877.png b/static/images/common/BJQ4877.png index dff8be296e0e9437fd36658cd1f0c3291daae595..a8db8a68c8855ae336c09e0e730f24a5d477a269 100644 GIT binary patch delta 37338 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

21r=W<-lICN4+*#k~=%PwH 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 diff --git a/utils/BleHelper.js b/utils/BleHelper.js index cd65153..a03532b 100644 --- a/utils/BleHelper.js +++ b/utils/BleHelper.js @@ -74,9 +74,9 @@ class BleHelper { stateRecoveryCallback: [], //蓝牙适配器恢复可用事件 stateBreakCallback: [] //蓝牙适配器不可用事件 } - // this.addReceiveCallback((a, b, c) => { - // recei.ReceiveData(a, b, c); - // }, "BleReceiveData"); + this.addReceiveCallback((receive, f, path, recArr) => { + recei.ReceiveData(receive, f, path, recArr); + }, "BleReceiveData"); this.dic = { errRemarks: [{ key: '10000', @@ -639,7 +639,7 @@ class BleHelper { console.log("111111111") uni.onBluetoothDeviceFound((res) => { - // console.log("发现新设备:" + JSON.stringify(res,'name')); + //console.log("发现新设备:" + JSON.stringify(res,'name')); let arr = []; for (var i = 0; i < res.devices.length; i++) { let item = res.devices[i]; @@ -653,7 +653,7 @@ class BleHelper { }); if (f) { - // console.log("发现目标设备:", item); + // console.log("发现目标设备:", item); arr.push(item); } @@ -678,12 +678,14 @@ class BleHelper { }); } + }else{ + console.error("无人订阅发现设备的回调"); } }); uni.onBLECharacteristicValueChange((receive) => { //订阅消息 - console.log("收到订阅消息", receive); + // console.log("收到订阅消息", receive); let f = this.data.LinkedList.find((v) => { return v.deviceId == receive.deviceId; }) @@ -838,10 +840,10 @@ class BleHelper { } }) } else { - console.log("无人订阅消息"); + console.error("无人订阅消息"); } } else { - console.log("无人订阅receivDataCallback,不处理数据"); + console.error("无人订阅receivDataCallback,不处理数据"); } } catch (ex) { console.error("处理订阅消息失败,ex=", ex); diff --git a/utils/BleReceive.js b/utils/BleReceive.js index 36aaea6..45ef6f7 100644 --- a/utils/BleReceive.js +++ b/utils/BleReceive.js @@ -46,20 +46,20 @@ class BleReceive { let handler = null; let keys = Object.keys(this.HandlerMap); let devKey = f.device.detailPageUrl ? f.device.detailPageUrl.replace(/\//g, '').toLowerCase() : ''; - console.log("查找handler - detailPageUrl:", f.device.detailPageUrl, "转换后:", devKey); + // console.log("查找handler - detailPageUrl:", f.device.detailPageUrl, "转换后:", devKey); for (let index = 0; index < keys.length; index++) { let devKey = f.device.detailPageUrl ? f.device.detailPageUrl.replace(/\//g, "").toLowerCase() : ''; let key = keys[index].replace(/\//g, '').toLowerCase(); if (key == devKey) { handler = this.HandlerMap[keys[index]]; - console.log("找到匹配的handler:", keys[index]); + // console.log("找到匹配的handler:", keys[index]); break; } } if (handler) { let data = handler(receive, f, path, recArr); - console.log("设备"+f.device.deviceName+"收到消息,handler返回的数据:", data); + // console.log("设备"+f.device.deviceName+"收到消息,数据:", data); return data; } else { console.error("已收到消息,但无指定处理程序, deviceUrl:", f.device.detailPageUrl, "可用handlers:", keys); @@ -162,7 +162,7 @@ class BleReceive { if (iswarn) { uni.showModal({ - content: "环境存在漏电电源", + content: "'"+f.device.deviceName+"'环境存在漏电电源", title: "警告", success(res) { if (res.confirm) { @@ -330,7 +330,7 @@ class BleReceive { if (this.formData.staticWarn) { //有静止报警 uni.showModal({ title: "警告", - content: "设备静止报警中", + content: "设备'"+f.device.deviceName+"'静止报警中", showCancel: false }); } @@ -420,19 +420,23 @@ class BleReceive { let name = ""; switch (type) { case 0x02: - name = '弱光'; + // name = '弱光'; + name=1; break; case 0x04: name = '工作光'; break; case 0x01: - name = '强光'; + // name = '强光'; + name=0; break; case 0x03: - name = '爆闪'; + // name = '爆闪'; + name=2; break; case 0x00: - name = '关闭'; + // name = '关闭'; + name=3; break; } return name; @@ -472,8 +476,7 @@ class BleReceive { formData.statu = warn; formData.xuhang = lightingTime; - console.log("7305解析结果 - 电量:", batteryLevel, "续航:", lightingTime, "完整数据:", formData); - + let recCnt = recArr.find(v => { return v.key.replace(/\//g, "").toLowerCase() === f.device.detailPageUrl.replace(/\//g, '').toLowerCase(); @@ -484,10 +487,10 @@ class BleReceive { if (!recCnt) { if (batteryLevel <= 20) { // 会弹出两个框,暂且注释掉这段代码 - // uni.showModal({ - // content: "设备电量低", - // title: "提示" - // }); + uni.showModal({ + content: "设备'"+f.device.deviceName+"'电量低", + title: "提示" + }); } } @@ -518,7 +521,7 @@ class BleReceive { if (receiveData.sta_PowerPercent<=20) { uni.showModal({ title: "提示", - content: "设备电量低", + content: "设备'"+f.device.deviceName+"'电量低", showCancel: false }); } @@ -547,7 +550,7 @@ class BleReceive { if (receiveData.sta_battery<=20) { uni.showModal({ title: "提示", - content: "设备电量低", + content: "设备'"+f.device.deviceName+"'电量低", showCancel: false }); } @@ -577,7 +580,7 @@ class BleReceive { if (receiveData.sta_PowerPercent<=20) { uni.showModal({ title: "提示", - content: "设备电量低", + content: "设备'"+f.device.deviceName+"'电量低", showCancel: false }); } diff --git a/utils/request.js b/utils/request.js index a25cc90..6faf71e 100644 --- a/utils/request.js +++ b/utils/request.js @@ -1,5 +1,5 @@ import config from '../config/index.js'; -export const env = 'production'; //production development //开发of线上 改这里就行 +export const env = 'development'; //production development //开发of线上 改这里就行 const BASE = config[env]; const request = (options) => { console.log("options" + JSON.stringify(options), BASE.BASE_URL)