diff --git a/app/main/api/desc/front/agent.api b/app/main/api/desc/front/agent.api index 4ee0e88..ae2cff3 100644 --- a/app/main/api/desc/front/agent.api +++ b/app/main/api/desc/front/agent.api @@ -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 } ) diff --git a/app/main/api/etc/main.dev.yaml b/app/main/api/etc/main.dev.yaml index 07526d9..c549302 100644 --- a/app/main/api/etc/main.dev.yaml +++ b/app/main/api/etc/main.dev.yaml @@ -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: diff --git a/app/main/api/etc/main.yaml b/app/main/api/etc/main.yaml index e1f96a5..2d330bf 100644 --- a/app/main/api/etc/main.yaml +++ b/app/main/api/etc/main.yaml @@ -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: diff --git a/app/main/api/etc/merchant/apiclient_key.pem b/app/main/api/etc/merchant/apiclient_key.pem index 246c1df..6f6e9c6 100644 --- a/app/main/api/etc/merchant/apiclient_key.pem +++ b/app/main/api/etc/merchant/apiclient_key.pem @@ -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----- diff --git a/app/main/api/etc/merchant/pub_key.pem b/app/main/api/etc/merchant/pub_key.pem index 9356d8d..c273c73 100644 --- a/app/main/api/etc/merchant/pub_key.pem +++ b/app/main/api/etc/merchant/pub_key.pem @@ -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----- diff --git a/app/main/api/internal/config/config.go b/app/main/api/internal/config/config.go index 17a9e4d..c144668 100644 --- a/app/main/api/internal/config/config.go +++ b/app/main/api/internal/config/config.go @@ -63,6 +63,7 @@ type WxpayConfig struct { MchPrivateKeyPath string MchPublicKeyID string MchPublicKeyPath string + MchPlatformRAS string NotifyUrl string RefundNotifyUrl string } diff --git a/app/main/api/internal/logic/agent/generatinglinklogic.go b/app/main/api/internal/logic/agent/generatinglinklogic.go index 7656f70..37a5ac4 100644 --- a/app/main/api/internal/logic/agent/generatinglinklogic.go +++ b/app/main/api/internal/logic/agent/generatinglinklogic.go @@ -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) diff --git a/app/main/api/internal/logic/agent/getlinkdatalogic.go b/app/main/api/internal/logic/agent/getlinkdatalogic.go index 908664e..41f3b7e 100644 --- a/app/main/api/internal/logic/agent/getlinkdatalogic.go +++ b/app/main/api/internal/logic/agent/getlinkdatalogic.go @@ -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 } diff --git a/app/main/api/internal/service/wechatpayService.go b/app/main/api/internal/service/wechatpayService.go index 38f7a30..3ca507d 100644 --- a/app/main/api/internal/service/wechatpayService.go +++ b/app/main/api/internal/service/wechatpayService.go @@ -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 { diff --git a/app/main/api/internal/types/types.go b/app/main/api/internal/types/types.go index 6074a04..4dcfa93 100644 --- a/app/main/api/internal/types/types.go +++ b/app/main/api/internal/types/types.go @@ -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 } diff --git a/app/main/model/agentLinkModel_gen.go b/app/main/model/agentLinkModel_gen.go index 5430d64..5da3f42 100644 --- a/app/main/model/agentLinkModel_gen.go +++ b/app/main/model/agentLinkModel_gen.go @@ -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) diff --git a/deploy/script/gen_models.ps1 b/deploy/script/gen_models.ps1 index f24edb5..878445f 100644 --- a/deploy/script/gen_models.ps1 +++ b/deploy/script/gen_models.ps1 @@ -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"