package cn.gov.customs.wxjy.task.dao;

import java.util.Date;
import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import cn.gov.customs.wxjy.task.pojo.TaskLog;
import cn.gov.customs.wxjy.task.pojo.TaskLogQuery;

/**
 * 定时任务执行时间记录Mapper接口
 *
 * @author xiong
 * @date 2025-12-17
 */
@Mapper
public interface TaskLogMapper {
    /**
     * 查询定时任务执行时间记录
     *
     * @param pkTaskLog 定时任务执行时间记录主键
     * @return 定时任务执行时间记录
     */
    public TaskLog selectByPkTaskLog(String pkTaskLog);

    /**
     * 查询定时任务执行时间记录列表
     *
     * @param taskLog 定时任务执行时间记录
     * @return 定时任务执行时间记录集合
     */
    public List<TaskLog> selectList(TaskLogQuery taskLog);

    /**
     * 新增定时任务执行时间记录
     *
     * @param taskLog 定时任务执行时间记录
     * @return 结果
     */
    public int insert(TaskLog taskLog);

    /**
     * 修改定时任务执行时间记录
     *
     * @param taskLog 定时任务执行时间记录
     * @return 结果
     */
    public int update(TaskLog taskLog);

    /**
     * 删除定时任务执行时间记录
     *
     * @param pkTaskLog 定时任务执行时间记录主键
     * @return 结果
     */
    public int deleteByPkTaskLog(String pkTaskLog);

    /**
     * 批量删除定时任务执行时间记录
     *
     * @param pkTaskLogs 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteByPkTaskLogs(String[] pkTaskLogs);

    /**
     * 逻辑删除定时任务执行时间记录
     *
     * @param pkTaskLog 定时任务执行时间记录主键
     * @return 结果
     */
    public int logicDelete(String pkTaskLog);

    Date getMaxBussinessDate(String bussinessType);
}
