package com.jeeplus.finance.projectRecords.mapper;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jeeplus.finance.projectRecords.domain.CwFillingbatchFile;
import com.jeeplus.finance.projectRecords.domain.CwFillingbatchInfo;
import com.jeeplus.finance.projectRecords.domain.CwFillingbatchProject;
import com.jeeplus.finance.projectRecords.service.dto.CwFillingbatchInfoDTO;
import com.jeeplus.finance.projectRecords.service.dto.CwFillingbatchProjectDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface CwFillingBatchInfoMapper extends BaseMapper<CwFillingbatchInfo> {

    IPage<CwFillingbatchInfoDTO> findList(Page<CwFillingbatchInfoDTO> page,@Param(Constants.WRAPPER) QueryWrapper<CwFillingbatchInfoDTO> queryWrapper);

    List<CwFillingbatchInfoDTO> findProjectList();

    List<CwFillingbatchProject> findProjectByBatchId(@Param("id") String id);

    List<CwFillingbatchProject> findFileByProId(@Param("reportId") String reportId);

    CwFillingbatchInfoDTO findById(@Param("id") String id);

    IPage<CwFillingbatchProjectDTO> getList(Page<CwFillingbatchProjectDTO> page, @Param(Constants.WRAPPER)QueryWrapper<CwFillingbatchProjectDTO> queryWrapper);

    List<CwFillingbatchProjectDTO> findProList(@Param("id") String id);

    void updateInfo(@Param("id") String ids);

    List<String> getIdList();
}
