diff --git a/unify/pay.go b/unify/pay.go index 2ab8219..1f6756b 100644 --- a/unify/pay.go +++ b/unify/pay.go @@ -151,7 +151,7 @@ func (p *Pay) GetPartnerOrder(outTradeNo string) (map[string]interface{}, error) return rsp.Data, nil } -func (p *Pay) RefundOrder(req *RefundPartnerOrderReq) error { +func (p *Pay) RefundOrder(req *RefundOrderReq) error { if req.OutTradeNo == "" { errors.New("outTradeNo is nil") } @@ -175,12 +175,12 @@ func (p *Pay) RefundOrder(req *RefundPartnerOrderReq) error { return nil } -func (p *Pay) RefundPartnerOrder(outTradeNo, reason string) error { - if outTradeNo == "" { +func (p *Pay) RefundPartnerOrder(req *RefundOrderReq) error { + if req.OutTradeNo == "" { errors.New("outTradeNo is nil") } - reqUrl := fmt.Sprintf("%s/api/pay/partner/order?outTradeNo=%s&reason=%s", p.address, outTradeNo, reason) + reqUrl := fmt.Sprintf("%s/api/pay/partner/order?outTradeNo=%s&reason=%s&refundFee=%d", p.address, req.OutTradeNo, req.Reason, req.RefundFee) result, err := util.HttpDelete(reqUrl, map[string]string{ "x-token": p.token, }) diff --git a/unify/pay_type.go b/unify/pay_type.go index a19af6d..ee30a33 100644 --- a/unify/pay_type.go +++ b/unify/pay_type.go @@ -44,7 +44,7 @@ type CreatePartnerOrderReq struct { Extra interface{} `json:"extra"` } -type RefundPartnerOrderReq struct { +type RefundOrderReq struct { OutTradeNo string `json:"outTradeNo"` Reason string `json:"reason,omitempty"` RefundFee int64 `json:"refundFee,omitempty"`