package com.example.system.service;

import com.example.system.model.CompetitionTable;
import com.example.system.model.ResultCompetitionTable;

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

public interface CompetitionService {
    // 添加竞赛信息
    CompetitionTable addCompetition(CompetitionTable competition);

    // 尝试删除指定ID的竞赛信息，返回一个布尔值指示是否成功执行删除操作
    boolean deleteCompetition(Long id);

    // 更新竞赛信息
    CompetitionTable updateCompetition(CompetitionTable competition);

    // 根据ID获取竞赛信息
    Optional<CompetitionTable> getCompetitionById(Long id);

    // 获取所有竞赛信息的列表
    List<ResultCompetitionTable> getAllCompetitions();

    // 根据搜索词条搜索竞赛信息
    List<CompetitionTable> searchCompetitionsByName(String searchTerm);
}