class RoleService extends GenericReactiveCrudService<RoleEntity, String> {


    private final DefaultDimensionUserService dimensionUserService;


    /**
     * 绑定用户到角色
     *
     * @param userIdList    用户ID
     * @param roleIdList    角色Id
     * @param removeOldBind 是否删除旧的绑定信息
     * @return void
     * @see DimensionUserBindUtils#bindUser(DefaultDimensionUserService, Collection, String, Collection, boolean)
     */
    @Transactional
    public Mono<Void> bindUser(@NotNull Collection<String> userIdList,
                               @Nullable Collection<String> roleIdList,
                               boolean removeOldBind) {<FILL_FUNCTION_BODY>}

    /**
     * 绑定用户到角色
     *
     * @param userIdList 用户ID
     * @param roleIdList 角色Id
     * @return void
     * @see DimensionUserBindUtils#bindUser(DefaultDimensionUserService, Collection, String, Collection, boolean)
     */
    @Transactional
    public Mono<Void> unbindUser(@NotNull Collection<String> userIdList,
                                 @Nullable Collection<String> roleIdList) {

        if (CollectionUtils.isEmpty(userIdList)) {
            return Mono.empty();
        }
        return DimensionUserBindUtils
            .unbindUser(dimensionUserService,
                        userIdList,
                        DefaultDimensionType.role.getId(),
                        roleIdList);

    }


}


        if (CollectionUtils.isEmpty(userIdList)) {
            return Mono.empty();
        }

        return DimensionUserBindUtils
            .bindUser(dimensionUserService,
                      userIdList,
                      DefaultDimensionType.role.getId(),
                      roleIdList,
                      removeOldBind);

    
<no_super_class>