同步菜市物料到果园测试

This commit is contained in:
苏尹岚
2020-04-26 11:43:39 +08:00
parent cdcb86de94
commit f02fd61da7

View File

@@ -4292,7 +4292,7 @@ func SyncMatterC4ToGy(ctx *jxcontext.Context, isContinueWhenError, isAsync bool)
db = dao.GetDB() db = dao.GetDB()
skus []*model.Sku skus []*model.Sku
skusgy []*model.Sku skusgy []*model.Sku
skuIDs []int eclpIDs []string
addMatters []*model.Sku addMatters []*model.Sku
deleteMatters []*model.Sku deleteMatters []*model.Sku
updateMatters []*model.Sku updateMatters []*model.Sku
@@ -4304,8 +4304,8 @@ func SyncMatterC4ToGy(ctx *jxcontext.Context, isContinueWhenError, isAsync bool)
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
step := batchItemList[0].(int) step := batchItemList[0].(int)
var ( var (
skusMap = make(map[int]*model.Sku) skusMap = make(map[string]*model.Sku)
skusgyMap = make(map[int]*model.Sku) skusgyMap = make(map[string]*model.Sku)
) )
switch step { switch step {
case 0: case 0:
@@ -4313,28 +4313,28 @@ func SyncMatterC4ToGy(ctx *jxcontext.Context, isContinueWhenError, isAsync bool)
sqlParams := []interface{}{utils.DefaultTimeValue} sqlParams := []interface{}{utils.DefaultTimeValue}
err = dao.GetRows(db, &skus, sql, sqlParams) err = dao.GetRows(db, &skus, sql, sqlParams)
for _, c4 := range skus { for _, c4 := range skus {
skuIDs = append(skuIDs, c4.ID) eclpIDs = append(eclpIDs, c4.EclpID)
skusMap[c4.ID] = c4 skusMap[c4.EclpID] = c4
} }
sql2 := "SELECT * FROM sku WHERE deleted_at = ? AND id IN (" + dao.GenQuestionMarks(len(skuIDs)) + ")" sql2 := "SELECT * FROM sku WHERE deleted_at = ? AND eclp_id IN (" + dao.GenQuestionMarks(len(eclpIDs)) + ")"
sqlParams = append(sqlParams, skuIDs) sqlParams = append(sqlParams, eclpIDs)
err = dao.GetRows(db, &skusgy, sql2, sqlParams) err = dao.GetRows(db, &skusgy, sql2, sqlParams)
for _, gy := range skusgy { for _, gy := range skusgy {
skusgyMap[gy.ID] = gy skusgyMap[gy.EclpID] = gy
if skusMap[gy.ID] == nil { if skusMap[gy.EclpID] == nil {
deleteMatters = append(deleteMatters, skusgyMap[gy.ID]) deleteMatters = append(deleteMatters, skusgyMap[gy.EclpID])
} }
} }
for _, c4 := range skus { for _, c4 := range skus {
if skusgyMap[c4.ID] == nil { if skusgyMap[c4.EclpID] == nil {
addMatters = append(addMatters, skusMap[c4.ID]) addMatters = append(addMatters, skusMap[c4.EclpID])
} else { } else {
updateMatters = append(updateMatters, skusMap[c4.ID]) updateMatters = append(updateMatters, skusMap[c4.EclpID])
} }
} }
// fmt.Println("deleteMatters", utils.Format4Output(deleteMatters, false)) fmt.Println("deleteMatters", utils.Format4Output(deleteMatters, false))
// fmt.Println("addMatters", utils.Format4Output(addMatters, false)) fmt.Println("addMatters", utils.Format4Output(addMatters, false))
// fmt.Println("updateMatters", utils.Format4Output(updateMatters, false)) fmt.Println("updateMatters", utils.Format4Output(updateMatters, false))
case 1: case 1:
if len(deleteMatters) > 0 { if len(deleteMatters) > 0 {
for _, v := range deleteMatters { for _, v := range deleteMatters {
@@ -4377,20 +4377,11 @@ func SyncMatterC4ToGy(ctx *jxcontext.Context, isContinueWhenError, isAsync bool)
skuNameExt.Price = skuName.Price skuNameExt.Price = skuName.Price
skuNameExt.IsGlobal = model.YES skuNameExt.IsGlobal = model.YES
skuNameExt.Status = model.SkuStatusNormal skuNameExt.Status = model.SkuStatusNormal
skuNameExt.ID = v.NameID // skuNameExt.ID = v.NameID
skuNameExt.CategoryID = 3024 //默认全放物料分类下 skuNameExt.CategoryID = 3024 //默认全放物料分类下
skuNameExt.DeletedAt = utils.DefaultTimeValue skuNameExt.DeletedAt = utils.DefaultTimeValue
skuNameExt.CreatedAt = time.Now() skuNameExt.CreatedAt = time.Now()
skuNameExt.LastOperator = ctx.GetUserName() skuNameExt.LastOperator = ctx.GetUserName()
skuNameExt.Skus[0].ID = v.ID
skuNameExt.Skus[0].SpecQuality = v.SpecQuality
skuNameExt.Skus[0].SpecUnit = v.SpecUnit
skuNameExt.Skus[0].EclpID = v.EclpID
skuNameExt.Skus[0].Status = model.SkuStatusNormal
skuNameExt.Skus[0].NameID = v.NameID
skuNameExt.Skus[0].DeletedAt = utils.DefaultTimeValue
skuNameExt.Skus[0].CreatedAt = time.Now()
skuNameExt.Skus[0].LastOperator = ctx.GetUserName()
dao.Begin(db) dao.Begin(db)
defer func() { defer func() {
if r := recover(); r != nil { if r := recover(); r != nil {
@@ -4402,6 +4393,15 @@ func SyncMatterC4ToGy(ctx *jxcontext.Context, isContinueWhenError, isAsync bool)
dao.Rollback(db) dao.Rollback(db)
return retVal, err return retVal, err
} }
// skuNameExt.Skus[0].ID = v.ID
skuNameExt.Skus[0].SpecQuality = v.SpecQuality
skuNameExt.Skus[0].SpecUnit = v.SpecUnit
skuNameExt.Skus[0].EclpID = v.EclpID
skuNameExt.Skus[0].Status = model.SkuStatusNormal
skuNameExt.Skus[0].NameID = skuNameExt.ID
skuNameExt.Skus[0].DeletedAt = utils.DefaultTimeValue
skuNameExt.Skus[0].CreatedAt = time.Now()
skuNameExt.Skus[0].LastOperator = ctx.GetUserName()
if err = dao.CreateEntity(db, skuNameExt.Skus[0].Sku); err != nil { if err = dao.CreateEntity(db, skuNameExt.Skus[0].Sku); err != nil {
dao.Rollback(db) dao.Rollback(db)
return retVal, err return retVal, err
@@ -4443,17 +4443,19 @@ func SyncMatterC4ToGy(ctx *jxcontext.Context, isContinueWhenError, isAsync bool)
panic(r) panic(r)
} }
}() }()
fmt.Println("test111111111111111111111111", utils.Format4Output(v, false)) if v != nil {
fmt.Println("test22222222222222222222222222", utils.Format4Output(skuName, false)) dao.WrapAddIDCULEntity(v, ctx.GetUserName())
dao.WrapAddIDCULEntity(v, ctx.GetUserName()) if _, err = dao.UpdateEntity(db, v, "SpecQuality", "SpecUnit", "EclpID"); err != nil {
if _, err = dao.UpdateEntity(db, v, "SpecQuality", "SpecUnit", "EclpID"); err != nil { dao.Rollback(db)
dao.Rollback(db) return retVal, err
return retVal, err }
} }
dao.WrapAddIDCULEntity(skuName, ctx.GetUserName()) if skuName != nil {
if _, err = dao.UpdateEntity(db, skuName, "Name", "Img", "Img2", "DescImg", "Unit", "CategoryID", "Price"); err != nil { dao.WrapAddIDCULEntity(skuName, ctx.GetUserName())
dao.Rollback(db) if _, err = dao.UpdateEntity(db, skuName, "Name", "Img", "Img2", "DescImg", "Unit", "CategoryID", "Price"); err != nil {
return retVal, err dao.Rollback(db)
return retVal, err
}
} }
sql := "SELECT * FROM jxd_dev_0.store_sku_bind WHERE store_id = ? AND sku_id = ? " sql := "SELECT * FROM jxd_dev_0.store_sku_bind WHERE store_id = ? AND sku_id = ? "
sqlParams := []interface{}{model.MatterStoreID, v.ID} sqlParams := []interface{}{model.MatterStoreID, v.ID}