ScheduleRuleService.java
1.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
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 com.bsth.service.schedule.rules.rerun.RerunRule_input;
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 schedulePlanRuleResults
*/
void generateRuleResult(List<SchedulePlanRuleResult> schedulePlanRuleResults);
/**
* 删除排班计划。
* @param id 排班计划id
*/
void deleteSchedulePlanAll(Long id);
/**
* 删除指定时间范围的排班明细。
* @param xlbm 线路编码
* @param datefrom 开始日期
* @param dateto 结束日期
*/
void deleteSchedulePlanInfo(String xlbm, Date datefrom, Date dateto);
/**
* 查找线路的套跑规则,并封装成规则输入对象。
* @param xlid
* @return
*/
List<RerunRule_input> findRerunrule(Integer xlid);
}