| | |
| | | if (householdEntity.getRelationship()==1){ |
| | | // 查询对应的用户 |
| | | User user = userService.getById(householdEntity.getAssociatedUserId()); |
| | | // 判断角色 |
| | | if (!Strings.isBlank(user.getRoleId())){ |
| | | List<String> stringList = Arrays.asList(user.getRoleId().split(",")); |
| | | // 查询场所 |
| | | QueryWrapper<PlaceEntity> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("is_deleted",0).eq("principal_user_id",user.getId()); |
| | | List<PlaceEntity> placeEntityList = placeService.list(queryWrapper); |
| | | if (stringList.size()>1){ |
| | | // 查询是否对应有场所负责人,如果有则不删除,如果没有则删除对应的角色 |
| | | List<String> arrayList = new ArrayList<>(); |
| | | if (placeEntityList.size()==0){ |
| | | for (String roleId : stringList) { |
| | | if (!roleId.equals("1717429059648606209")){ |
| | | arrayList.add(roleId); |
| | | // 判断是否还绑定其他的房屋,如果有,则不操作用户 |
| | | QueryWrapper<HouseholdEntity> wrapper = new QueryWrapper<>(); |
| | | wrapper.eq("is_deleted",0).eq("associated_user_id",user.getId()); |
| | | List<HouseholdEntity> householdEntityList = list(wrapper); |
| | | if (householdEntityList.size()==1){ |
| | | // 判断角色 |
| | | if (!Strings.isBlank(user.getRoleId())){ |
| | | List<String> stringList = Arrays.asList(user.getRoleId().split(",")); |
| | | // 查询场所 |
| | | QueryWrapper<PlaceEntity> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("is_deleted",0).eq("principal_user_id",user.getId()); |
| | | List<PlaceEntity> placeEntityList = placeService.list(queryWrapper); |
| | | // 即没有房屋和场所了就删除对应的居民角色 |
| | | if (placeEntityList.size()==0) { |
| | | // 查看当前用户的角色是否只有一个 |
| | | if (stringList.size() > 1) { |
| | | // 查询是否对应有场所负责人,如果有则不删除,如果没有则删除对应的角色 |
| | | List<String> arrayList = new ArrayList<>(); |
| | | for (String roleId : stringList) { |
| | | if (!roleId.equals("1717429059648606209")) { |
| | | arrayList.add(roleId); |
| | | } |
| | | } |
| | | user.setRoleId(StringUtils.join(arrayList, ",")); |
| | | // 更新用户 |
| | | userService.updateById(user); |
| | | } else { |
| | | // 删除当前用户 |
| | | userService.removeById(user.getId()); |
| | | } |
| | | } |
| | | user.setRoleId(StringUtils.join(arrayList, ",")); |
| | | // 更新用户 |
| | | userService.updateById(user); |
| | | }else { |
| | | // 查询是否对应有场所负责人,如果有则不删除,如果没有则删除对应的用户 |
| | | if (placeEntityList.size()==0){ |
| | | userService.removeById(user.getId()); |
| | | } |
| | | } |
| | | } |