97 lines
2.0 KiB
Go
Raw Permalink Normal View History

2019-04-22 02:59:20 +00:00
package http
import (
api "go-common/app/interface/main/ugcpay/api/http"
"go-common/app/interface/main/ugcpay/model"
bm "go-common/library/net/http/blademaster"
)
func tradeCreate(ctx *bm.Context) {
var (
err error
arg = &api.ArgTradeCreate{}
resp = &api.RespTradeCreate{}
mid, _ = ctx.Get("mid")
platform = ctx.Request.FormValue("platform")
)
if err = ctx.Bind(arg); err != nil {
return
}
if resp.OrderID, resp.PayData, err = srv.TradeCreate(ctx, mid.(int64), platform, arg.OID, arg.OType, arg.Currency); err != nil {
ctx.JSON(nil, err)
return
}
ctx.JSON(resp, err)
}
func tradeQuery(ctx *bm.Context) {
var (
err error
arg = &api.ArgTradeOrder{}
resp *api.RespTradeOrder
order *model.TradeOrder
)
if err = ctx.Bind(arg); err != nil {
return
}
if order, err = srv.TradeQuery(ctx, arg.OrderID); err != nil {
ctx.JSON(nil, err)
return
}
resp = &api.RespTradeOrder{
OrderID: order.OrderID,
MID: order.MID,
Biz: order.Biz,
Platform: order.Platform,
OID: order.OID,
OType: order.OType,
Fee: order.Fee,
Currency: order.Currency,
PayID: order.PayID,
State: order.State,
Reason: order.Reason,
}
ctx.JSON(resp, err)
}
func tradeConfirm(ctx *bm.Context) {
var (
err error
arg = &api.ArgTradeOrder{}
resp *api.RespTradeOrder
order *model.TradeOrder
)
if err = ctx.Bind(arg); err != nil {
return
}
if order, err = srv.TradeConfirm(ctx, arg.OrderID); err != nil {
ctx.JSON(nil, err)
return
}
resp = &api.RespTradeOrder{
OrderID: order.OrderID,
MID: order.MID,
Biz: order.Biz,
Platform: order.Platform,
OID: order.OID,
OType: order.OType,
Fee: order.Fee,
Currency: order.Currency,
PayID: order.PayID,
State: order.State,
Reason: order.Reason,
}
ctx.JSON(resp, err)
}
func tradeCancel(ctx *bm.Context) {
var (
err error
arg = &api.ArgTradeOrder{}
)
if err = ctx.Bind(arg); err != nil {
return
}
ctx.JSON(nil, srv.TradeCancel(ctx, arg.OrderID))
}