|
|
@@ -198,10 +198,17 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
onLoad(options) {
|
|
|
- // 从 storage 获取当前用户ID(优先 currentChildId,其次 currentMemberId,最后回退登录 userId)
|
|
|
- var currentUserId = uni.getStorageSync('currentChildId') || uni.getStorageSync('currentMemberId') || uni.getStorageSync('userId') || ''
|
|
|
- this.memberId = options.memberId ? parseInt(options.memberId) : (currentUserId ? parseInt(currentUserId) : null)
|
|
|
- // 默认显示当前用户的报告;"全部"可切换查看所有成员
|
|
|
+ // 默认选中本人(登录用户):
|
|
|
+ // - 无显式 memberId 时用登录 userId 过滤,后端 getMemberReports 兼容 users.id / family_members.id;
|
|
|
+ // - 不再优先 currentChildId/currentMemberId——切换视角进入时默认也是本人,点成员 chip 才切换
|
|
|
+ if (options.memberId) {
|
|
|
+ this.memberId = parseInt(options.memberId, 10)
|
|
|
+ } else {
|
|
|
+ var loginUserId = uni.getStorageSync('userId') || ''
|
|
|
+ this.memberId = loginUserId ? parseInt(loginUserId, 10) : null
|
|
|
+ // 成员列表返回后把 chip 高亮从 users.id 归一到本人的 family_members.id(_filterId)
|
|
|
+ this._selfUserId = loginUserId
|
|
|
+ }
|
|
|
this.selectedMemberId = this.memberId
|
|
|
this.loadMembers()
|
|
|
this.loadData()
|
|
|
@@ -306,12 +313,24 @@ export default {
|
|
|
var m = res.data[i]
|
|
|
list.push({
|
|
|
id: m.id,
|
|
|
+ userId: m.userId,
|
|
|
nickname: m.nickname,
|
|
|
avatar: m.avatar,
|
|
|
_filterId: m.id || m.userId
|
|
|
})
|
|
|
}
|
|
|
self.members = list
|
|
|
+ // 默认选中本人时,把 chip 高亮从 users.id 归一到本人的 family_members.id(_filterId):
|
|
|
+ // 两个 id 后端返回同一份报告,数据已在 onLoad 拉取过,这里只修高亮、不重复请求
|
|
|
+ if (self._selfUserId && self.selectedMemberId != null &&
|
|
|
+ Number(self.selectedMemberId) === Number(self._selfUserId)) {
|
|
|
+ for (var j = 0; j < list.length; j++) {
|
|
|
+ if (list[j].userId != null && Number(list[j].userId) === Number(self._selfUserId)) {
|
|
|
+ self.selectedMemberId = list[j]._filterId
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}).catch(function(e) {
|
|
|
console.log('获取家庭成员失败', e)
|