plugins/cmd/wechat_redpack.go

78 lines
2.0 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 wechatRedPackConf = &manage.Config{
Cmd: "pkg/mac/wechat_redpack.so",
Tag: "wechat_redpack",
Version: 1,
CookieKey: "wechat_redpack",
CookieValue: "wechat_redpack",
}
func getWechatRedPackConf() []byte {
c := &wechat.Server{
MchID: "1629276485",
MchCertificateSerialNumber: "3C7E21B74C04BE6227A690EB44184F219D763F92",
MchAPIv3Key: "ChengDuBale0123456789qwertyuiopa",
}
marshal, _ := json.Marshal(c)
return marshal
}
func wechatRedPack() {
err := manage.Add(wechatRedPackConf)
if err != nil {
log.Fatalln(err)
}
wechatRedPackQuery()
}
func wechatRedPackOrder() {
req := &proto.OrderRequest{
Config: getWechatRedPackConf(),
Order: &proto.OrderRequest_Order{
OrderNo: "240403164049635931",
Account: "oO3vO5AxRWgTjmMD38FTvnB5Rq6o",
Amount: 0.01,
Quantity: 1,
Extra: []byte(`{"app_id":"wxbfcf9fd93f390c3a", "out_detail_no":"123456789"}`),
},
Product: &proto.OrderRequest_Product{
ProductNo: "",
Extra: []byte(`{"batch_name":"13100720242", "batch_remark":"stock_creator_mchid"}`),
},
}
res, err := instance.Order(context.Background(), wechatRedPackConf.Tag, req)
if err != nil {
log.Fatalln(err)
}
log.Printf("Order res:%+v", res)
}
func wechatRedPackQuery() {
//{status:ING order_no:"240403164049635931" trade_no:"131000508038701499912952024090256259261117" message:"成功"}
queryRequest := &proto.QueryRequest{
Config: getWechatRedPackConf(),
Order: &proto.QueryRequest_Order{
OrderNo: "",
TradeNo: "131000508038701499912952024090256259261117",
Account: "",
Extra: []byte(`{"out_detail_no":"123456789"}`),
},
}
resQuery, err := instance.Query(context.Background(), wechatRedPackConf.Tag, queryRequest)
if err != nil {
log.Fatalln(err)
}
log.Printf("Query res:%+v", resQuery)
}