This commit is contained in:
suyl
2021-07-30 11:07:19 +08:00
parent f060920812
commit eacb7e0ccb

View File

@@ -3241,51 +3241,54 @@ func GetSkuNamesNew(ctx *jxcontext.Context, keyword string, skuIDs, skuNameIDs [
if err = dao.GetRowsTx(txDB, &skuNamesInfo.SkuNames, sql, sqlParams...); err == nil { if err = dao.GetRowsTx(txDB, &skuNamesInfo.SkuNames, sql, sqlParams...); err == nil {
skuNamesInfo.TotalCount = dao.GetLastTotalRowCount2(db, txDB) skuNamesInfo.TotalCount = dao.GetLastTotalRowCount2(db, txDB)
dao.Commit(db, txDB) dao.Commit(db, txDB)
for _, skuName := range skuNamesInfo.SkuNames { task := tasksch.NewParallelTask("GetSkuNamesNew", tasksch.NewParallelConfig().SetIsContinueWhenError(true), ctx,
skuName.FullName = jxutils.ComposeSkuName(skuName.Prefix, skuName.Name, "", "", 0, "", 0, skuName.ExPrefix, skuName.ExPrefixBegin, skuName.ExPrefixEnd) func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
var ( skuName := batchItemList[0].(*model.SkuNameExt)
skus []*model.Sku skuName.FullName = jxutils.ComposeSkuName(skuName.Prefix, skuName.Name, "", "", 0, "", 0, skuName.ExPrefix, skuName.ExPrefixBegin, skuName.ExPrefixEnd)
sqlParams = []interface{}{utils.DefaultTimeValue} var (
sql string skus []*model.Sku
) sqlParams = []interface{}{utils.DefaultTimeValue}
if !isBySku { sql string
sql = ` )
if !isBySku {
sql = `
SELECT * FROM sku WHERE deleted_at = ? AND name_id = ? SELECT * FROM sku WHERE deleted_at = ? AND name_id = ?
` `
sqlParams = append(sqlParams, skuName.ID) sqlParams = append(sqlParams, skuName.ID)
} else { } else {
sql = ` sql = `
SELECT * FROM sku WHERE deleted_at = ? AND id = ? SELECT * FROM sku WHERE deleted_at = ? AND id = ?
` `
sqlParams = append(sqlParams, skuName.SkuID) sqlParams = append(sqlParams, skuName.SkuID)
}
if err = dao.GetRows(db, &skus, sql, sqlParams); err == nil {
var skusVendors []*model.SkuWithVendor
for _, v := range skus {
skusVendor := &model.SkuWithVendor{
Sku: v,
}
skusVendors = append(skusVendors, skusVendor)
} }
skuName.Skus = skusVendors if err = dao.GetRows(db, &skus, sql, sqlParams); err == nil {
} var skusVendors []*model.SkuWithVendor
var ( for _, v := range skus {
places []*model.SkuNamePlaceBind skusVendor := &model.SkuWithVendor{
placeCodes []int Sku: v,
) }
sql2 := ` skusVendors = append(skusVendors, skusVendor)
}
skuName.Skus = skusVendors
}
var (
places []*model.SkuNamePlaceBind
placeCodes []int
)
sql2 := `
SELECT * FROM sku_name_place_bind WHERE name_id = ? SELECT * FROM sku_name_place_bind WHERE name_id = ?
` `
sqlParams2 := []interface{}{skuName.ID} sqlParams2 := []interface{}{skuName.ID}
if err = dao.GetRows(db, &places, sql2, sqlParams2); err == nil { if err = dao.GetRows(db, &places, sql2, sqlParams2); err == nil {
for _, v := range places { for _, v := range places {
placeCodes = append(placeCodes, v.PlaceCode) placeCodes = append(placeCodes, v.PlaceCode)
}
skuName.Places = placeCodes
} }
skuName.Places = placeCodes return retVal, err
} }, skuNamesInfo.SkuNames)
} tasksch.HandleTask(task, nil, true).Run()
} else { task.GetResult(0)
dao.Rollback(db, txDB)
} }
return skuNamesInfo, err return skuNamesInfo, err
} }