1
This commit is contained in:
@@ -9,7 +9,6 @@ import (
|
|||||||
sku_syncStock_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/sku_syncStock/request"
|
sku_syncStock_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/sku_syncStock/request"
|
||||||
tiktokShop "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/tiktok_api"
|
tiktokShop "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/tiktok_api"
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxstore/cms"
|
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils/tasksch"
|
"git.rosy.net.cn/jx-callback/business/jxutils/tasksch"
|
||||||
"git.rosy.net.cn/jx-callback/business/model"
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
@@ -19,7 +18,6 @@ import (
|
|||||||
"git.rosy.net.cn/jx-callback/globals"
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
"regexp"
|
"regexp"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
@@ -437,24 +435,15 @@ func (p *PurchaseHandler) UpdateStoreSkusSpecTag(ctx *jxcontext.Context, vendorO
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
type CategoryList struct {
|
|
||||||
DdId string `json:"dd_id"`
|
|
||||||
Id int `json:"id"`
|
|
||||||
NameId int `json:"name_id"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func GetProductAuditList(vendorOrgCode string) map[string]string {
|
func GetProductAuditList(vendorOrgCode string) map[string]string {
|
||||||
var page int64 = 1
|
var page int64 = 1
|
||||||
var pageSize int64 = 1
|
var pageSize int64 = 1
|
||||||
|
|
||||||
updateCategory := make(map[string]string, 100) // 修改分类的Map
|
updateCategory := make(map[string]string, 100) // 修改分类的Map
|
||||||
ddIDList := make([]string, 0, 100)
|
|
||||||
skuList := make([]CategoryList, 0, 100)
|
|
||||||
db := dao.GetDB()
|
|
||||||
for {
|
|
||||||
data, _, err := getAPI(vendorOrgCode, 0, "").GetProductAuditList(page, pageSize, 2)
|
data, _, err := getAPI(vendorOrgCode, 0, "").GetProductAuditList(page, pageSize, 2)
|
||||||
if err != nil || len(data) == 0 {
|
if err != nil || len(data) == 0 {
|
||||||
break
|
return nil
|
||||||
}
|
}
|
||||||
for _, v := range data {
|
for _, v := range data {
|
||||||
if _, ok := v.AuditReason["综合原因"]; ok {
|
if _, ok := v.AuditReason["综合原因"]; ok {
|
||||||
@@ -463,58 +452,8 @@ func GetProductAuditList(vendorOrgCode string) map[string]string {
|
|||||||
list2 := strings.Split(list[1], `”`)
|
list2 := strings.Split(list[1], `”`)
|
||||||
categoryNameList := strings.Split(list2[0], "/")
|
categoryNameList := strings.Split(list2[0], "/")
|
||||||
updateCategory[utils.Int64ToStr(v.ProductId)] = categoryNameList[len(categoryNameList)-1]
|
updateCategory[utils.Int64ToStr(v.ProductId)] = categoryNameList[len(categoryNameList)-1]
|
||||||
ddIDList = append(ddIDList, utils.Int64ToStr(v.ProductId))
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
sql := " SELECT b.dd_id,s.id,s.name_id FROM store_sku_bind b INNER JOIN sku s ON b.sku_id = s.id AND s.deleted_at = ? WHERE b.dd_id IN (" + dao.GenQuestionMarks(len(ddIDList)) + ") AND b.deleted_at = ?"
|
|
||||||
params := []interface{}{utils.DefaultTimeValue, ddIDList, utils.DefaultTimeValue}
|
|
||||||
if err := dao.GetRows(db, &skuList, sql, params...); err != nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
for _, v := range skuList {
|
|
||||||
item := &model.SkuVendorCategoryMap{
|
|
||||||
ModelIDCULD: model.ModelIDCULD{
|
|
||||||
CreatedAt: time.Now(),
|
|
||||||
UpdatedAt: time.Now(),
|
|
||||||
DeletedAt: utils.DefaultTimeValue,
|
|
||||||
LastOperator: "18981810340",
|
|
||||||
},
|
|
||||||
NameID: v.NameId,
|
|
||||||
VendorID: model.VendorIDDD,
|
|
||||||
VendorCategoryID: updateCategory[v.DdId],
|
|
||||||
}
|
|
||||||
vendorCatgory, err := cms.GetVendorCategoriesByName(14, updateCategory[v.DdId])
|
|
||||||
if err != nil {
|
|
||||||
globals.SugarLogger.Debugf("====================err2 %s", err)
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
item.VendorCategoryID = vendorCatgory.VendorCategoryID
|
|
||||||
skuVendorCategoryMap := &model.SkuVendorCategoryMap{}
|
|
||||||
if err := dao.GetRow(db, skuVendorCategoryMap, `SELECT * FROM sku_vendor_category_map WHERE name_id = ? AND vendor_id = ? AND deleted_at = ?`, []interface{}{v.NameId, model.VendorIDDD, utils.DefaultTimeValue}); err != nil {
|
|
||||||
globals.SugarLogger.Debugf("====================err3 %s", err)
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
if skuVendorCategoryMap != nil && skuVendorCategoryMap.ID > 0 {
|
|
||||||
if _, err := dao.UpdateEntity(db, skuVendorCategoryMap, "VendorCategoryID"); err != nil {
|
|
||||||
globals.SugarLogger.Debugf("====================err4 %s", err)
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
if err := dao.CreateEntity(db, item); err != nil {
|
|
||||||
globals.SugarLogger.Debugf("====================err5 %s", err)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
break
|
|
||||||
//if page*pageSize < total {
|
|
||||||
// page++
|
|
||||||
//}
|
|
||||||
//updateCategory = make(map[string]string, 100) // 修改分类的Map
|
|
||||||
//ddIDList = make([]string, 0, 100)
|
|
||||||
//skuList = make([]CategoryList, 0, 100)
|
|
||||||
}
|
}
|
||||||
return updateCategory
|
return updateCategory
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ import (
|
|||||||
"git.rosy.net.cn/jx-callback/business/partner/purchase/tiktok_store"
|
"git.rosy.net.cn/jx-callback/business/partner/purchase/tiktok_store"
|
||||||
"git.rosy.net.cn/jx-callback/globals"
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
"github.com/astaxie/beego/server/web"
|
"github.com/astaxie/beego/server/web"
|
||||||
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
type SkuController struct {
|
type SkuController struct {
|
||||||
@@ -831,6 +832,12 @@ func (c *SkuController) BatchSetRestockingPrice() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type CategoryList struct {
|
||||||
|
DdId string `json:"dd_id"`
|
||||||
|
Id int `json:"id"`
|
||||||
|
NameId int `json:"name_id"`
|
||||||
|
}
|
||||||
|
|
||||||
// @Title 抖店商品类目修改
|
// @Title 抖店商品类目修改
|
||||||
// @Description 抖店商品类目修改
|
// @Description 抖店商品类目修改
|
||||||
// @Success 200 {object} controllers.CallResult
|
// @Success 200 {object} controllers.CallResult
|
||||||
@@ -839,17 +846,54 @@ func (c *SkuController) BatchSetRestockingPrice() {
|
|||||||
func (c *SkuController) UpdateTiktokCategory() {
|
func (c *SkuController) UpdateTiktokCategory() {
|
||||||
c.callUpdateTiktokCategory(func(params *tSkuUpdateTiktokCategoryParams) (interface{}, string, error) {
|
c.callUpdateTiktokCategory(func(params *tSkuUpdateTiktokCategoryParams) (interface{}, string, error) {
|
||||||
data := tiktok_store.GetProductAuditList("57939570")
|
data := tiktok_store.GetProductAuditList("57939570")
|
||||||
globals.SugarLogger.Debugf("==========111 %s", utils.Format4Output(data, false))
|
|
||||||
|
ddIDList := make([]string, 0, 100)
|
||||||
|
skuList := make([]CategoryList, 0, 100)
|
||||||
|
db := dao.GetDB()
|
||||||
|
|
||||||
for k, v := range data {
|
for k, v := range data {
|
||||||
vendorCatgory, err := cms.GetVendorCategoriesByName(14, v)
|
vendorCatgory, _ := cms.GetVendorCategoriesByName(14, v)
|
||||||
if err != nil || vendorCatgory == nil {
|
ddIDList = append(ddIDList, k)
|
||||||
data[k] = v
|
|
||||||
globals.SugarLogger.Debugf("err := %s", err)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
data[k] = vendorCatgory.VendorCategoryID
|
data[k] = vendorCatgory.VendorCategoryID
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("==========222 %s", utils.Format4Output(data, false))
|
|
||||||
|
sql := " SELECT b.dd_id,s.id,s.name_id FROM store_sku_bind b INNER JOIN sku s ON b.sku_id = s.id AND s.deleted_at = ? WHERE b.dd_id IN (" + dao.GenQuestionMarks(len(ddIDList)) + ") AND b.deleted_at = ?"
|
||||||
|
param := []interface{}{utils.DefaultTimeValue, ddIDList, utils.DefaultTimeValue}
|
||||||
|
if err := dao.GetRows(db, &skuList, sql, param...); err != nil {
|
||||||
|
return nil, "", err
|
||||||
|
}
|
||||||
|
for _, v1 := range data {
|
||||||
|
for _, v := range skuList {
|
||||||
|
item := &model.SkuVendorCategoryMap{
|
||||||
|
ModelIDCULD: model.ModelIDCULD{
|
||||||
|
CreatedAt: time.Now(),
|
||||||
|
UpdatedAt: time.Now(),
|
||||||
|
DeletedAt: utils.DefaultTimeValue,
|
||||||
|
LastOperator: "18981810340",
|
||||||
|
},
|
||||||
|
NameID: v.NameId,
|
||||||
|
VendorID: model.VendorIDDD,
|
||||||
|
}
|
||||||
|
|
||||||
|
item.VendorCategoryID = v1
|
||||||
|
skuVendorCategoryMap := &model.SkuVendorCategoryMap{}
|
||||||
|
if err := dao.GetRow(db, skuVendorCategoryMap, `SELECT * FROM sku_vendor_category_map WHERE name_id = ? AND vendor_id = ? AND deleted_at = ?`, []interface{}{v.NameId, model.VendorIDDD, utils.DefaultTimeValue}); err != nil {
|
||||||
|
globals.SugarLogger.Debugf("====================err3 %s", err)
|
||||||
|
return nil, "", err
|
||||||
|
}
|
||||||
|
if skuVendorCategoryMap != nil && skuVendorCategoryMap.ID > 0 {
|
||||||
|
if _, err := dao.UpdateEntity(db, skuVendorCategoryMap, "VendorCategoryID"); err != nil {
|
||||||
|
globals.SugarLogger.Debugf("====================err4 %s", err)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if err := dao.CreateEntity(db, item); err != nil {
|
||||||
|
globals.SugarLogger.Debugf("====================err5 %s", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return data, "", nil
|
return data, "", nil
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user