class DefaultPermissionService extends GenericReactiveCrudService<PermissionEntity, String> {

    @Autowired
    private ApplicationEventPublisher eventPublisher;

    @Override
    public Mono<SaveResult> save(Publisher<PermissionEntity> entityPublisher) {
        return super.save(entityPublisher)
                    .flatMap(e -> ClearUserAuthorizationCacheEvent.all().publish(eventPublisher).thenReturn(e));
    }

    @Override
    public Mono<Integer> updateById(String id, Mono<PermissionEntity> entityPublisher) {
        return super.updateById(id, entityPublisher)
                    .flatMap(e -> ClearUserAuthorizationCacheEvent.all().publish(eventPublisher).thenReturn(e));
    }

    @Override
    public Mono<Integer> deleteById(Publisher<String> idPublisher) {
        return super.deleteById(idPublisher)
                    .flatMap(e -> ClearUserAuthorizationCacheEvent.all().publish(eventPublisher).thenReturn(e));
    }

    @Override
    public ReactiveDelete createDelete() {<FILL_FUNCTION_BODY>}

    @Override
    public ReactiveUpdate<PermissionEntity> createUpdate() {
        return super.createUpdate()
                    .onExecute((ignore, i) -> i
                            .flatMap(e -> ClearUserAuthorizationCacheEvent
                                    .all()
                                    .publish(eventPublisher)
                                    .thenReturn(e)));
    }


}

        return super.createDelete()
                    .onExecute((ignore, i) -> i
                            .flatMap(e -> ClearUserAuthorizationCacheEvent
                                    .all()
                                    .publish(eventPublisher)
                                    .thenReturn(e)));
    
<methods>public non-sealed void <init>() ,public ReactiveRepository<org.hswebframework.web.system.authorization.api.entity.PermissionEntity,java.lang.String> getRepository() <variables>private ReactiveRepository<org.hswebframework.web.system.authorization.api.entity.PermissionEntity,java.lang.String> repository