- 一些与门店商品信息操作相关的API

This commit is contained in:
gazebo
2019-05-26 22:06:04 +08:00
parent 96818a206e
commit c6954769a1
4 changed files with 135 additions and 34 deletions

View File

@@ -37,6 +37,7 @@ const (
KeyCustomSkuID = "custom_sku_id"
KeySkuID = "sku_id"
KeyUPC = "upc"
KeyName = "name"
KeyPhone = "phone"

View File

@@ -40,6 +40,20 @@ var (
skuExistReg = regexp.MustCompile(`\s?,\s?sku_id:(\d+)`)
)
func genSkuIDParams(skuID int64, customSkuID, upc string) map[string]interface{} {
params := map[string]interface{}{}
if skuID != 0 {
params[KeySkuID] = skuID
} else if customSkuID != "" {
params[KeyCustomSkuID] = customSkuID
} else if upc != "" {
params[KeyUPC] = upc
} else {
panic("skuID, customSkuID and upc are all no value!")
}
return params
}
// category相关的函数shop_custom_id可重
func (a *API) ShopCategoryCreate(shopID string, parentID int64, name string, rank int) (catID int64, err error) {
@@ -169,9 +183,6 @@ func (a *API) SkuDelete(shopID, skuIDsStr string) (err error) {
KeySkuID: skuIDsStr,
}
_, err = a.AccessAPI("sku.delete", params)
if err == nil {
return nil
}
return err
}
@@ -181,9 +192,6 @@ func (a *API) SkuDeleteByCustomIDs(shopID, customSkuIDsStr string) (err error) {
KeyCustomSkuID: customSkuIDsStr,
}
_, err = a.AccessAPI("sku.delete", params)
if err == nil {
return nil
}
return err
}
@@ -193,9 +201,13 @@ func (a *API) SkuOnline(shopID, skuIDsStr string) (err error) {
KeySkuID: skuIDsStr,
}
_, err = a.AccessAPI("sku.online", params)
if err == nil {
return nil
}
return err
}
func (a *API) SkuOnlineOne(shopID string, skuID int64, customSkuID, upc string) (err error) {
params := genSkuIDParams(skuID, customSkuID, upc)
params[KeyShopID] = shopID
_, err = a.AccessAPI("sku.online.one", params)
return err
}
@@ -205,9 +217,41 @@ func (a *API) SkuOffline(shopID, skuIDsStr string) (err error) {
KeySkuID: skuIDsStr,
}
_, err = a.AccessAPI("sku.offline", params)
if err == nil {
return nil
return err
}
func (a *API) SkuOfflineOne(shopID string, skuID int64, customSkuID, upc string) (err error) {
params := genSkuIDParams(skuID, customSkuID, upc)
params[KeyShopID] = shopID
_, err = a.AccessAPI("sku.offline.one", params)
return err
}
func genSkuPriceParams(skuPriceStr, customSkuPriceStr, upcPriceStr string) map[string]interface{} {
params := map[string]interface{}{}
if skuPriceStr != "" {
params["skuid_price"] = skuPriceStr
} else if skuPriceStr != "" {
params["custom_sku_id"] = customSkuPriceStr
} else if upcPriceStr != "" {
params["upc_price"] = upcPriceStr
} else {
panic("skuPriceStr, customSkuPriceStr and upcPriceStr are all empty!")
}
return params
}
func (a *API) SkuPriceUpdateBatch(shopID, skuPriceStr, customSkuPriceStr, upcPriceStr string) (err error) {
params := genSkuPriceParams(skuPriceStr, customSkuPriceStr, upcPriceStr)
params[KeyShopID] = shopID
_, err = a.AccessAPI("sku.price.update.batch", params)
return err
}
func (a *API) SkuPriceUpdateOne(shopID, skuPriceStr, customSkuPriceStr, upcPriceStr string) (err error) {
params := genSkuPriceParams(skuPriceStr, customSkuPriceStr, upcPriceStr)
params[KeyShopID] = shopID
_, err = a.AccessAPI("sku.price.update.one", params)
return err
}
@@ -218,9 +262,6 @@ func (a *API) SkuShopCategoryMap(shopID string, skuID int64, categoryIDsStr stri
"category_id": categoryIDsStr,
}
_, err = a.AccessAPI("sku.shop.category.map", params)
if err == nil {
return nil
}
return err
}