package com.hzs.member.base.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hzs.common.domain.member.detail.CuMemberAchieveLog;
import com.hzs.member.base.vo.CuMemberAchieveLogVO;
import com.hzs.system.sys.dto.ApprovalBusinessResultDTO;

import java.util.List;

/**
 * 注水业绩记录表 服务类
 */
public interface ICuMemberAchieveLogService extends IService<CuMemberAchieveLog> {

    /**
     * 特殊业务-注水业绩记录查询
     **/
    List<CuMemberAchieveLogVO> queryMemberAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO);

    /**
     * 特殊业务-注水业绩-审核列表
     **/
    List<CuMemberAchieveLogVO> queryTryAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO);

    /**
     * 查询某一期历史业绩
     **/
    List<CuMemberAchieveLogVO> queryMemberAchieveHistoryList(List<CuMemberAchieveLogVO> calList);

    /**
     * 查询最大审核次数
     **/
    Integer selectByMaxApproveNumber(Long pkMember, int approveStatus);

    /**
     * 注水业绩
     **/
    CuMemberAchieveLogVO infusingWater(CuMemberAchieveLogVO cuMemberAchieveLogVO);

    /**
     * 发起签呈
     **/
    CuMemberAchieveLogVO petition(CuMemberAchieveLogVO cuMemberAchieveLogVO);

    /**
     * 审核注水业绩
     **/
    boolean toExamine(ApprovalBusinessResultDTO approvalBusinessResultDTO);

    /**
     * 校验是否存在未审核数据
     **/
    List<CuMemberAchieveLogVO> checkAchieveList(CuMemberAchieveLogVO memberAchieveLogVO);
}
