diff --git a/business/jxstore/initdata/initdata.go b/business/jxstore/initdata/initdata.go index 28efa18bf..eb5d4d042 100644 --- a/business/jxstore/initdata/initdata.go +++ b/business/jxstore/initdata/initdata.go @@ -317,6 +317,10 @@ func Convert2JDSPU(ctx *jxcontext.Context, count int, isAsync, isContinueWhenErr } func Change2JDSPU4Store(ctx *jxcontext.Context, storeIDs []int, isAsync, isContinueWhenError bool) (hint string, err error) { + db := dao.GetDB() + dao.Begin(db) + defer dao.Rollback(db) + sql := ` DELETE t1 FROM store_sku_bind t1 @@ -328,12 +332,10 @@ func Change2JDSPU4Store(ctx *jxcontext.Context, storeIDs []int, isAsync, isConti sql += " AND store_id IN (" + dao.GenQuestionMarks(len(storeIDs)) + ")" sqlParams = append(sqlParams, storeIDs) } - db := dao.GetDB() if _, err = dao.ExecuteSQL(db, sql, sqlParams...); err != nil { return "", err } - dao.Begin(db) sql = ` INSERT INTO store_sku_bind(created_at, updated_at, last_operator, deleted_at, store_id, sku_id, price, unit_price, status, ebai_id, mtwm_id, jd_sync_status, ebai_sync_status, mtwm_sync_status) SELECT NOW(), NOW(), ?, ?, t1.store_id, t2.id, t1.price, t1.unit_price, t1.status , 0, 0, ?, ?, ? @@ -359,10 +361,11 @@ func Change2JDSPU4Store(ctx *jxcontext.Context, storeIDs []int, isAsync, isConti globals.SugarLogger.Debug(utils.Format4Output(sqlParams, false)) var num int64 if num, err = dao.ExecuteSQL(db, sql, sqlParams...); err != nil { - dao.Rollback(db) return "", err } globals.SugarLogger.Debug(num) + dao.Commit(db) + var skuIDs []int sql = ` SELECT id