diff --git a/services/schedule/SchedTask.Ctrl.go b/services/schedule/SchedTask.Ctrl.go index b7ee410..b2db681 100644 --- a/services/schedule/SchedTask.Ctrl.go +++ b/services/schedule/SchedTask.Ctrl.go @@ -487,21 +487,30 @@ func (tasksrv *TaskSrv) ReleaseSerialOrder(relQty int, releaseId string) (err er _ = session.Rollback() return err } - firstPOMap := make(map[int]interface{}) - releasePOLi := make([]int, 0) + //firstPOMap := make(map[int]interface{}) + //releasePOLi := make([]int, 0) + //for _, po := range poDataLi { + // if po.IsFirstPO { + // firstPOMap[po.PO] = nil + // releasePOLi = append(releasePOLi, po.PO) + // } + //} + //for firstPO, _ := range firstPOMap { + // li := tasksrv.RecursionComposePO(firstPO, &poDataLi) + // if workLine.WorkLineid == "CN7C" { + // fmt.Println("RecursionComposePO li:", li) + // } + // releasePOLi = append(releasePOLi, li...) + //} + releasePOMap := make(map[int]interface{}, len(poDataLi)) + //for _, po := range releasePOLi { + // releasePOMap[po] = nil + //} for _, po := range poDataLi { - if po.IsFirstPO { - firstPOMap[po.PO] = nil - releasePOLi = append(releasePOLi, po.PO) + if po.HasDependOn { + continue } - } - for firstPO, _ := range firstPOMap { - li := tasksrv.RecursionComposePO(firstPO, &poDataLi) - releasePOLi = append(releasePOLi, li...) - } - releasePOMap := make(map[int]interface{}, len(releasePOLi)) - for _, po := range releasePOLi { - releasePOMap[po] = nil + releasePOMap[po.PO] = nil } poRecLi := make([]model.SerialOrderPOStatusRecLst, 0, len(poLi))