package com.jwipc.spe.logic;

import cn.hutool.core.lang.Pair;
import com.jwipc.page.PageView;
import com.jwipc.spe.dto.*;
import com.jwipc.spe.model.query.AppraiseRectifiedNoticeQuery;

import java.util.Set;

/**
 * <p> </p>
 *
 * @author BOGON
 * @version 1.0
 * @since JDK 1.8
 */
public interface RectifiedNoticeLogic {
    SupAppraisePlanSupplierBaseDTO getAppraisePlan(Long supplierPlanId);

    void submitRectification(AppraiseRectifiedNoticeSaveDTO saveDTO);

    PageView getList(AppraiseRectifiedNoticeQuery query);

    Pair<SupAppraiseRectifiedNoticeBaseDTO, AppraiseReportDTO> getDetail(Long id);

    PageView getMeasuresList(Long id);

    PageView getExamineLogList(Long noticeId);

    void updateRectification(AppraiseRectifiedNoticeUpdateDTO updateDTO);
    void updateRectification1(AppraiseRectifiedNoticeUpdateDTO updateDTO);

    void submitRectified(Long noticeId);

    PageView getConfirmList(AppraiseRectifiedNoticeQuery query);

    void submitConfirm(Long noticeId, String examineView, Integer passFlag);

    void submitExamine(AppraiseRectifiedNoticeExamineSaveDTO saveDTO);

    Set<String> getAppraiseItem(Long supplierPlanId);


    void saveBatchNotice(String ids, Long planId);

    void updateNotice(AppraiseRectifiedNoticeSaveDTO saveDTO);

    PageView getAllList(AppraiseRectifiedNoticeQuery query);
}