package org.dromara.wflow.workflow.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.dromara.wflow.bean.entity.WflowNotifys;
import org.dromara.wflow.workflow.bean.dto.NotifyDto;

import java.util.List;

/**
 * @author : willian fu
 * @date : 2022/9/17
 */
public interface NotifyService {
    /**
     * 消息通知接口
     * @param notify 通知参数
     */
    void notify(NotifyDto notify);

    /**
     * 推送通知消息
     * @param title
     * @param content
     * @param target
     */
    void pushMessage(String title,String content,Long target);

    /**
     * 分页获取通知消息
     * @param pageSize 分页尺寸
     * @param pageNo 页码
     * @return 通知
     */
    Page<WflowNotifys> getNotify(Integer pageSize, Integer pageNo);

    /**
     * 消息已读
     * @param ids 消息通知ID
     */
    void readNotify(List<String> ids);
}
