feat(device): 设备连接成功后缓存关联用户信息;添加成员时携带 SN

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
17792275749
2026-05-26 16:46:10 +08:00
co-authored by Claude Sonnet 4.6
parent 87b789f5f3
commit 85402f2ec1
4 changed files with 31 additions and 3 deletions
+1 -1
View File
@@ -1,10 +1,10 @@
{ {
"pages": [ "pages": [
"pages/equipmentMember/equipmentMember",
"pages/login/login", "pages/login/login",
"pages/home/home", "pages/home/home",
"pages/connectedDevice/connectedDevice", "pages/connectedDevice/connectedDevice",
"pages/connectedWifi/connectedWifi", "pages/connectedWifi/connectedWifi",
"pages/equipmentMember/equipmentMember",
"pages/supplementPersonal/supplementPersonal", "pages/supplementPersonal/supplementPersonal",
"pages/addMember/addMember", "pages/addMember/addMember",
"pages/equipment/equipment", "pages/equipment/equipment",
+1
View File
@@ -303,6 +303,7 @@ Page({
...(this.data.selectedMember ?? {}), ...(this.data.selectedMember ?? {}),
...(serverResult ?? {}), ...(serverResult ?? {}),
parentUserId: userInfo?.userId ?? '', parentUserId: userInfo?.userId ?? '',
sn: lefuService.deviceInfo?.serialNumber ?? '',
scaleDeviceId: lefuService.deviceInfo?.serialNumber ?? '', scaleDeviceId: lefuService.deviceInfo?.serialNumber ?? '',
realname: name.trim(), realname: name.trim(),
idCard, idCard,
+28
View File
@@ -45,6 +45,13 @@ interface DeviceItem {
realname: string realname: string
/** 蓝牙连接状态,接口不返回,由业务层更新 */ /** 蓝牙连接状态,接口不返回,由业务层更新 */
connected: boolean connected: boolean
userId: string
sex: number
height: number
birthday: string
avatar: string | null
relationType: string | null
sex_dictText: string
} }
Page({ Page({
@@ -82,6 +89,13 @@ Page({
connectDeviceInfo: item.connectDeviceInfo ?? '', connectDeviceInfo: item.connectDeviceInfo ?? '',
realname: item.realname, realname: item.realname,
connected: false, connected: false,
userId: item.userId,
sex: item.sex,
height: item.height,
birthday: item.birthday,
avatar: item.avatar,
relationType: item.relationType,
sex_dictText: item.sex_dictText,
} }
}) })
this.setData({ deviceList: list }, () => { this.setData({ deviceList: list }, () => {
@@ -119,6 +133,7 @@ Page({
/** 点击「连接」:扫描周边设备,找到 deviceId 匹配的设备后连接 */ /** 点击「连接」:扫描周边设备,找到 deviceId 匹配的设备后连接 */
onTapConnect(e: WechatMiniprogram.TouchEvent) { onTapConnect(e: WechatMiniprogram.TouchEvent) {
const userInfo = e.currentTarget.dataset.userInfo as DeviceItem
const connectDeviceInfoStr = e.currentTarget.dataset.connectDeviceInfo as string const connectDeviceInfoStr = e.currentTarget.dataset.connectDeviceInfo as string
let cachedDevice: RawDevice | null = null let cachedDevice: RawDevice | null = null
try { try {
@@ -151,6 +166,19 @@ Page({
lefuService.onDeviceConnect(() => { lefuService.onDeviceConnect(() => {
wx.hideLoading() wx.hideLoading()
wx.setStorageSync('connectDeviceInfo', matched.raw) wx.setStorageSync('connectDeviceInfo', matched.raw)
// 连接成功后缓存当前设备关联的用户信息
if (userInfo) {
wx.setStorageSync('userInfo', {
userId: userInfo.userId,
realname: userInfo.realname,
sex: userInfo.sex,
height: userInfo.height,
birthday: userInfo.birthday,
avatar: userInfo.avatar,
relationType: userInfo.relationType,
sex_dictText: userInfo.sex_dictText,
})
}
}) })
lefuService.onDeviceInfo((info) => { lefuService.onDeviceInfo((info) => {
this._markConnected(info.serialNumber as string) this._markConnected(info.serialNumber as string)
+1 -2
View File
@@ -43,11 +43,10 @@
<block wx:else> <block wx:else>
<!-- 未连接:双按钮 连接 / 成员管理 --> <!-- 未连接:双按钮 连接 / 成员管理 -->
<view class="card-actions card-actions-double"> <view class="card-actions card-actions-double">
<view class="btn-ghost-half" data-connect-device-info="{{ item.connectDeviceInfo }}" bind:tap="onTapConnect">连接</view> <view class="btn-ghost-half" data-connect-device-info="{{ item.connectDeviceInfo }}" data-user-info="{{ item }}" bind:tap="onTapConnect">连接</view>
<view class="btn-ghost-half" bind:tap="onTapMember">成员管理</view> <view class="btn-ghost-half" bind:tap="onTapMember">成员管理</view>
</view> </view>
</block> </block>
</view> </view>
</block> </block>
</view> </view>