From b6fae5bf354c57ae53702f98f55719c5599d9c3e Mon Sep 17 00:00:00 2001 From: zhangxin Date: Tue, 18 May 2021 18:55:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0aps=20release=E7=9A=84?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- services/schedule/ApsRelease.go | 51 +++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 services/schedule/ApsRelease.go diff --git a/services/schedule/ApsRelease.go b/services/schedule/ApsRelease.go new file mode 100644 index 0000000..2a53be1 --- /dev/null +++ b/services/schedule/ApsRelease.go @@ -0,0 +1,51 @@ +package schedule + +import ( + dal "LAPP_GAAS_GFrame_BACKEND/dao/base" + "LAPP_GAAS_GFrame_BACKEND/db" + "LAPP_GAAS_GFrame_BACKEND/infra/logger" + model "LAPP_GAAS_GFrame_BACKEND/models/base" +) + +func ApsRelease(plantNr int) { + user := "crontab" + log, _ := logger.NewLogger(user, "Scheduler") + master := db.Eloquent.Master() + session := master.NewSession() + workLineDao := dal.NewWorkLineDAO(session, plantNr, user) + workLineLi, err := workLineDao.SelectAll() + if err != nil { + log.Error("ApsRelease get all work line failed, error:" + err.Error()) + return + } + for _, workLine := range workLineLi { + _ = StartWorkLineRelease(workLine, plantNr) + } +} + +func StartWorkLineRelease(workLine model.WorkLine, plantNr int) error { + user := "crontab" + log, _ := logger.NewLogger(user, "Scheduler") + schedulerSrv := SchedulerSrv{ + PlantNr: plantNr, + } + // 加载项目主数据 + err := schedulerSrv.LoadProjectData() + if err != nil { + log.Error("StartWorkLineRelease load project data failed, error:"+err.Error(), "workLineId: "+workLine.WorkLineid) + return err + } + // 加载产线主数据 + err = schedulerSrv.LoadWorklineData(workLine.LineType) + if err != nil { + log.Error("StartWorkLineRelease load work line data, error:"+err.Error(), "workLineId: "+workLine.WorkLineid) + return err + } + // 生产派工 + err = schedulerSrv.ReleaseSchedule(workLine.WorkLineid) + if err != nil { + log.Error("StartWorkLineRelease release schedule failed, error:"+err.Error(), "workLineId: "+workLine.WorkLineid) + return err + } + return nil +}