package schedule import ( "LAPP_ACURA_MOM_BACKEND/conf" "LAPP_ACURA_MOM_BACKEND/db" "LAPP_ACURA_MOM_BACKEND/infra/logger" "github.com/stretchr/testify/assert" "testing" ) func TestSchedulerSrv_ReleaseSchedule(t *testing.T) { //加载配置 err := conf.ReadYamlConfig("..\\..\\conf\\config.yaml") if err != nil { t.Fatal("init config from file failed, error:", err.Error()) } //初始化数据库连接 err = db.InitTestDb() if err != nil { t.Fatal("init db failed, error:", err) } err = logger.InitConfig() if err != nil { t.Fatal("init logger config failed, error:", err.Error()) } engine := db.Eloquent.Master() engine.ShowSQL(true) // 初始化数据表 //_, err = engine.ImportFile("./script/ME_Project.sql") //if err != nil { // t.Error("init data table ME_Project failed, error:", err) //} //_, err = engine.ImportFile("./script/WorkLine.sql") //if err != nil { // t.Fatal("init data table WorkLine failed, error:", err) //} //_, err = engine.ImportFile("./script/OM_SerialOrder.sql") //if err != nil { // t.Fatal("init data table OM_SerialOrder failed, error:", err) //} //_, err = engine.ImportFile("./script/OM_SerialOrderStatus.sql") //if err != nil { // t.Fatal("init data table OM_SerialOrderStatus failed, error:", err) //} //_, err = engine.ImportFile("./script/OM_SerialOrderStatusRecLst.sql") //if err != nil { // t.Fatal("init data table OM_SerialOrderStatusRecLst failed, error:", err) //} //_, err = engine.ImportFile("./script/OM_WorkOrder.sql") //if err != nil { // t.Fatal("init data table OM_WorkOrder failed, error:", err) //} //_, err = engine.ImportFile("./script/OM_WorkOrderStatus.sql") //if err != nil { // t.Fatal("init data table OM_WorkOrderStatus failed, error:", err) //} //_, err = engine.ImportFile("./script/OM_WorkOrderQty.sql") //if err != nil { // t.Fatal("init data table OM_WorkOrderQty failed, error:", err) //} //_, err = engine.ImportFile("./script/OM_WorkOrderStatusRecLst.sql") //if err != nil { // t.Fatal("init data table OM_WorkOrderStatusRecLst.sql failed, error:", err) //} ass := assert.New(t) // 指定工厂id var plantNr = 100 // 指定产线类型 var workLineType = "1" // 指定产线id var workLineId = "RB" schedulerSrv := SchedulerSrv{ PlantNr: plantNr, } // 加载项目主数据 err = schedulerSrv.LoadProjectData() if err != nil { t.Fatal("load project data failed, error:", err.Error()) } // 项目主数据校验 ass.NotEqual(schedulerSrv.ProjDict, nil) ass.Greater(len(schedulerSrv.ProjDict), 0) // 加载产线主数据 err = schedulerSrv.LoadWorkLineData(workLineType) if err != nil { t.Fatal("load work line data, error:", err.Error()) } // 产线主数据校验 ass.NotEqual(schedulerSrv.WorklineDict, nil) ass.Greater(len(schedulerSrv.WorklineDict), 0) // 生产派工 err = schedulerSrv.ReleaseSchedule(workLineId) if err != nil { t.Fatal("release schedule failed, error:", err.Error()) } t.Log("release ok") }