plugins/cmd/wechat_cpn.go

76 lines
1.8 KiB
Go

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"
"plugins/utils/wechat"
)
var wechatCpnConf = &manage.Config{
Cmd: "pkg/mac/wechat_cpn.so",
Tag: "alipay_redpack",
Version: 1,
CookieKey: "wechat_cpn",
CookieValue: "wechat_cpn",
}
func getWechatCpnConf() []byte {
c := &wechat.Server{
MchID: "1605446142", // 证书所属商户
MchCertificateSerialNumber: "4D081089DEB385316CBDCB55C070287E4920AC76",
}
marshal, _ := json.Marshal(c)
return marshal
}
func wechatOrderCpn() {
err := manage.Add(wechatCpnConf)
if err != nil {
log.Fatalln(err)
}
defer manage.Close()
request := &proto.OrderRequest{
Config: getWechatCpnConf(),
Order: &proto.OrderRequest_Order{
OrderNo: "202411221528258970010009",
Account: "oknbq5tQyff_vCjjRjCJBElhF1og",
Extra: []byte(`{"app_id":"wx83fd6da8093f55b7","stock_creator_mchid":"1679625521"}`),
},
Product: &proto.OrderRequest_Product{
ProductNo: "19519911",
Extra: []byte(`{}`),
},
}
res, err := instance.Order(context.Background(), alpayRedConf.Tag, request)
if err != nil {
log.Fatalln(err)
}
log.Printf("Order res:%+v", res)
}
func wechatQueryCpn() {
err := manage.Add(wechatCpnConf)
if err != nil {
log.Fatalln(err)
}
defer manage.Close()
queryRequest := &proto.QueryRequest{
Config: getWechatCpnConf(),
Order: &proto.QueryRequest_Order{
OrderNo: "",
TradeNo: "69445765514",
Account: "oO3vO5AxRWgTjmMD38FTvnB5Rq6o",
Extra: []byte(`{"app_id":"wx9ed74283ad25bca1"}`),
},
}
resQuery, err := instance.Query(context.Background(), alpayRedConf.Tag, queryRequest)
if err != nil {
log.Fatalln(err)
}
log.Printf("Query res:%+v", resQuery)
}