package com.muchinfo.mtp3interface.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.muchinfo.mtp3pojos.entity.Performanceplan;
import com.muchinfo.mtp3pojos.vo.performance.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * <p>
 * 履约计划表 （履约完成导历史) Mapper 接口
 * </p>
 *
 * @author XKF
 * @since 2024-11-08
 */
@Mapper
public interface IPerformanceplanMapper extends BaseMapper<Performanceplan> {

    IPage<PayPerformanceResult> query(IPage<PayPerformanceResult> page, @Param("vo") PayPerformanceParam param);

    IPage<PayPerformanceResult> queryHis(IPage<PayPerformanceResult> page, @Param("vo")PayPerformanceParam param);

    PayPerformancePlanResult queryPerformancePlanDetail(@Param("planid")String planid);

    PayPerformancePlanResult getHisPerformancePlanDetail(@Param("planid")String planid, @Param("histradedate")String histradedate);

    PerformanceDelayResult queryPerformanceDelayList(@Param("planid")String planid);

    PayPerformanceReportResult queryReportInfo(@Param("planid")String relatedOrderId, @Param("buyOrSell")Integer buyorsell);

    PayPerformanceReportResult queryHisReportInfo(@Param("planid")String relatedOrderId, @Param("buyOrSell")Integer buyorsell, @Param("histradedate")String histradedate);
}
