Browse Source

seq 事务没有添加

master
娄文智 3 years ago
parent
commit
8ac6b65779
4 changed files with 27 additions and 5 deletions
  1. +15
    -2
      calloff/Callofftask.go
  2. +2
    -2
      db/Pln_custorder.go
  3. +5
    -0
      seq/Seqtask.go
  4. +5
    -1
      service/Workline.go

+ 15
- 2
calloff/Callofftask.go View File

@ -117,6 +117,7 @@ func ParseCalloffOrder() {
cflandtablst2 []db.Pln_calloffdata_landing
cftab db.Pln_calloffdata_landing
cftablst []db.Pln_calloffdata_landing
edictrltab db.Edi_control
bl_co service.BL_CustOrder
bl_prevco service.BL_CustOrder
wotab db.Pln_workorder
@ -142,9 +143,15 @@ func ParseCalloffOrder() {
cfProj.Projecttab = projtablst[i]
cfProj.Projectid = projtablst[i].Projectid
glog.InfoExtln("CALLOFF-Debug", "----------------循环读取Calloff项目", projtablst[i].Projectid, "----------------")
fmt.Println("Ready to load data for project:", projtablst[i].Projectid)
// 判断calloff是否已暂停
edictrltab = db.Edi_control{Projectid: projtablst[i].Projectid, Ediid: "CALLOFF"}
if edictrltab, err = edictrltab.SelectOne(); edictrltab.Enabled <= 0 {
continue
}
// 加载项目主数据
fmt.Println("Ready to load data for project:", projtablst[i].Projectid)
if err = cfProj.LoadMasterData(); err != nil {
glog.InfoExtln("读取Calloff信息并生成发运包装", "Failed to load project master data due to: !", err)
return
@ -155,9 +162,15 @@ func ParseCalloffOrder() {
glog.InfoExtln("读取Calloff信息并生成发运包装", "Failed to get unparsed calloff landding data due to:", err)
return
}
// 遍历未处理的Calloff消息
for j = 0; j < len(cflandtablst); j++ {
fmt.Println("calloff groutine lock success!")
// 判断calloff是否已暂停
edictrltab = db.Edi_control{Projectid: projtablst[i].Projectid, Ediid: "CALLOFF"}
if edictrltab, err = edictrltab.SelectOne(); edictrltab.Enabled <= 0 {
break
}
errorlst = []db.Pln_calloff_errorlst{}
glog.InfoExtln("CALLOFF-Debug", j, "-- calloff 解析请求", cflandtablst[j])
// 读取项目各零件族解析的最大CheckSequence号


+ 2
- 2
db/Pln_custorder.go View File

@ -267,8 +267,8 @@ func (t *Pln_custorder) GetByOemOrderNr() (exist bool, cotab Pln_custorder, err
)
e := G_DbEngine
if err = e.Where("finr = ? and oemordernr = ? and partfamilyid = ? and projnr = ?",
G_FINR, t.Oemordernr, t.Partfamilyid, t.Projnr).Desc("credatuz").Limit(1, 0).Find(&cotablst); err != nil {
if err = e.Where("finr = ? and oemordernr = ? and partfamilyid = ? and projnr = ? and orderinfo != ?",
G_FINR, t.Oemordernr, t.Partfamilyid, t.Projnr, "REO").Desc("credatuz").Limit(1, 0).Find(&cotablst); err != nil {
return
}


+ 5
- 0
seq/Seqtask.go View File

@ -228,6 +228,11 @@ func ParseSeqOrder() {
//开启事务
session := db.G_DbEngine.NewSession()
if err = session.Begin(); err != nil {
session.Close()
etcd.G_jobLock.UnLock()
return
}
// 基于SEQ保存客户订单版本信息(用于追溯)
if err = bl_co.SaveSeqCOVSession(session, seqlandtablst[j]); err != nil {
glog.InfoExtln("解析并读取SEQ", "Failed to insert SEQ cov data for custorder due to: ", bl_co.Custordernr, err)


+ 5
- 1
service/Workline.go View File

@ -1111,7 +1111,11 @@ LOOPTIME:
}
//开启事务
session := db.G_DbEngine.NewSession()
if err = session.Begin(); err != nil {
session.Close()
etcd.G_jobLock.UnLock()
return
}
wotab = db.Pln_workorder{}
wotab = bl_wolst[i].Workordertab
wotab.Schedseq = startseq


Loading…
Cancel
Save