This commit is contained in:
邹宗楠
2025-09-12 16:23:59 +08:00
parent 641329db6d
commit c4f6462945
11 changed files with 189 additions and 16 deletions

View File

@@ -1,6 +1,7 @@
package mtwmapi
import (
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/globals"
"testing"
"time"
@@ -8,7 +9,7 @@ import (
func TestBillList(t *testing.T) {
now := time.Now()
from := time.Date(now.Year(), now.Month(), now.Day()-2, 0, 0, 0, 0, time.Local)
from := time.Date(now.Year(), now.Month(), now.Day()-5, 0, 0, 0, 0, time.Local)
to := time.Date(now.Year(), now.Month(), now.Day()-2, 23, 59, 59, 59, time.Local)
param := &Bill{
AppPoiCode: "4418003",
@@ -19,13 +20,13 @@ func TestBillList(t *testing.T) {
AccessToken: api.token,
}
_, _, _, err := api.GetStoreBillList(param)
_, fine, _, err := api.GetStoreBillList(param)
if err != nil {
globals.SugarLogger.Debugf("err := %v", err)
return
}
//globals.SugarLogger.Debugf("settleId := %d", settleId)
globals.SugarLogger.Debugf("settleId := %s", utils.Format4Output(fine, false))
//for _, v := range data {
// globals.SugarLogger.Debugf("OrderId : %s , TimingFee : %d , DeliveryFee : %d , PlatformSettlement : %d ", v.OrderId, v.TimingFee, v.DeliveryFee, v.PlatformSettlement)
//}

View File

@@ -77,14 +77,14 @@ func TestRdbSet(t *testing.T) {
func TestSendMsg(t *testing.T) {
data := PushContentReq{
AppID: 589,
AppPoiCode: "7290541",
MsgID: 1729566539763500,
MsgContent: "cqH27xu/6vS+eqmykE39nA==",
AppPoiCode: "29066882",
MsgID: 175758059520401,
MsgContent: "v+JsErdWUcxwSLVPfXgw7+0chcSyHbInTQOgcOGGLaGnb92NO9Iut8rgpGDQbvYYjjPzX7XCcEud/ECwcZskl+HoQF6Qa+La1++qGurBov0=",
MsgSource: 1,
MsgType: 1,
MsgType: 2,
Cts: int(time.Now().Unix()),
OrderID: 3801305470340611516,
OpenUserID: 9548822498,
OrderID: 0,
OpenUserID: 9020915181,
}
dataMar, err := json.Marshal(data)
fmt.Println(string(dataMar))

View File

@@ -48,7 +48,6 @@ func (a *API) UploadInvoice(orderId, invoiceUrl, invoiceId, taskId string) (err
for _, v := range resp.(map[string]interface{})["error_list"].([]interface{}) {
errMsg = append(errMsg, v.(map[string]interface{})["msg"].(string))
}
}
return fmt.Errorf("%s", strings.Join(errMsg, ","))
}

View File

@@ -5,6 +5,7 @@ import (
"crypto/md5"
"fmt"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/globals"
"mime/multipart"
"net/http"
"net/url"
@@ -149,7 +150,7 @@ func (a *API) AccessAPI2(cmd string, isGet bool, bizParams map[string]interface{
}
signURL := a.genURL(cmd) + "?"
params[signKey] = a.signParams(signURL, params)
//globals.SugarLogger.Debugf("test mtCancelAct cmd=%s sig=%s", cmd, utils.Format4Output(params, false))
globals.SugarLogger.Debugf("-----sing := %s", params[signKey].(string))
err = platformapi.AccessPlatformAPIWithRetry(a.client,
func() *http.Request {
var request *http.Request

View File

@@ -20,10 +20,10 @@ func init() {
baseapi.Init(sugarLogger)
// 菜市
//api = New("589", "a81eb3df418d83d6a1a4b7c572156d2f", "", "")
api = New("589", "a81eb3df418d83d6a1a4b7c572156d2f", "", "")
// 果园
api = New("4123", "df2c88338b85f830cebce2a9eab56628", "", "")
//api = New("4123", "df2c88338b85f830cebce2a9eab56628", "", "")
//商超
//api = New("5873", "41c479790a76f86326f89e8048964739", "", "token_nld07Y5m8rEQZJMMrvZGmA")

View File

@@ -1,6 +1,7 @@
package mtwmapi
import (
"encoding/json"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/globals"
"regexp"
@@ -471,6 +472,52 @@ type CategoryAttrValueListResult struct {
Value string `json:"value"`
}
// RetailProductRules 根据末级美团分类ID获取图片发布规则
func (a *API) RetailProductRules(tagID int64) (*ProductRulesObj, error) {
result, err := a.AccessAPI2("retail/product/rules", true, map[string]interface{}{
"tag_id": tagID,
}, "success_map", "")
if err != nil {
return nil, err
}
rules := &ProductRulesObj{}
if result != nil {
resultByte, _ := json.Marshal(result)
err = utils.UnmarshalUseNumber(resultByte, rules)
if err != nil {
return nil, err
}
}
return rules, err
}
type ProductRulesObj struct {
StructRules []struct {
RuleId int `json:"rule_id"`
RuleName string `json:"rule_name"`
ValueList []struct {
IsByDefault bool `json:"is_by_default"`
ValueId int `json:"value_id"`
ValueName string `json:"value_name"`
} `json:"value_list"`
} `json:"struct_rules"`
UnstructRules struct {
QualificationPicturesRule struct {
IsQualificationPicturesNeed int `json:"is_qualification_pictures_need"`
} `json:"qualification_pictures_rule"`
SpecialPicturesRules []struct {
IsDisplayed int `json:"is_displayed"`
IsRequired int `json:"is_required"`
NumLimit int `json:"num_limit"`
SpecialPictureDescription string `json:"special_picture_description"`
SpecialPictureExample string `json:"special_picture_example"`
SpecialPictureTitle string `json:"special_picture_title"`
SpecialPictureType int `json:"special_picture_type"`
} `json:"special_pictures_rules"`
} `json:"unstruct_rules"`
}
//category/attr/value/list 查询特殊属性的属性值列表
//https://open-shangou.meituan.com/home/docDetail/387
func (a *API) CategoryAttrValueList(attr_id int64, keyword string) (categoryAttrValueListResult []*CategoryAttrValueListResult, err error) {

View File

@@ -462,3 +462,9 @@ func TestDeleteCat(t *testing.T) {
}
}
func TestRetailProductRules(t *testing.T) {
result, err := api.RetailProductRules(200002538)
t.Log(utils.Format4Output(result, false))
t.Log(err)
}