根据名字查京东商品upc
This commit is contained in:
@@ -227,6 +227,23 @@ type StoreUserInfo struct {
|
|||||||
UserCode string `json:"userCode"`
|
UserCode string `json:"userCode"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type ProductInfo struct {
|
||||||
|
OriginalName string `json:"originalName"`
|
||||||
|
OriginalSpec string `json:"originalSpec"`
|
||||||
|
Name string `json:"name"`
|
||||||
|
Img string `json:"img"`
|
||||||
|
ImgList []string `json:"imgList"`
|
||||||
|
SpecQuality int `json:"specQuality"`
|
||||||
|
SpecUnit string `json:"specUnit"`
|
||||||
|
Unit string `json:"unit"`
|
||||||
|
Weight float32 `json:"weight"`
|
||||||
|
Price int `json:"price"`
|
||||||
|
Categories []string `json:"categories"`
|
||||||
|
ManName string `json:"manName"` // 生产商
|
||||||
|
BrandName string `json:"brandName"`
|
||||||
|
UpcCode string `json:"upcCode"`
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
QualifyTypeCompany = "25" // 营业执照
|
QualifyTypeCompany = "25" // 营业执照
|
||||||
QualifyTypePerson = "22" // 身份证,个体工商户要求填
|
QualifyTypePerson = "22" // 身份证,个体工商户要求填
|
||||||
@@ -366,6 +383,9 @@ func (a *API) AccessStorePage2(fullURL string, params map[string]interface{}, is
|
|||||||
code, ok := jsonResult1["code"].(string)
|
code, ok := jsonResult1["code"].(string)
|
||||||
if !ok {
|
if !ok {
|
||||||
if statusMap, ok := jsonResult1["status"].(map[string]interface{}); !ok {
|
if statusMap, ok := jsonResult1["status"].(map[string]interface{}); !ok {
|
||||||
|
if jsonResult1["operTag"] != nil {
|
||||||
|
return platformapi.ErrLevelSuccess, nil
|
||||||
|
}
|
||||||
return platformapi.ErrLevelGeneralFail, utils.NewErrorCode(utils.Format4Output(jsonResult1, true), "999")
|
return platformapi.ErrLevelGeneralFail, utils.NewErrorCode(utils.Format4Output(jsonResult1, true), "999")
|
||||||
} else {
|
} else {
|
||||||
code = utils.Int64ToStr(utils.ForceInterface2Int64(statusMap["errorCode"]))
|
code = utils.Int64ToStr(utils.ForceInterface2Int64(statusMap["errorCode"]))
|
||||||
@@ -761,31 +781,40 @@ func (a *API) GetJdStoreLevel(vendorOrgCode, vendorStoreID string) (level string
|
|||||||
|
|
||||||
// 根据商品名,查找京东商品upc编码
|
// 根据商品名,查找京东商品upc编码
|
||||||
// https://pms-store.jddj.com/product/searchProductStd
|
// https://pms-store.jddj.com/product/searchProductStd
|
||||||
func (a *API) GetJdUpcCodeByName(name string, pageNo, pageSize int) (jdSkus []*JdSkus, totalCount int, err error) {
|
func (a *API) GetJdUpcCodeByName(name, upcCode string, pageNo, pageSize int) (productInfos []*ProductInfo, err error) {
|
||||||
jdParams := map[string]interface{}{
|
jdParams := map[string]interface{}{
|
||||||
"searchType": 1,
|
"searchType": 1,
|
||||||
"firstCategoryId": 0,
|
"firstCategoryId": 0,
|
||||||
"currentPage": pageNo,
|
"currentPage": pageNo,
|
||||||
"pageSize": pageSize,
|
"pageSize": pageSize,
|
||||||
"productName": name,
|
"productName": name,
|
||||||
|
"upcCode": upcCode,
|
||||||
|
}
|
||||||
|
result, err := a.AccessStorePage2("https://pms-store.jddj.com/product/searchProductStd", jdParams, true, "")
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
}
|
}
|
||||||
result, _ := a.AccessStorePage2("https://pms-store.jddj.com/product/searchProductStd", jdParams, true, "")
|
|
||||||
data := result.(map[string]interface{})
|
data := result.(map[string]interface{})
|
||||||
totalCount = int(utils.Interface2Int64WithDefault(data["total"], 0))
|
// totalCount = int(utils.Interface2Int64WithDefault(data["total"], 0))
|
||||||
|
if data["rows"] == nil {
|
||||||
|
return productInfos, err
|
||||||
|
}
|
||||||
for _, v := range data["rows"].([]interface{}) {
|
for _, v := range data["rows"].([]interface{}) {
|
||||||
var ImgList []string
|
|
||||||
ImgStr := v.(map[string]interface{})["productImageList"].([]interface{})
|
|
||||||
for _, vv := range ImgStr {
|
|
||||||
ImgList = append(ImgList, "http://img20.360buyimg.com/vc/"+vv.(string))
|
|
||||||
}
|
|
||||||
if v.(map[string]interface{})["upcCode"].(string) != "" {
|
if v.(map[string]interface{})["upcCode"].(string) != "" {
|
||||||
jdSku := &JdSkus{
|
var ImgList []string
|
||||||
Name: v.(map[string]interface{})["name"].(string),
|
ImgStr := v.(map[string]interface{})["productImageList"].([]interface{})
|
||||||
UpcCode: v.(map[string]interface{})["upcCode"].(string),
|
for _, vv := range ImgStr {
|
||||||
ImgList: ImgList,
|
ImgList = append(ImgList, "http://img20.360buyimg.com/vc/"+vv.(string))
|
||||||
}
|
}
|
||||||
jdSkus = append(jdSkus, jdSku)
|
productInfo := &ProductInfo{
|
||||||
|
OriginalName: v.(map[string]interface{})["name"].(string),
|
||||||
|
Name: v.(map[string]interface{})["name"].(string),
|
||||||
|
UpcCode: v.(map[string]interface{})["upcCode"].(string),
|
||||||
|
Weight: float32(utils.Interface2Float64WithDefault(v.(map[string]interface{})["weight"], 0)),
|
||||||
|
ImgList: ImgList,
|
||||||
|
}
|
||||||
|
productInfos = append(productInfos, productInfo)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return jdSkus, totalCount, err
|
return productInfos, err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -232,5 +232,5 @@ func TestGetJdStoreLevel(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestGetJdUpcCodeByName(t *testing.T) {
|
func TestGetJdUpcCodeByName(t *testing.T) {
|
||||||
api.GetJdUpcCodeByName("大米", 1, 5)
|
api.GetJdUpcCodeByName("", "6952395700895", 2, 5)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user