package com.agileboot.system.notice.service;

import com.agileboot.common.mybatis.core.page.PageR;
import com.agileboot.system.notice.dto.NoticeAddDTO;
import com.agileboot.system.notice.dto.NoticeQuery;
import com.agileboot.system.notice.dto.NoticeUpdateDTO;
import com.agileboot.system.notice.dto.NoticeVO;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Positive;

import java.util.List;

public interface ISysNoticeService {
    PageR<NoticeVO> getNoticeList(NoticeQuery query);

    NoticeVO getNoticeInfo(@NotNull @Positive Long noticeId);

    void addNotice(NoticeAddDTO addCommand);

    void updateNotice(NoticeUpdateDTO updateCommand);

    void deleteNotice(List<Integer> noticeIds);
}
