You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

139 lines
4.2 KiB
Go

package main
import (
"encoding/json"
"flag"
"fmt"
"github.com/gin-gonic/gin"
"gold-shop/global"
"gold-shop/initialize"
"gold-shop/request"
"gold-shop/route"
"gold-shop/utils"
"gold-shop/utils/tlpay"
"gold-shop/utils/tlpay/notify"
"net/url"
)
func main() {
initial()
//testVerify()
//runServer()
runServerInWindows()
}
func initial() {
var configFilePath string
flag.StringVar(&configFilePath, "config", "./config.yaml", "配置文件")
flag.Parse()
global.Config = initialize.InitConfig(configFilePath)
global.DB = initialize.InitDB(global.Config)
global.Redis = initialize.InitRedis(global.Config)
}
/*func runServer() {
r := gin.Default()
s := &http.Server{
Addr: ":8080",
Handler: r,
ReadTimeout: 10 * time.Second,
WriteTimeout: 10 * time.Second,
MaxHeaderBytes: 1 << 20,
}
route.Initial(r)
err := endless.ListenAndServe(":"+global.Config.Server.Port, s.Handler)
if err != nil {
panic(err)
}
}*/
func runServerInWindows() {
r := gin.Default()
route.Initial(r)
r.Run(":9090")
}
func payOrder1() {
params := url.Values{}
params.Set("service", "pay.order")
params.Set("apikey", "00014005")
params.Set("money", "0.01")
params.Set("nonce_str", "slfksldfs22dfsf")
//params.Set("sign", "")
params.Set("auth_token", "555555")
//params.Set("mch_orderid", "")
//params.Set("mid", "")
//params.Set("guid", "")
params.Set("remarks", "tst")
sign := utils.Sign(params, "punr8ucu")
params.Set("sign", sign)
fmt.Println(params.Encode())
utils.Post("http://api2uat.lfwin.com/payapi/cash/pay_order", params)
}
func payOrderCommon() {
params := url.Values{}
params.Set("service", "comm.js.pay")
params.Set("apikey", "00014005")
params.Set("money", "0.01")
params.Set("sub_appid", "wxb1bec7d809e7cf40")
params.Set("sub_openid", "ohyVV0v4UBc63GL8D8nlEL0UO5vE")
params.Set("nonce_str", "slfksldfs22dfsf")
//params.Set("sign", "")
params.Set("mch_orderid", "444444444")
//params.Set("mch_orderid", "")
//params.Set("notify_url", "")
//params.Set("guid", "")
params.Set("remarks", "tst")
sign := utils.Sign(params, "punr8ucu")
params.Set("sign", sign)
fmt.Println(params.Encode())
utils.Post("http://api2.lfwin.com/payapi/mini/wxpay", params)
}
func payOrder2() {
params := url.Values{}
params.Set("grant_type", "client_credentials")
utils.Post1("https://api.paypal.com/v1/oauth2/token", params)
}
func payOrder3() {
amount := request.Amount{
CurrencyCode: "USD",
Value: "0.01",
}
purchaseUnit := request.PurchaseUnit{
Amount: amount,
Description: "test",
CustomId: 1,
}
r := request.CheckOutOrderRequest{
Intent: "CAPTURE",
PurchaseUnits: []request.PurchaseUnit{
purchaseUnit,
},
ApplicationContext: request.ApplicationContext{
CancelUrl: "https://www.baidu.com",
ReturnUrl: "https://www.baidu.com",
},
}
body, err := json.Marshal(r)
if err != nil {
panic(err)
}
token := "A21AAPb6qISsbMc4lPtdW4imLL13_m0zH1n8CQ_zL-PQgwvaj1g6tM86GqBBAy1NL55KKDTbbuyMDplzDsk8-rCWzNKPxB2-w"
fmt.Println(string(body))
utils.Post2("https://api.paypal.com/v2/checkout/orders", string(body), token)
}
func testVerify() {
str := "{\"cusid\":\"6603910521126XB\",\"appid\":\"00307595\",\"outTrxid\":\"2024051323201201\",\"trxcode\":\"VSP301\",\"trxid\":\"240513117804146702\",\"initamt\":\"10\",\"trxamt\":\"10\",\"trxdate\":\"20240513\",\"paytime\":\"20240513232054\",\"chnltrxid\":\"\",\"trxstatus\":\"0000\",\"termno\":\"\",\"termbatchid\":\"\",\"termtraceno\":\"0\",\"termauthno\":\"0513030178146702\",\"termrefnum\":\"2405132301010100017804146702\",\"trxreserved\":\"充值\",\"srctrxid\":\"\",\"cusorderid\":\"2024051323201201\",\"acct\":\"6226631705801444\",\"fee\":\"0\",\"cmid\":\"\",\"chnlid\":\"\",\"chnldata\":\"\",\"accttype\":\"00\",\"bankcode\":\"03030000\",\"logonid\":\"\",\"signtype\":\"RSA\",\"sign\":\"bQlu7ErUyYhmk5Atv7RWcqAnD1B7Ls0UwAaSJSXn7vJkTsl2C0NZ8pXYPpXeVxrZY7D+YWoUkHTSmtZH5V4qRtzlWDZSdOE8T3eeEs54tibr5ZUg6UuhbunUrznyTLRKsof+BvLjDp+4bYCG1+q/mesAXDOqA1fHXkc1jDvvGdQ=\"}"
req := notify.PayAgreeNotify{}
err := json.Unmarshal([]byte(str), &req)
fmt.Println("err1", err)
params, err := utils.StructToURLValues(req)
fmt.Println("err2", err)
err = tlpay.TLPay.Verify(params)
fmt.Println("err3", err)
}