From 7c19a66cb52a4147e42136283e7619db3bdf1f05 Mon Sep 17 00:00:00 2001 From: ayflying Date: Thu, 24 Jul 2025 18:33:54 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9vivo=E6=94=AF=E4=BB=98?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package/pay/oppo/login.go | 2 +- package/pay/vivo/client.go | 14 +++++++------- package/pay/vivo/model.go | 23 +++++++++++++++++++++++ package/pay/vivo/sign.go | 3 ++- package/pay/vivo/sign_test.go | 2 +- package/pay/vivo/user_api_test.go | 4 ++-- 6 files changed, 36 insertions(+), 12 deletions(-) diff --git a/package/pay/oppo/login.go b/package/pay/oppo/login.go index cd347e6..b2c8a1f 100644 --- a/package/pay/oppo/login.go +++ b/package/pay/oppo/login.go @@ -47,7 +47,7 @@ func (p *OppoType) FileIdInfo(ctx context.Context, oauthToken string, ssoid stri }) getRes := getHtml.ReadAllString() gjson.DecodeTo(getRes, &res) - g.Log().Debugf(ctx, "当前登陆请求的:%v", res) + //g.Log().Debugf(ctx, "当前登陆请求的:%v", res) return } diff --git a/package/pay/vivo/client.go b/package/pay/vivo/client.go index b2cf55c..3515717 100644 --- a/package/pay/vivo/client.go +++ b/package/pay/vivo/client.go @@ -1,15 +1,15 @@ package vivo type Pay struct { - AppId string - AppKey string - AppSecret string + AppId string + AppKey string + //AppSecret string } -func New(appId, appKey, appSecret string) (client *Pay) { +func New(cfg *Pay) (client *Pay) { return &Pay{ - AppId: appId, - AppKey: appKey, - AppSecret: appSecret, + AppId: cfg.AppId, + AppKey: cfg.AppKey, + //AppSecret: cfg.AppSecret, } } diff --git a/package/pay/vivo/model.go b/package/pay/vivo/model.go index f6efef1..9677ce9 100644 --- a/package/pay/vivo/model.go +++ b/package/pay/vivo/model.go @@ -9,3 +9,26 @@ type TokenAuthResponseData struct { Success bool `json:"success,omitempty"` OpenId string `json:"openid,omitempty"` } + +type LoginType struct { + Token string `json:"token"` + Ssoid string `json:"ssoid"` + Channel int `json:"channel"` + AdId string `json:"adId"` +} + +type PayCallback struct { + AppId string `json:"appId"` + CpId string `json:"cpId"` + CpOrderNumber string `json:"cpOrderNumber"` + ExtInfo string `json:"extInfo"` + OrderAmount string `json:"orderAmount"` + OrderNumber string `json:"orderNumber"` + PayTime string `json:"payTime"` + RespCode string `json:"respCode"` + RespMsg string `json:"respMsg"` + SignMethod string `json:"signMethod"` + Signature string `json:"signature"` + TradeStatus string `json:"tradeStatus"` + TradeType string `json:"tradeType"` +} diff --git a/package/pay/vivo/sign.go b/package/pay/vivo/sign.go index e75db16..cd0c481 100644 --- a/package/pay/vivo/sign.go +++ b/package/pay/vivo/sign.go @@ -14,7 +14,8 @@ func (p *Pay) VerifySign(bm g.Map, key string) bool { signature := bm["signature"] delete(bm, "signature") delete(bm, "signMethod") - return signature == p.sign(bm, key) + sign := p.sign(bm, key) + return signature == sign } func (p *Pay) sign(bm g.Map, key string) string { diff --git a/package/pay/vivo/sign_test.go b/package/pay/vivo/sign_test.go index 9c6539c..1ec6fc7 100644 --- a/package/pay/vivo/sign_test.go +++ b/package/pay/vivo/sign_test.go @@ -41,7 +41,7 @@ func TestVerifySign(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - if got := New("123", "123", "123").VerifySign(tt.args.bm, tt.args.key); got != tt.want { + if got := New(nil).VerifySign(tt.args.bm, tt.args.key); got != tt.want { t.Errorf("VerifySign() = %v, want %v", got, tt.want) } }) diff --git a/package/pay/vivo/user_api_test.go b/package/pay/vivo/user_api_test.go index db106b3..f04b322 100644 --- a/package/pay/vivo/user_api_test.go +++ b/package/pay/vivo/user_api_test.go @@ -30,7 +30,7 @@ func TestAuthToken(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - gotRsp, err := New("", "", "").AuthToken(tt.args.bm) + gotRsp, err := New(nil).AuthToken(tt.args.bm) if (err != nil) != tt.wantErr { t.Errorf("AuthToken() error = %v, wantErr %v", err, tt.wantErr) return @@ -62,7 +62,7 @@ func TestFormatURLParam(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - if gotUrlParam := New("", "", "").FormatURLParam(tt.args.body); gotUrlParam != tt.wantUrlParam { + if gotUrlParam := New(nil).FormatURLParam(tt.args.body); gotUrlParam != tt.wantUrlParam { t.Errorf("FormatURLParam() = %v, want %v", gotUrlParam, tt.wantUrlParam) } })