|
|
@@ -88,11 +88,11 @@ public class EnergyService {
|
|
|
EnergySandboxDTO dto = new EnergySandboxDTO();
|
|
|
List<MemberEnergyDTO> members = new ArrayList<>();
|
|
|
|
|
|
- // 1. 收集所有家庭成员(家长 + 孩子)
|
|
|
+ // 1. 收集所有家庭成员(查询全部用户,后续通过 hasParentRole 精确过滤 parent)
|
|
|
+ // 注意:多角色用户(roles 包含 parent 但当前 role 切换为 child)不会被排除
|
|
|
List<User> parents = userMapper.selectList(
|
|
|
new LambdaQueryWrapper<User>()
|
|
|
.eq(User::getFamilyId, familyId)
|
|
|
- .ne(User::getRole, "child") // 排除以child角色为主的账号(用children表管理)
|
|
|
);
|
|
|
// 过滤掉单纯是 teacher/admin 角色且不是 parent 角色的用户
|
|
|
// 注意:用户可能拥有多角色(如 parent + teacher),切换到 teacher 时 role 字段为 teacher,
|