|
|
@@ -272,6 +272,18 @@ public class AppDeviceGroupServiceImpl implements AppDeviceGroupService {
|
|
|
update.setId(member.getId());
|
|
|
update.setStatus(0);
|
|
|
deviceGroupMemberMapper.updateById(update);
|
|
|
+
|
|
|
+ // 同步解绑 user_device:删除群组成员时,把该 profile 与该 device 的绑定置为已解绑。
|
|
|
+ // 否则管理端"用户列表"通过 LEFT JOIN user_device ud ON ud.status=1 仍能查到 deviceCodes,
|
|
|
+ // 且前端 user/device 页面也会继续显示该用户绑定了该设备,造成"删除不彻底"的错觉。
|
|
|
+ // 仅解绑本群关联的 deviceCode,不影响该 profile 与其他设备的绑定。
|
|
|
+ Device device = requireDevice(group.getDeviceCode());
|
|
|
+ LambdaUpdateWrapper<UserDevice> wrapper = new LambdaUpdateWrapper<UserDevice>()
|
|
|
+ .eq(UserDevice::getUserId, profileId)
|
|
|
+ .eq(UserDevice::getDeviceCode, device.getDeviceCode())
|
|
|
+ .set(UserDevice::getStatus, 0)
|
|
|
+ .set(UserDevice::getIsPrimary, 0);
|
|
|
+ userDeviceMapper.update(null, wrapper);
|
|
|
}
|
|
|
|
|
|
@Override
|