This commit is contained in:
邹宗楠
2026-07-31 09:06:38 +08:00
parent 48c5f00a2d
commit 3607e83ece
12 changed files with 136 additions and 68 deletions

View File

@@ -95,6 +95,51 @@ func (a *API) GetStoreBillList(param *Bill) (map[string]*SettleOrderList, []*Bil
return nil, fineList, settleID, nil
}
//京西菜市(高攀店) 33797914 成都市 17508251223 0.00 10.00 10.00 100.0 4.0 0 0 6214862811223223 实时
//0.00 0.00 0.00 0.00 7030017.00 席伟 17508251223 席伟 17508251223 0.00 0.00 40.87 0.00 0.00 0.00
//0.00 0.00 0.00 0.00 0.4 1.5 6.00 0.00 28.26 684.0 0.0 40.87 34.87 -692.21 -692.21 0.00
func (a *API) GetStoreBillList2(param *Bill) (map[string]*SettleOrderList, []*BillListData, int64, error) {
var settleAmount int64 = 0 // 平台实际结算
var promotionServiceFee int64 = 0
var activityPoiAmount int64 = 0
var activityAgentAmount int64 = 0
var platformChargeFee int64 = 0
var performanceServiceFee int64 = 0
for {
result, err := a.AccessAPI3("bill/list", true, utils.Struct2Map(param, "", false))
if err != nil {
return nil, nil, 0, err
}
var data *StoreBillListRes
if err := utils.Map2StructByJson(result, &data, false); err != nil {
return nil, nil, 0, err
}
for i := 0; i < len(data.Data); i++ {
settleAmount += data.Data[i].SettleAmount
promotionServiceFee += data.Data[i].PromotionServiceFee
activityPoiAmount += data.Data[i].ActivityPoiAmount
activityAgentAmount += data.Data[i].ActivityAgentAmount
platformChargeFee += data.Data[i].PlatformChargeFee
performanceServiceFee += data.Data[i].PerformanceServiceFee
}
if int64(data.ExtraInfo.TotalCount) >= (param.Offset * param.Limit) {
param.Offset += param.Limit
} else {
break
}
}
fmt.Println(settleAmount)
fmt.Println(promotionServiceFee)
return nil, nil, 0, nil
}
// StoreBillListReq 门店结算查询条件
type StoreBillListReq struct {
AppPoiCode string `json:"app_poi_code"` // APP方门店id

View File

@@ -8,11 +8,10 @@ import (
)
func TestBillList(t *testing.T) {
now := time.Now()
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()-1, 23, 59, 59, 59, time.Local)
from := time.Date(2026, 7, 13, 0, 0, 0, 0, time.Local)
to := time.Date(2026, 7, 19, 23, 59, 59, 59, time.Local)
param := &Bill{
AppPoiCode: "14799080",
AppPoiCode: "33797914",
StartDate: from.Unix(),
EndDate: to.Unix(),
Offset: 0,
@@ -20,7 +19,7 @@ func TestBillList(t *testing.T) {
AccessToken: api.token,
}
_, fine, _, err := api.GetStoreBillList(param)
_, fine, _, err := api.GetStoreBillList2(param)
if err != nil {
globals.SugarLogger.Debugf("err := %v", err)
return

View File

@@ -208,6 +208,16 @@ func (a *API) AccessAPI2(cmd string, isGet bool, bizParams map[string]interface{
return platformapi.ErrLevelCodeIsNotOK, newErr
}
}
} else if errObj2, ok := jsonResult1["error_list"]; ok {
errorInfo := errObj2.([]interface{})
errStr := ""
code := int64(0)
for _, v := range errorInfo {
errStr += v.(map[string]interface{})["msg"].(string)
code = utils.MustInterface2Int64(v.(map[string]interface{})["code"])
}
newErr := utils.NewErrorIntCode(errStr, int(code))
return platformapi.ErrLevelCodeIsNotOK, newErr
}
return platformapi.ErrLevelSuccess, nil
})

View File

@@ -371,6 +371,17 @@ type GetRiderDeliveryPath struct {
//} `json:"data"`
}
// ReviewAfterSalesInfo 售后参数
type ReviewAfterSalesInfo struct {
WmOrderIdView int64 `json:"wm_order_id_view"` // 订单展示ID
RefundId int64 `json:"refund_id"` // 售后单ID
ReviewType int `json:"review_type"` // 0-同意退货1-同意退款或同意仅退款无需退货2-驳回退货/退款。
RejectReasonCode int `json:"reject_reason_code"` // 驳回code,当review_type=2必填
RejectOtherReason string `json:"reject_other_reason"` // 驳回原因说明,当reject_reason_code = -1 必填
IsReturnGoods int `json:"is_return_goods"` // 是否需要返货 0-不返货/1-返货 review_type=1时选填不传默认为0
OutOfStockItemIds string `json:"out_of_stock_item_ids"` // 商品行item_id多个item_id之间用逗号隔开当订单有多个商品时
}
func (a *API) OrderReceived(orderID int64) (err error) {
_, err = a.AccessAPI("order/poi_received", true, map[string]interface{}{
KeyOrderID: orderID,
@@ -462,6 +473,7 @@ func (a *API) OrderArrived(orderID int64) (err error) {
return err
}
// OrderRefundAgree 同意售后
func (a *API) OrderRefundAgree(orderID int64, reason string) (err error) {
_, err = a.AccessAPI("order/refund/agree", true, map[string]interface{}{
KeyOrderID: orderID,
@@ -470,6 +482,7 @@ func (a *API) OrderRefundAgree(orderID int64, reason string) (err error) {
return err
}
// OrderRefundReject 拒绝售后
func (a *API) OrderRefundReject(orderID int64, reason string) (err error) {
_, err = a.AccessAPI("order/refund/reject", true, map[string]interface{}{
KeyOrderID: orderID,
@@ -478,6 +491,12 @@ func (a *API) OrderRefundReject(orderID int64, reason string) (err error) {
return err
}
// ReviewAfterSales 新版售后要求
func (a *API) ReviewAfterSales(param *ReviewAfterSalesInfo) (err error) {
_, err = a.AccessAPI("ecommerce/order/reviewAfterSales", true, utils.Struct2MapByJson(param))
return err
}
func (a *API) OrderApplyPartRefund(orderID int64, reason string, removeSkuList []*RefundSku) (err error) {
_, err = a.AccessAPI("order/applyPartRefund", false, map[string]interface{}{
KeyOrderID: orderID,
@@ -864,7 +883,7 @@ func (a *API) GetOrderAddress(orderId int64, reasonType int) (address string, er
// UploadMediaToOrder 订单上传图片,订单在骑手取货前且未超过订单预计送达时间时可以进行图片上传
func (a *API) UploadMediaToOrder(orderId string, images interface{}) error {
byteData := utils.MustMarshal(images)
_, err := a.AccessAPI("ecommerce/order/uploadMedia", false, map[string]interface{}{"order_id": orderId, "media_list": string(byteData)})
_, err := a.AccessAPI2("ecommerce/order/uploadMedia", false, map[string]interface{}{"order_id": orderId, "media_list": string(byteData)}, "error_list", "")
if err != nil {
return err
}

View File

@@ -50,3 +50,15 @@ func TestGetRecommendSku(t *testing.T) {
}
api.GetRecommendSku(param, "")
}
func TestReviewAfterSales(t *testing.T) {
api.ReviewAfterSales(&ReviewAfterSalesInfo{
WmOrderIdView: 2002231460826744707,
RefundId: 86155877585,
ReviewType: 0,
RejectReasonCode: 0,
RejectOtherReason: "",
IsReturnGoods: 1,
OutOfStockItemIds: "",
})
}

View File

@@ -31,7 +31,7 @@ func getTimeFromTimestamp(timeStamp int64) time.Time {
}
func TestOrderGetOrderDetail(t *testing.T) {
result, err := api.OrderGetOrderDetail(2602201502045507987, false)
result, err := api.OrderGetOrderDetail(3502231341944704147, false)
if err != nil {
t.Fatal(err)
}
@@ -487,7 +487,7 @@ func TestGetOrderAddress(t *testing.T) {
}
func TestUploadMediaToOrder(t *testing.T) {
api.UploadMediaToOrder("2202182431134417666", []string{"https://img.meituan.net/retailsp/12b8489847a14dbf128527aa2c7dfbd448308.jpg"})
api.UploadMediaToOrder("4102234401395379455", []string{"https://img.meituan.net/retailsp/12b8489847a14dbf128527aa2c7dfbd448308.jpg"})
}
func Test111(t *testing.T) {

View File

@@ -439,18 +439,18 @@ func TestRetailDelete(t *testing.T) {
// 测试删除门店分类列表
func TestDeleteCat(t *testing.T) {
result, err := api.RetailCatList("33889953")
result, err := api.RetailCatList("33998402")
fmt.Println(result, err)
for _, v := range result {
if v.Children != nil {
for _, v2 := range v.Children {
err = api.RetailCatDelete("33889953", "", v2.Name, 1)
err = api.RetailCatDelete("33998402", "", v2.Name, 1)
if err != nil {
t.Fatal(err)
}
}
} else {
err = api.RetailCatDelete("33889953", "", v.Name, 1)
err = api.RetailCatDelete("33998402", "", v.Name, 1)
if err != nil {
continue
t.Fatal(err)