670增加去连接蓝牙,其它体验问题小调整

This commit is contained in:
liub
2025-09-25 09:59:37 +08:00
parent 497cce1e45
commit 17e76f9fa8
10 changed files with 340 additions and 160 deletions

View File

@ -247,7 +247,8 @@
:buttonBgColor="Status.Pop.buttonBgColor" :buttonTextColor="Status.Pop.buttonTextColor"
:iconUrl="Status.Pop.iconUrl" :message="Status.Pop.message" :buttonText="Status.Pop.buttonText"
@buttonClick="HidePop" @closePop="closePop" @cancelPop="closePop" :visiblePrompt="Status.Pop.visiblePrompt"
:promptTitle="Status.Pop.promptTitle" v-model="Status.Pop.modelValue" />
:promptTitle="Status.Pop.promptTitle" v-model="Status.Pop.modelValue" :showCancel="Status.Pop.showCancel"
:buttonCancelText="Status.Pop.buttonCancelText" />
<!-- 下方菜单 -->
<BottomSlideMenuPlus :config="Status.BottomMenu" @close="closeMenu" @itemClick="handleItemClick"
@ -311,15 +312,19 @@
},
Pop: {
showPop: false, //是否显示弹窗
popType: 'custom',
bgColor: '#383934bd',
borderColor: '#BBE600',
textColor: '#ffffffde',
buttonBgColor: '#BBE600',
buttonTextColor: '#232323DE',
iconUrl: '',
message: '您确定要这样做吗?',
buttonText: '确定',
showCancel: false,
buttonCancelText: '取消',
clickEvt: '',
visiblePrompt: false,
promptTitle: '设备名称',
@ -485,6 +490,7 @@
return false;
});
if (!f) {
these.showBleUnConnect();
these.getDetail();
return;
}
@ -516,6 +522,40 @@
},
methods: {
showBleUnConnect() {
this.showPop({
message: "蓝牙未连接过该设备,请使用蓝牙重新添加该设备",
iconUrl: "/static/images/6155/DeviceDetail/uploadErr.png",
borderColor: "#e034344d",
buttonBgColor: "#E03434",
buttonText: '去连接',
showCancel: true,
cancelCallback: () => {
this.closePop();
},
okCallback: function() {
console.log("1111");
uni.navigateTo({
url: "/pages/common/addBLE/addEquip",
events: {
BindOver: function(data) {
console.log(data)
}
},
success: function(res) {
// 通过eventChannel向被打开页面传送数据
res.eventChannel.emit('detailData', {
data: these.device
})
},
fail(ex) {
console.log("跳转失败", ex);
}
})
}
});
},
gotoMap() {
this.detailData.longitude = this.formData.Lon;
this.detailData.latitude = this.formData.Lat;
@ -545,12 +585,16 @@
that.formData.address = res.address;
let personnelInfo = res.personnelInfo;
if (personnelInfo) {
that.formData.company = personnelInfo.unitName;
that.formData.usrname = personnelInfo.name;
that.formData.company = personnelInfo.name;
that.formData.usrname = personnelInfo.unitName;
that.formData.job = personnelInfo.position;
that.formData.usrid = personnelInfo.code
}
that.formData.imei=res.deviceImei;
these.device.deviceImei=res.deviceImei;
if(that.formData.imei){
that.initMQ();
}
let dic = {
"3": "hight",
"2": "center",
@ -670,7 +714,7 @@
return new Promise((resolve, reject) => {
if (mqttClient) {
console.log("无需再次初始化")
// console.log("无需再次初始化")
resolve();
return;
}
@ -735,7 +779,10 @@
qos: 1
});
if (flag) {
resolve();
resolve({
code: 200,
msg: 'MQTT直连发送成功'
});
return;
}
console.log("MQTT未连接无法发布消息")
@ -994,6 +1041,7 @@
});
} else {
requestSend();
these.showBleUnConnect();
}
}
@ -1062,7 +1110,7 @@
} else {
requestCloseSOS();
these.showBleUnConnect();
}
}
@ -1138,13 +1186,31 @@
ins_SOSGrade: [dic.mqtt[type]]
};
let requestSend = () => {
this.sendMQ(json).then((res) => {
console.log("4g发送成功");
json.deviceId = these.device.id;
json.deviceImei = these.device.deviceImei;
api.sendSos(json);
let message = {
instructValue: json.ins_SOSGrade[0]
};
message.deviceId = these.device.id;
message.deviceImei = these.device.deviceImei;
let requestSend = () => {
message.isBluetooth = false;
api.sendSos(message).then((res) => {
console.log("res=>", res);
if (res && res.code == 200) {
console.log("接口发送SOS指令成功");
return Promise.resolve({
code: 200,
msg: '操作成功'
});
} else {
return this.sendMQ(json);
}
}).then((res) => {
console.log("res=", res);
}).catch((ex) => {
console.log("ex=", ex);
these.showPop({
@ -1179,17 +1245,19 @@
ble.sendData(f.deviceId, buffer, f.writeServiceId, f.wirteCharactId, 10).then(
() => {
console.log("蓝牙发送成功了");
hideLoading(these);
these.setBleFormData();
message.isBluetooth = true;
api.sendSos(message);
}).catch((ex) => {
//使用4G发送
console.log("蓝牙发送失败,转4g发送", ex);
requestSend();
});
} else {
console.log("找不到蓝牙设备");
requestSend();
these.showBleUnConnect();
}
}
@ -1367,6 +1435,7 @@
} else {
console.log("找不到蓝牙设备使用4G发送")
requestSend();
these.showBleUnConnect();
}
}
@ -1745,37 +1814,9 @@
var sendVideo = (videoPath) => {
let f = these.getDevice();
if (!f) {
these.showPop({
message: "蓝牙未连接,请连接后再试",
iconUrl: "/static/images/6155/DeviceDetail/uploadErr.png",
borderColor: "#e034344d",
buttonBgColor: "#E03434",
buttonText: '去连接',
okCallback: function() {
console.log("1111");
uni.navigateTo({
url: "/pages/common/addBLE/addEquip",
events: {
BindOver: function(data) {
console.log(data)
}
},
success: function(res) {
// 通过eventChannel向被打开页面传送数据
res.eventChannel.emit('detailData', {
data: these.device
})
},
fail(ex) {
console.log("跳转失败", ex);
}
})
}
});
these.showBleUnConnect();
return;
}
let uploadVideo = () => {
@ -2014,6 +2055,8 @@
cancelCallback: null,
popType: 'custom',
buttonText: '确定',
showCancel: false,
buttonCancelText: '取消',
clickEvt: ''
};
if (!option) {
@ -2102,6 +2145,7 @@
if (!f) {
//走4G通道
requestSend();
these.showBleUnConnect();
return;
}
showLoading(this, {