mirror of
https://github.com/kongyuebin1/dongfeng-pay.git
synced 2024-11-15 06:59:20 +08:00
71 lines
1.8 KiB
Go
71 lines
1.8 KiB
Go
package gateway
|
||
|
||
import (
|
||
"gateway/conf"
|
||
"gateway/models/order"
|
||
"gateway/query"
|
||
"gateway/service"
|
||
"github.com/astaxie/beego/logs"
|
||
"github.com/beego/beego/v2/server/web"
|
||
)
|
||
|
||
type OrderController struct {
|
||
web.Controller
|
||
}
|
||
|
||
func (c *OrderController) OrderQuery() {
|
||
bankOrderId := c.GetString("bankOrderId")
|
||
logs.Debug("获取到boss后台的银行id = " + bankOrderId)
|
||
|
||
qy := query.SupplierOrderQueryResult(bankOrderId)
|
||
|
||
if qy {
|
||
c.Ctx.WriteString("success")
|
||
} else {
|
||
c.Ctx.WriteString("fail")
|
||
}
|
||
c.StopRun()
|
||
}
|
||
|
||
func (c *OrderController) OrderUpdate() {
|
||
bankOrderId := c.GetString("bankOrderId")
|
||
solveType := c.GetString("solveType")
|
||
orderInfo := order.GetOrderByBankOrderId(bankOrderId)
|
||
flag := false
|
||
if orderInfo.BankOrderId == "" {
|
||
logs.Error("该订单不存在,bankOrderId=", bankOrderId)
|
||
} else if orderInfo.Status != conf.SUCCESS {
|
||
logs.Notice("该订单没有完成支付,不能进行此操作,bankOrderId = ", bankOrderId)
|
||
} else {
|
||
switch solveType {
|
||
case conf.SUCCESS:
|
||
flag = service.SolvePaySuccess(bankOrderId, orderInfo.FactAmount, orderInfo.BankTransId)
|
||
case conf.FAIL:
|
||
flag = service.SolvePayFail(bankOrderId, orderInfo.BankTransId)
|
||
case conf.FREEZE_AMOUNT:
|
||
//将这笔订单进行冻结
|
||
flag = service.SolveOrderFreeze(bankOrderId)
|
||
case conf.UNFREEZE_AMOUNT:
|
||
//将这笔订单金额解冻
|
||
flag = service.SolveOrderUnfreeze(bankOrderId)
|
||
case conf.REFUND:
|
||
if orderInfo.Status == conf.SUCCESS {
|
||
flag = service.SolveRefund(bankOrderId)
|
||
}
|
||
case conf.ORDERROLL:
|
||
if orderInfo.Status == conf.SUCCESS {
|
||
flag = service.SolveOrderRoll(bankOrderId)
|
||
}
|
||
default:
|
||
logs.Error("不存在这样的处理类型")
|
||
}
|
||
if flag {
|
||
c.Ctx.WriteString(conf.SUCCESS)
|
||
} else {
|
||
c.Ctx.WriteString(conf.FAIL)
|
||
}
|
||
}
|
||
|
||
c.StopRun()
|
||
}
|