This commit is contained in:
邹宗楠
2023-08-03 16:37:58 +08:00
parent 44ed7450ef
commit d8e07b285a
4 changed files with 52 additions and 167 deletions

View File

@@ -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))
}
}

View File

@@ -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 {

View File

@@ -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,

View File

@@ -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)
}