京东商城获取省市区

This commit is contained in:
苏尹岚
2020-05-15 15:21:15 +08:00
parent 39ba090f88
commit 68a7c6f81b
2 changed files with 71 additions and 52 deletions

View File

@@ -4,7 +4,6 @@ import (
"bytes"
"context"
"fmt"
"net/http"
"regexp"
"strings"
"time"
@@ -1499,57 +1498,76 @@ func addSku(outSkuId string, cagtegoryId int, shopCategories []int64, brandId in
}
func UploadJdsImage(ctx *jxcontext.Context) (err error) {
var (
skuNames []*model.SkuName
db = dao.GetDB()
)
sql := `
SELECT DISTINCT a.*
FROM sku_name a, store_sku_bind b, sku c
WHERE a.id = c.name_id AND c.id = b.sku_id
AND a.deleted_at = ? AND a.status = 1 AND a.img <> ''
AND c.deleted_at = ? AND b.deleted_at = ?
AND b.store_id = ?
`
sqlParams := []interface{}{utils.DefaultTimeValue, utils.DefaultTimeValue, utils.DefaultTimeValue, 102919}
err = dao.GetRows(dao.GetDB(), &skuNames, sql, sqlParams)
for _, v := range skuNames {
if v.ID == 9169 {
for _, vv := range []string{v.Img, v.Img2, v.DescImg} {
if vv == "" {
continue
}
datar := &model.DataResource{
MainURL: vv,
}
err = dao.GetEntity(db, datar, "MainURL")
resBinary, hashCode, _ := jxutils.DownloadFileByURL(vv)
handler := partner.GetPurchasePlatformFromVendorID(model.VendorIDJDShop)
img, err := handler.UploadImg(ctx, "", "", resBinary, v.Name, 1)
if dao.IsNoRowsError(err) {
dataRes := &model.DataResource{
HashCode: hashCode,
ResourceType: http.DetectContentType(resBinary),
MainURL: vv,
JdsURL: img,
}
if vv == v.DescImg {
dataRes.Name = v.Name + "_desc"
dataRes.UseType = model.ImgTypeDesc
} else {
dataRes.UseType = model.ImgTypeMain
dataRes.Name = v.Name
}
dao.CreateEntity(db, dataRes)
} else {
if err == nil {
datar.JdsURL = img
dao.UpdateEntity(db, datar, "JdsURL")
}
}
db := dao.GetDB()
result1, _ := api.JdShopAPI.GetProvince()
for _, v := range result1 {
place1, _ := dao.GetPlaceByName(db, v.AreaName, 1, 0)
place1.JdsCode = v.AreaID
dao.UpdateEntity(db, place1, "JdsCode")
result2, _ := api.JdShopAPI.GetCity(v.AreaID)
for _, vv := range result2 {
place2, _ := dao.GetPlaceByName(db, vv.AreaName, 2, 0)
place2.JdsCode = vv.AreaID
dao.UpdateEntity(db, place2, "JdsCode")
result3, _ := api.JdShopAPI.GetCounty(vv.AreaID)
for _, vvv := range result3 {
place3, _ := dao.GetPlaceByName(db, vvv.AreaName, 3, 0)
place3.JdsCode = vvv.AreaID
dao.UpdateEntity(db, place3, "JdsCode")
}
}
}
// var (
// skuNames []*model.SkuName
// db = dao.GetDB()
// )
// sql := `
// SELECT DISTINCT a.*
// FROM sku_name a, store_sku_bind b, sku c
// WHERE a.id = c.name_id AND c.id = b.sku_id
// AND a.deleted_at = ? AND a.status = 1 AND a.img <> ''
// AND c.deleted_at = ? AND b.deleted_at = ?
// AND b.store_id = ?
// `
// sqlParams := []interface{}{utils.DefaultTimeValue, utils.DefaultTimeValue, utils.DefaultTimeValue, 102919}
// err = dao.GetRows(dao.GetDB(), &skuNames, sql, sqlParams)
// for _, v := range skuNames {
// if v.ID == 9169 {
// for _, vv := range []string{v.Img, v.Img2, v.DescImg} {
// if vv == "" {
// continue
// }
// datar := &model.DataResource{
// MainURL: vv,
// }
// err = dao.GetEntity(db, datar, "MainURL")
// resBinary, hashCode, _ := jxutils.DownloadFileByURL(vv)
// handler := partner.GetPurchasePlatformFromVendorID(model.VendorIDJDShop)
// img, err := handler.UploadImg(ctx, "", "", resBinary, v.Name, 1)
// if dao.IsNoRowsError(err) {
// dataRes := &model.DataResource{
// HashCode: hashCode,
// ResourceType: http.DetectContentType(resBinary),
// MainURL: vv,
// JdsURL: img,
// }
// if vv == v.DescImg {
// dataRes.Name = v.Name + "_desc"
// dataRes.UseType = model.ImgTypeDesc
// } else {
// dataRes.UseType = model.ImgTypeMain
// dataRes.Name = v.Name
// }
// dao.CreateEntity(db, dataRes)
// } else {
// if err == nil {
// datar.JdsURL = img
// dao.UpdateEntity(db, datar, "JdsURL")
// }
// }
// }
// }
// }
return err
}

View File

@@ -18,6 +18,7 @@ type Place struct {
TelCode string `orm:"size(8);index" json:"telCode"`
JdCode int `orm:"index" json:"jdCode"` // 对应的京东代码
EbaiCode int `orm:"index" json:"ebaiCode"`
Enabled int8 `json:"enabled"` // 是否启用
MtpsPrice int `json:"mtpsPrice"` // 分为单位
Enabled int8 `json:"enabled"` // 是否启用
MtpsPrice int `json:"mtpsPrice"` // 分为单位
JdsCode int `orm:"index" json:"jdsCode"` //京东商城代码
}