package cn.novalon.gym.manage.notify.core.repository;

import cn.novalon.gym.manage.notify.core.domain.SysNotice;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;

public interface ISysNoticeRepository {

    Flux<SysNotice> findByDeletedAtIsNull();

    Flux<SysNotice> findByStatusAndDeletedAtIsNull(String status);

    Mono<SysNotice> findById(Long id);

    Mono<SysNotice> save(SysNotice notice);

    Mono<Void> deleteByIdAndDeletedAtIsNull(Long id);
}
