package com.qqchen.deploy.backend.deploy.repository;

import com.qqchen.deploy.backend.deploy.entity.JenkinsJob;
import com.qqchen.deploy.backend.framework.repository.IBaseRepository;
import org.springframework.stereotype.Repository;

import java.util.Optional;
import java.util.List;

/**
 * Jenkins任务仓库接口
 */
@Repository
public interface IJenkinsJobRepository extends IBaseRepository<JenkinsJob, Long> {
    
    /**
     * 根据外部系统ID、视图ID和任务名称查询任务
     *
     * @param externalSystemId 外部系统ID
     * @param viewId 视图ID
     * @param jobName 任务名称
     * @return 任务对象
     */
    Optional<JenkinsJob> findByExternalSystemIdAndViewIdAndJobName(Long externalSystemId, Long viewId, String jobName);

    /**
     * 根据外部系统ID和视图ID查询所有任务
     *
     * @param externalSystemId 外部系统ID
     * @param viewId 视图ID
     * @return 任务列表
     */
    List<JenkinsJob> findByExternalSystemIdAndViewId(Long externalSystemId, Long viewId);
} 