ScheduleRuleService.java 1.17 KB
package com.bsth.service.schedule.rules;

import com.bsth.entity.schedule.SchedulePlan;
import com.bsth.entity.schedule.SchedulePlanInfo;
import com.bsth.entity.schedule.temp.SchedulePlanRuleResult;

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

/**
 * 排班计划使用的service。
 */
public interface ScheduleRuleService {

    // TODO:之后所有排班使用的方法汇总到这里

    /**
     * 查找最近的历史排班记录
     * @param xlid 线路id
     * @param from 开始时间
     * @return
     */
    List<SchedulePlanRuleResult> findLastByXl(String xlid, Date from);

    /**
     * 生成排班计划。
     * @param schedulePlan 计划主表
     * @param schedulePlanInfos 计划明细表
     */
    void generateSchedulePlan(SchedulePlan schedulePlan, List<SchedulePlanInfo> schedulePlanInfos);

    /**
     * 删除排班计划。
     * @param id 排班计划id
     */
    void deleteSchedulePlanAll(Long id);

    /**
     * 删除指定时间范围的排班明细。
     * @param xlid 线路id
     * @param datefrom 开始日期
     * @param dateto 结束日期
     */
    void deelteSchedulePlanInfo(Integer xlid, Date datefrom, Date dateto);
}