Merge branch 'add_raven'

This commit is contained in:
lwl0608 2024-08-01 10:35:00 +08:00
commit f8a4c0fbe7
15 changed files with 280 additions and 12 deletions

View File

@ -62,13 +62,15 @@ type CreateOrderReq struct {
WechatAuthCode string `json:"wechat_auth_code"` // 微信auth_code WechatAuthCode string `json:"wechat_auth_code"` // 微信auth_code
RedirectUrl string `json:"redirect_url"` // redirect_url RedirectUrl string `json:"redirect_url"` // redirect_url
Mid1 int64 `json:"mid"` Mid1 int64 `json:"mid"`
ReturnUrl string `json:"return_url"`
RavenQid int64 `json:"raven_qid"` // 瑞文测试id
RavenCallback string `json:"raven_callback"` // 瑞文测试回调数据
CalcPrice int64 // 计算价格 CalcPrice int64 // 计算价格
Uid int64 // 关联mid Uid int64 // 关联mid
Oid1 string Oid1 string
Oid2 string Oid2 string
Oid3 string Oid3 string
ReturnUrl string
} }
type CreateOrderData struct { type CreateOrderData struct {

View File

@ -326,6 +326,9 @@ func Init(r *gin.Engine) {
vasPayGroup.POST("moment_order_list", middleware.JSONParamValidator(vasproto.ZoneMomentOrderListReq{}), middleware.JwtAuthenticator(), ZoneMomentOrderList) vasPayGroup.POST("moment_order_list", middleware.JSONParamValidator(vasproto.ZoneMomentOrderListReq{}), middleware.JwtAuthenticator(), ZoneMomentOrderList)
vasPayGroup.POST("income_page", middleware.JSONParamValidator(vasproto.IncomePageReq{}), middleware.JwtAuthenticator(), IncomePage) vasPayGroup.POST("income_page", middleware.JSONParamValidator(vasproto.IncomePageReq{}), middleware.JwtAuthenticator(), IncomePage)
outerVasGroup := r.Group("/outer/vas")
outerVasGroup.POST("create_order", middleware.JSONParamValidator(vasproto.CreateOrderReq{}), CreateOrderOuter)
extVasPayGroup := r.Group("/ext/vas") extVasPayGroup := r.Group("/ext/vas")
extVasPayGroup.POST("alipay_callback", AlipayCallback) extVasPayGroup.POST("alipay_callback", AlipayCallback)
extVasPayGroup.POST("wxpay_callback", WxpayCallback) extVasPayGroup.POST("wxpay_callback", WxpayCallback)

View File

@ -109,6 +109,36 @@ func CreateOrderWxPub(ctx *gin.Context) {
ReplyOk(ctx, data) ReplyOk(ctx, data)
} }
func CreateOrderOuter(ctx *gin.Context) {
req := ctx.MustGet("client_req").(*vasproto.CreateOrderReq)
if req.From != dbstruct.VasCoinOrderFromOuterRaven {
logger.Error("CreateOrder, invalid param, req: %v", util.ToJson(req))
ReplyErrCodeMsg(ctx, errcode.ErrCodeBadParam)
return
}
if req.PayType != vasproto.PayTypeAlipayH5 || len(req.ProductId) <= 0 {
logger.Error("CreateOrder, invalid param, req: %v", util.ToJson(req))
ReplyErrCodeMsg(ctx, errcode.ErrCodeBadParam)
return
}
if len(req.Model) >= 28 {
req.Model = req.Model[:28]
}
req.Mid = 100000001
data, ec, err := service.DefaultService.CreateOrderOuter(ctx, req)
if ec != errcode.ErrCodeVasSrvOk {
logger.Error("CreateOrder fail, req: %v, ec: %v", util.ToJson(req), ec)
if ec == errcode.ErrCodeVasSrvFail && err != nil {
ReplyErrorMsg(ctx, err.Error())
return
}
ReplyErrCodeMsg(ctx, ec)
return
}
ReplyOk(ctx, data)
}
// op充值 // op充值
func OpCreateOrder(ctx *gin.Context) { func OpCreateOrder(ctx *gin.Context) {
req := ctx.MustGet("client_req").(*vasproto.OpCreateOrderReq) req := ctx.MustGet("client_req").(*vasproto.OpCreateOrderReq)

View File

@ -1,14 +1,18 @@
package logic package logic
import ( import (
"bytes"
"crypto/rand" "crypto/rand"
"crypto/rsa" "crypto/rsa"
"crypto/x509" "crypto/x509"
"database/sql" "database/sql"
"encoding/base64" "encoding/base64"
"encoding/json"
"encoding/pem" "encoding/pem"
"errors" "errors"
"fmt" "fmt"
"io/ioutil"
"net/http"
"service/api/base" "service/api/base"
"service/api/errs" "service/api/errs"
"service/api/message/response" "service/api/message/response"
@ -129,7 +133,6 @@ type CreateOrderProxy struct {
} }
func (v *Vas) CreateOrder(ctx *gin.Context, req *vasproto.CreateOrderReq) (data *vasproto.CreateOrderData, err error) { func (v *Vas) CreateOrder(ctx *gin.Context, req *vasproto.CreateOrderReq) (data *vasproto.CreateOrderData, err error) {
_, err = v.createOrderProxy.PreProc(ctx, req) _, err = v.createOrderProxy.PreProc(ctx, req)
if err != nil { if err != nil {
return return
@ -208,6 +211,9 @@ func (v *Vas) CreateOrder(ctx *gin.Context, req *vasproto.CreateOrderReq) (data
// 邀请人 // 邀请人
case dbstruct.ProductIdMembership: case dbstruct.ProductIdMembership:
req.Uid, _ = v.account.GetInviterMid(ctx, req.Mid) req.Uid, _ = v.account.GetInviterMid(ctx, req.Mid)
case dbstruct.ProductIdOuterRaven:
req.Oid1 = fmt.Sprintf("%d", req.RavenQid)
req.Oid2 = req.RavenCallback
} }
// 获取商品 // 获取商品
@ -258,6 +264,9 @@ func (v *Vas) CreateOrder(ctx *gin.Context, req *vasproto.CreateOrderReq) (data
req.Oid3 = alipayCli.AppId req.Oid3 = alipayCli.AppId
case vasproto.PayTypeAlipayH5: case vasproto.PayTypeAlipayH5:
alipayCli := alipaycli.GetDefaultAlipayClient() alipayCli := alipaycli.GetDefaultAlipayClient()
if productId == dbstruct.ProductIdOuterRaven {
alipayCli = alipaycli.GetAlipayClientByAppId(alipaycli.AppIdLanXing02)
}
wapPayParam := &alipaycli.WapPayParam{ wapPayParam := &alipaycli.WapPayParam{
OutTradeNo: orderId, OutTradeNo: orderId,
Subject: product.Subject, Subject: product.Subject,
@ -1655,6 +1664,9 @@ func (v *Vas) PayCallback(ctx *gin.Context, p *vasproto.PayCallbackParamIn) erro
logger.Error("UnlockZoneSuperfanship fail, order: %v, err: %v", util.ToJson(order), err) logger.Error("UnlockZoneSuperfanship fail, order: %v, err: %v", util.ToJson(order), err)
return err return err
} }
case product.Id == dbstruct.ProductIdOuterRaven:
notifyRavenDY(order.GetOid2())
return nil
} }
// 是否达到铁粉解锁条件 // 是否达到铁粉解锁条件
@ -1666,6 +1678,35 @@ func (v *Vas) PayCallback(ctx *gin.Context, p *vasproto.PayCallbackParamIn) erro
return nil return nil
} }
func notifyRavenDY(callback string) {
url := "https://analytics.oceanengine.com/api/v2/conversion"
req := map[string]interface{}{
"event_type": "successful_pay",
"context": map[string]interface{}{
"ad": map[string]interface{}{
"callback": callback,
},
},
"timestamp": time.Now().UnixMilli(),
}
reqBs, _ := json.Marshal(req)
resp, err := http.Post(url, "application/json", bytes.NewReader(reqBs))
if err != nil {
logger.Error("%v fail, req: %v, err: %v", url, string(reqBs), err)
return
}
defer resp.Body.Close()
// 读取响应内容
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
logger.Error("%v read fail, req: %v, body: %v, err: %v", url, string(reqBs), string(body), err)
return
}
logger.Info("notifyRavenDY ok, req: %v, resp: %v", string(reqBs), string(body))
return
}
func (v *Vas) GetCoinOrderById(ctx *gin.Context, id string) (*dbstruct.CoinOrder, error) { func (v *Vas) GetCoinOrderById(ctx *gin.Context, id string) (*dbstruct.CoinOrder, error) {
return v.store.GetCoinOrderById(ctx, nil, id) return v.store.GetCoinOrderById(ctx, nil, id)
} }

View File

@ -181,7 +181,7 @@ func (s *Service) Init(c any) (err error) {
s.defaultMelody = melody.New() s.defaultMelody = melody.New()
err = alipaycli.InitMulti(cfg.Alipay, cfg.AlipayMYTS, cfg.AlipayLX01) err = alipaycli.InitMulti(cfg.Alipay, cfg.AlipayMYTS, cfg.AlipayLX01, cfg.AlipayLX02)
if err != nil { if err != nil {
logger.Error("alipaycli.Init fail, cfg: %v, err: %v", util.ToJson(cfg.Alipay), err) logger.Error("alipaycli.Init fail, cfg: %v, err: %v", util.ToJson(cfg.Alipay), err)
return return
@ -1142,6 +1142,16 @@ func (s *Service) CreateOrder(ctx *gin.Context, req *vasproto.CreateOrderReq) (d
return return
} }
func (s *Service) CreateOrderOuter(ctx *gin.Context, req *vasproto.CreateOrderReq) (data *vasproto.CreateOrderData, ec errcode.ErrCode, err error) {
data, err = _DefaultVas.CreateOrder(ctx, req)
ec, err = errs.DealVasErr(err)
if err != nil {
logger.Error("CreateOrder fail, err: %v", err)
return
}
return
}
func (s *Service) OpCreateOrder(ctx *gin.Context, req *vasproto.OpCreateOrderReq) (ec errcode.ErrCode) { func (s *Service) OpCreateOrder(ctx *gin.Context, req *vasproto.OpCreateOrderReq) (ec errcode.ErrCode) {
err := _DefaultVas.OpCreateOrder(ctx, req) err := _DefaultVas.OpCreateOrder(ctx, req)
ec, err = errs.DealVasErr(err) ec, err = errs.DealVasErr(err)

View File

@ -38,6 +38,8 @@ const (
ProductIdH5ZoneAdmission = "h5_zone_admission" // 空间普通会员 ProductIdH5ZoneAdmission = "h5_zone_admission" // 空间普通会员
ProductIdH5ZoneIronfanship = "h5_zone_ironfanship" // 空间铁粉 ProductIdH5ZoneIronfanship = "h5_zone_ironfanship" // 空间铁粉
ProductIdH5ZoneSuperfanship = "h5_zone_superfanship" // 空间超粉 ProductIdH5ZoneSuperfanship = "h5_zone_superfanship" // 空间超粉
ProductIdOuterRaven = "outer_raven" // 瑞文测试
) )
var ProductIdDescMap = map[string]string{ var ProductIdDescMap = map[string]string{

View File

@ -323,10 +323,11 @@ var CoinOrderStatusDescMap = map[int32]string{
} }
const ( const (
VasCoinOrderFromApp = "app" // app应用内 VasCoinOrderFromApp = "app" // app应用内
VasCoinOrderFromH5 = "h5" // h5 VasCoinOrderFromH5 = "h5" // h5
VasCoinOrderFromOp = "op" // op VasCoinOrderFromOp = "op" // op
VasCoinOrderFromWxPub = "wx_pub" // 微信小程序 VasCoinOrderFromWxPub = "wx_pub" // 微信小程序
VasCoinOrderFromOuterRaven = "outer_raven" // 瑞文测试
) )
type CoinOrder struct { type CoinOrder struct {

View File

@ -0,0 +1,43 @@
-----BEGIN CERTIFICATE-----
MIIDsjCCApqgAwIBAgIQICQHMUarU43xfrzWt8Md9TANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE
BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0
aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs
YXNzIDIgUjEwHhcNMjQwNzMxMDgzMjEwWhcNMjkwNzMwMDgzMjEwWjCBkjELMAkGA1UEBhMCQ04x
LTArBgNVBAoMJOaJv+W+t+aPveaYn+e9kee7nOenkeaKgOaciemZkOWFrOWPuDEPMA0GA1UECwwG
QWxpcGF5MUMwQQYDVQQDDDrmlK/ku5jlrp0o5Lit5Zu9Kee9kee7nOaKgOacr+aciemZkOWFrOWP
uC0yMDg4ODQxNTU2MDUwNDA4MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqUa9S+gy
3ynzo1oMRNsbMVsDzaHrETDbo0vFmeKNJa7A6XX33bjkdKLZXe2Bu+RHkM1Eib1xz40hojmClITC
8nKUIqGv0wNetexbPERdox21JVj659MCF/3YpggdIRz3lZdvZFHg7NcqEyMwrZ4nmyZLTuhwm26T
kggoh9SBLGRK303Vnjms/IBuOp7SsHmHZt1JL5LrsKRUmOQ5vGjitshQvNG1TV34EuHfGjvDUPxv
/3eceQ8SLNkLghJf5uoCpRVnA7koTdEi0Lt+NpTyorSYYN1+R1ScSEisLMcbWffbgVIlPuSMy6xf
Wfc6YHOXUBWKwVpNG8VnbpAAaOob8QIDAQABoxIwEDAOBgNVHQ8BAf8EBAMCA/gwDQYJKoZIhvcN
AQELBQADggEBAAEjw9S2pDLFnccl/0bvsSQF13cvu5HhirF76BQTpRYsiRlZc++ORXnLZJ78MOXp
bWXACfRZmZdk4QlgRZmcIM2Hp0v/jSbbEhxcilgoQl9zLqyHCmZSmupad1JhubhnxNVM6p2QBAXG
H7xEDDZo/QAhU5lSmg1yokm+zh5+sKM4geEdtYPeu4EmLjMsGTJMlIpoaP2Nw8fQ8SERNrqYGSUD
h5ITQ213Z1e/XLIFiangarEewrref9JhPnv7W8gb78hXFP8DOsur8qb4939C2MBhmr+NJKhv5yxp
Q4WA2+0RdxGttI7EAkdgcz9B+wtDKJGJPZOO3We82Mg2+kd7TMA=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIE4jCCAsqgAwIBAgIIYsSr5bKAMl8wDQYJKoZIhvcNAQELBQAwejELMAkGA1UEBhMCQ04xFjAU
BgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEw
LwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMy
MjE0MzQxNVoXDTM3MTEyNjE0MzQxNVowgYIxCzAJBgNVBAYTAkNOMRYwFAYDVQQKDA1BbnQgRmlu
YW5jaWFsMSAwHgYDVQQLDBdDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTE5MDcGA1UEAwwwQW50IEZp
bmFuY2lhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSBDbGFzcyAyIFIxMIIBIjANBgkqhkiG9w0B
AQEFAAOCAQ8AMIIBCgKCAQEAsLMfYaoRoPRbmDcAfXPCmKf43pWRN5yTXa/KJWO0l+mrgQvs89bA
NEvbDUxlkGwycwtwi5DgBuBgVhLliXu+R9CYgr2dXs8D8Hx/gsggDcyGPLmVrDOnL+dyeauheARZ
fA3du60fwEwwbGcVIpIxPa/4n3IS/ElxQa6DNgqxh8J9Xwh7qMGl0JK9+bALuxf7B541Gr4p0WEN
G8fhgjBV4w4ut9eQLOoa1eddOUSZcy46Z7allwowwgt7b5VFfx/P1iKJ3LzBMgkCK7GZ2kiLrL7R
iqV+h482J7hkJD+ardoc6LnrHO/hIZymDxok+VH9fVeUdQa29IZKrIDVj65THQIDAQABo2MwYTAf
BgNVHSMEGDAWgBRfdLQEwE8HWurlsdsio4dBspzhATAdBgNVHQ4EFgQUSqHkYINtUSAtDPnS8Xoy
oP9p7qEwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggIB
AIQ8TzFy4bVIVb8+WhHKCkKNPcJe2EZuIcqvRoi727lZTJOfYy/JzLtckyZYfEI8J0lasZ29wkTt
a1IjSo+a6XdhudU4ONVBrL70U8Kzntplw/6TBNbLFpp7taRALjUgbCOk4EoBMbeCL0GiYYsTS0mw
7xdySzmGQku4GTyqutIGPQwKxSj9iSFw1FCZqr4VP4tyXzMUgc52SzagA6i7AyLedd3tbS6lnR5B
L+W9Kx9hwT8L7WANAxQzv/jGldeuSLN8bsTxlOYlsdjmIGu/C9OWblPYGpjQQIRyvs4Cc/mNhrh+
14EQgwuemIIFDLOgcD+iISoN8CqegelNcJndFw1PDN6LkVoiHz9p7jzsge8RKay/QW6C03KNDpWZ
EUCgCUdfHfo8xKeR+LL1cfn24HKJmZt8L/aeRZwZ1jwePXFRVtiXELvgJuM/tJDIFj2KD337iV64
fWcKQ/ydDVGqfDZAdcU4hQdsrPWENwPTQPfVPq2NNLMyIH9+WKx9Ed6/WzeZmIy5ZWpX1TtTolo6
OJXQFeItMAjHxW/ZSZTok5IS3FuRhExturaInnzjYpx50a6kS34c5+c8hYq7sAtZ/CNLZmBnBCFD
aMQqT8xFZJ5uolUaSeXxg7JFY1QsYp5RKvj4SjFwCGKJ2+hPPe9UyyltxOidNtxjaknOCeBHytOr
-----END CERTIFICATE-----

View File

@ -0,0 +1,88 @@
-----BEGIN CERTIFICATE-----
MIIBszCCAVegAwIBAgIIaeL+wBcKxnswDAYIKoEcz1UBg3UFADAuMQswCQYDVQQG
EwJDTjEOMAwGA1UECgwFTlJDQUMxDzANBgNVBAMMBlJPT1RDQTAeFw0xMjA3MTQw
MzExNTlaFw00MjA3MDcwMzExNTlaMC4xCzAJBgNVBAYTAkNOMQ4wDAYDVQQKDAVO
UkNBQzEPMA0GA1UEAwwGUk9PVENBMFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAE
MPCca6pmgcchsTf2UnBeL9rtp4nw+itk1Kzrmbnqo05lUwkwlWK+4OIrtFdAqnRT
V7Q9v1htkv42TsIutzd126NdMFswHwYDVR0jBBgwFoAUTDKxl9kzG8SmBcHG5Yti
W/CXdlgwDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFEwysZfZ
MxvEpgXBxuWLYlvwl3ZYMAwGCCqBHM9VAYN1BQADSAAwRQIgG1bSLeOXp3oB8H7b
53W+CKOPl2PknmWEq/lMhtn25HkCIQDaHDgWxWFtnCrBjH16/W3Ezn7/U/Vjo5xI
pDoiVhsLwg==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIF0zCCA7ugAwIBAgIIH8+hjWpIDREwDQYJKoZIhvcNAQELBQAwejELMAkGA1UE
BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmlj
YXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmlj
YXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMyMTEzNDg0MFoXDTM4MDIyODEzNDg0
MFowejELMAkGA1UEBhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNV
BAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5j
aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMIICIjANBgkqhkiG9w0BAQEF
AAOCAg8AMIICCgKCAgEAtytTRcBNuur5h8xuxnlKJetT65cHGemGi8oD+beHFPTk
rUTlFt9Xn7fAVGo6QSsPb9uGLpUFGEdGmbsQ2q9cV4P89qkH04VzIPwT7AywJdt2
xAvMs+MgHFJzOYfL1QkdOOVO7NwKxH8IvlQgFabWomWk2Ei9WfUyxFjVO1LVh0Bp
dRBeWLMkdudx0tl3+21t1apnReFNQ5nfX29xeSxIhesaMHDZFViO/DXDNW2BcTs6
vSWKyJ4YIIIzStumD8K1xMsoaZBMDxg4itjWFaKRgNuPiIn4kjDY3kC66Sl/6yTl
YUz8AybbEsICZzssdZh7jcNb1VRfk79lgAprm/Ktl+mgrU1gaMGP1OE25JCbqli1
Pbw/BpPynyP9+XulE+2mxFwTYhKAwpDIDKuYsFUXuo8t261pCovI1CXFzAQM2w7H
DtA2nOXSW6q0jGDJ5+WauH+K8ZSvA6x4sFo4u0KNCx0ROTBpLif6GTngqo3sj+98
SZiMNLFMQoQkjkdN5Q5g9N6CFZPVZ6QpO0JcIc7S1le/g9z5iBKnifrKxy0TQjtG
PsDwc8ubPnRm/F82RReCoyNyx63indpgFfhN7+KxUIQ9cOwwTvemmor0A+ZQamRe
9LMuiEfEaWUDK+6O0Gl8lO571uI5onYdN1VIgOmwFbe+D8TcuzVjIZ/zvHrAGUcC
AwEAAaNdMFswCwYDVR0PBAQDAgEGMAwGA1UdEwQFMAMBAf8wHQYDVR0OBBYEFF90
tATATwda6uWx2yKjh0GynOEBMB8GA1UdIwQYMBaAFF90tATATwda6uWx2yKjh0Gy
nOEBMA0GCSqGSIb3DQEBCwUAA4ICAQCVYaOtqOLIpsrEikE5lb+UARNSFJg6tpkf
tJ2U8QF/DejemEHx5IClQu6ajxjtu0Aie4/3UnIXop8nH/Q57l+Wyt9T7N2WPiNq
JSlYKYbJpPF8LXbuKYG3BTFTdOVFIeRe2NUyYh/xs6bXGr4WKTXb3qBmzR02FSy3
IODQw5Q6zpXj8prYqFHYsOvGCEc1CwJaSaYwRhTkFedJUxiyhyB5GQwoFfExCVHW
05ZFCAVYFldCJvUzfzrWubN6wX0DD2dwultgmldOn/W/n8at52mpPNvIdbZb2F41
T0YZeoWnCJrYXjq/32oc1cmifIHqySnyMnavi75DxPCdZsCOpSAT4j4lAQRGsfgI
kkLPGQieMfNNkMCKh7qjwdXAVtdqhf0RVtFILH3OyEodlk1HYXqX5iE5wlaKzDop
PKwf2Q3BErq1xChYGGVS+dEvyXc/2nIBlt7uLWKp4XFjqekKbaGaLJdjYP5b2s7N
1dM0MXQ/f8XoXKBkJNzEiM3hfsU6DOREgMc1DIsFKxfuMwX3EkVQM1If8ghb6x5Y
jXayv+NLbidOSzk4vl5QwngO/JYFMkoc6i9LNwEaEtR9PhnrdubxmrtM+RjfBm02
77q3dSWFESFQ4QxYWew4pHE0DpWbWy/iMIKQ6UZ5RLvB8GEcgt8ON7BBJeMc+Dyi
kT9qhqn+lw==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIICiDCCAgygAwIBAgIIQX76UsB/30owDAYIKoZIzj0EAwMFADB6MQswCQYDVQQG
EwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UECwwXQ2VydGlmaWNh
dGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNpYWwgQ2VydGlmaWNh
dGlvbiBBdXRob3JpdHkgRTEwHhcNMTkwNDI4MTYyMDQ0WhcNNDkwNDIwMTYyMDQ0
WjB6MQswCQYDVQQGEwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UE
CwwXQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNp
YWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRTEwdjAQBgcqhkjOPQIBBgUrgQQA
IgNiAASCCRa94QI0vR5Up9Yr9HEupz6hSoyjySYqo7v837KnmjveUIUNiuC9pWAU
WP3jwLX3HkzeiNdeg22a0IZPoSUCpasufiLAnfXh6NInLiWBrjLJXDSGaY7vaokt
rpZvAdmjXTBbMAsGA1UdDwQEAwIBBjAMBgNVHRMEBTADAQH/MB0GA1UdDgQWBBRZ
4ZTgDpksHL2qcpkFkxD2zVd16TAfBgNVHSMEGDAWgBRZ4ZTgDpksHL2qcpkFkxD2
zVd16TAMBggqhkjOPQQDAwUAA2gAMGUCMQD4IoqT2hTUn0jt7oXLdMJ8q4vLp6sg
wHfPiOr9gxreb+e6Oidwd2LDnC4OUqCWiF8CMAzwKs4SnDJYcMLf2vpkbuVE4dTH
Rglz+HGcTLWsFs4KxLsq7MuU+vJTBUeDJeDjdA==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDxTCCAq2gAwIBAgIUEMdk6dVgOEIS2cCP0Q43P90Ps5YwDQYJKoZIhvcNAQEF
BQAwajELMAkGA1UEBhMCQ04xEzARBgNVBAoMCmlUcnVzQ2hpbmExHDAaBgNVBAsM
E0NoaW5hIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMMH2lUcnVzQ2hpbmEgQ2xhc3Mg
MiBSb290IENBIC0gRzMwHhcNMTMwNDE4MDkzNjU2WhcNMzMwNDE4MDkzNjU2WjBq
MQswCQYDVQQGEwJDTjETMBEGA1UECgwKaVRydXNDaGluYTEcMBoGA1UECwwTQ2hp
bmEgVHJ1c3QgTmV0d29yazEoMCYGA1UEAwwfaVRydXNDaGluYSBDbGFzcyAyIFJv
b3QgQ0EgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOPPShpV
nJbMqqCw6Bz1kehnoPst9pkr0V9idOwU2oyS47/HjJXk9Rd5a9xfwkPO88trUpz5
4GmmwspDXjVFu9L0eFaRuH3KMha1Ak01citbF7cQLJlS7XI+tpkTGHEY5pt3EsQg
wykfZl/A1jrnSkspMS997r2Gim54cwz+mTMgDRhZsKK/lbOeBPpWtcFizjXYCqhw
WktvQfZBYi6o4sHCshnOswi4yV1p+LuFcQ2ciYdWvULh1eZhLxHbGXyznYHi0dGN
z+I9H8aXxqAQfHVhbdHNzi77hCxFjOy+hHrGsyzjrd2swVQ2iUWP8BfEQqGLqM1g
KgWKYfcTGdbPB1MCAwEAAaNjMGEwHQYDVR0OBBYEFG/oAMxTVe7y0+408CTAK8hA
uTyRMB8GA1UdIwQYMBaAFG/oAMxTVe7y0+408CTAK8hAuTyRMA8GA1UdEwEB/wQF
MAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQBLnUTfW7hp
emMbuUGCk7RBswzOT83bDM6824EkUnf+X0iKS95SUNGeeSWK2o/3ALJo5hi7GZr3
U8eLaWAcYizfO99UXMRBPw5PRR+gXGEronGUugLpxsjuynoLQu8GQAeysSXKbN1I
UugDo9u8igJORYA+5ms0s5sCUySqbQ2R5z/GoceyI9LdxIVa1RjVX8pYOj8JFwtn
DJN3ftSFvNMYwRuILKuqUYSHc2GPYiHVflDh5nDymCMOQFcFG3WsEuB+EYQPFgIU
1DHmdZcz7Llx8UOZXX2JupWCYzK1XhJb+r4hK5ncf/w8qGtYlmyJpxk3hr1TfUJX
Yf4Zr0fJsGuv
-----END CERTIFICATE-----

View File

@ -0,0 +1,23 @@
-----BEGIN CERTIFICATE-----
MIIEoDCCA4igAwIBAgIQICQHMaaj2jzY5/qZAceqyzANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE
BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0
aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs
YXNzIDEgUjEwHhcNMjQwNzMxMDgzMjA5WhcNMjkwNzMwMDgzMjA5WjBoMQswCQYDVQQGEwJDTjEt
MCsGA1UECgwk5om/5b635o+95pif572R57uc56eR5oqA5pyJ6ZmQ5YWs5Y+4MQ8wDQYDVQQLDAZB
bGlwYXkxGTAXBgNVBAMMEDIwODg4NDE1NTYwNTA0MDgwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
ggEKAoIBAQCY0xj8quAdiOMIdXLM6cR/lkNIgNLu3kE6X8wrDPrEyu5zES6AQplOfsvsgwDwR+F3
Fvkxyt2ooU+vWYqgIoF9ATHPTttet1puylCQ2vpYudPoy7Spn/TvKXN+gWLjePn4NqMnQGLwe1Tn
ZuDaNtnjAwEu8jgse3BcPqYgJeCa/9DVnwAISaSnF9TMxmY3rivHtR+5YcWaGogLAAjyy+yR2/kT
hn2a76jBllnsKCyHlZk+pGd/kEz2PmI+Zx/0UppUJBVC4QXhlhob+snL7nNUMiSyxjpKyYEV2D1C
2UWIPYMeDyJtaSCycYJ9KUz/C2WWC+PSM2WtASLN5zqeoqINAgMBAAGjggEpMIIBJTAfBgNVHSME
GDAWgBRxB+IEYRbk5fJl6zEPyeD0PJrVkTAdBgNVHQ4EFgQU3VW5Kdpw+++SOURZ3z1bvMs2MhIw
QAYDVR0gBDkwNzA1BgdggRwBbgEBMCowKAYIKwYBBQUHAgEWHGh0dHA6Ly9jYS5hbGlwYXkuY29t
L2Nwcy5wZGYwDgYDVR0PAQH/BAQDAgbAMC8GA1UdHwQoMCYwJKAioCCGHmh0dHA6Ly9jYS5hbGlw
YXkuY29tL2NybDkxLmNybDBgBggrBgEFBQcBAQRUMFIwKAYIKwYBBQUHMAKGHGh0dHA6Ly9jYS5h
bGlwYXkuY29tL2NhNi5jZXIwJgYIKwYBBQUHMAGGGmh0dHA6Ly9jYS5hbGlwYXkuY29tOjgzNDAv
MA0GCSqGSIb3DQEBCwUAA4IBAQCWL7iWo9e9uNh0ihstPnDFHHwcVJfWvb5fiQDvzIXB8NfZlYYd
cc3AB85HFv639ElgYBlgMmzSupb2/p1pFitOBq5ER1RSawDr7Vk80/774E4RY24wyuPwxRJRVquC
aMVCBXDDmB9Vtw+UCvRvD10Smo4YmHfpWVUIzKme6hvajAZVs9qhEtjYHWtjMgpvnDgKrb2iXCjc
XxlCn+NNaq+AiGLINzaTWehwvz7X3gxk8fXiRh0CFyHDnJ63lIYkLvHqCLU9Up22UUb3X0dNunVg
J+7iu47G0uGdFWoX7meQxyFWz2RCeJxenN2VArFJuuzkb5lhvQf6lGd3SXR0xsS+
-----END CERTIFICATE-----

View File

@ -81,6 +81,14 @@ alipay_lx01:
alipay_root_cert_path: "/Users/erwin/wishpalv2/service/etc/mix/alipaycert_lx01/alipayRootCert.crt" alipay_root_cert_path: "/Users/erwin/wishpalv2/service/etc/mix/alipaycert_lx01/alipayRootCert.crt"
alipay_public_cert_path: "/Users/erwin/wishpalv2/service/etc/mix/alipaycert_lx01/alipayCertPublicKey_RSA2.crt" alipay_public_cert_path: "/Users/erwin/wishpalv2/service/etc/mix/alipaycert_lx01/alipayCertPublicKey_RSA2.crt"
alipay_lx02:
appid: "2021004153620449"
private_key: "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCY0xj8quAdiOMIdXLM6cR/lkNIgNLu3kE6X8wrDPrEyu5zES6AQplOfsvsgwDwR+F3Fvkxyt2ooU+vWYqgIoF9ATHPTttet1puylCQ2vpYudPoy7Spn/TvKXN+gWLjePn4NqMnQGLwe1TnZuDaNtnjAwEu8jgse3BcPqYgJeCa/9DVnwAISaSnF9TMxmY3rivHtR+5YcWaGogLAAjyy+yR2/kThn2a76jBllnsKCyHlZk+pGd/kEz2PmI+Zx/0UppUJBVC4QXhlhob+snL7nNUMiSyxjpKyYEV2D1C2UWIPYMeDyJtaSCycYJ9KUz/C2WWC+PSM2WtASLN5zqeoqINAgMBAAECggEAKdYYUAsjQVKY/FbSr6ALR/ZFwxJpLDUx3B4fkWWDPN5k+qEofro8p810W/HdDupOocBrRaNInQJUAyfbGE1571OlZCAtU7eUDSJbfdxEjoeIqIEjmxAMCHDriiU3ghg7LiUe8v7gVv8cViDGy1Yavdezujta/2pnbwlDhyd3XlbfWjFxkXEFAKpm0vNW70KmMRX1u6FniIeFBCEf44BU6Wu0cMOupArkB3t8OewxgiEv3EX3+iuPrsna9s1oZAD85hOOQ6WGq4uV1fWI6f18u3MKPyt6wRYyi6WaewhdZ5R64jBMrodmen6o4Z3wPYYX0S6DGr3EtyoC94Wfwac6bQKBgQDOfN/rQ5nqyYwjayprFE4Qdt8B4UwjKA6CNw/FLE26Cz8esIU0njqk/0G8jcLu/GYjirfzcZ81sIQ823ZyERh4bDTfT0F1WHJP+Wd9kxkdARRyg7057pP1QKEDGM9wRINlEQh8jpWQ0qo6AgOiCo9QQ9UBVHbqrCaRdS8dSsaGhwKBgQC9eCQfjqt+/vyGbTUpCHEF9XhJSOSpOWX3enD/1O4Wwwwf6bAz8b2syMXUPdA5IUVgiQw6EDPt0OKLiwfdFWQ2jWQj6aqh//uLrAJP8/conzrlDLjeKeIT7sictgig06j1ngZdSVfg1oBq/mkBVTlFYAz1Vj3Sh8G5PCw7TYKjywKBgBkFDojOPycw1rcv9ArXggICtVDgAL69ysxCabnFfYGOfU51qx5OEeMOPuPe9YDJuoKR+2oXGWiDA/Lv0LFPmvx0eA+a5d6XIfrIyJ5xpXhbOiQKDHKpkuoDs77RUclTs+waHUIicMMEk7XFqrUGvIjIP1YS6vnSdDXp0hSli9qfAoGAFAL+fb7J6k3wShp6xOy5U1HL9KGYVS9Uz8DE8qCAzTKosy4xiCr+R6OlEXe96GrVMw8GlZNkiLfJVcfHethpj0F71Dc36Ihq/yOZ0uwHrOi0hcDEPeLamBReZ/7qBmKUs+yO64d1mq/NPH/Gg3eG5wbwF3GWcggYtAHhAhp7s+UCgYEAngcQFteDDf5tlq7ZOoMjWRI3YusVoYxHKDWdy1TQVBAQljTvnZqFIXCqc+l27slsqtPB7ZuwpYtQw+8wfFUTFR8GHbDSDhvY7vcHDxfS0HnAuUQFvz4OmQy4LLXn+nFfDr6xj4ViGXGK0pk8Op8J+YL7pMS9jGAgrb8V/Pf+ah4="
notify_url: ""
app_cert_path: "/Users/erwin/wishpalv2/service/etc/mix/alipaycert_lx02/appCertPublicKey_2021004153620449.crt"
alipay_root_cert_path: "/Users/erwin/wishpalv2/service/etc/mix/alipaycert_lx02/alipayRootCert.crt"
alipay_public_cert_path: "/Users/erwin/wishpalv2/service/etc/mix/alipaycert_lx02/alipayCertPublicKey_RSA2.crt"
apollo: apollo:
app_id: "wishpal_live_service" app_id: "wishpal_live_service"
cluster: "dev" cluster: "dev"

View File

@ -65,6 +65,14 @@ alipay_lx01:
alipay_root_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx01/alipayRootCert.crt" alipay_root_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx01/alipayRootCert.crt"
alipay_public_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx01/alipayCertPublicKey_RSA2.crt" alipay_public_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx01/alipayCertPublicKey_RSA2.crt"
alipay_lx02:
appid: "2021004153620449"
private_key: "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCY0xj8quAdiOMIdXLM6cR/lkNIgNLu3kE6X8wrDPrEyu5zES6AQplOfsvsgwDwR+F3Fvkxyt2ooU+vWYqgIoF9ATHPTttet1puylCQ2vpYudPoy7Spn/TvKXN+gWLjePn4NqMnQGLwe1TnZuDaNtnjAwEu8jgse3BcPqYgJeCa/9DVnwAISaSnF9TMxmY3rivHtR+5YcWaGogLAAjyy+yR2/kThn2a76jBllnsKCyHlZk+pGd/kEz2PmI+Zx/0UppUJBVC4QXhlhob+snL7nNUMiSyxjpKyYEV2D1C2UWIPYMeDyJtaSCycYJ9KUz/C2WWC+PSM2WtASLN5zqeoqINAgMBAAECggEAKdYYUAsjQVKY/FbSr6ALR/ZFwxJpLDUx3B4fkWWDPN5k+qEofro8p810W/HdDupOocBrRaNInQJUAyfbGE1571OlZCAtU7eUDSJbfdxEjoeIqIEjmxAMCHDriiU3ghg7LiUe8v7gVv8cViDGy1Yavdezujta/2pnbwlDhyd3XlbfWjFxkXEFAKpm0vNW70KmMRX1u6FniIeFBCEf44BU6Wu0cMOupArkB3t8OewxgiEv3EX3+iuPrsna9s1oZAD85hOOQ6WGq4uV1fWI6f18u3MKPyt6wRYyi6WaewhdZ5R64jBMrodmen6o4Z3wPYYX0S6DGr3EtyoC94Wfwac6bQKBgQDOfN/rQ5nqyYwjayprFE4Qdt8B4UwjKA6CNw/FLE26Cz8esIU0njqk/0G8jcLu/GYjirfzcZ81sIQ823ZyERh4bDTfT0F1WHJP+Wd9kxkdARRyg7057pP1QKEDGM9wRINlEQh8jpWQ0qo6AgOiCo9QQ9UBVHbqrCaRdS8dSsaGhwKBgQC9eCQfjqt+/vyGbTUpCHEF9XhJSOSpOWX3enD/1O4Wwwwf6bAz8b2syMXUPdA5IUVgiQw6EDPt0OKLiwfdFWQ2jWQj6aqh//uLrAJP8/conzrlDLjeKeIT7sictgig06j1ngZdSVfg1oBq/mkBVTlFYAz1Vj3Sh8G5PCw7TYKjywKBgBkFDojOPycw1rcv9ArXggICtVDgAL69ysxCabnFfYGOfU51qx5OEeMOPuPe9YDJuoKR+2oXGWiDA/Lv0LFPmvx0eA+a5d6XIfrIyJ5xpXhbOiQKDHKpkuoDs77RUclTs+waHUIicMMEk7XFqrUGvIjIP1YS6vnSdDXp0hSli9qfAoGAFAL+fb7J6k3wShp6xOy5U1HL9KGYVS9Uz8DE8qCAzTKosy4xiCr+R6OlEXe96GrVMw8GlZNkiLfJVcfHethpj0F71Dc36Ihq/yOZ0uwHrOi0hcDEPeLamBReZ/7qBmKUs+yO64d1mq/NPH/Gg3eG5wbwF3GWcggYtAHhAhp7s+UCgYEAngcQFteDDf5tlq7ZOoMjWRI3YusVoYxHKDWdy1TQVBAQljTvnZqFIXCqc+l27slsqtPB7ZuwpYtQw+8wfFUTFR8GHbDSDhvY7vcHDxfS0HnAuUQFvz4OmQy4LLXn+nFfDr6xj4ViGXGK0pk8Op8J+YL7pMS9jGAgrb8V/Pf+ah4="
notify_url: "https://api.tiefen.fun/ext/vas/alipay_callback"
app_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx02/appCertPublicKey_2021004153620449.crt"
alipay_root_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx02/alipayRootCert.crt"
alipay_public_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx02/alipayCertPublicKey_RSA2.crt"
wxpay: wxpay:
mchid: "1665016206" mchid: "1665016206"
appid: "wxc28fd8aaf31984b6" appid: "wxc28fd8aaf31984b6"

View File

@ -92,6 +92,14 @@ alipay_lx01:
alipay_root_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx01/alipayRootCert.crt" alipay_root_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx01/alipayRootCert.crt"
alipay_public_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx01/alipayCertPublicKey_RSA2.crt" alipay_public_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx01/alipayCertPublicKey_RSA2.crt"
alipay_lx02:
appid: "2021004153620449"
private_key: "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCY0xj8quAdiOMIdXLM6cR/lkNIgNLu3kE6X8wrDPrEyu5zES6AQplOfsvsgwDwR+F3Fvkxyt2ooU+vWYqgIoF9ATHPTttet1puylCQ2vpYudPoy7Spn/TvKXN+gWLjePn4NqMnQGLwe1TnZuDaNtnjAwEu8jgse3BcPqYgJeCa/9DVnwAISaSnF9TMxmY3rivHtR+5YcWaGogLAAjyy+yR2/kThn2a76jBllnsKCyHlZk+pGd/kEz2PmI+Zx/0UppUJBVC4QXhlhob+snL7nNUMiSyxjpKyYEV2D1C2UWIPYMeDyJtaSCycYJ9KUz/C2WWC+PSM2WtASLN5zqeoqINAgMBAAECggEAKdYYUAsjQVKY/FbSr6ALR/ZFwxJpLDUx3B4fkWWDPN5k+qEofro8p810W/HdDupOocBrRaNInQJUAyfbGE1571OlZCAtU7eUDSJbfdxEjoeIqIEjmxAMCHDriiU3ghg7LiUe8v7gVv8cViDGy1Yavdezujta/2pnbwlDhyd3XlbfWjFxkXEFAKpm0vNW70KmMRX1u6FniIeFBCEf44BU6Wu0cMOupArkB3t8OewxgiEv3EX3+iuPrsna9s1oZAD85hOOQ6WGq4uV1fWI6f18u3MKPyt6wRYyi6WaewhdZ5R64jBMrodmen6o4Z3wPYYX0S6DGr3EtyoC94Wfwac6bQKBgQDOfN/rQ5nqyYwjayprFE4Qdt8B4UwjKA6CNw/FLE26Cz8esIU0njqk/0G8jcLu/GYjirfzcZ81sIQ823ZyERh4bDTfT0F1WHJP+Wd9kxkdARRyg7057pP1QKEDGM9wRINlEQh8jpWQ0qo6AgOiCo9QQ9UBVHbqrCaRdS8dSsaGhwKBgQC9eCQfjqt+/vyGbTUpCHEF9XhJSOSpOWX3enD/1O4Wwwwf6bAz8b2syMXUPdA5IUVgiQw6EDPt0OKLiwfdFWQ2jWQj6aqh//uLrAJP8/conzrlDLjeKeIT7sictgig06j1ngZdSVfg1oBq/mkBVTlFYAz1Vj3Sh8G5PCw7TYKjywKBgBkFDojOPycw1rcv9ArXggICtVDgAL69ysxCabnFfYGOfU51qx5OEeMOPuPe9YDJuoKR+2oXGWiDA/Lv0LFPmvx0eA+a5d6XIfrIyJ5xpXhbOiQKDHKpkuoDs77RUclTs+waHUIicMMEk7XFqrUGvIjIP1YS6vnSdDXp0hSli9qfAoGAFAL+fb7J6k3wShp6xOy5U1HL9KGYVS9Uz8DE8qCAzTKosy4xiCr+R6OlEXe96GrVMw8GlZNkiLfJVcfHethpj0F71Dc36Ihq/yOZ0uwHrOi0hcDEPeLamBReZ/7qBmKUs+yO64d1mq/NPH/Gg3eG5wbwF3GWcggYtAHhAhp7s+UCgYEAngcQFteDDf5tlq7ZOoMjWRI3YusVoYxHKDWdy1TQVBAQljTvnZqFIXCqc+l27slsqtPB7ZuwpYtQw+8wfFUTFR8GHbDSDhvY7vcHDxfS0HnAuUQFvz4OmQy4LLXn+nFfDr6xj4ViGXGK0pk8Op8J+YL7pMS9jGAgrb8V/Pf+ah4="
notify_url: "https://testapi.tiefen.fun/ext/vas/alipay_callback"
app_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx02/appCertPublicKey_2021004153620449.crt"
alipay_root_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx02/alipayRootCert.crt"
alipay_public_cert_path: "/app/wishpal-ironfan/etc/mix/alipaycert_lx02/alipayCertPublicKey_RSA2.crt"
apollo: apollo:
app_id: "wishpal_live_service" app_id: "wishpal_live_service"
cluster: "dev" cluster: "dev"

View File

@ -22,6 +22,7 @@ const (
AppIdXinYiDaoLe = "2021004115647165" // 心意到了 AppIdXinYiDaoLe = "2021004115647165" // 心意到了
AppIdMiYuanTianShi = "2021004135664261" // 觅缘天使 AppIdMiYuanTianShi = "2021004135664261" // 觅缘天使
AppIdLanXing01 = "2021004153681591" // 揽星01 AppIdLanXing01 = "2021004153681591" // 揽星01
AppIdLanXing02 = "2021004153620449" // 揽星02
) )
var allAlipayClients = map[string]*AlipayClient{} var allAlipayClients = map[string]*AlipayClient{}

View File

@ -18,7 +18,7 @@ func TestMain(m *testing.M) {
fmt.Printf("%v\n", err) fmt.Printf("%v\n", err)
} }
err = InitMulti(cfg.Alipay, cfg.AlipayMYTS, cfg.AlipayLX01) err = InitMulti(cfg.Alipay, cfg.AlipayMYTS, cfg.AlipayLX01, cfg.AlipayLX02)
if err != nil { if err != nil {
fmt.Println(err) fmt.Println(err)
os.Exit(1) os.Exit(1)
@ -27,7 +27,7 @@ func TestMain(m *testing.M) {
} }
func TestAlipayClient_WapPay(t *testing.T) { func TestAlipayClient_WapPay(t *testing.T) {
cli := GetDefaultAlipayClient() cli := GetAlipayClientByAppId(AppIdLanXing02)
paramStr, err := cli.WapPay(context.Background(), &WapPayParam{ paramStr, err := cli.WapPay(context.Background(), &WapPayParam{
OutTradeNo: idgenerator.GenOrderId(), OutTradeNo: idgenerator.GenOrderId(),
Subject: "哈哈", Subject: "哈哈",
@ -42,7 +42,7 @@ func TestAlipayClient_WapPay(t *testing.T) {
} }
func TestAlipayClient_QueryOrder(t *testing.T) { func TestAlipayClient_QueryOrder(t *testing.T) {
cli := GetDefaultAlipayClient() cli := GetAlipayClientByAppId(AppIdLanXing02)
resp, err := cli.QueryOrder(context.Background(), &QueryOrderParam{ resp, err := cli.QueryOrder(context.Background(), &QueryOrderParam{
OutTradeNo: "1750539072771731456", OutTradeNo: "1750539072771731456",
}) })
@ -54,9 +54,9 @@ func TestAlipayClient_QueryOrder(t *testing.T) {
} }
func TestAlipayClient_RefundOne(t *testing.T) { func TestAlipayClient_RefundOne(t *testing.T) {
cli := GetAlipayClientByAppId(AppIdXinYiDaoLe) cli := GetAlipayClientByAppId(AppIdLanXing02)
resp, err := cli.RefundOne(context.Background(), &RefundOneParam{ resp, err := cli.RefundOne(context.Background(), &RefundOneParam{
OutTradeNo: "1744218982338015232", OutTradeNo: "17442189823380225232",
RefundAmount: 100, RefundAmount: 100,
RefundReason: "测试退款", RefundReason: "测试退款",
}) })