diff --git a/etl_task/BackFlushShipOrder.go b/etl_task/BackFlushShipOrder.go index 9e6db76..848a738 100644 --- a/etl_task/BackFlushShipOrder.go +++ b/etl_task/BackFlushShipOrder.go @@ -3,10 +3,12 @@ package main import ( dalBase "LAPP_ACURA_MOM_BACKEND/dao/base" dalJit "LAPP_ACURA_MOM_BACKEND/dao/jit" + omDal "LAPP_ACURA_MOM_BACKEND/dao/om" "LAPP_ACURA_MOM_BACKEND/etl_task/model" "LAPP_ACURA_MOM_BACKEND/grmi" meta "LAPP_ACURA_MOM_BACKEND/meta/base" metaJit "LAPP_ACURA_MOM_BACKEND/meta/jit" + omMeta "LAPP_ACURA_MOM_BACKEND/meta/om" modelJit "LAPP_ACURA_MOM_BACKEND/models/jit" "LAPP_ACURA_MOM_BACKEND/utils" "fmt" @@ -148,7 +150,9 @@ func main() { daoShipOrderDataItem := dalJit.NewShipOrderDataLstDAO(acuraSession, plantNr, userId) daoPackOrderItem := dalJit.NewPackOrderItemLstDAO(acuraSession, plantNr, userId) daoArticle := dalBase.NewArticleDAO(acuraSession, plantNr, userId) - //daoSerialOrderDao := omDal.NewSerialOrderDAO(acuraSession, plantNr, userId) + serialOrderDao := omDal.NewSerialOrderDAO(acuraSession, plantNr, userId) + //OpDetailDao := omDal.NewSerialOrderOPDetailDAO(acuraSession, plantNr, userId) + daoSerialOrderDao := omDal.NewSerialOrderDAO(acuraSession, plantNr, userId) // 查询正式发运单 关单 且 未回冲的所有发运单数据 shipOrderDataLi, err := daoShipOrderStatus.SelectUnBackFlushedShipOrder() if err != nil { @@ -251,7 +255,28 @@ func main() { waitWriteLi = append(waitWriteLi, str) } } - + updateSerialOrderIdLi := make([]string, 0) + for _, serialOrderId := range serialOrderIdLi { + serialOrder, err := serialOrderDao.SelectOne(serialOrderId) + if err != nil { + fmt.Println("查询工单失败, 错误:" + err.Error()) + return + } + if serialOrder == nil { + fmt.Printf("工单%s不存在", serialOrderId) + return + } + originSerialOrderLi, err := serialOrderDao.Select([]grmi.Predicate{ + omMeta.SerialOrder_OriginSerialOrderId.NewPredicate(grmi.Equal, serialOrderId), + }, nil) + if err != nil { + fmt.Println("查询工单失败, 错误:" + err.Error()) + return + } + for _, order := range originSerialOrderLi { + updateSerialOrderIdLi = append(updateSerialOrderIdLi, order.SerialOrderId) + } + } if err = acuraSession.Begin(); err != nil { fmt.Println("开启事务失败, error:" + err.Error()) return @@ -263,12 +288,12 @@ func main() { fmt.Println("更新发运单回冲状态失败, error:" + err.Error()) return } - //count, err := daoSerialOrderDao.UpdateShipBackFlushFlag(serialOrderIdLi) - //if err != nil { - // _ = acuraSession.Rollback() - // fmt.Println("更新工单回冲状态失败, error:" + err.Error()) - // return - //} + _, err = daoSerialOrderDao.UpdateShipBackFlushFlag(updateSerialOrderIdLi) + if err != nil { + _ = acuraSession.Rollback() + fmt.Println("更新工单回冲状态失败, error:" + err.Error()) + return + } //if int(count) != len(serialOrderIdLi) { // _ = acuraSession.Rollback() // fmt.Println("更新工单回冲状态数量和查询的数量不一致, 更新数量:" + strconv.Itoa(int(count)) + ", 查询数量:" + strconv.Itoa(len(serialOrderIdLi))) @@ -310,7 +335,7 @@ func main() { return } } - File.Close() + _ = File.Close() err = acuraSession.Commit() if err != nil { fmt.Println("事务提交失败, error:" + err.Error())