|
@ -233,7 +233,7 @@ func (impl *CustOrderServiceImplement) AnalysisPlanFromExcel(user *global.User, |
|
|
} |
|
|
} |
|
|
custOrderWorkLineMap[workLineId] = append(custOrderWorkLineMap[workLineId], custOrder) |
|
|
custOrderWorkLineMap[workLineId] = append(custOrderWorkLineMap[workLineId], custOrder) |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
releaseCustOrderLi := make([]model.CustOrder, 0) |
|
|
for workLineId, custOrderLi := range custOrderWorkLineMap { |
|
|
for workLineId, custOrderLi := range custOrderWorkLineMap { |
|
|
for index, custOrder := range custOrderLi { |
|
|
for index, custOrder := range custOrderLi { |
|
|
project := projectMap[custOrder.ProjectId] |
|
|
project := projectMap[custOrder.ProjectId] |
|
@ -251,14 +251,29 @@ func (impl *CustOrderServiceImplement) AnalysisPlanFromExcel(user *global.User, |
|
|
} |
|
|
} |
|
|
endDate = endDate.AddDate(0, 0, 2) |
|
|
endDate = endDate.AddDate(0, 0, 2) |
|
|
for workLineId, custOrderLi := range custOrderWorkLineMap { |
|
|
for workLineId, custOrderLi := range custOrderWorkLineMap { |
|
|
_, err = impl.AutoScheduler(user, session, workLineId, startDate, endDate, custOrderLi) |
|
|
|
|
|
|
|
|
sortCustOrderLi, err := impl.AutoScheduler(user, session, workLineId, startDate, endDate, custOrderLi) |
|
|
if err != nil { |
|
|
if err != nil { |
|
|
_ = session.Rollback() |
|
|
_ = session.Rollback() |
|
|
return grmi.NewBusinessError("自动排程失败,错误:" + err.Error()) |
|
|
return grmi.NewBusinessError("自动排程失败,错误:" + err.Error()) |
|
|
} |
|
|
} |
|
|
|
|
|
releaseCustOrderLi = append(releaseCustOrderLi, sortCustOrderLi...) |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
_ = session.Commit() |
|
|
_ = session.Commit() |
|
|
|
|
|
sort.Slice(releaseCustOrderLi, func(i, j int) bool { |
|
|
|
|
|
itemI := releaseCustOrderLi[i] |
|
|
|
|
|
itemJ := releaseCustOrderLi[j] |
|
|
|
|
|
return itemJ.PlanStartTime.Restore().Before(itemI.PlanStartTime.Restore()) |
|
|
|
|
|
}) |
|
|
|
|
|
plantNr := user.PlantNr |
|
|
|
|
|
channel, exist := common.ReleaseTaskChannel[plantNr] |
|
|
|
|
|
if !exist { |
|
|
|
|
|
common.ReleaseTaskChannel[plantNr] = make(chan model.CustOrder, 50) |
|
|
|
|
|
channel = common.ReleaseTaskChannel[plantNr] |
|
|
|
|
|
} |
|
|
|
|
|
for _, custOrder := range releaseCustOrderLi { |
|
|
|
|
|
fmt.Println("custORderId:", custOrder.CustOrderId) |
|
|
|
|
|
channel <- custOrder |
|
|
|
|
|
} |
|
|
return nil |
|
|
return nil |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -296,7 +311,6 @@ func (impl *CustOrderServiceImplement) ReleaseCustOrder(user *global.User, custO |
|
|
needReleaseQty := custOrderData.OrderQty.PlanQty - custOrderData.OrderQty.ReleasedQty - custOrderData.OrderQty.CancelQty |
|
|
needReleaseQty := custOrderData.OrderQty.PlanQty - custOrderData.OrderQty.ReleasedQty - custOrderData.OrderQty.CancelQty |
|
|
log.Info("开始派工, 当前派工客户订单ID:" + custOrderData.CustOrderId + ", 需要派工数量:" + strconv.Itoa(needReleaseQty)) |
|
|
log.Info("开始派工, 当前派工客户订单ID:" + custOrderData.CustOrderId + ", 需要派工数量:" + strconv.Itoa(needReleaseQty)) |
|
|
// 获取客户订单的车型配置下的所有座椅
|
|
|
// 获取客户订单的车型配置下的所有座椅
|
|
|
fmt.Println("---------------------------custOrderId:", custOrderData.CustOrderId) |
|
|
|
|
|
productLi, err := productFamilyRelateDao.SelectProductByFamilyIdForCreateSerialOrder(custOrderData.ProjectId, custOrderData.ProductFamilyId) |
|
|
productLi, err := productFamilyRelateDao.SelectProductByFamilyIdForCreateSerialOrder(custOrderData.ProjectId, custOrderData.ProductFamilyId) |
|
|
if err != nil { |
|
|
if err != nil { |
|
|
return grmi.NewBusinessError("通过车型配置查询关联座椅产品失败, error:" + err.Error()) |
|
|
return grmi.NewBusinessError("通过车型配置查询关联座椅产品失败, error:" + err.Error()) |
|
|