package org.springblade.modules.martial.service;

import org.springblade.modules.martial.pojo.dto.MoveScheduleGroupDTO;
import org.springblade.modules.martial.pojo.dto.SaveScheduleDraftDTO;

/**
 * Schedule Arrangement Service Interface
 * Responsible for managing schedule arrangements and grouping
 */
public interface IScheduleArrangeService {

    /**
     * Save schedule draft
     *
     * @param dto Schedule draft data
     * @return Success flag
     */
    boolean saveDraftSchedule(SaveScheduleDraftDTO dto);

    /**
     * Save and lock schedule
     *
     * @param dto Schedule draft data
     * @return Success flag
     */
    boolean saveAndLockSchedule(Long competitionId);

    /**
     * Move schedule group to different venue/time slot
     *
     * @param dto Move operation data
     * @return Success flag
     */
    boolean moveScheduleGroup(MoveScheduleGroupDTO dto);
}
