更改微信支付号;代理新增是否显示价格
This commit is contained in:
parent
0c54504f40
commit
6a1d18926d
@ -98,6 +98,7 @@ type (
|
||||
AgentGeneratingLinkReq {
|
||||
Product string `json:"product"`
|
||||
Price string `json:"price"`
|
||||
ShowPrice int64 `json:"show_price"`
|
||||
}
|
||||
AgentGeneratingLinkResp {
|
||||
LinkIdentifier string `json:"link_identifier"`
|
||||
@ -368,6 +369,7 @@ type (
|
||||
LinkIdentifier string `form:"link_identifier"`
|
||||
}
|
||||
GetLinkDataResp {
|
||||
ShowPrice int64 `json:"show_price"`
|
||||
Product
|
||||
}
|
||||
)
|
||||
|
@ -33,10 +33,10 @@ TianyuanConfig:
|
||||
Key: "ff83609b2b24fc73196aac3d3dfb874f"
|
||||
AccessId: "aa16cc6e9da90461"
|
||||
Alipay:
|
||||
AppID: "2021005113664540"
|
||||
PrivateKey: "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCA1mtTVZmB/7/wWV37Z8hUXEXFs0Gn1/Ie7c6rPQQRUlPHyJGcPAZvDii+ySC1/bplneMENRAjCuoJEM1z4X1FMt8rLggCqnF1xzUN2p9fdXUwcRPmSV4yi9ggMiFXldm0/eyaobV2fj0/VSLED2Qc8xBStM9pqkfszwf2rsAAKL15WQXOUiQw0s25s+Du18H4+YgkQ0HBr0+VPfhL4QoOvsE34ZYP0TuTwxVheYNkvSOPXFXmtE3z/b+75y2n2msa9S4HItNVYpOkB7z3GDB+0/rvX+Q+GvYI9BSBbgJwEuqiMN2SwQyAjH608JBoAUGnk0ygfG8juF77shBxzr/vAgMBAAECggEAQTlL2EJrlm59IxZ7B72Ao4SbJf0b7fba8mF90R7wojxFgcy+OpQAxdQrOHrl/nxXEv6dYRHj+3mZBcHl4RZ0rsWUSW3iTEcxbWjOKRdWu6LhEwcMBfd6oqg9X/9A9fA86O3sDFR1Y2mBZECbexo3mphK2TQEFQBJrU8aPv404V784u0wTh1oLO0Z3NjgvXOAy3ZsM64oZROVCkObXnZGyrY8Hf6W+YLmCoI7eajOQ9QTFy1x24fm8LFdWNizG9/DFa4EC7ZjiYzFhGpfpKb4964QnN3Krlf18Ryhgf3PO6IDO04JOdnHLKhR8+kHIN5m6AMIyKxbZ/vKw4X09Z8XoQKBgQD7jNHzEhIo4IOmRzgdoGxSCLXe1cUbwFL4tU3n7miUCYL/k6wpiNkCGwikaHMiSG0Om2D6+I9gX/rBrTrp2MAmcHA6ymn1GARSYMv7rz+5afGygfBDNr/7xQ2ASCatB65TObH+AUZzdq82B5dpr46AJhilRcHnQEyc/SyIelft2QKBgQCDHeDYt3vTDJ1vIPtXeyO1NHbGQY7cUucx3sZ+QVdF0abstcutT0LrHOgDCWFtnvjia1f0QRPDnTzUtq4GQxj63/9zZr1pMGsd7gjgIvVjM0LqUQXU0TMpO1DuU2zyemRyJTfWDDN+vTvA2+376cW0QxKq2CKOhX45WZRrUBbXBwKBgQCPVFe0ZlGOlQ6uSdpBl0zhGTF3vNpIy7b7G2M+ietwnlLUCXKJX/42YuzzsMgZeqcZMZN6rPIU+dtJS8lLwUMLI/nupbLmAj9EKP9RczOeFC2xhrQ9uA6ACHF+7J2M7dl4dmFi15sq4y9GW+D8SRmrDwnv8eVgPJTqxp7/TKaZUQKBgCMMI4QKV7DsWFDSMh0KL1tKcM1BzNwb1OzBrbEl6hwhlEsFtTHYU/zgtyvIoCBbNA/hvZruokfRiecaBZ5q5Qx6P6ArQEoTxS406G5xKcKgeyyDB9oBKXnF/zYVWrPd/2d7h1dR35nrH0PIBe8mZ9BtdVnxeBs8l6bgyQl+WPyVAoGBAPW7XxyLUAZ4X6JD4b5Iqq4E40xmDO3rUysrH8Zj7MN47ykZI0SlwA9B6hqliRLLJXkzhaAamecWb1RNJFDWfcg4bIyew4ukRbYB07RI+l0DXEgOxxTBcvN6BNUoIiQSEKXkOv+xt7Ez2TBoDm67xD58vwSXT4aPt4qxnd4i7Ves"
|
||||
AlipayPublicKey: "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0kkRL7lgKYs7f8Xi4DNKzp2ggjwy4By7RunwT4Ur4A71HVOqRQed9r45a6/W4JPuVv51tiHMojZifEKX7ixSlDG6be677RiNslMJ5G3mjw/+Ku01tV9Qzw5YyhvxbqmS8Qp9vgL8VPYhxqTxKO6WW+xiyVvxko+mrU+dbSFIVbBjp88NVVcquu+vZT/uwtjriKSwsesAm8DkKT6mTqY5P/JroMzTU7xa3/ErAMte6t2dOsxPS7kqWjJyoLBHRk+AH87X5lNBEjLgYPk1ADU7zFsLdC+nv4fm7nihYre7fCrdCTVKguXmPCEFBjqwSkag7BSIxRQjS3qHxi+DUMst7wIDAQAB"
|
||||
AppCertPath: "etc/merchant/appCertPublicKey_2021005113664540.crt"
|
||||
AppID: "2021004165608254"
|
||||
PrivateKey: "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCPsXuwFJeHAL8CwI0QdD9GP7xQ8eejIoQKg6J3/peu26su68JCtGSRhlDm/7vbLHJcFR6h7at+INoz2juc7SqlmNO7i9wKc3+Ua0487y1G2fCsneRNxTTqbceBZwqjj9/AAN0u5/4nSl0bcqTeMddofdpTGOvwGvIJh6CZgCglnhMZnH4D6H6yiIyZf7Q6k2d/qBpVGK8kluYEtSnf/vEQCHhxRx+/DgTL7V1LjbA3BYoPTELZ15JAj0uIzuxextAtxOm4+Huli0RJFAN3q/to2L1Zs8yYY1gKJyTaPWKsJWBx8zI+gZcC/e45k6CZnGgh1Fn3+Xqkf7eGxJGGHs1fAgMBAAECggEAM2rkApbrvdBDiV2TXK7sMVv/K8vUAmkIbKa7zUpZxqUuNSUBp1LbpcM1UeNyujPGXDLmejUMp55j1igiKr4nA4iTQ0oBm+/GWDqpjV5cijzURUBegIGvtK9Bs4lGok6KVy839l/nbvHKLVcxrZySIv7dz9xcGNfbghN5IVRdiU/kOokNbtwQNC837piG5q4PHL6bzwIUGbrLED/RDmw/IwVMMmZovcQQ2JAuWJBo9CS9LB0Nc3I4MOPNx/0Rl+5URSSfmJAriL5ihlWckocQCUHwhRpSGQ6Q4xAXFYvb8OsApAQG3WU9SciBfs2wg/QfGNFzwQgGFofPcTQg3DTeuQKBgQDUHBTsgoe3WXnGo6qZKw1zA4OtF67IJJoltHo5JtkBRKCNVU3BJ+q+6i/fn0MBwScKQ1mhPjWe3h+qTRT207RRxGaxb6ljATOiU+BxmpHvu6jP+DVYtP5F3M7MCAGqpDAEoXgoAWttxmijqk+5YuLOLe0j/btCmpzuH7zwxSnqlQKBgQCtbTvaS/g+Jeu4Ml6iv7xi5//JCjeTn2wUJpXnNmN0jn+riRwEO81z4GWuOI8WukZHHAnufI6qWk2sLH0gcdLQ/STsMnl2L3NbeUyO8o5w2JSAlnZDYfaFfasGqFkGJrBLqG6bh/Bk1DP3/Bl6iMEwDbmu7Ptoy8ihokng9dEPIwKBgBHdi6WgGO5IiwlAH85m4eseEKkzpXUWICWs3d6SdxS0QxGkbbgnNI6ACyg6sdoj+rXSlmoOY1XOP7yIYYuoqTd542xui0XbhA3YIr9u1XvrwnxB27xtAj3AK2rkAb/ttF2ve/9inznPzGB8p9plidTz6VVuuacSfsVPxwpAkRdBAoGAR7c9Ifd6b1DFGkWSBuEc6RWhG6Si+OPbELYoFRXTqNZoiynGsSV9v2ZTBemTmkVrXGqG3N0bLezr47/9+lW3ZP7ZrubsfWf/3xrZAt/g8V9OgaI2w4SWKfuepsElFzsWeiLroltjmH58Axd3/cjhgpqaZ3DOQjbK/7QZsvJUAlsCgYEAqTQVhKLizM7BvXu1N6Z2K8trfJbiN+f90XhZIRPkIIcom0PnOfXhRtT76MCxz9n+lwf+alOKOfbQFy0pZtWG/eaFSYroQlXL+EfmqlFPXZR6D0NQLeygWAKH8161IQUh2VF3Qkhle6g6ZkyJA3Ev4RmqH2BYGv8hcZTTHsZ3Ic4="
|
||||
AlipayPublicKey: "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2CqoCp95w/JV3RT/gzF4/8QmVT1HQNaeW7yUp+mA7x9AbjvlTW/+eRn6oGAL/XhZLjvHD0XjKLVKX0MJVS1aUQHEHEbOJN4Eu8II45OavD4iZISa7Kp9V6AM+i4qTyaeV2wNDnGxHQBaLVUGCfMR+56EK2YpORdE1H9uy72SSQseVb3bmpsV9EW/IJNmcVL/ut3uA1JWAoRmzlQ7ekxg7p8AYXzYPEHQr1tl7W+M4zv9wO9GKZCxIqMA8U3RP5npPfRaCfIRGzXzCqFEEUvWuidOB7frsvN4jiPD07qpL2Bi9LM1X/ee2kC/oM8Uhd7ERZhG8MbZfijZKxgrsDKBcwIDAQAB"
|
||||
AppCertPath: "etc/merchant/appCertPublicKey_2021004165608254.crt"
|
||||
AlipayCertPath: "etc/merchant/alipayCertPublicKey_RSA2.crt"
|
||||
AlipayRootCertPath: "etc/merchant/alipayRootCert.crt"
|
||||
IsProduction: true
|
||||
@ -44,13 +44,14 @@ Alipay:
|
||||
ReturnURL: "http://localhost:5678/inquire"
|
||||
|
||||
Wxpay:
|
||||
AppID: "wxa581992dc74d860e"
|
||||
MchID: "1704330055"
|
||||
MchCertificateSerialNumber: "749065854D0CECCE8F98EAFEA55AD4FB17F868C4"
|
||||
MchApiv3Key: "A9f3G7kL2mP5sQ8tV1xY4zB6nC0dE3hJ"
|
||||
AppID: "wx442ee1ac1ee75917"
|
||||
MchID: "1683589176"
|
||||
MchCertificateSerialNumber: "63139CD5FF5A703B261050D11BB991C3FAA68471"
|
||||
MchApiv3Key: "K7mP9nQ2xV8bF4wR6sL1dG3hJ5yT0uC9"
|
||||
MchPrivateKeyPath: "etc/merchant/apiclient_key.pem"
|
||||
MchPublicKeyID: "PUB_KEY_ID_0117043300552025010900447500000187"
|
||||
MchPublicKeyID: "PUB_KEY_ID_0116835891762025062600211574000800"
|
||||
MchPublicKeyPath: "etc/merchant/pub_key.pem"
|
||||
MchPlatformRAS: "5E37D285DDB2D2C226183C7F9290BEDC5E993821"
|
||||
NotifyUrl: "https://6m4685017o.goho.co/api/v1/pay/wechat/callback"
|
||||
RefundNotifyUrl: "https://6m4685017o.goho.co/api/v1/wechat/refund_callback"
|
||||
Applepay:
|
||||
|
@ -46,13 +46,13 @@ Alipay:
|
||||
ReturnURL: "https://ycc.quannengcha.com/payment/result"
|
||||
Wxpay:
|
||||
AppID: "wx442ee1ac1ee75917"
|
||||
MchID: "1682635136"
|
||||
MchCertificateSerialNumber: "5369B8AEEBDCF7AF274510252E6A8C0659C30F61"
|
||||
MchApiv3Key: "e3ea4cf0765f1e71b01bb387dfcdbc9f"
|
||||
MchID: "1683589176"
|
||||
MchCertificateSerialNumber: "63139CD5FF5A703B261050D11BB991C3FAA68471"
|
||||
MchApiv3Key: "K7mP9nQ2xV8bF4wR6sL1dG3hJ5yT0uC9"
|
||||
MchPrivateKeyPath: "etc/merchant/apiclient_key.pem"
|
||||
MchPublicKeyID: "PUB_KEY_ID_0116826351362025060900382267001601"
|
||||
MchPublicKeyID: "PUB_KEY_ID_0116835891762025062600211574000800"
|
||||
MchPublicKeyPath: "etc/merchant/pub_key.pem"
|
||||
MchPlatformRAS: "1FFEC3F62E31885FAB4C91ADCB8D7557E9488781"
|
||||
MchPlatformRAS: "5E37D285DDB2D2C226183C7F9290BEDC5E993821"
|
||||
NotifyUrl: "https://ycc.quannengcha.com/api/v1/pay/wechat/callback"
|
||||
RefundNotifyUrl: "https://ycc.quannengcha.com/api/v1/pay/wechat/refund_callback"
|
||||
Applepay:
|
||||
|
@ -1,28 +1,28 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDCP6fWm1vXXybH
|
||||
m3Ne6PjacGrN2+iMrzWZlzdHCZ31udDPqSUYaZ+78b441KZK/CJFQWeSJ/1h//A+
|
||||
BGsQDKvE/fj2QzN1KkOuQ8WJXNGpixE5uu5bv/QTN/ukurGdA1aO2aFCANumlOmB
|
||||
HkB/B2so57ii8iQQjwK2xM4r3oOU/IfcFGKL+9/QjLGFFp9PJXCDBCgrxxlZGaj1
|
||||
3wowlfVOzlaX94gemQsCYVkuAFIYMAnFHs9cKNZQIU80somW/yy2Gy38N6n7NnbD
|
||||
nvFSaq4GoDROqRgKbRZ5e706d/p7A3aS/2oRqq1jomUIugK8g++LmoHFTgfhfQkI
|
||||
v1aG/nPzAgMBAAECggEAD2RN31J2J42xm/V0YdviBCUOQXugZK1peN8jkSxw6Myt
|
||||
gBbuCo4sCw9vvD8VYjGyYXx6QXmLuV03YyKkfSQT5EsflBvlEu6jaEaUe3rwXhfX
|
||||
6JQoWPrP00oHVZk5g7CFBlK2VW2N+hgonIOSJr6mvhoGZlr7gphiZasYjx9Vm9N3
|
||||
Pbnfru5ttzplYNniwH3DF6ph8VmdbD1nnbWSKLXvHCsXQT2wBcnsIagIH3vyq6K1
|
||||
pc5abWsQJrixOPebpI8jD5w0HxHAqVLx58H/OC2zW/roAw1WS2AkueJ1j7dQ7Z0C
|
||||
mc9Xexz5gcAP0nMAQv+LP7iYqsa/niFhfcTFWfdxkQKBgQD5JkKNmInU2/IVYCwO
|
||||
c483MCSv1+MnbRXlb7vut8T0IupHTU6hCge6C3q3HsjbKSBn8bRChtPUzvw9JFxK
|
||||
QWKiQqQDPLDJ08AIKhfQD2JiLtoikkZN0bF6OTL+Soney1yGx51mlfHM194+PcCJ
|
||||
jF7iWdMVbcBwHbgydNxxIS5cKQKBgQDHlvQ4lw6gvLILpGK494/vNYSJP/Jmd66V
|
||||
3oSGYi84YRKTSwH4NlbBVVieb3Dv+pPugbsXEuFHBif7WsivbYgNTE9++8Yvt0gh
|
||||
duB1G4yh7m/ylQeSuipgQU9tozrU/15cWwmcCRV50wWXBGoVEM0kf7mzEKSxmjYk
|
||||
Qzko/zxSuwKBgQCY6Bc+SViFz3qSDdTcBaXma+CIHsmlH7ipd9px1kzEvEzl95cD
|
||||
FGHLl1H34qfIgUQHJvrHPXHyEBoT+CW/2MMM7DM2XV/ubctT92ln4pkxwqlTQExv
|
||||
Y/s1FLesAtj8Z/hgK0/5bprYab9WmZV5lTGCXzhB1XqeFE9AgCHuODv4iQKBgQC8
|
||||
g2uwd5ytXQydymokYk9klJvWNrvw5GHV1BJAC0Smb6lnzZTSqCBRAxdsrb1yLK7E
|
||||
u2vGY2K7/qiM1DZw23eBd+4t9gg+0VIjqXBfq+GsoNTDvtckUwnrWER5PY831ut9
|
||||
N89fvYS3SAUjmlvIAdKBAtKWusWTqiAxJ/05J7oGOQKBgB5PSr5i0LlupIbKui9t
|
||||
XtXnRqGPxxrZZUpTkyrGOAnlCz/zq2QiwFpBWo/NMHOp0KmxzJpQ8yEY2LWlRZ61
|
||||
Oc9m0J/HtPw3Ohi1treBosEVG/0NOI9Tq1Obny23N51MVibdW6zEIyGUp/DbFS8h
|
||||
5DljdOYX9IYIHHn3Ig4GeTGe
|
||||
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC68MNUMLXTxzWX
|
||||
gmABAO0KpYEv8tCOZpiFpgCOlkxb//Veer0rpobxvSCnnlRo6NxgtMx+HdmUqT0W
|
||||
oEcEUmfnW+FRXctAc7dX9Zn4TsVdrh9yI4xFrWvNgExpHgpukThzMQ6XqKMFHf6O
|
||||
fc3gJgYgPMK4lY1DnytHzmm+nyZvI8xSavvyFw/VXqpak0bSfHUfoPghYvTw7Wmf
|
||||
RxV1TWJiUYxUVsw0F/wpBTHCw+G7C2Gq4uTfgF91BEctZDSuT86tBVSwZd2YSa+z
|
||||
Nkp8HEtsOh0/JoJudRjWsnN9c5E6Z4wbF3KkjRZwa0BbnG/t0NQSHb5Sr1GFut7o
|
||||
zWtvNAMRAgMBAAECggEAfsG+UJnu0LjlN+SpYETWdj+fB3onvEcI6KaU/hofkMpQ
|
||||
AE5NcwmpusS5Ha8YIUK0G8a8Wk+3NzxCNdNcFCwkVBZTA68LoJpWGYhpbJtM7Kai
|
||||
n+xGswBSdremGCjMfghuNH1xHZi1YUTjVI8tR+3AfZ91kV+mt9F3sWre/OhBUV3U
|
||||
anHkhg0EiU1GXQx7q5TpT4XRg02aDge+FF4JNetUExeYDHmiECCmmz6QfuZgVwxV
|
||||
nggvLOoQetRU5nlu6yroQnR2OWa5Ku3jk1RqWXoibVoD7KAmMtPTvPCz59hXqZFP
|
||||
bxlWH9+tj6NiC9E0yLAzpALcr6c1D7doPs9R5rXLmQKBgQDyrdUfecOfHEkI0y1Y
|
||||
4OLe62BB+3YStfgq9DZarWm8UBOOzsfbdPIi7hHGhUcHwAg2DteB1Dj1Zr/eYBh/
|
||||
2r8LV0RvxsbbA+Jj7QfnV4sBxvG4jKq1WajgvXZXKbUgWNZh6eBKN/aoQVNdDuqe
|
||||
fr6z2riKXxcynWIVJ8uYoodO1wKBgQDFM67J3OPE10LGWazgMrGsZHEBH+15mqh8
|
||||
np8MN1u6RC3Rn64IyEHjWM7rdNgkXiQVfF9fd0yLf3xq86woYqSAwUIPSkJrLOjm
|
||||
fdwW/ypXlAs3qrS/euQfk3c2Ql4oPM0yzt+h2wkV92pH+wWTwkw0ZrBa0pu5D+6+
|
||||
LGQ/vJqIVwKBgQCtwpPgBqJv8aPFotdMVTF8ZdI1TGS9fvejYdrtUE9uG3P1g8+M
|
||||
Lg8VvZqSp2k1fmUit7vM5PSnmZt2ER5ZpXm3GBQTaKOHvB9EZzqKhZ8tdZIsDuRI
|
||||
F1uZF299d4qOD63oy7nhynJdBPE4p26Mb7oCM3CA+xc0EYZiGW1o666wXwKBgQC5
|
||||
iG2LWDonKQuXCCnA6ZEGC53SHBLWFS8tyCMFYFP5xEmDboNTme17k0NifZUZakTy
|
||||
vggRDnHC0RfinA0+FciFps2bCxfANAmPSZy3OizBJvUC06WofVuBZcGEGB70Jng8
|
||||
tCvs4OIEe7nPrRlLMkN2DaMgYAPIsnfBDozm9nBBkwKBgC6IwExmVxskBBgvI9kY
|
||||
LyXWnbMkYBvOeL9EZH75Z1ddQJXrpTAySRH0E7BxvG7UDJ2Mbfutdh+2JPdBLesK
|
||||
B9bGk5bdVQRAvqVXI1sXUXB6c79VJUyD9feABlU4NfP8SDtf8CRpX7MP76K292Wv
|
||||
Hx/bi3ojz/NLb2kX5GACG7cQ
|
||||
-----END PRIVATE KEY-----
|
||||
|
@ -1,9 +1,9 @@
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvwSy7dS/ICZV38tI0HxM
|
||||
SAIE7+Ug92qryuNlkNyaNDRjfsykHsrPCSsUUQEZblBNmZOLfLQxmAaWC+cQqWCv
|
||||
zfy4rXGAHE1widWFkHGzQzaw6cB0VdDXatK9yAt1PgXdp5jzBRzOn9Z3u4t0s771
|
||||
2zjuxCnLxMq84DovNgh2y0LBiuorWbtuTFTd8SXUGk2Jyuojq/02U3KTuyh+7SmW
|
||||
ffJXKrzhrKwSpGh59e/fFxqX2xGlVoJ1kdohMZPo/7k+e5jP7qjrf93l7JVeUKYa
|
||||
V27hNVowJ4oho21WVCJ1AYo41IbPJWI+6WxlaVeoR4zKix0Mb2timaWayyLoN53y
|
||||
aQIDAQAB
|
||||
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArw9V+Nc7LZ/2Sul64PWT
|
||||
rIpnWKAILD5Mt+lStWBm48sWxGsDDXcZVlp8Pk58Otrxl/d1yuGOWDa3WAp6W1cs
|
||||
xWnx4jfG5V9sh/xWWEMnGTnOYC+KwtOADFLqIXPbkNeieDjaIxoVyDQEQFxIjN6W
|
||||
lNdHbA0iWH8rqzFPtLwlP1U4X/xXpZvN/vwfEbuC/+tDhMROYbi1uGCEoYVpT8i4
|
||||
cd6UfO46CG40VuT2V+ZWGC0Ulu5dxjG/MSmIwhFhSoaF8Ec9wxR+yumTUhRG4Ahv
|
||||
ZRBylfZrJFk95LYWVEXf7dbJvbc5wYpWTOH4k3A4Nvo5ILzN4KQoA5WoULLCHUeu
|
||||
vQIDAQAB
|
||||
-----END PUBLIC KEY-----
|
||||
|
@ -63,6 +63,7 @@ type WxpayConfig struct {
|
||||
MchPrivateKeyPath string
|
||||
MchPublicKeyID string
|
||||
MchPublicKeyPath string
|
||||
MchPlatformRAS string
|
||||
NotifyUrl string
|
||||
RefundNotifyUrl string
|
||||
}
|
||||
|
@ -101,6 +101,7 @@ func (l *GeneratingLinkLogic) GeneratingLink(req *types.AgentGeneratingLinkReq)
|
||||
agentLink.LinkIdentifier = encrypted
|
||||
agentLink.ProductId = productModel.Id
|
||||
agentLink.Price = price
|
||||
agentLink.ShowPrice = req.ShowPrice
|
||||
_, err = l.svcCtx.AgentLinkModel.Insert(l.ctx, nil, &agentLink)
|
||||
if err != nil {
|
||||
return nil, errors.Wrapf(xerr.NewErrCode(xerr.DB_ERROR), "生成代理链接, %v", err)
|
||||
|
@ -41,6 +41,7 @@ func (l *GetLinkDataLogic) GetLinkData(req *types.GetLinkDataReq) (resp *types.G
|
||||
copier.Copy(&product, productModel)
|
||||
product.SellPrice = agentLinkModel.Price
|
||||
return &types.GetLinkDataResp{
|
||||
Product: product,
|
||||
ShowPrice: agentLinkModel.ShowPrice,
|
||||
Product: product,
|
||||
}, nil
|
||||
}
|
||||
|
@ -106,12 +106,12 @@ func newWechatPayServiceWithPlatformCert(c config.Config, userAuthModel model.Us
|
||||
// newWechatPayServiceWithWxPayPubKey 使用微信支付公钥初始化微信支付服务
|
||||
func newWechatPayServiceWithWxPayPubKey(c config.Config, userAuthModel model.UserAuthModel) *WechatPayService {
|
||||
// 从配置中加载商户信息
|
||||
mchID := c.Wxpay.MchID
|
||||
mchCertificateSerialNumber := c.Wxpay.MchCertificateSerialNumber
|
||||
mchAPIv3Key := c.Wxpay.MchApiv3Key
|
||||
mchPrivateKeyPath := c.Wxpay.MchPrivateKeyPath
|
||||
mchPublicKeyID := c.Wxpay.MchPublicKeyID
|
||||
mchPublicKeyPath := c.Wxpay.MchPublicKeyPath
|
||||
mchID := c.Wxpay.MchID // 商户号
|
||||
mchCertificateSerialNumber := c.Wxpay.MchCertificateSerialNumber // 商户证书序列号
|
||||
mchAPIv3Key := c.Wxpay.MchApiv3Key // 商户APIv3密钥
|
||||
mchPrivateKeyPath := c.Wxpay.MchPrivateKeyPath // 商户私钥路径
|
||||
mchPublicKeyID := c.Wxpay.MchPublicKeyID // 商户公钥ID
|
||||
mchPublicKeyPath := c.Wxpay.MchPublicKeyPath // 商户公钥路径
|
||||
// 从文件中加载商户私钥
|
||||
mchPrivateKey, err := utils.LoadPrivateKeyWithPath(mchPrivateKeyPath)
|
||||
if err != nil {
|
||||
|
@ -755,8 +755,9 @@ type AgentCommissionListItem struct {
|
||||
}
|
||||
|
||||
type AgentGeneratingLinkReq struct {
|
||||
Product string `json:"product"`
|
||||
Price string `json:"price"`
|
||||
Product string `json:"product"`
|
||||
Price string `json:"price"`
|
||||
ShowPrice int64 `json:"show_price"`
|
||||
}
|
||||
|
||||
type AgentGeneratingLinkResp struct {
|
||||
@ -1111,6 +1112,7 @@ type GetLinkDataReq struct {
|
||||
}
|
||||
|
||||
type GetLinkDataResp struct {
|
||||
ShowPrice int64 `json:"show_price"`
|
||||
Product
|
||||
}
|
||||
|
||||
|
@ -26,8 +26,8 @@ var (
|
||||
agentLinkRowsExpectAutoSet = strings.Join(stringx.Remove(agentLinkFieldNames, "`id`", "`create_time`", "`update_time`"), ",")
|
||||
agentLinkRowsWithPlaceHolder = strings.Join(stringx.Remove(agentLinkFieldNames, "`id`", "`create_time`", "`update_time`"), "=?,") + "=?"
|
||||
|
||||
cacheyccAgentLinkIdPrefix = "cache:ycc:agentLink:id:"
|
||||
cacheyccAgentLinkLinkIdentifierPrefix = "cache:ycc:agentLink:linkIdentifier:"
|
||||
cacheYccAgentLinkIdPrefix = "cache:ycc:agentLink:id:"
|
||||
cacheYccAgentLinkLinkIdentifierPrefix = "cache:ycc:agentLink:linkIdentifier:"
|
||||
)
|
||||
|
||||
type (
|
||||
@ -59,6 +59,7 @@ type (
|
||||
Id int64 `db:"id"`
|
||||
ProductId int64 `db:"product_id"`
|
||||
Price float64 `db:"price"`
|
||||
ShowPrice int64 `db:"show_price"` // 是否显示价格:0-不显示,1-显示
|
||||
UserId int64 `db:"user_id"`
|
||||
AgentId int64 `db:"agent_id"`
|
||||
LinkIdentifier string `db:"link_identifier"`
|
||||
@ -79,19 +80,19 @@ func newAgentLinkModel(conn sqlx.SqlConn, c cache.CacheConf) *defaultAgentLinkMo
|
||||
|
||||
func (m *defaultAgentLinkModel) Insert(ctx context.Context, session sqlx.Session, data *AgentLink) (sql.Result, error) {
|
||||
data.DelState = globalkey.DelStateNo
|
||||
yccAgentLinkIdKey := fmt.Sprintf("%s%v", cacheyccAgentLinkIdPrefix, data.Id)
|
||||
yccAgentLinkLinkIdentifierKey := fmt.Sprintf("%s%v", cacheyccAgentLinkLinkIdentifierPrefix, data.LinkIdentifier)
|
||||
yccAgentLinkIdKey := fmt.Sprintf("%s%v", cacheYccAgentLinkIdPrefix, data.Id)
|
||||
yccAgentLinkLinkIdentifierKey := fmt.Sprintf("%s%v", cacheYccAgentLinkLinkIdentifierPrefix, data.LinkIdentifier)
|
||||
return m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
|
||||
query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?)", m.table, agentLinkRowsExpectAutoSet)
|
||||
query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, agentLinkRowsExpectAutoSet)
|
||||
if session != nil {
|
||||
return session.ExecCtx(ctx, query, data.ProductId, data.Price, data.UserId, data.AgentId, data.LinkIdentifier, data.DeleteTime, data.DelState, data.Version)
|
||||
return session.ExecCtx(ctx, query, data.ProductId, data.Price, data.ShowPrice, data.UserId, data.AgentId, data.LinkIdentifier, data.DeleteTime, data.DelState, data.Version)
|
||||
}
|
||||
return conn.ExecCtx(ctx, query, data.ProductId, data.Price, data.UserId, data.AgentId, data.LinkIdentifier, data.DeleteTime, data.DelState, data.Version)
|
||||
return conn.ExecCtx(ctx, query, data.ProductId, data.Price, data.ShowPrice, data.UserId, data.AgentId, data.LinkIdentifier, data.DeleteTime, data.DelState, data.Version)
|
||||
}, yccAgentLinkIdKey, yccAgentLinkLinkIdentifierKey)
|
||||
}
|
||||
|
||||
func (m *defaultAgentLinkModel) FindOne(ctx context.Context, id int64) (*AgentLink, error) {
|
||||
yccAgentLinkIdKey := fmt.Sprintf("%s%v", cacheyccAgentLinkIdPrefix, id)
|
||||
yccAgentLinkIdKey := fmt.Sprintf("%s%v", cacheYccAgentLinkIdPrefix, id)
|
||||
var resp AgentLink
|
||||
err := m.QueryRowCtx(ctx, &resp, yccAgentLinkIdKey, func(ctx context.Context, conn sqlx.SqlConn, v interface{}) error {
|
||||
query := fmt.Sprintf("select %s from %s where `id` = ? and del_state = ? limit 1", agentLinkRows, m.table)
|
||||
@ -108,7 +109,7 @@ func (m *defaultAgentLinkModel) FindOne(ctx context.Context, id int64) (*AgentLi
|
||||
}
|
||||
|
||||
func (m *defaultAgentLinkModel) FindOneByLinkIdentifier(ctx context.Context, linkIdentifier string) (*AgentLink, error) {
|
||||
yccAgentLinkLinkIdentifierKey := fmt.Sprintf("%s%v", cacheyccAgentLinkLinkIdentifierPrefix, linkIdentifier)
|
||||
yccAgentLinkLinkIdentifierKey := fmt.Sprintf("%s%v", cacheYccAgentLinkLinkIdentifierPrefix, linkIdentifier)
|
||||
var resp AgentLink
|
||||
err := m.QueryRowIndexCtx(ctx, &resp, yccAgentLinkLinkIdentifierKey, m.formatPrimary, func(ctx context.Context, conn sqlx.SqlConn, v interface{}) (i interface{}, e error) {
|
||||
query := fmt.Sprintf("select %s from %s where `link_identifier` = ? and del_state = ? limit 1", agentLinkRows, m.table)
|
||||
@ -132,14 +133,14 @@ func (m *defaultAgentLinkModel) Update(ctx context.Context, session sqlx.Session
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
yccAgentLinkIdKey := fmt.Sprintf("%s%v", cacheyccAgentLinkIdPrefix, data.Id)
|
||||
yccAgentLinkLinkIdentifierKey := fmt.Sprintf("%s%v", cacheyccAgentLinkLinkIdentifierPrefix, data.LinkIdentifier)
|
||||
yccAgentLinkIdKey := fmt.Sprintf("%s%v", cacheYccAgentLinkIdPrefix, data.Id)
|
||||
yccAgentLinkLinkIdentifierKey := fmt.Sprintf("%s%v", cacheYccAgentLinkLinkIdentifierPrefix, data.LinkIdentifier)
|
||||
return m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
|
||||
query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, agentLinkRowsWithPlaceHolder)
|
||||
if session != nil {
|
||||
return session.ExecCtx(ctx, query, newData.ProductId, newData.Price, newData.UserId, newData.AgentId, newData.LinkIdentifier, newData.DeleteTime, newData.DelState, newData.Version, newData.Id)
|
||||
return session.ExecCtx(ctx, query, newData.ProductId, newData.Price, newData.ShowPrice, newData.UserId, newData.AgentId, newData.LinkIdentifier, newData.DeleteTime, newData.DelState, newData.Version, newData.Id)
|
||||
}
|
||||
return conn.ExecCtx(ctx, query, newData.ProductId, newData.Price, newData.UserId, newData.AgentId, newData.LinkIdentifier, newData.DeleteTime, newData.DelState, newData.Version, newData.Id)
|
||||
return conn.ExecCtx(ctx, query, newData.ProductId, newData.Price, newData.ShowPrice, newData.UserId, newData.AgentId, newData.LinkIdentifier, newData.DeleteTime, newData.DelState, newData.Version, newData.Id)
|
||||
}, yccAgentLinkIdKey, yccAgentLinkLinkIdentifierKey)
|
||||
}
|
||||
|
||||
@ -155,14 +156,14 @@ func (m *defaultAgentLinkModel) UpdateWithVersion(ctx context.Context, session s
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
yccAgentLinkIdKey := fmt.Sprintf("%s%v", cacheyccAgentLinkIdPrefix, data.Id)
|
||||
yccAgentLinkLinkIdentifierKey := fmt.Sprintf("%s%v", cacheyccAgentLinkLinkIdentifierPrefix, data.LinkIdentifier)
|
||||
yccAgentLinkIdKey := fmt.Sprintf("%s%v", cacheYccAgentLinkIdPrefix, data.Id)
|
||||
yccAgentLinkLinkIdentifierKey := fmt.Sprintf("%s%v", cacheYccAgentLinkLinkIdentifierPrefix, data.LinkIdentifier)
|
||||
sqlResult, err = m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
|
||||
query := fmt.Sprintf("update %s set %s where `id` = ? and version = ? ", m.table, agentLinkRowsWithPlaceHolder)
|
||||
if session != nil {
|
||||
return session.ExecCtx(ctx, query, newData.ProductId, newData.Price, newData.UserId, newData.AgentId, newData.LinkIdentifier, newData.DeleteTime, newData.DelState, newData.Version, newData.Id, oldVersion)
|
||||
return session.ExecCtx(ctx, query, newData.ProductId, newData.Price, newData.ShowPrice, newData.UserId, newData.AgentId, newData.LinkIdentifier, newData.DeleteTime, newData.DelState, newData.Version, newData.Id, oldVersion)
|
||||
}
|
||||
return conn.ExecCtx(ctx, query, newData.ProductId, newData.Price, newData.UserId, newData.AgentId, newData.LinkIdentifier, newData.DeleteTime, newData.DelState, newData.Version, newData.Id, oldVersion)
|
||||
return conn.ExecCtx(ctx, query, newData.ProductId, newData.Price, newData.ShowPrice, newData.UserId, newData.AgentId, newData.LinkIdentifier, newData.DeleteTime, newData.DelState, newData.Version, newData.Id, oldVersion)
|
||||
}, yccAgentLinkIdKey, yccAgentLinkLinkIdentifierKey)
|
||||
if err != nil {
|
||||
return err
|
||||
@ -386,8 +387,8 @@ func (m *defaultAgentLinkModel) Delete(ctx context.Context, session sqlx.Session
|
||||
return err
|
||||
}
|
||||
|
||||
yccAgentLinkIdKey := fmt.Sprintf("%s%v", cacheyccAgentLinkIdPrefix, id)
|
||||
yccAgentLinkLinkIdentifierKey := fmt.Sprintf("%s%v", cacheyccAgentLinkLinkIdentifierPrefix, data.LinkIdentifier)
|
||||
yccAgentLinkIdKey := fmt.Sprintf("%s%v", cacheYccAgentLinkIdPrefix, id)
|
||||
yccAgentLinkLinkIdentifierKey := fmt.Sprintf("%s%v", cacheYccAgentLinkLinkIdentifierPrefix, data.LinkIdentifier)
|
||||
_, err = m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
|
||||
query := fmt.Sprintf("delete from %s where `id` = ?", m.table)
|
||||
if session != nil {
|
||||
@ -398,7 +399,7 @@ func (m *defaultAgentLinkModel) Delete(ctx context.Context, session sqlx.Session
|
||||
return err
|
||||
}
|
||||
func (m *defaultAgentLinkModel) formatPrimary(primary interface{}) string {
|
||||
return fmt.Sprintf("%s%v", cacheyccAgentLinkIdPrefix, primary)
|
||||
return fmt.Sprintf("%s%v", cacheYccAgentLinkIdPrefix, primary)
|
||||
}
|
||||
func (m *defaultAgentLinkModel) queryPrimary(ctx context.Context, conn sqlx.SqlConn, v, primary interface{}) error {
|
||||
query := fmt.Sprintf("select %s from %s where `id` = ? and del_state = ? limit 1", agentLinkRows, m.table)
|
||||
|
@ -13,7 +13,7 @@ $tables = @(
|
||||
# "agent_closure",
|
||||
# "agent_commission",
|
||||
# "agent_commission_deduction",
|
||||
# "agent_link",
|
||||
"agent_link"
|
||||
# "agent_membership_config",
|
||||
# "agent_membership_recharge_order"
|
||||
# "agent_membership_user_config",
|
||||
@ -36,7 +36,7 @@ $tables = @(
|
||||
# "query_cleanup_config"
|
||||
# "user"
|
||||
# "user_auth"
|
||||
"user_temp"
|
||||
# "user_temp"
|
||||
# "example"
|
||||
# "admin_user"
|
||||
# "admin_user_role"
|
||||
|
Loading…
Reference in New Issue
Block a user