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