package main import ( "context" "encoding/json" "gitea.cdlsxd.cn/sdk/plugin/instance" "gitea.cdlsxd.cn/sdk/plugin/manage" "gitea.cdlsxd.cn/sdk/plugin/proto" "log" ) var alpayRedConf = &manage.Config{ Cmd: "pkg/mac/alipay_redpack.so", Tag: "alipay_redpack", Version: 1, CookieKey: "alipay_redpack", CookieValue: "alipay_redpack", } func getAlpayRedConf() []byte { 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=", } marshal, _ := json.Marshal(c) return marshal } func alipayOrderRedPack() { err := manage.Add(alpayRedConf) if err != nil { log.Fatalln(err) } defer manage.Close() type ProductExtra struct { Wishing string `json:"wishing"` } productExtra := ProductExtra{Wishing: "wishing"} productExtraBytes, err := json.Marshal(productExtra) if err != nil { log.Fatalln(err) } request := &proto.OrderRequest{ Config: config(), Order: &proto.OrderRequest_Order{ OrderNo: "lsxd202406071545141534", Account: "18512869479", Quantity: 1, Amount: 0.01, Extra: []byte(`{"name":"樊波"}`), }, Product: &proto.OrderRequest_Product{ ProductNo: "", Price: 0.01, Extra: productExtraBytes, }, } log.Printf("Order request.Product.Extra:%s", string(request.Product.Extra)) result, err := instance.Order(context.Background(), alpayRedConf.Tag, request) if err != nil { log.Fatalln(err) } log.Printf("Order res:%+v", result) } func alipayQueryRedPack() { err := manage.Add(alpayRedConf) if err != nil { log.Fatalln(err) } defer manage.Close() queryRequest := &proto.QueryRequest{ Config: getAlpayRedConf(), Order: &proto.QueryRequest_Order{ OrderNo: "lsxd202306071545141532", TradeNo: "20230607110070000006320086925897", Account: "", Extra: []byte(``), }, } resQuery, err := instance.Query(context.Background(), alpayRedConf.Tag, queryRequest) if err != nil { log.Fatalln(err) } log.Printf("Query res:%+v", resQuery) }