package com.gxwebsoft.oa.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.gxwebsoft.common.core.web.PageResult;
import com.gxwebsoft.oa.entity.Notice;
import com.gxwebsoft.oa.entity.Task;
import com.gxwebsoft.oa.entity.TaskRecord;
import com.gxwebsoft.oa.param.NoticeParam;

import java.util.List;

/**
 * 消息记录表Service
 *
 * @author 科技小王子
 * @since 2023-03-22 14:07:26
 */
public interface NoticeService extends IService<Notice> {

    /**
     * 分页关联查询
     *
     * @param param 查询参数
     * @return PageResult<Notice>
     */
    PageResult<Notice> pageRel(NoticeParam param);

    /**
     * 关联查询全部
     *
     * @param param 查询参数
     * @return List<Notice>
     */
    List<Notice> listRel(NoticeParam param);

    /**
     * 根据id查询
     *
     * @param noticeId ID
     * @return Notice
     */
    Notice getByIdRel(Integer noticeId);

    void add();

    void addNotice(Task task);

    void addLetter(TaskRecord taskRecord);

    void addTodo(Task task);
}
