|
|
- package schedule
-
- import (
- "testing"
- "time"
- )
-
- // 测试自动调度
- func TestScheduler(t *testing.T) {
- var (
- y1,d1 int
- m1 time.Month
- schedeng SchedulerSrv
- startDate, endDate time.Time
- worklinetype string
- )
-
- // 建立数据库连接
-
- // 初始化scheduler,默认从当天起计划5天
- y1,m1,d1 = time.Now().Date()
- startDate = time.Date(y1, m1, d1, 0, 0, 0, 0, time.UTC)
- endDate = startDate.Add(24*5*time.Hour)
- schedeng = SchedulerSrv{PlantNr:100, StartDate: startDate,EndDate: endDate}
- // 指定加载的产线类型
- worklinetype= ""
-
- // 加载激活的项目主数据
- schedeng.LoadProjectData()
- // 加载时间模型,基于调度引擎指定的时间区间
- schedeng.LoadTimemodelData()
- // 加载产品换型主数据
- schedeng.LoadSetupData()
- // 加载产线主数据
- schedeng.LoadWorklineData(worklinetype)
- // 加载产线班组计划出勤数据
- schedeng.LoadWorkLineWorkShiftData()
- // 生成产线的时间曲线
- schedeng.GenerateWorkLineTimeCurve()
- // 加载工单数据(调度任务)
- schedeng.LoadSchedTaskData()
- // 对调度任务进行排序
- schedeng.SortUnplannedTask()
- // 依次调度未计划工单
- schedeng.AutoSchedule()
- // 输出排程结果
- schedeng.PrintScheduleResult()
- }
|