1
This commit is contained in:
@@ -40,12 +40,12 @@ func (t LocalTime) String() string {
|
||||
return time.Time(t).Format(TimeFormat)
|
||||
}
|
||||
|
||||
func UnmarshalJSON(data []byte,v interface{})(err error){
|
||||
func UnmarshalJSON(data []byte, v interface{}) (err error) {
|
||||
return json.Unmarshal(data, v)
|
||||
}
|
||||
|
||||
func ConvertStructList(data interface{}) string {
|
||||
if(data == nil) {
|
||||
if data == nil {
|
||||
return "[]"
|
||||
}
|
||||
jsonStr, _ := json.Marshal(data)
|
||||
@@ -53,7 +53,7 @@ func ConvertStructList(data interface{}) string {
|
||||
}
|
||||
|
||||
func ConvertStruct(data interface{}) string {
|
||||
if(data == nil) {
|
||||
if data == nil {
|
||||
return "{}"
|
||||
}
|
||||
jsonStr, _ := json.Marshal(data)
|
||||
@@ -61,17 +61,17 @@ func ConvertStruct(data interface{}) string {
|
||||
}
|
||||
|
||||
func ConvertBasicList(data interface{}) string {
|
||||
if(data == nil) {
|
||||
if data == nil {
|
||||
return "[]"
|
||||
}
|
||||
return strings.Replace(strings.Trim(fmt.Sprint(data), "[]"), " ", ",", -1)
|
||||
}
|
||||
|
||||
func HandleJsonResponse(jsonStr string,v interface{})(err error) {
|
||||
func HandleJsonResponse(jsonStr string, v interface{}) (err error) {
|
||||
|
||||
if(strings.Contains(jsonStr[0:20],"error_response")){
|
||||
if strings.Contains(jsonStr[0:20], "error_response") {
|
||||
err := &TopApiRequestError{}
|
||||
jsonStr = jsonStr[18:len(jsonStr)-1]
|
||||
jsonStr = jsonStr[18 : len(jsonStr)-1]
|
||||
err2 := json.Unmarshal([]byte(jsonStr), err)
|
||||
if err2 != nil {
|
||||
return err2
|
||||
@@ -81,12 +81,12 @@ func HandleJsonResponse(jsonStr string,v interface{})(err error) {
|
||||
return json.Unmarshal([]byte(jsonStr), v)
|
||||
}
|
||||
|
||||
func GetSign(publicParam map[string]interface{},data map[string]interface{},secret string) string {
|
||||
func GetSign(publicParam map[string]interface{}, data map[string]interface{}, secret string) string {
|
||||
var allParamMap = make(map[string]interface{})
|
||||
for k,v := range data {
|
||||
for k, v := range data {
|
||||
allParamMap[k] = v
|
||||
}
|
||||
for k,v := range publicParam {
|
||||
for k, v := range publicParam {
|
||||
allParamMap[k] = v
|
||||
}
|
||||
var keyList []string
|
||||
@@ -95,21 +95,20 @@ func GetSign(publicParam map[string]interface{},data map[string]interface{},secr
|
||||
}
|
||||
sort.Strings(keyList)
|
||||
var signStr = ""
|
||||
for _ , key := range keyList {
|
||||
for _, key := range keyList {
|
||||
value := allParamMap[key]
|
||||
signStr = signStr + fmt.Sprintf("%v%v", key, value)
|
||||
//if(value != ""){
|
||||
// signStr = signStr + fmt.Sprintf("%v%v", key, value)
|
||||
//}
|
||||
}
|
||||
fmt.Println(signStr)
|
||||
sign := strings.ToUpper(HmacSha256(signStr,secret))
|
||||
//fmt.Println(signStr)
|
||||
sign := strings.ToUpper(HmacSha256(signStr, secret))
|
||||
return sign
|
||||
}
|
||||
|
||||
|
||||
func HmacSha256(data string, secret string) string {
|
||||
h := hmac.New(sha256.New, []byte(secret))
|
||||
h.Write([]byte(data))
|
||||
return hex.EncodeToString(h.Sum(nil))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,9 +6,13 @@ import (
|
||||
"git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability585/domain"
|
||||
"git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability585/request"
|
||||
"git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability587"
|
||||
domain587 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability587/domain"
|
||||
request2 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability587/request"
|
||||
"git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability589"
|
||||
request589 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability589/request"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
"time"
|
||||
)
|
||||
|
||||
// AddStoreSku 新增门店商品
|
||||
@@ -82,11 +86,6 @@ func (a *API) QueryStoreSKu(param *request.AlibabaWdkSkuQueryRequest) (*[]domain
|
||||
return data.Result.Models, nil
|
||||
}
|
||||
|
||||
// DeleteStoreSku 删除门店商品
|
||||
func (a *API) DeleteStoreSku() {
|
||||
|
||||
}
|
||||
|
||||
// StoreSkuUpdateOffShelf 门店商品上下架
|
||||
func (a *API) StoreSkuUpdateOffShelf(param *request2.AlibabaAxChannelSkuStatusUpdateRequest) error {
|
||||
//globals.SugarLogger.Debugf("进入 StoreSkuUpdateOffShelf")
|
||||
@@ -95,36 +94,37 @@ func (a *API) StoreSkuUpdateOffShelf(param *request2.AlibabaAxChannelSkuStatusUp
|
||||
data, _ := client.AlibabaAxChannelSkuStatusUpdate(param, a.token)
|
||||
|
||||
if !*data.ApiResult.Success {
|
||||
//globals.SugarLogger.Debugf("requestId[%s],err[%s]", data.RequestId, utils.Format4Output(data.ApiResult, false))
|
||||
return fmt.Errorf(*data.ApiResult.ErrMsg)
|
||||
globals.SugarLogger.Debugf("storeID:%d,skuId:%d,requestId[%s],err[%s]", param.ChannelSkuUpdateStatusReq.StoreId, param.ChannelSkuUpdateStatusReq.SkuCode, data.RequestId, utils.Format4Output(data, false))
|
||||
//return fmt.Errorf(*data.ApiResult.ErrMsg)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// StoreSkuUpdateOffShelfList 门店商品上下架
|
||||
//func (a *API) StoreSkuUpdateOffShelfList(storeID int64, skuList []string) []string {
|
||||
// client := ability587.NewAbility587(&a.client)
|
||||
//
|
||||
// errs := make([]string, 0, 0)
|
||||
// param := &request2.AlibabaAxChannelSkuStatusUpdateRequest{ChannelSkuUpdateStatusReq: &domain587.AlibabaAxChannelSkuStatusUpdateChannelSkuUpdateStatusReq{
|
||||
// StoreId: utils.String2Pointer(fmt.Sprintf("JX%d", storeID)),
|
||||
// ChannelCode: utils.String2Pointer("31"),
|
||||
// OnlineSaleFlag: utils.Int64ToPointer(0),
|
||||
// }}
|
||||
// for i := 0; i < len(skuList); i++ {
|
||||
// param.ChannelSkuUpdateStatusReq.SkuCode = utils.String2Pointer(skuList[i])
|
||||
// data, _ := client.AlibabaAxChannelSkuStatusUpdate(param, a.token)
|
||||
// if !*data.ApiResult.Success {
|
||||
// errs = append(errs, *data.ApiResult.ErrMsg)
|
||||
// }
|
||||
// if i%5 == 0 {
|
||||
// time.Sleep(1 * time.Second)
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// return errs
|
||||
//}
|
||||
func (a *API) StoreSkuUpdateOffShelfList(storeID int64, skuList []int64) []string {
|
||||
client := ability587.NewAbility587(&a.client)
|
||||
|
||||
errs := make([]string, 0, 0)
|
||||
param := &request2.AlibabaAxChannelSkuStatusUpdateRequest{ChannelSkuUpdateStatusReq: &domain587.AlibabaAxChannelSkuStatusUpdateChannelSkuUpdateStatusReq{
|
||||
StoreId: utils.String2Pointer(fmt.Sprintf("JX%d", storeID)),
|
||||
ChannelCode: utils.String2Pointer("31"),
|
||||
OnlineSaleFlag: utils.Int64ToPointer(1),
|
||||
}}
|
||||
for i := 0; i < len(skuList); i++ {
|
||||
param.ChannelSkuUpdateStatusReq.SkuCode = utils.String2Pointer(utils.Int64ToStr(skuList[i]))
|
||||
data, _ := client.AlibabaAxChannelSkuStatusUpdate(param, a.token)
|
||||
globals.SugarLogger.Debugf("data = %s", utils.Format4Output(data, false))
|
||||
//if !*data.ApiResult.Success {
|
||||
// errs = append(errs, *data.ApiResult.ErrMsg)
|
||||
//}
|
||||
if i%5 == 0 {
|
||||
time.Sleep(1 * time.Second)
|
||||
}
|
||||
}
|
||||
|
||||
return errs
|
||||
}
|
||||
|
||||
// StoreSkuStock 商品库存同步
|
||||
func (a *API) StoreSkuStock(param *request589.AlibabaWdkStockPublishRequest) error {
|
||||
|
||||
@@ -5,8 +5,6 @@ import (
|
||||
request1475 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability1475/request"
|
||||
domain585 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability585/domain"
|
||||
request585 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability585/request"
|
||||
domain587 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability587/domain"
|
||||
request587 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability587/request"
|
||||
domain589 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability589/domain"
|
||||
request589 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability589/request"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
@@ -131,25 +129,17 @@ func TestUpdateSku(t *testing.T) {
|
||||
// 商品上下架
|
||||
func TestStoreSkuUpdateOffShelf(t *testing.T) {
|
||||
for _, storeID := range storeList {
|
||||
param := &request587.AlibabaAxChannelSkuStatusUpdateRequest{ChannelSkuUpdateStatusReq: &domain587.AlibabaAxChannelSkuStatusUpdateChannelSkuUpdateStatusReq{
|
||||
StoreId: utils.String2Pointer(fmt.Sprintf("JX%d", storeID)),
|
||||
ChannelCode: utils.String2Pointer("31"),
|
||||
OnlineSaleFlag: utils.Int64ToPointer(1),
|
||||
}}
|
||||
for _, v := range skuList {
|
||||
param.ChannelSkuUpdateStatusReq.SkuCode = utils.String2Pointer(utils.Int64ToStr(v))
|
||||
err := apiTao.StoreSkuUpdateOffShelf(param)
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
}
|
||||
globals.SugarLogger.Debugf("store %d", storeID)
|
||||
err := apiTao.StoreSkuUpdateOffShelfList(storeID, skuList)
|
||||
if err != nil {
|
||||
globals.SugarLogger.Debugf("err := %s", utils.Format4Output(err, false))
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
var storeList = []int64{
|
||||
669053, 103074, 668985, 103065, 668960, 668959, 668953, 103029, 668949, 103002, 102999, 668932, 668931, 668917, 102969, 102966, 668909, 668908, 668905, 668901, 102946, 102939, 102938, 668894, 102934, 102933, 102930, 668884, 668878, 102903, 668757, 102293, 668622, 668618, 668592, 100945, 668583, 100943, 100905, 668498, 668476, 668462, 100309, 100299, 100292, 668276, 668180, 667320, 667237, 667036, 668691, 668673, 668282, 667447, 667354, 667335, 667319, 667269, 667268, 667267, 667260, 667132, 667030, 666965, 666714, 666708, 666705, 103437, 103349, 103123, 103121, 103106, 103038, 103028, 103019, 102831, 102751, 102683, 102542, 102514, 102382, 102182, 102178, 102173, 102098, 102094, 102080, 100097, 100096, 100095, 100093, 100092, 100089, 100087, 100086, 100085, 100083, 100082, 100081, 100079, 100078, 100786, 100746, 102072, 102069, 101870, 101869, 101868, 100744, 100705, 100400, 100111, 100108, 100106, 100104, 100103, 100102, 100100, 101867, 101866, 101865, 100956, 100930, 100871,
|
||||
}
|
||||
//
|
||||
var storeList = []int64{667354, 667319, 667269, 667268, 667267, 667260, 667132, 667030, 666965, 666714, 666708, 666705, 103437, 103349, 103123, 103121, 103106, 103038, 103028, 103019, 102831, 102751, 102683, 102542, 102514, 102382, 102182, 102178, 102173, 102098, 102094, 102080, 100097, 100096, 100095, 100093, 100092, 100089, 100087, 100086, 100085, 100083, 100082, 100079, 100078, 100786, 100746, 102072, 102069, 101870, 101869, 101868, 100744, 100705, 100400, 100111, 100108, 100106, 100104, 100103, 100102, 100100, 101867, 101866, 101865, 100956, 100930, 100871}
|
||||
|
||||
var skuList = []int64{
|
||||
26125,
|
||||
|
||||
@@ -124,115 +124,11 @@ func TestShopUpdateRange(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestUpdateStoreTest(t *testing.T) {
|
||||
aa := []string{
|
||||
"JX668691",
|
||||
"JX668282",
|
||||
"JX667447",
|
||||
"JX667354",
|
||||
"JX667319",
|
||||
"JX667316",
|
||||
"JX669158",
|
||||
"JX667269",
|
||||
"JX667267",
|
||||
"JX667260",
|
||||
"JX667132",
|
||||
"JX667030",
|
||||
"JX666965",
|
||||
"JX666714",
|
||||
"JX666708",
|
||||
"JX666705",
|
||||
"JX103437",
|
||||
"JX103349",
|
||||
"JX103123",
|
||||
"JX103121",
|
||||
"JX103106",
|
||||
"JX103038",
|
||||
"JX103028",
|
||||
"JX103019",
|
||||
"JX102831",
|
||||
"JX102751",
|
||||
"JX102683",
|
||||
"JX102542",
|
||||
"JX102514",
|
||||
"JX102382",
|
||||
"JX102182",
|
||||
"JX102178",
|
||||
"JX102173",
|
||||
"JX102098",
|
||||
"JX102094",
|
||||
"JX102080",
|
||||
"JX102072",
|
||||
"JX102069",
|
||||
"JX101870",
|
||||
"JX101869",
|
||||
"JX101868",
|
||||
"JX101867",
|
||||
"JX101866",
|
||||
"JX101865",
|
||||
"JX100956",
|
||||
"JX100930",
|
||||
"JX100871",
|
||||
"JX100786",
|
||||
"JX100746",
|
||||
"JX100744",
|
||||
"JX100726",
|
||||
"JX100705",
|
||||
"JX100400",
|
||||
"JX100111",
|
||||
"JX100108",
|
||||
"JX100104",
|
||||
"JX100103",
|
||||
"JX100102",
|
||||
"JX100100",
|
||||
"JX100097",
|
||||
"JX100096",
|
||||
"JX100095",
|
||||
"JX100093",
|
||||
"JX100089",
|
||||
"JX100087",
|
||||
"JX100086",
|
||||
"JX100085",
|
||||
"JX100082",
|
||||
"JX100079",
|
||||
"JX100078",
|
||||
"JX668673",
|
||||
"JX667321",
|
||||
"JX667268",
|
||||
"JX667094",
|
||||
//669158,
|
||||
//667321,
|
||||
//667094,
|
||||
//668906,
|
||||
//668886,
|
||||
//668880,
|
||||
//668751,
|
||||
//668701,
|
||||
//668569,
|
||||
//668567,
|
||||
//668506,
|
||||
//667231,
|
||||
//667068,
|
||||
//103191,
|
||||
//103051,
|
||||
//103050,
|
||||
//103037,
|
||||
//103018,
|
||||
//102951,
|
||||
//102924,
|
||||
//102920,
|
||||
//102908,
|
||||
//102561,
|
||||
//100946,
|
||||
//100720,
|
||||
//100325,
|
||||
//100324,
|
||||
//100296,
|
||||
//100290,
|
||||
aa := []int64{
|
||||
102969, 102966, 668909, 668908, 668905, 668901, 102946, 102939, 102938, 668894, 102934, 102933, 102930, 668884, 668878, 102903, 668757, 102293, 668622, 668618, 668592, 100945, 668583, 100943, 100905, 668498, 668476, 668462, 100309, 100299, 100292, 668276, 668180, 667320, 667237, 667036, 668691, 668673, 668282, 667447, 667354, 667319, 667269, 667268, 667267, 667260, 667132, 667030, 666965, 666714, 666708, 666705, 103437, 103349, 103123, 103121, 103106, 103038, 103028, 103019, 102831, 102751, 102683, 102542, 102514, 102382, 102182, 102178, 102173, 102098, 102094, 102080, 100097, 100096, 100095, 100093, 100092, 100089, 100087, 100086, 100085, 100083, 100082, 100079, 100078, 100786, 100746, 102072, 102069, 101870, 101869, 101868, 100744, 100705, 100400, 100111, 100108, 100106, 100104, 100103, 100102, 100100, 101867, 101866, 101865, 100956, 100930, 100871,
|
||||
}
|
||||
for _, v := range aa {
|
||||
//err := apiTao.ShopUpdateStatus(fmt.Sprintf("jx%d", v), -1)
|
||||
//fmt.Println(err)
|
||||
err := apiTao.ShopUpdateStatus(v, -1)
|
||||
err := apiTao.ShopUpdateStatus(fmt.Sprintf("JX%d", v), 1)
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user