新增系列配置
This commit is contained in:
parent
ef52ecc2be
commit
25dafdf7e5
|
|
@ -145,7 +145,7 @@ func DataInit() {
|
||||||
zap_server.ZAPLOG.Info("dataInit petBastInfoMap : ", zap.Any("petBastInfoMap", PetBaseInfoMap))
|
zap_server.ZAPLOG.Info("dataInit petBastInfoMap : ", zap.Any("petBastInfoMap", PetBaseInfoMap))
|
||||||
//--------------------------------------------------服务地址数据---------------------------------------------------------
|
//--------------------------------------------------服务地址数据---------------------------------------------------------
|
||||||
var serviceAddrList []models.ServiceAddr
|
var serviceAddrList []models.ServiceAddr
|
||||||
database.Instance().Model(&models.ServiceAddr{}).Find(&serviceAddrList)
|
database.Instance().Model(&models.ServiceAddr{}).Where("status = 1").Find(&serviceAddrList)
|
||||||
var ServiceAddrMapC1 = make(map[int64]models.ServiceAddr)
|
var ServiceAddrMapC1 = make(map[int64]models.ServiceAddr)
|
||||||
for _, value := range serviceAddrList {
|
for _, value := range serviceAddrList {
|
||||||
ServiceAddrMapC1[value.Id] = value
|
ServiceAddrMapC1[value.Id] = value
|
||||||
|
|
|
||||||
|
|
@ -17,6 +17,7 @@ var ExcludeBase = "/static"
|
||||||
var ExcludeBase1 = "/debug"
|
var ExcludeBase1 = "/debug"
|
||||||
var ExcludeBase2 = "/admin"
|
var ExcludeBase2 = "/admin"
|
||||||
var ExcludeBase3 = "/system"
|
var ExcludeBase3 = "/system"
|
||||||
|
var ExcludeBase4 = "/payNotify"
|
||||||
|
|
||||||
var frontExcludes = [...]string{
|
var frontExcludes = [...]string{
|
||||||
Root + AuthBase + "/login",
|
Root + AuthBase + "/login",
|
||||||
|
|
@ -72,6 +73,10 @@ func FrontAuth(ctx *context.Context) {
|
||||||
ctx.Next()
|
ctx.Next()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
if strings.Contains(ctx.Path(), ExcludeBase4) {
|
||||||
|
ctx.Next()
|
||||||
|
return
|
||||||
|
}
|
||||||
frontExcludesStr := strings.Join(frontExcludes[:], ",")
|
frontExcludesStr := strings.Join(frontExcludes[:], ",")
|
||||||
if strings.Contains(frontExcludesStr, ctx.Path()) {
|
if strings.Contains(frontExcludesStr, ctx.Path()) {
|
||||||
ctx.Next()
|
ctx.Next()
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,7 @@ type ToPayRequest struct {
|
||||||
|
|
||||||
type ToPayResponse struct {
|
type ToPayResponse struct {
|
||||||
Content *jsapi.PrepayWithRequestPaymentResponse `json:"content"`
|
Content *jsapi.PrepayWithRequestPaymentResponse `json:"content"`
|
||||||
PayOrderId string
|
PayOrderId string `json:"payOrderId"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// 充值
|
// 充值
|
||||||
|
|
@ -47,6 +47,7 @@ func (p DefParty) toPay() web_iris.Party {
|
||||||
return web_iris.Party{Prefix: p.Prefix, PartyFunc: func(index iris.Party) {
|
return web_iris.Party{Prefix: p.Prefix, PartyFunc: func(index iris.Party) {
|
||||||
index.Post(PayBase+"/toPay", func(ctx *context.Context) {
|
index.Post(PayBase+"/toPay", func(ctx *context.Context) {
|
||||||
headerBaseInfo := GetHeaderBaseInfo(ctx)
|
headerBaseInfo := GetHeaderBaseInfo(ctx)
|
||||||
|
|
||||||
body, _ := io.ReadAll(ctx.Request().Body)
|
body, _ := io.ReadAll(ctx.Request().Body)
|
||||||
var toPayRequest ToPayRequest
|
var toPayRequest ToPayRequest
|
||||||
json.Unmarshal(body, &toPayRequest)
|
json.Unmarshal(body, &toPayRequest)
|
||||||
|
|
@ -55,7 +56,7 @@ func (p DefParty) toPay() web_iris.Party {
|
||||||
var rechargeInfo *models.RechargeInfo
|
var rechargeInfo *models.RechargeInfo
|
||||||
database.Instance().Model(&models.RechargeInfo{}).Where("id = ?", toPayRequest.PayId).Find(&rechargeInfo)
|
database.Instance().Model(&models.RechargeInfo{}).Where("id = ?", toPayRequest.PayId).Find(&rechargeInfo)
|
||||||
svc := jsapi.JsapiApiService{Client: utils.GetWxPayService()}
|
svc := jsapi.JsapiApiService{Client: utils.GetWxPayService()}
|
||||||
price, _ := strconv.ParseInt(rechargeInfo.Price, 10, 64)
|
price, _ := strconv.ParseFloat(rechargeInfo.Price, 64)
|
||||||
orderId := NextId.Generate().String()
|
orderId := NextId.Generate().String()
|
||||||
// 得到prepay_id,以及调起支付所需的参数和签名
|
// 得到prepay_id,以及调起支付所需的参数和签名
|
||||||
resp, _, err := svc.PrepayWithRequestPayment(ctx,
|
resp, _, err := svc.PrepayWithRequestPayment(ctx,
|
||||||
|
|
@ -66,7 +67,7 @@ func (p DefParty) toPay() web_iris.Party {
|
||||||
OutTradeNo: core.String(orderId),
|
OutTradeNo: core.String(orderId),
|
||||||
NotifyUrl: core.String(web.CONFIG.System.Domain + "/pet-house/pay/payNotify"),
|
NotifyUrl: core.String(web.CONFIG.System.Domain + "/pet-house/pay/payNotify"),
|
||||||
Amount: &jsapi.Amount{
|
Amount: &jsapi.Amount{
|
||||||
Total: core.Int64(price * 100),
|
Total: core.Int64(int64(price * 100.0)),
|
||||||
},
|
},
|
||||||
Payer: &jsapi.Payer{
|
Payer: &jsapi.Payer{
|
||||||
Openid: core.String(userInfo.OpenId),
|
Openid: core.String(userInfo.OpenId),
|
||||||
|
|
@ -93,7 +94,30 @@ func (p DefParty) toPay() web_iris.Party {
|
||||||
func (p DefParty) payNotify() web_iris.Party {
|
func (p DefParty) payNotify() web_iris.Party {
|
||||||
return web_iris.Party{Prefix: p.Prefix, PartyFunc: func(index iris.Party) {
|
return web_iris.Party{Prefix: p.Prefix, PartyFunc: func(index iris.Party) {
|
||||||
index.Post(PayBase+"/payNotify", func(ctx *context.Context) {
|
index.Post(PayBase+"/payNotify", func(ctx *context.Context) {
|
||||||
wechatPayCert, _ := utils2.LoadCertificate(utils.CONFIG.WechatCert)
|
var cert = `-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDVzCCAj+gAwIBAgIJANfOWdH1ItcBMA0GCSqGSIb3DQEBCwUAMEIxCzAJBgNV
|
||||||
|
BAYTAlhYMRUwEwYDVQQHDAxEZWZhdWx0IENpdHkxHDAaBgNVBAoME0RlZmF1bHQg
|
||||||
|
Q29tcGFueSBMdGQwHhcNMjEwNDI3MDg1NTIzWhcNMzEwNDI1MDg1NTIzWjBCMQsw
|
||||||
|
CQYDVQQGEwJYWDEVMBMGA1UEBwwMRGVmYXVsdCBDaXR5MRwwGgYDVQQKDBNEZWZh
|
||||||
|
dWx0IENvbXBhbnkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
|
||||||
|
2VCTd91fnUn73Xy9DLvt/V62TVxRTEEstVdeRaZ3B3leO0pldE806mXO4RwdHXag
|
||||||
|
HQ4vGeZN0yqm++rDsGK+U3AH7kejyD2pXshNP9Cq5YwbptiLGtjcquw4HNxJQUOm
|
||||||
|
DeJf2vg6byms9RUipiq4SzbJKqJFlUpbuIPDpSpWz10PYmyCNeDGUUK65E5h2B83
|
||||||
|
4uxl1zNLYQCrkdBzb8oUxwYeP5a2DNxmjL5lsJML7DGr5znsevnoqGRwTm9fxCGf
|
||||||
|
y8wus7hwKz6clt3Whmmda7UAdb1c08hEQFVRbF14AR73xbnd8N0obCWJPCbzMCtk
|
||||||
|
aSef4FdEEgEXJiw0VAJT8wIDAQABo1AwTjAdBgNVHQ4EFgQUT1c7nd/SUO76HSoZ
|
||||||
|
umNUJv1R5PwwHwYDVR0jBBgwFoAUT1c7nd/SUO76HSoZumNUJv1R5PwwDAYDVR0T
|
||||||
|
BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAfTjxKRQMzNB/U6ZoCUS+BSNfa2Oh
|
||||||
|
0plMN6ZuzwiVVZwg1jywvv5yv04koS7Pd4i9E4gt9ZBUQXlpq+A3oOCEEHNRR6b2
|
||||||
|
kyazGRM7s0OP5X21WrbpSmKmU6K7hkfx30yYs08LVs/Q8DIhvaj1FCFeJzUCzYn/
|
||||||
|
fHMq4tsbKO0dKAeydPM/nrUZBmaYQVKMVOORGLFjFKVO7JV6Kq/R86ouhjEPgJOe
|
||||||
|
2xulNBUcjicqtZlBdEh/PWCYP2SpGVDclKm8jeo175T3EVAkdKzzmfpxtMmnMlmq
|
||||||
|
cTJOU9TxuGvNASMtjj7pYIerTx+xgZDXEVBWFW9PjJ0TV06tCRsgSHItgg==
|
||||||
|
-----END CERTIFICATE-----`
|
||||||
|
wechatPayCert, err1 := utils2.LoadCertificate(cert)
|
||||||
|
if err1 != nil {
|
||||||
|
panic(err1)
|
||||||
|
}
|
||||||
// 2. 使用本地管理的微信支付平台证书获取微信支付平台证书访问器
|
// 2. 使用本地管理的微信支付平台证书获取微信支付平台证书访问器
|
||||||
certificateVisitor := core.NewCertificateMapWithList([]*x509.Certificate{wechatPayCert})
|
certificateVisitor := core.NewCertificateMapWithList([]*x509.Certificate{wechatPayCert})
|
||||||
// 3. 使用apiv3 key、证书访问器初始化 `notify.Handler`
|
// 3. 使用apiv3 key、证书访问器初始化 `notify.Handler`
|
||||||
|
|
|
||||||
|
|
@ -8,5 +8,5 @@
|
||||||
"mchCertificateSerialNumber": "7DA2108120E4C418537BCF3C061AAB109CCF88A9",
|
"mchCertificateSerialNumber": "7DA2108120E4C418537BCF3C061AAB109CCF88A9",
|
||||||
"mchAPIv3Key": "chonghujiapanlei1234567891234567",
|
"mchAPIv3Key": "chonghujiapanlei1234567891234567",
|
||||||
"privateKeyPath": "F:\\work\\go\\pet-house\\business\\config\\apiclient_key.pem",
|
"privateKeyPath": "F:\\work\\go\\pet-house\\business\\config\\apiclient_key.pem",
|
||||||
"wechatCert": "MIIEKzCCAxOgAwIBAgIUfaIQgSDkxBhTe888BhqrEJzPiKkwDQYJKoZIhvcNAQELBQAwXjELMAkGA1UEBhMCQ04xEzARBgNVBAoTClRlbnBheS5jb20xHTAbBgNVBAsTFFRlbnBheS5jb20gQ0EgQ2VudGVyMRswGQYDVQQDExJUZW5wYXkuY29tIFJvb3QgQ0EwHhcNMjQwOTEwMDc0NDUzWhcNMjkwOTA5MDc0NDUzWjCBhDETMBEGA1UEAwwKMTY4MjYzNzYxMjEbMBkGA1UECgwS5b6u5L+h5ZWG5oi357O757ufMTAwLgYDVQQLDCflroHms6LlrqDmiqTlrrblrqDnianmnI3liqHmnInpmZDlhazlj7gxCzAJBgNVBAYTAkNOMREwDwYDVQQHDAhTaGVuWmhlbjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALoZ/ZK7BdW1DKCzsqQnS9ElkWhv8Df4JidAupVoaaGa0Iz8cukj8JgqzzmOA0fSief3z0OvOvmXQujNLXka38Y+8KB/K/BnqRYVGSvLWKwfdalSS+caJZUNLVQVv1zDrPVPb3JmoJMADPIq2sOfLqjmWPIxRcpa7sPeall5fMx07aVrpi2Ov1ueRUphIYNT6aV6KnPrRf/lcRwZxE0+l30l45sDNrd7l5tUsnJq/1OLP+kgidkpic6W1f3jrHZTwYakgShEUgkRsHeUjIQ0ZRYSsD4Mxn/bqdAxDSDWB6aWGwMrY1kubsPkE/AcXTpgpaC+2kQVhaYrWuly0w0T1jMCAwEAAaOBuTCBtjAJBgNVHRMEAjAAMAsGA1UdDwQEAwID+DCBmwYDVR0fBIGTMIGQMIGNoIGKoIGHhoGEaHR0cDovL2V2Y2EuaXRydXMuY29tLmNuL3B1YmxpYy9pdHJ1c2NybD9DQT0xQkQ0MjIwRTUwREJDMDRCMDZBRDM5NzU0OTg0NkMwMUMzRThFQkQyJnNnPUhBQ0M0NzFCNjU0MjJFMTJCMjdBOUQzM0E4N0FEMUNERjU5MjZFMTQwMzcxMA0GCSqGSIb3DQEBCwUAA4IBAQC7Zgux40pvNohZx721rygjo0yUbx54docNS79Eh5J9ukSKMf0cTsORlAnrsCbSYnIoMiqdPqccRYJUefUUuhOrKtuzaka4T+VSiaDTnZ07kB3I8xlvZtW32jHOstVPrJsBfEg53sl5sfWHY+OfuEhwOkoH3v/Fs4nH4hQxjO8RW9tNXqLvTrl1JeEwV4bMZxCAwCvoMPqn19WBFsaFb0kXF46oGeH5kId6oon0RCi+vXb8nSZ4oPXIJwxi9u/uy+wDrVlHohjCK+bRbxGgaIcX5uMPK/M73mzuuLFCbIWN4CLz9yyZGKxNJBq4YuGe+jWagh1GheVuvTdcJ4ZGDhQT"
|
"wechatCert": "`-----BEGIN CERTIFICATE-----\nMIIDVzCCAj+gAwIBAgIJANfOWdH1ItcBMA0GCSqGSIb3DQEBCwUAMEIxCzAJBgNV\nBAYTAlhYMRUwEwYDVQQHDAxEZWZhdWx0IENpdHkxHDAaBgNVBAoME0RlZmF1bHQg\nQ29tcGFueSBMdGQwHhcNMjEwNDI3MDg1NTIzWhcNMzEwNDI1MDg1NTIzWjBCMQsw\nCQYDVQQGEwJYWDEVMBMGA1UEBwwMRGVmYXVsdCBDaXR5MRwwGgYDVQQKDBNEZWZh\ndWx0IENvbXBhbnkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n2VCTd91fnUn73Xy9DLvt/V62TVxRTEEstVdeRaZ3B3leO0pldE806mXO4RwdHXag\nHQ4vGeZN0yqm++rDsGK+U3AH7kejyD2pXshNP9Cq5YwbptiLGtjcquw4HNxJQUOm\nDeJf2vg6byms9RUipiq4SzbJKqJFlUpbuIPDpSpWz10PYmyCNeDGUUK65E5h2B83\n4uxl1zNLYQCrkdBzb8oUxwYeP5a2DNxmjL5lsJML7DGr5znsevnoqGRwTm9fxCGf\ny8wus7hwKz6clt3Whmmda7UAdb1c08hEQFVRbF14AR73xbnd8N0obCWJPCbzMCtk\naSef4FdEEgEXJiw0VAJT8wIDAQABo1AwTjAdBgNVHQ4EFgQUT1c7nd/SUO76HSoZ\numNUJv1R5PwwHwYDVR0jBBgwFoAUT1c7nd/SUO76HSoZumNUJv1R5PwwDAYDVR0T\nBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAfTjxKRQMzNB/U6ZoCUS+BSNfa2Oh\n0plMN6ZuzwiVVZwg1jywvv5yv04koS7Pd4i9E4gt9ZBUQXlpq+A3oOCEEHNRR6b2\nkyazGRM7s0OP5X21WrbpSmKmU6K7hkfx30yYs08LVs/Q8DIhvaj1FCFeJzUCzYn/\nfHMq4tsbKO0dKAeydPM/nrUZBmaYQVKMVOORGLFjFKVO7JV6Kq/R86ouhjEPgJOe\n2xulNBUcjicqtZlBdEh/PWCYP2SpGVDclKm8jeo175T3EVAkdKzzmfpxtMmnMlmq\ncTJOU9TxuGvNASMtjj7pYIerTx+xgZDXEVBWFW9PjJ0TV06tCRsgSHItgg==\n-----END CERTIFICATE-----`\n"
|
||||||
}
|
}
|
||||||
|
|
@ -2,6 +2,7 @@ package utils
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
utils2 "github.com/wechatpay-apiv3/wechatpay-go/utils"
|
||||||
"math"
|
"math"
|
||||||
"pet-house.com/business/models"
|
"pet-house.com/business/models"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
|
@ -28,6 +29,10 @@ func TestCalc(t *testing.T) {
|
||||||
i := math.Round(386 * (float64(85) / 100))
|
i := math.Round(386 * (float64(85) / 100))
|
||||||
fmt.Println(i)
|
fmt.Println(i)
|
||||||
}
|
}
|
||||||
|
func TestCalc7(t *testing.T) {
|
||||||
|
float, _ := strconv.ParseFloat("0.01", 64)
|
||||||
|
fmt.Println(int64(float * 100.0))
|
||||||
|
}
|
||||||
func TestCalc1(t *testing.T) {
|
func TestCalc1(t *testing.T) {
|
||||||
i := float64(85) / 100
|
i := float64(85) / 100
|
||||||
fmt.Println(i)
|
fmt.Println(i)
|
||||||
|
|
@ -51,6 +56,31 @@ func TestCalc5(t *testing.T) {
|
||||||
float := strconv.FormatFloat(float64(a/10.0), 'f', 1, 64)
|
float := strconv.FormatFloat(float64(a/10.0), 'f', 1, 64)
|
||||||
fmt.Printf(float)
|
fmt.Printf(float)
|
||||||
}
|
}
|
||||||
|
func TestCalc8(t *testing.T) {
|
||||||
|
var a = `-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDVzCCAj+gAwIBAgIJANfOWdH1ItcBMA0GCSqGSIb3DQEBCwUAMEIxCzAJBgNV
|
||||||
|
BAYTAlhYMRUwEwYDVQQHDAxEZWZhdWx0IENpdHkxHDAaBgNVBAoME0RlZmF1bHQg
|
||||||
|
Q29tcGFueSBMdGQwHhcNMjEwNDI3MDg1NTIzWhcNMzEwNDI1MDg1NTIzWjBCMQsw
|
||||||
|
CQYDVQQGEwJYWDEVMBMGA1UEBwwMRGVmYXVsdCBDaXR5MRwwGgYDVQQKDBNEZWZh
|
||||||
|
dWx0IENvbXBhbnkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
|
||||||
|
2VCTd91fnUn73Xy9DLvt/V62TVxRTEEstVdeRaZ3B3leO0pldE806mXO4RwdHXag
|
||||||
|
HQ4vGeZN0yqm++rDsGK+U3AH7kejyD2pXshNP9Cq5YwbptiLGtjcquw4HNxJQUOm
|
||||||
|
DeJf2vg6byms9RUipiq4SzbJKqJFlUpbuIPDpSpWz10PYmyCNeDGUUK65E5h2B83
|
||||||
|
4uxl1zNLYQCrkdBzb8oUxwYeP5a2DNxmjL5lsJML7DGr5znsevnoqGRwTm9fxCGf
|
||||||
|
y8wus7hwKz6clt3Whmmda7UAdb1c08hEQFVRbF14AR73xbnd8N0obCWJPCbzMCtk
|
||||||
|
aSef4FdEEgEXJiw0VAJT8wIDAQABo1AwTjAdBgNVHQ4EFgQUT1c7nd/SUO76HSoZ
|
||||||
|
umNUJv1R5PwwHwYDVR0jBBgwFoAUT1c7nd/SUO76HSoZumNUJv1R5PwwDAYDVR0T
|
||||||
|
BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAfTjxKRQMzNB/U6ZoCUS+BSNfa2Oh
|
||||||
|
0plMN6ZuzwiVVZwg1jywvv5yv04koS7Pd4i9E4gt9ZBUQXlpq+A3oOCEEHNRR6b2
|
||||||
|
kyazGRM7s0OP5X21WrbpSmKmU6K7hkfx30yYs08LVs/Q8DIhvaj1FCFeJzUCzYn/
|
||||||
|
fHMq4tsbKO0dKAeydPM/nrUZBmaYQVKMVOORGLFjFKVO7JV6Kq/R86ouhjEPgJOe
|
||||||
|
2xulNBUcjicqtZlBdEh/PWCYP2SpGVDclKm8jeo175T3EVAkdKzzmfpxtMmnMlmq
|
||||||
|
cTJOU9TxuGvNASMtjj7pYIerTx+xgZDXEVBWFW9PjJ0TV06tCRsgSHItgg==
|
||||||
|
-----END CERTIFICATE-----`
|
||||||
|
x, err := utils2.LoadCertificate(a)
|
||||||
|
fmt.Println(err)
|
||||||
|
fmt.Println(x)
|
||||||
|
}
|
||||||
func TestMath(t *testing.T) {
|
func TestMath(t *testing.T) {
|
||||||
var a = int(RoundToOneDecimalPlace(float64(150)*(95/100.0)) * 10)
|
var a = int(RoundToOneDecimalPlace(float64(150)*(95/100.0)) * 10)
|
||||||
fmt.Println(a)
|
fmt.Println(a)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue