package com.dxhy.core.service.singletable;

import com.dxhy.api.model.excelExport.TDxExcelExportlog;
import com.dxhy.common.service.MpBaseService;

import java.util.List;
import java.util.Map;

/**
 * excel导出记录申请表业务处理接口
 *
 * @author user
 */

public interface IExcelExportlogService extends MpBaseService<TDxExcelExportlog> {
    /**
     * 删除历史导出记录
     *
     * @author 陈刚扬
     * @date 2021/1/28
     * @param
     * @return void
     */
    void deleteExportLog();

    /**
     * 锁定并返回需要导出excel的日志记录 包括未导出的、以及执行6个小时还没有导出完成的excel 不包括出错的excel
     *
     * @param dbName
     *            数据源名称
     * @param userName
     *            用户账号
     * @return
     *
     */
    List<TDxExcelExportlog> getNeedExportLog(String dbName, String userName);

    /**
     * 记录日志的开始导出时间
     *
     * @param id
     *            记录主键
     * @param dbName
     *
     */
    void updateStart(long id, String dbName);

    /**
     * 记录日志的导出完成状态
     *
     * @author 陈刚扬
     * @date 2020/10/29
     * @param id
     * @param excelFile
     * @param dbName
     * @return void
     */
    void updateSucc(long id, String excelFile, String dbName);

    /**
     * 功能描述
     *
     * @author 陈刚扬
     * @date 2020/10/29
     * @param id
     * @param errmsg
     * @param dbName
     * @return void
     */
    void updateFail(long id, String errmsg, String dbName);

    /**
     * 功能描述
     *
     * @author 陈刚扬
     * @date 2020/10/29
     * @param pramsMap
     * @return com.dxhy.api.model.excelExport.TDxExcelExportlog
     */
    TDxExcelExportlog excelExportApply(Map<String, Object> pramsMap);
}
