This commit is contained in:
ziming 2025-12-29 16:11:09 +08:00
parent cabcc088fb
commit f544fdf9d4
5 changed files with 42 additions and 22 deletions

View File

@ -18,21 +18,24 @@ var alpayRedConf = &manage.Config{
}
func getAlpayRedConf() []byte {
type Config struct {
AppId string `json:"app_id"`
Prk string `json:"prk"` // 私钥
}
return []byte(`{"prk": "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDbA+YuMp4JUVj6rjzgwGKNXWkEMGX/rinqkfyBZ6B6p8EKz8zgA+ypiJLOixD3GyKnUnAzx4waNRZHfdEu+l57kJFtd/ipfwtJ28aTi7TqtqEpqD+UPY4ourt2CuyCFxWsonS6dczqtTvfAVArTdbGJYY+kNNVR3WiXgGUhkUu8N7vEowU00RUQGNdSVMUs4FX+HlU3RnEoRc/xUhPiaLf0Bm/g9wG96kwyg/TZvkNU7PpMVRdXeLrVORn0qThs3VA4dqondF+O12iC1TK4TKYGzFYczGAUsfuurtDyCc2GMoE+hH2FR8U7amQOVuYZFkutTdqaqukWpFQOr8wLeMzAgMBAAECggEAD715/3v3y6ejA3EeQvDQpGRANeLckcGMlaUkRpCSAf6oawSALuFZUt3T3zAzae7zUJ8mHTKMKR4DmeO68utfevXq3bkvj87nmslGvjfeKrgxYPMMjrTV0KuK6XLjiH3sOtn6FaR9s6iOwvovLs2LT/ZGbZyu84QNOjwTVP9JXZQkBgMItdKf+U3H2Cjp7U/qXBt8/9yzVFklp1g1883DAty0lzmT27dJimGVGaPQ8vNxo81+ZUEJAn6GUTk0K/GwJfhPTU8hh8G90n2LTyskoMjGxQe9lXfCcS9DmWawEQL4WTctPrDYlnS/cjCVMS0KXIFuxRNf6qaMYDeywC8BgQKBgQDyf40dvmw34Rrb46+NLayQ9W5CJI/dYeRajpCjoOomq5QYhbXzUCpVfbtByeGMsg3zN58NNsZGhl5SU0GdEdoOlxCk+2Hey2yQYF4ugQm/dTd68Jgqi3yujigAbNYa1ZhL9t3FqouPY1dGiaxl+DFYdSMIrsVFXh2NbrPyqTk5IQKBgQDnNaH7LCcIUqg9H8Tsls+8GLzP2HwF3hdll8asEsF3K3HX6/Zlp4VnnEcIkAxLRL/L0o5akXrmA18ZwfoSguTPXV9va3G2GgIiJHgcytmGtQVvbpFKuPnCXKz+avxnfO0flJqyYEuHr/40jsGbMkk0Kr52/n3ivXZbBUlT+tkt0wKBgB0qLgSnxEgsMJjFl3V5SsncWrhlwU+02Evz3X1wevjPpe4VFr7+ozjI+F5/MztCpt7bj6t9LPeKbYmlLb0ASqN6k6vj9+9ds97hWDJrnoqCRHvqt8JWKFauDi2O6WksyzZHqIB/dG14WyTGpg9VfEnRPLdsnZksKo26BLZol9NBAoGBAMz7oMNljqlzVtLyMo2q2zuhFuySusoc79NTL4FpE3rK2qCbA5V2YvDL/bIau7uTlRNodmrXZgU84fidIE9/Gsq5tp26vVK8Vj3c5Vxpf1dNcCct+MQtoMjvjzP0uBgsCrKf9lLEytHed1ozYnRsrbgBWWF4GTWH0cG6uxsoX5mfAoGAfYXKZdyRU+Su4y4EnDLMXd320ar7PaeuY8aZU7V6UQEsaOj6H3O8JMEOuBrOVEhAP2EkAC8ayargSXTSOkN97pg88agKDwA6jh4N6TKAK8XMft81YPPliVwZMsAUqihSKQBnKZ7ssHHLGWWWp5vfkyb7Y7dIkZcPzB0X3q/jL58=", "app_id": "2021004100663111"}`)
//type Config struct {
// AppId string `json:"app_id"`
// Prk string `json:"prk"` // 私钥
//}
//c := &Config{
// AppId: "2021004100663111",
// Prk: "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDbA+YuMp4JUVj6rjzgwGKNXWkEMGX/rinqkfyBZ6B6p8EKz8zgA+ypiJLOixD3GyKnUnAzx4waNRZHfdEu+l57kJFtd/ipfwtJ28aTi7TqtqEpqD+UPY4ourt2CuyCFxWsonS6dczqtTvfAVArTdbGJYY+kNNVR3WiXgGUhkUu8N7vEowU00RUQGNdSVMUs4FX+HlU3RnEoRc/xUhPiaLf0Bm/g9wG96kwyg/TZvkNU7PpMVRdXeLrVORn0qThs3VA4dqondF+O12iC1TK4TKYGzFYczGAUsfuurtDyCc2GMoE+hH2FR8U7amQOVuYZFkutTdqaqukWpFQOr8wLeMzAgMBAAECggEAD715/3v3y6ejA3EeQvDQpGRANeLckcGMlaUkRpCSAf6oawSALuFZUt3T3zAzae7zUJ8mHTKMKR4DmeO68utfevXq3bkvj87nmslGvjfeKrgxYPMMjrTV0KuK6XLjiH3sOtn6FaR9s6iOwvovLs2LT/ZGbZyu84QNOjwTVP9JXZQkBgMItdKf+U3H2Cjp7U/qXBt8/9yzVFklp1g1883DAty0lzmT27dJimGVGaPQ8vNxo81+ZUEJAn6GUTk0K/GwJfhPTU8hh8G90n2LTyskoMjGxQe9lXfCcS9DmWawEQL4WTctPrDYlnS/cjCVMS0KXIFuxRNf6qaMYDeywC8BgQKBgQDyf40dvmw34Rrb46+NLayQ9W5CJI/dYeRajpCjoOomq5QYhbXzUCpVfbtByeGMsg3zN58NNsZGhl5SU0GdEdoOlxCk+2Hey2yQYF4ugQm/dTd68Jgqi3yujigAbNYa1ZhL9t3FqouPY1dGiaxl+DFYdSMIrsVFXh2NbrPyqTk5IQKBgQDnNaH7LCcIUqg9H8Tsls+8GLzP2HwF3hdll8asEsF3K3HX6/Zlp4VnnEcIkAxLRL/L0o5akXrmA18ZwfoSguTPXV9va3G2GgIiJHgcytmGtQVvbpFKuPnCXKz+avxnfO0flJqyYEuHr/40jsGbMkk0Kr52/n3ivXZbBUlT+tkt0wKBgB0qLgSnxEgsMJjFl3V5SsncWrhlwU+02Evz3X1wevjPpe4VFr7+ozjI+F5/MztCpt7bj6t9LPeKbYmlLb0ASqN6k6vj9+9ds97hWDJrnoqCRHvqt8JWKFauDi2O6WksyzZHqIB/dG14WyTGpg9VfEnRPLdsnZksKo26BLZol9NBAoGBAMz7oMNljqlzVtLyMo2q2zuhFuySusoc79NTL4FpE3rK2qCbA5V2YvDL/bIau7uTlRNodmrXZgU84fidIE9/Gsq5tp26vVK8Vj3c5Vxpf1dNcCct+MQtoMjvjzP0uBgsCrKf9lLEytHed1ozYnRsrbgBWWF4GTWH0cG6uxsoX5mfAoGAfYXKZdyRU+Su4y4EnDLMXd320ar7PaeuY8aZU7V6UQEsaOj6H3O8JMEOuBrOVEhAP2EkAC8ayargSXTSOkN97pg88agKDwA6jh4N6TKAK8XMft81YPPliVwZMsAUqihSKQBnKZ7ssHHLGWWWp5vfkyb7Y7dIkZcPzB0X3q/jL58=",
//}
// 福建兴旺主体
c := &Config{
AppId: "2021005198621340",
Prk: "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCCNMshouy0vs2zswRtyIc9pfHbAPAflQkQKlmes5+fWa9r0lS7IFmOEM4d0Nb/QRU9Hf2ET5fMXuu6Z5CO22jAq8AhYjL73iqH+xspkFV5qcq2z0QDqfafovKpc0Pa9Ko5peBfYmiyOTkElrU0flL/cYTrLExVC+ypr9kNUpuYQHIPMCgxokzyNFuojExB083xTkD5xzUznVu0vvSEVL4ir/Po/buLZoPr5M6se2Cj1Qn04uixEKq0tBuX5ZPyQRnDAFuLxsNBeNh06Hu3uSq2gvuDHx7pSH5QEpqMbvue9Rk36CZ2YuEm0ZQk1NPyH+wefLDfzouZh9jORDNz/8M9AgMBAAECggEASPEeYseM52yEfAjrkDzoVobiSJfr7SVmoGG5NwjVgUWS2kpIIVRsFwQfE+DssK5bIZPtc/PKzDjYweJGv2D2/Ai7Z3hFq4e4N9laTByJZdDSuTq/lXXfrWpxmq/x8XVi70yXt5e/oygfYwyykqe6A1Qq7DwyvuohOKZEaAxBEjchZxHBMR0VJz0fifByMOKiyO+5EAdsvigcyBnU5qUZ975lQfyxrEzAWCkYXVThVliP/10sqgp2wMjMCc5PbVA0LpYAmwwLk7z33ZFq8lntbZb0AxPzPVBTgTUaQ7lyk1uLKG09vhZE59x1YMNlNjONLv6EibLdhbXN37xu0TOCWQKBgQD6IDrV3Af3mEBR1chI+K+vmgsXRw8g+T+WLDzZ+L3VZzCAGb+vH5+HnGCWMMJU/jLz6iQrLNKrA7c9zfzb+OaCVyASZ1yum4Q9KbjRCGRNX2CjRKqNboDD8iEOAD75A0KnrILw4B4yp0/tRjgkxA0IBVjLKE9UIlwy3pbMHNMAnwKBgQCFQ5mnt6qpcPnAK0PIJZ2koFkOup9yFcRZYiO2cLA3Vor6etf/KmzSlDPgTVS62fU2sHBdmp33lIqzoHlhznzRTeC1sA+4+J8Ur8uFAWGrEdl+2GM0KRqIDetVO8PcFbFPcpjkAnx/w+2cPAdI7vNWGZasVDjdyoOpd7qUFKbiowKBgFgDgVCBlVgdffyN4mUzBPcgmGh/e6ZZrnNUa7EzovD1144sAVRJJ2SbtS0ESU2JCTrlGAcNRbAhpZgc5K4u3kXdDI8NSgKy/IxdIwiDEHBdcG7jGbScvri0eccodQBAknLX9Fd4NYgTcb+HZvgg+IjrALy0GX38fT71LlDyj5j3AoGANFo0OPEseFhLpTTZ8fzlC1F66xBhpx3p/vtQ8FEgyPyUqIYt6K4wBiH2pz159dW+QXfbDMq7GBIg0yRNyyClZExl5Lp/0rjJNgVBvMSoK95dRTmY71rec2iUdO1/qixTddSdP6XCZyb/Z4sliX9l1QNEb/q+RFNUmfTRNW9PiGUCgYEAzQfDCf8CYrT0yd9EI9DgJtitRUOQfTarptxmQcayr14q45jJVUQKrJ19zQQT9X4PHl4W93XQzWMyWrSgcINR7pF/3yUF6/3U6iniwFlXAHtskM0FU6HffmSLVXYALdYBRHP2OGrx3ET5dYdX0Nx8vEpze3Q+gb8KfcIejx4lr5Q=",
}
marshal, _ := json.Marshal(c)
return marshal
//c := &Config{
// AppId: "2021005198621340",
// Prk: "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCCNMshouy0vs2zswRtyIc9pfHbAPAflQkQKlmes5+fWa9r0lS7IFmOEM4d0Nb/QRU9Hf2ET5fMXuu6Z5CO22jAq8AhYjL73iqH+xspkFV5qcq2z0QDqfafovKpc0Pa9Ko5peBfYmiyOTkElrU0flL/cYTrLExVC+ypr9kNUpuYQHIPMCgxokzyNFuojExB083xTkD5xzUznVu0vvSEVL4ir/Po/buLZoPr5M6se2Cj1Qn04uixEKq0tBuX5ZPyQRnDAFuLxsNBeNh06Hu3uSq2gvuDHx7pSH5QEpqMbvue9Rk36CZ2YuEm0ZQk1NPyH+wefLDfzouZh9jORDNz/8M9AgMBAAECggEASPEeYseM52yEfAjrkDzoVobiSJfr7SVmoGG5NwjVgUWS2kpIIVRsFwQfE+DssK5bIZPtc/PKzDjYweJGv2D2/Ai7Z3hFq4e4N9laTByJZdDSuTq/lXXfrWpxmq/x8XVi70yXt5e/oygfYwyykqe6A1Qq7DwyvuohOKZEaAxBEjchZxHBMR0VJz0fifByMOKiyO+5EAdsvigcyBnU5qUZ975lQfyxrEzAWCkYXVThVliP/10sqgp2wMjMCc5PbVA0LpYAmwwLk7z33ZFq8lntbZb0AxPzPVBTgTUaQ7lyk1uLKG09vhZE59x1YMNlNjONLv6EibLdhbXN37xu0TOCWQKBgQD6IDrV3Af3mEBR1chI+K+vmgsXRw8g+T+WLDzZ+L3VZzCAGb+vH5+HnGCWMMJU/jLz6iQrLNKrA7c9zfzb+OaCVyASZ1yum4Q9KbjRCGRNX2CjRKqNboDD8iEOAD75A0KnrILw4B4yp0/tRjgkxA0IBVjLKE9UIlwy3pbMHNMAnwKBgQCFQ5mnt6qpcPnAK0PIJZ2koFkOup9yFcRZYiO2cLA3Vor6etf/KmzSlDPgTVS62fU2sHBdmp33lIqzoHlhznzRTeC1sA+4+J8Ur8uFAWGrEdl+2GM0KRqIDetVO8PcFbFPcpjkAnx/w+2cPAdI7vNWGZasVDjdyoOpd7qUFKbiowKBgFgDgVCBlVgdffyN4mUzBPcgmGh/e6ZZrnNUa7EzovD1144sAVRJJ2SbtS0ESU2JCTrlGAcNRbAhpZgc5K4u3kXdDI8NSgKy/IxdIwiDEHBdcG7jGbScvri0eccodQBAknLX9Fd4NYgTcb+HZvgg+IjrALy0GX38fT71LlDyj5j3AoGANFo0OPEseFhLpTTZ8fzlC1F66xBhpx3p/vtQ8FEgyPyUqIYt6K4wBiH2pz159dW+QXfbDMq7GBIg0yRNyyClZExl5Lp/0rjJNgVBvMSoK95dRTmY71rec2iUdO1/qixTddSdP6XCZyb/Z4sliX9l1QNEb/q+RFNUmfTRNW9PiGUCgYEAzQfDCf8CYrT0yd9EI9DgJtitRUOQfTarptxmQcayr14q45jJVUQKrJ19zQQT9X4PHl4W93XQzWMyWrSgcINR7pF/3yUF6/3U6iniwFlXAHtskM0FU6HffmSLVXYALdYBRHP2OGrx3ET5dYdX0Nx8vEpze3Q+gb8KfcIejx4lr5Q=",
//}
//marshal, _ := json.Marshal(c)
//return marshal
}
func alipayOrderRedPack() {
@ -83,7 +86,9 @@ func alipayQueryRedPack() {
Order: &proto.QueryRequest_Order{
OrderNo: "202411191746471970010022",
TradeNo: "20241119020070011560880008002610",
Account: "",
//OrderNo: "202512290858319250010024",
//TradeNo: "",
Account: "", //
Extra: []byte(``),
},
}

View File

@ -10,9 +10,9 @@ func main() {
//WechatRedPackV2Notify()
//alipayOrderRedPack()
//alipayQueryRedPack()
alipayQueryRedPack()
//zltxQuery()
zltxCardQuery()
//zltxCardQuery()
//zltxCardNotify()
}

View File

@ -21,6 +21,7 @@ const (
queryMethod = "/received"
)
// QiXingWechatRedPackService 启星,不支持幂等
type QiXingWechatRedPackService struct{}
func (s *QiXingWechatRedPackService) Order(ctx context.Context, request *proto.OrderRequest) (resp2 *proto.OrderResponse, respErr error) {

View File

@ -29,6 +29,12 @@ func config() []byte {
OauthKey: "bcee0c6753b2a31c792a91fe9f9f1666",
OauthUrl: "https://utils.85938.cn/utils/v1/wechat/oauth/fjxw",
},
MiniProgram: MiniProgram{
Name: "兴旺专属fl官",
AppId: "wx075c784fe71d4d04",
AppSecret: "5612971815ad7bf731bfec6b993b4128",
EnvVersion: "trial", // envVersion 正式版为"release",体验版为"trial",开发版为"develop",仅在微信外打开时生效。
},
}
marshal, _ := json.Marshal(c)
return marshal
@ -46,7 +52,7 @@ func Test_Order(t *testing.T) {
request := &proto.OrderRequest{
Config: config(),
Order: &proto.OrderRequest_Order{
OrderNo: "lsxd20250929004",
OrderNo: "lsxd20250929005",
Account: "ojbqr6HpeWKFy9Sgdx8yCmmeVJiw",
Quantity: 1,
Amount: 0.3,
@ -75,7 +81,7 @@ func Test_Query(t *testing.T) {
request := &proto.QueryRequest{
Config: config(),
Order: &proto.QueryRequest_Order{
OrderNo: "lsxd20250929003",
OrderNo: "202512251641128290010039",
TradeNo: "",
Account: "",
Extra: []byte(``),

View File

@ -18,14 +18,22 @@ type Official struct {
OauthUrl string `json:"oauth_url"`
}
type MiniProgram struct {
Name string `json:"name"`
AppId string `json:"app_id"`
AppSecret string `json:"app_secret"`
EnvVersion string `json:"env_version"`
}
type Config struct {
Mode vo.Mode `validate:"required" json:"mode"` // 商户名称
NchName string `validate:"required" json:"mch_name"` // 商户名称
AppKey string `validate:"required" json:"app_key"` // appKey密钥
BatchId string `validate:"required" json:"batch_id"` // 批次账号
BasUrl string `validate:"required" json:"base_url"` // 请求地址
NotifyUrl string `validate:"required" json:"notify_url"` // 回调地址
Official Official `validate:"required" json:"official"` // 公众号信息
Mode vo.Mode `validate:"required" json:"mode"` // 商户名称
NchName string `validate:"required" json:"mch_name"` // 商户名称
AppKey string `validate:"required" json:"app_key"` // appKey密钥
BatchId string `validate:"required" json:"batch_id"` // 批次账号
BasUrl string `validate:"required" json:"base_url"` // 请求地址
NotifyUrl string `validate:"required" json:"notify_url"` // 回调地址
Official Official `validate:"required" json:"official"` // 公众号信息
MiniProgram MiniProgram `json:"mini_program"` // 小程序信息
}
func (c *Config) validate() error {