1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
package wpc
import (
"context"
"github.com/gogf/gf/encoding/gjson"
"github.com/gogf/gf/frame/g"
)
type refundWpc struct {
}
var Refund = refundWpc{}
type RefundReasonReq struct {
ChannelId string `json:"vopChannelId"`
UserNumber string `json:"userNumber"`
OrderSn string `json:"orderSn"`
ReturnId string `json:"returnId,omitempty"`
AreaId string `json:"areaId,omitempty"`
}
type RefundReasonRes struct {
ReturnCode string `json:"returnCode"`
ReturnMessage string `json:"returnMessage"`
Result interface{} `json:"result"`
}
//Reason 退货原因
func (refundWpc) Reason(ctx context.Context, req RefundReasonReq) (res *RefundReasonRes, err error) {
method := "getReturnOrderCreate"
req.ChannelId = server.AppKey
req.UserNumber = server.UserNumber
result, err := post(ctx, method, g.Map{
"request": req,
})
_ = gjson.New(result).Scan(&res)
return
}
type RefundApplyReq struct {
ChannelId string `json:"vopChannelId"`
UserNumber string `json:"userNumber"`
OrderSn string `json:"orderSn"`
SizeInfo string `json:"sizeInfo"`
}
type RefundApplySizeInfo struct {
SizeID int `json:"sizeId"`
Num int `json:"num"`
ReasonID int `json:"reasonId"`
}
type RefundApplyRes struct {
ReturnCode string `json:"returnCode"`
ReturnMessage string `json:"returnMessage"`
Result interface{} `json:"result"`
}
//Apply 申请
func (refundWpc) Apply(ctx context.Context, req RefundApplyReq) (res *RefundApplyRes, err error) {
method := "orderReturnCreate"
req.ChannelId = server.AppKey
req.UserNumber = server.UserNumber
result, err := post(ctx, method, g.Map{
"request": req,
})
_ = gjson.New(result).Scan(&res)
return
}
type RefundSubmitReq struct {
ChannelId string `json:"vopChannelId"`
UserNumber string `json:"userNumber"`
OrderSn string `json:"orderSn"`
CarriersCode string `json:"carriersCode"`
TransportNo string `json:"transportNo"`
Remark string `json:"remark,omitempty"`
ReturnId string `json:"returnId,omitempty"`
}
type RefundSubmitRes struct {
ReturnCode string `json:"returnCode"`
ReturnMessage string `json:"returnMessage"`
Result interface{} `json:"result"`
}
//Submit 填写回寄物流单号
func (refundWpc) Submit(ctx context.Context, req RefundSubmitReq) (res *RefundSubmitRes, err error) {
method := "updateReturnTransportNo"
req.ChannelId = server.AppKey
req.UserNumber = server.UserNumber
result, err := post(ctx, method, g.Map{
"request": req,
})
_ = gjson.New(result).Scan(&res)
return
}
type RefundListReq struct {
ChannelId string `json:"vopChannelId"`
UserNumber string `json:"userNumber"`
Page string `json:"page"`
PageSize string `json:"pageSize"`
OrderSn string `json:"orderSn"`
IsCanceled bool `json:"isCanceled,omitempty"`
}
type RefundListRes struct {
ReturnCode string `json:"returnCode"`
ReturnMessage string `json:"returnMessage"`
Result interface{} `json:"result"`
}
//List 列表
func (refundWpc) List(ctx context.Context, req RefundListReq) (res *RefundListRes, err error) {
method := "multiAfterSaleList"
req.ChannelId = server.AppKey
req.UserNumber = server.UserNumber
result, err := post(ctx, method, g.Map{
"request": req,
})
_ = gjson.New(result).Scan(&res)
return
}