feat(userManagement): 设备成员管理接入成员列表接口与同步标记
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
f750d15150
commit
a80a5cd939
@@ -226,6 +226,9 @@
|
||||
height: 26rpx;
|
||||
font-size: 26rpx;
|
||||
line-height: 26rpx;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@ interface DeviceItem {
|
||||
|
||||
let unsubDevicesList: (() => void) | null = null
|
||||
let unsubConnect: (() => void) | null = null
|
||||
let unsubDisconnected: (() => void) | null = null
|
||||
let scanTimer: number | null = null
|
||||
|
||||
Page({
|
||||
@@ -45,6 +46,34 @@ Page({
|
||||
|
||||
onShow() {
|
||||
this.loadDevices()
|
||||
this._subscribeDisconnected()
|
||||
},
|
||||
|
||||
onHide() {
|
||||
leFuService.stopScan()
|
||||
unsubDisconnected?.()
|
||||
unsubDisconnected = null
|
||||
},
|
||||
|
||||
onUnload() {
|
||||
leFuService.stopScan()
|
||||
unsubDisconnected?.()
|
||||
unsubDisconnected = null
|
||||
unsubDevicesList?.()
|
||||
unsubDevicesList = null
|
||||
unsubConnect?.()
|
||||
unsubConnect = null
|
||||
if (scanTimer !== null) { clearTimeout(scanTimer); scanTimer = null }
|
||||
},
|
||||
|
||||
/** 订阅断开事件:设备长时间未操作或意外断开时,同步页面状态为未连接 */
|
||||
_subscribeDisconnected() {
|
||||
unsubDisconnected?.()
|
||||
unsubDisconnected = leFuService.onDisconnected(() => {
|
||||
this.setData({
|
||||
devices: this.data.devices.map(d => ({ ...d, status: false })),
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
/** 拉取体重设备列表 */
|
||||
@@ -182,8 +211,11 @@ Page({
|
||||
},
|
||||
|
||||
/** 用户管理 */
|
||||
onTapUser() {
|
||||
wx.navigateTo({ url: '/pages/userManagement/userManagement' })
|
||||
onTapUser(e: WechatMiniprogram.TouchEvent) {
|
||||
const item = e.currentTarget.dataset.item as DeviceItem
|
||||
wx.navigateTo({
|
||||
url: `/pages/userManagement/userManagement?sn=${encodeURIComponent(item.sn)}&deviceId=${encodeURIComponent(item.deviceId)}&name=${encodeURIComponent(item.name)}&status=${item.status}&connectDeviceInfo=${encodeURIComponent(item.connectDeviceInfo)}`,
|
||||
})
|
||||
},
|
||||
|
||||
onTapAdd() {
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
<view>设备连接</view>
|
||||
</view>
|
||||
</block>
|
||||
<view class="device-action-btn" bind:tap="onTapUser">
|
||||
<view class="device-action-btn" bind:tap="onTapUser" data-item="{{ item }}">
|
||||
<view>
|
||||
<image src="/images/equipment/users.png"/>
|
||||
</view>
|
||||
|
||||
Reference in New Issue
Block a user