京东商城创建商品
This commit is contained in:
@@ -336,7 +336,7 @@ func updateStoreSku(db *dao.DaoDB, vendorID int, storeSkuList []*dao.StoreSkuSyn
|
|||||||
// }()
|
// }()
|
||||||
if vendorID == model.VendorIDJDShop {
|
if vendorID == model.VendorIDJDShop {
|
||||||
for _, v := range storeSkuList {
|
for _, v := range storeSkuList {
|
||||||
updateItemList := make([]*dao.KVUpdateItem, len(storeSkuList))
|
updateItemList := make([]*dao.KVUpdateItem, len(v.StoreSkuSyncInfoJds))
|
||||||
for k, vv := range v.StoreSkuSyncInfoJds {
|
for k, vv := range v.StoreSkuSyncInfoJds {
|
||||||
updateItemList[k] = sku2Update(vendorID, vv, syncStatus)
|
updateItemList[k] = sku2Update(vendorID, vv, syncStatus)
|
||||||
err = updateJdsWareID(db, vv)
|
err = updateJdsWareID(db, vv)
|
||||||
|
|||||||
@@ -8,6 +8,8 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
|
"git.rosy.net.cn/jx-callback/business/jxutils/datares"
|
||||||
|
|
||||||
"git.rosy.net.cn/jx-callback/business/auth2/authprovider/weixin"
|
"git.rosy.net.cn/jx-callback/business/auth2/authprovider/weixin"
|
||||||
"git.rosy.net.cn/jx-callback/business/partner/delivery"
|
"git.rosy.net.cn/jx-callback/business/partner/delivery"
|
||||||
"github.com/360EntSecGroup-Skylar/excelize"
|
"github.com/360EntSecGroup-Skylar/excelize"
|
||||||
@@ -1496,3 +1498,23 @@ func addSku(outSkuId string, cagtegoryId int, shopCategories []int64, brandId in
|
|||||||
// return "456", err
|
// return "456", err
|
||||||
return api.JdAPI.AddSku(outSkuId, cagtegoryId, shopCategories, brandId, skuName, skuPrice, weight, images, fixedStatus, isSale, addParams)
|
return api.JdAPI.AddSku(outSkuId, cagtegoryId, shopCategories, brandId, skuName, skuPrice, weight, images, fixedStatus, isSale, addParams)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func UploadJdsImage(ctx *jxcontext.Context) (err error) {
|
||||||
|
var skuNames []*model.SkuName
|
||||||
|
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 {
|
||||||
|
datares.TryRegisterDataResource(ctx, v.Name, v.Img, model.ImgTypeMain, false)
|
||||||
|
datares.TryRegisterDataResource(ctx, v.Name, v.Img2, model.ImgTypeMain, false)
|
||||||
|
datares.TryRegisterDataResource(ctx, v.Name, v.DescImg, model.ImgTypeMain, false)
|
||||||
|
}
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|||||||
@@ -159,6 +159,9 @@ func UploadImage2Vendors(ctx *jxcontext.Context, parentTask tasksch.ITask, dataR
|
|||||||
if dataRes.MtwmURL == "" {
|
if dataRes.MtwmURL == "" {
|
||||||
vendorIDs = append(vendorIDs, model.VendorIDMTWM)
|
vendorIDs = append(vendorIDs, model.VendorIDMTWM)
|
||||||
}
|
}
|
||||||
|
if dataRes.JdsURL == "" {
|
||||||
|
vendorIDs = append(vendorIDs, model.VendorIDJDShop)
|
||||||
|
}
|
||||||
if len(vendorIDs) > 0 {
|
if len(vendorIDs) > 0 {
|
||||||
imgName := jxutils.GetShortNameFromURL(dataRes.MainURL)
|
imgName := jxutils.GetShortNameFromURL(dataRes.MainURL)
|
||||||
task := tasksch.NewSeqTask(fmt.Sprintf("上传图片至平台1:%s,%s", dataRes.Name, dataRes.MainURL), ctx,
|
task := tasksch.NewSeqTask(fmt.Sprintf("上传图片至平台1:%s,%s", dataRes.Name, dataRes.MainURL), ctx,
|
||||||
@@ -205,6 +208,9 @@ func UploadImage2Vendors(ctx *jxcontext.Context, parentTask tasksch.ITask, dataR
|
|||||||
} else if vendorID == model.VendorIDMTWM {
|
} else if vendorID == model.VendorIDMTWM {
|
||||||
dataRes.MtwmURL = imgHint
|
dataRes.MtwmURL = imgHint
|
||||||
updateField = "MtwmURL"
|
updateField = "MtwmURL"
|
||||||
|
} else if vendorID == model.VendorIDJDShop {
|
||||||
|
dataRes.JdsURL = imgHint
|
||||||
|
updateField = "JdsURL"
|
||||||
}
|
}
|
||||||
dao.UpdateEntity(db, dataRes, updateField)
|
dao.UpdateEntity(db, dataRes, updateField)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ type DataResource struct {
|
|||||||
QiniuURL string `orm:"size(512);column(qiniu_url);index" json:"qiniuURL"`
|
QiniuURL string `orm:"size(512);column(qiniu_url);index" json:"qiniuURL"`
|
||||||
EbaiURL string `orm:"size(512);column(ebai_url);index" json:"ebaiURL"`
|
EbaiURL string `orm:"size(512);column(ebai_url);index" json:"ebaiURL"`
|
||||||
MtwmURL string `orm:"size(512);column(mtwm_url);index" json:"mtwmURL"`
|
MtwmURL string `orm:"size(512);column(mtwm_url);index" json:"mtwmURL"`
|
||||||
|
JdsURL string `orm:"size(512);column(jds_url);index" json:"jdsURL"`
|
||||||
|
|
||||||
Remark string `orm:"size(1024)" json:"remark"`
|
Remark string `orm:"size(1024)" json:"remark"`
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import (
|
|||||||
"git.rosy.net.cn/jx-callback/business/model"
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
"git.rosy.net.cn/jx-callback/business/partner"
|
"git.rosy.net.cn/jx-callback/business/partner"
|
||||||
"git.rosy.net.cn/jx-callback/business/partner/putils"
|
"git.rosy.net.cn/jx-callback/business/partner/putils"
|
||||||
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
"git.rosy.net.cn/jx-callback/globals/api"
|
"git.rosy.net.cn/jx-callback/globals/api"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -36,7 +37,16 @@ func (p *PurchaseHandler) GetVendorID() int {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) UploadImg(ctx *jxcontext.Context, vendorOrgCode, imgURL string, imgData []byte, imgName string, imgType int) (imgHint string, err error) {
|
func (p *PurchaseHandler) UploadImg(ctx *jxcontext.Context, vendorOrgCode, imgURL string, imgData []byte, imgName string, imgType int) (imgHint string, err error) {
|
||||||
|
if globals.EnableJdShopWrite {
|
||||||
|
if imgType > model.ImgTypeLocal {
|
||||||
|
result, err := api.JdShopAPI.UploadPicture(imgData, 0, imgName)
|
||||||
|
if err == nil {
|
||||||
|
imgHint = result.PictureURL
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
imgHint = utils.GetUpperUUID()
|
||||||
|
}
|
||||||
return imgHint, err
|
return imgHint, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ package jdshop
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"regexp"
|
"regexp"
|
||||||
"time"
|
|
||||||
|
|
||||||
"git.rosy.net.cn/baseapi/platformapi/jdshopapi"
|
"git.rosy.net.cn/baseapi/platformapi/jdshopapi"
|
||||||
|
|
||||||
@@ -317,35 +316,36 @@ func buildCreateWareParam(storeSku *dao.StoreSkuSyncInfo) (createSkuParamWare *j
|
|||||||
createSkuParamWare.Introduction = "因生鲜比较脆弱,发货途中如果有磕碰损坏,请收到联系客服,闪电赔付。请核对好地址,发货后不可修改地址,因改地址导致损坏不能赔付,谢谢理解"
|
createSkuParamWare.Introduction = "因生鲜比较脆弱,发货途中如果有磕碰损坏,请收到联系客服,闪电赔付。请核对好地址,发货后不可修改地址,因改地址导致损坏不能赔付,谢谢理解"
|
||||||
//上传京东图片 start
|
//上传京东图片 start
|
||||||
//规则,有两张就传两张,没有就重复传一张
|
//规则,有两张就传两张,没有就重复传一张
|
||||||
data, _, err := jxutils.DownloadFileByURL(storeSku.Img)
|
// data, _, err := jxutils.DownloadFileByURL(storeSku.Img)
|
||||||
if err != nil {
|
// if err != nil {
|
||||||
return createSkuParamWare, createSkuParamSkus, err
|
// return createSkuParamWare, createSkuParamSkus, err
|
||||||
}
|
// }
|
||||||
uploadResult, err := api.JdShopAPI.UploadPicture(data, 0, utils.Int64ToStr(time.Now().Unix())+storeSku.Name)
|
// uploadResult, err := api.JdShopAPI.UploadPicture(data, 0, utils.Int64ToStr(time.Now().Unix())+storeSku.Name)
|
||||||
if err != nil {
|
// if err != nil {
|
||||||
return createSkuParamWare, createSkuParamSkus, err
|
// return createSkuParamWare, createSkuParamSkus, err
|
||||||
}
|
// }
|
||||||
img1 := &jdshopapi.CreateSkuParamImages{
|
img1 := &jdshopapi.CreateSkuParamImages{
|
||||||
ColorID: "0000000000",
|
ColorID: "0000000000",
|
||||||
ImgIndex: 1,
|
ImgIndex: 1,
|
||||||
ImgURL: uploadResult.PictureURL,
|
ImgURL: storeSku.Img,
|
||||||
}
|
}
|
||||||
img2 := &jdshopapi.CreateSkuParamImages{
|
img2 := &jdshopapi.CreateSkuParamImages{
|
||||||
ColorID: "0000000000",
|
ColorID: "0000000000",
|
||||||
ImgIndex: 2,
|
ImgIndex: 2,
|
||||||
}
|
}
|
||||||
if storeSku.Img2 == "" {
|
if storeSku.Img2 == "" {
|
||||||
img2.ImgURL = uploadResult.PictureURL
|
img2.ImgURL = storeSku.Img
|
||||||
} else {
|
// img2.ImgURL = uploadResult.PictureURL
|
||||||
data2, _, err := jxutils.DownloadFileByURL(storeSku.Img2)
|
// } else {
|
||||||
if err != nil {
|
// data2, _, err := jxutils.DownloadFileByURL(storeSku.Img2)
|
||||||
return createSkuParamWare, createSkuParamSkus, err
|
// if err != nil {
|
||||||
}
|
// return createSkuParamWare, createSkuParamSkus, err
|
||||||
uploadResult2, err := api.JdShopAPI.UploadPicture(data2, 0, utils.Int64ToStr(time.Now().Unix())+storeSku.Name)
|
// }
|
||||||
if err != nil {
|
// uploadResult2, err := api.JdShopAPI.UploadPicture(data2, 0, utils.Int64ToStr(time.Now().Unix())+storeSku.Name)
|
||||||
return createSkuParamWare, createSkuParamSkus, err
|
// if err != nil {
|
||||||
}
|
// return createSkuParamWare, createSkuParamSkus, err
|
||||||
img2.ImgURL = uploadResult2.PictureURL
|
// }
|
||||||
|
// img2.ImgURL = uploadResult2.PictureURL
|
||||||
}
|
}
|
||||||
images = append(images, img1)
|
images = append(images, img1)
|
||||||
images = append(images, img2)
|
images = append(images, img2)
|
||||||
|
|||||||
@@ -368,3 +368,16 @@ func (c *TempOpController) BuildSkuFromEbaiStore() {
|
|||||||
return retVal, "", err
|
return retVal, "", err
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title 上传京东商城图片
|
||||||
|
// @Description 上传京东商城图片
|
||||||
|
// @Param token header string true "认证token"
|
||||||
|
// @Success 200 {object} controllers.CallResult
|
||||||
|
// @Failure 200 {object} controllers.CallResult
|
||||||
|
// @router /UploadJdsImage [post]
|
||||||
|
func (c *TempOpController) UploadJdsImage() {
|
||||||
|
c.callUploadJdsImage(func(params *tTempopUploadJdsImageParams) (retVal interface{}, errCode string, err error) {
|
||||||
|
err = tempop.UploadJdsImage(params.Ctx)
|
||||||
|
return retVal, "", err
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|||||||
@@ -2448,6 +2448,15 @@ func init() {
|
|||||||
Filters: nil,
|
Filters: nil,
|
||||||
Params: nil})
|
Params: nil})
|
||||||
|
|
||||||
|
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:TempOpController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:TempOpController"],
|
||||||
|
beego.ControllerComments{
|
||||||
|
Method: "UploadJdsImage",
|
||||||
|
Router: `/UploadJdsImage`,
|
||||||
|
AllowHTTPMethods: []string{"post"},
|
||||||
|
MethodParams: param.Make(),
|
||||||
|
Filters: nil,
|
||||||
|
Params: nil})
|
||||||
|
|
||||||
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:User2Controller"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:User2Controller"],
|
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:User2Controller"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:User2Controller"],
|
||||||
beego.ControllerComments{
|
beego.ControllerComments{
|
||||||
Method: "AddMyDeliveryAddress",
|
Method: "AddMyDeliveryAddress",
|
||||||
|
|||||||
Reference in New Issue
Block a user