package com.cpop.oam.business.service;

import com.cpop.oam.business.bo.DataImportBo;
import com.cpop.oam.business.bo.DataImportPageBo;
import com.cpop.oam.business.vo.DataImportPageVo;
import com.cpop.system.business.vo.SysFileVo;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;
import com.cpop.oam.business.entity.DataImport;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;

/**
 * oam-数据导入表 服务层。
 *
 * @author DB
 * @since 2023-12-10
 */
public interface DataImportService extends IService<DataImport> {

    /**
     * 数据导入分页查询
     * @author DB
     * @since 2023/12/10
     * @param bo 请求参数
     * @return R<Page<DataImportPageVo>>
     */
    Page<DataImportPageVo> getDataImportPage(DataImportPageBo bo);

    /**
     * 新增数据导入
     * @author DB
     * @since 2023/12/10
     * @param bo 请求参数
     */
    void insertDataImport(DataImportBo bo);

    /**
     * 立即导入
     * @author DB
     * @since 2023/12/10
     */
    void importNow(String id);

    /**
     * 导入
     * @author DB
     * @since 2023/12/10
     * @param dataImport 导入详情
     */
    void importNow(DataImport dataImport);

    /**
     * 检查上传的文件
     * @author DB
     * @since 2023/12/10
     * @param file 文件
     */
    SysFileVo checkImportData(MultipartFile file);
}
