add pay
This commit is contained in:
@@ -6,7 +6,6 @@ import (
|
|||||||
bida "git.rosy.net.cn/baseapi/platformapi/q_bida"
|
bida "git.rosy.net.cn/baseapi/platformapi/q_bida"
|
||||||
"git.rosy.net.cn/baseapi/platformapi/tonglianpayapi"
|
"git.rosy.net.cn/baseapi/platformapi/tonglianpayapi"
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxstore/financial"
|
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||||||
"git.rosy.net.cn/jx-callback/business/model"
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
@@ -251,13 +250,27 @@ func CancelWayOrder(ctx *jxcontext.Context, userId string, param *bida.CancelOrd
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return FailCode, err
|
return FailCode, err
|
||||||
}
|
}
|
||||||
|
userBill, err := dao.GetUserBill(db, orderWay.UserID, "")
|
||||||
|
if err != nil {
|
||||||
|
return FailCode, err
|
||||||
|
}
|
||||||
if orderWay.Status == 110 {
|
if orderWay.Status == 110 {
|
||||||
if orderWay.PayMethod == 1 { // 余额支付
|
if orderWay.PayMethod == 1 { // 余额支付
|
||||||
if err := financial.AddBillIncome(txDB, 0, model.BillTypePayByMixPay1, orderWay.PayPrice, 0); err != nil {
|
txDB, _ := dao.Begin(db)
|
||||||
|
defer func() {
|
||||||
|
if r := recover(); r != nil {
|
||||||
|
panic(r)
|
||||||
|
}
|
||||||
|
dao.Commit(db, txDB)
|
||||||
|
}()
|
||||||
|
userBill.AccountBalance += orderWay.PayPrice
|
||||||
|
if _, err := dao.UpdateEntityTx(txDB, userBill, "AccountBalance"); err != nil {
|
||||||
|
dao.Rollback(db, txDB)
|
||||||
return FailCode, err
|
return FailCode, err
|
||||||
}
|
}
|
||||||
order.OrderStatus = model.OrderStatusCancel
|
order.OrderStatus = model.OrderStatusCancel
|
||||||
if _, err := dao.UpdateEntityTx(txDB, order, "OrderStatus"); err != nil {
|
if _, err := dao.UpdateEntityTx(txDB, order, "OrderStatus"); err != nil {
|
||||||
|
dao.Rollback(db, txDB)
|
||||||
return FailCode, err
|
return FailCode, err
|
||||||
}
|
}
|
||||||
// 支付方式为余额支付,则需要修改order/userVendorOrder,修改订单状态,给用户账户价钱,生成一个价钱数据
|
// 支付方式为余额支付,则需要修改order/userVendorOrder,修改订单状态,给用户账户价钱,生成一个价钱数据
|
||||||
@@ -273,9 +286,11 @@ func CancelWayOrder(ctx *jxcontext.Context, userId string, param *bida.CancelOrd
|
|||||||
if orderWay.PayMethod == 5 { //混合支付
|
if orderWay.PayMethod == 5 { //混合支付
|
||||||
//余额增加相应金额
|
//余额增加相应金额
|
||||||
mixPayInfo, err := dao.GetMixPayDetail(orderWay.OrderID)
|
mixPayInfo, err := dao.GetMixPayDetail(orderWay.OrderID)
|
||||||
if err := financial.AddBillIncome(txDB, 0, model.BillTypePayByMixPay1, mixPayInfo[0].BalancePrice, 0); err != nil {
|
userBill.AccountBalance += mixPayInfo[0].BalancePrice
|
||||||
|
if _, err := dao.UpdateEntityTx(txDB, userBill, "AccountBalance"); err != nil {
|
||||||
return FailCode, err
|
return FailCode, err
|
||||||
}
|
}
|
||||||
|
|
||||||
//更新mixPay 状态
|
//更新mixPay 状态
|
||||||
mixPayInfo[0].Status = model.BillMixPayRefund1 //退款状态
|
mixPayInfo[0].Status = model.BillMixPayRefund1 //退款状态
|
||||||
if _, err := dao.UpdateEntityTx(txDB, &mixPayInfo, "Status"); err != nil {
|
if _, err := dao.UpdateEntityTx(txDB, &mixPayInfo, "Status"); err != nil {
|
||||||
|
|||||||
Reference in New Issue
Block a user