fix: 删除账号时,同时移除设备类型设置的CQM
This commit is contained in:
parent
8d93dbc7c9
commit
41c958c214
|
|
@ -60,6 +60,9 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser
|
||||||
@Resource
|
@Resource
|
||||||
private RedisTemplate<String, String> redisTemplate;
|
private RedisTemplate<String, String> redisTemplate;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ITBaseDeviceTypeService deviceTypeService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AdminUser getUser(String userName, String password) {
|
public AdminUser getUser(String userName, String password) {
|
||||||
AdminUser user = lambdaQuery()
|
AdminUser user = lambdaQuery()
|
||||||
|
|
@ -314,6 +317,17 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser
|
||||||
.set(AdminUser::getIsDel, true)
|
.set(AdminUser::getIsDel, true)
|
||||||
.eq(AdminUser::getId, id)
|
.eq(AdminUser::getId, id)
|
||||||
.update();
|
.update();
|
||||||
|
LambdaQueryWrapper<TBaseDeviceType> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapper.apply("FIND_IN_SET({0}, cqm_person_id)>0", id);
|
||||||
|
List<TBaseDeviceType> deviceTypes=deviceTypeService.getBaseMapper().selectList(queryWrapper);
|
||||||
|
deviceTypes.forEach(deviceType -> {
|
||||||
|
List<Integer> cqms=Arrays.stream(deviceType.getCqmPersonId().split(",")).map(Integer::parseInt).collect(Collectors.toList());
|
||||||
|
cqms.remove(id);
|
||||||
|
List<AdminUser> adminUsers=listByIds(cqms);
|
||||||
|
deviceType.setCqmPersonId(adminUsers.stream().map(u->String.valueOf(u.getId())).collect(Collectors.joining(",")));
|
||||||
|
deviceType.setCqmPersonName(adminUsers.stream().map(AdminUser::getUserName).collect(Collectors.joining(",")));
|
||||||
|
});
|
||||||
|
deviceTypeService.updateBatchById(deviceTypes);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue