package com.ruoyi.ccdi.project.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.ccdi.project.domain.entity.CcdiBankTagTask;
import org.apache.ibatis.annotations.Param;

/**
 * 流水标签任务 Mapper
 */
public interface CcdiBankTagTaskMapper extends BaseMapper<CcdiBankTagTask> {

    /**
     * 新增任务
     *
     * @param task 任务实体
     * @return 影响行数
     */
    int insertTask(CcdiBankTagTask task);

    /**
     * 更新任务
     *
     * @param task 任务实体
     * @return 影响行数
     */
    int updateTask(CcdiBankTagTask task);

    /**
     * 查询项目运行中的任务
     *
     * @param projectId 项目ID
     * @return 任务实体
     */
    CcdiBankTagTask selectRunningTaskByProjectId(@Param("projectId") Long projectId);

    /**
     * 查询项目最近一次失败任务
     *
     * @param projectId 项目ID
     * @return 任务实体
     */
    CcdiBankTagTask selectLatestFailedTaskByProjectId(@Param("projectId") Long projectId);
}
