package com.yh.saas.plugin.news.service;

import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.yh.saas.plugin.news.command.CircularManagementReceiveCommand;
import com.yh.saas.plugin.news.command.CircularManagementReceiveSearchCommand;
import com.yh.saas.plugin.news.entity.CircularManagementReceive;
import com.yh.saas.plugin.news.vo.CircularManagementReceiveVo;

import java.util.List;

/**
 * <p>
 * 记录体系通函接收表 服务类
 * </p>
 *
 * @author wxg
 * @since 2019-10-15
 */
public interface INewsCircularManagementReceiveService extends IService<CircularManagementReceive> {

    /**
     * 查询通知通函信息列表
     *
     * @param example
     * @return Page<CircularManagementReceiveVo>
     */
    Page<CircularManagementReceiveVo> queryCircularManagementReceiveList(
            CircularManagementReceiveSearchCommand example);

    /**
     * 查询通知通函历史详情信息
     *
     * @param id
     * @return CircularManagementInfoVo
     */
    List<CircularManagementReceiveVo> getInfoHisById(String id);

    /**
     * 接收
     *
     * @param example
     * @return
     */
    void receiveCircularManagementInfo(CircularManagementReceiveCommand example);
    /**
     * 接收
     *
     * @param example
     * @return
     */
    void receiveCircularManagement(CircularManagementReceiveCommand example);
    /**
     * 接收
     *
     * @param example
     * @return
     */
    void feedbackCircularManagementInfo(CircularManagementReceiveCommand example);

    /**
     * 批量接收
     *
     * @param example
     */
    void receiveInfos(CircularManagementReceiveCommand example);

    /**
     * 保存
     *
     * @param example
     * @return
     */
    void saveCircularManagementInfo(CircularManagementReceiveCommand example);

    /**
     * 查询明细
     *
     * @param id
     * @return
     */
    CircularManagementReceiveVo getReceiveDetail(String id);
}
