This commit is contained in:
邹宗楠
2022-11-24 13:48:52 +08:00
parent 3200ebd799
commit 57d94f82ed
13 changed files with 493 additions and 57 deletions

View File

@@ -271,38 +271,30 @@ func onTLpayFinished(call *tonglianpayapi.CallBackResult) (err error) {
//充值会员 增加微信支付处理业务
if (order.OrderType == 2 || order.OrderType == 5) && call.TrxStatus == tonglianpayapi.TrxStatusSuccess {
if err := OnWXPayFinished(order); err != nil {
return err
}
return OnWXPayFinished(order)
}
// 充值话费
if order.OrderType == 7 && call.TrxStatus == tonglianpayapi.TrxStatusSuccess {
return OnWxPayTelephone(order)
}
if order.OrderType == 3 && call.TrxStatus == tonglianpayapi.TrxStatusSuccess {
globals.SugarLogger.Debug("得到微信回调结果,快递流程开始")
txdb, _ := dao.Begin(db)
defer func() {
if r := recover(); r != nil {
panic(r)
}
}()
globals.SugarLogger.Debug("更新order")
order.TransactionID = call.TrxID
order.Status = 110 //支付成功状态
globals.SugarLogger.Debug("输出赋值后的order.TransactionID", order.TransactionID)
if _, err := dao.UpdateEntityTx(txdb, order, "TransactionID"); err != nil {
if _, err := dao.UpdateEntityTx(txdb, order, "TransactionID", "Status"); err != nil {
dao.Rollback(db, txdb)
return err
}
if _, err := dao.UpdateEntityTx(txdb, order, "Status"); err != nil {
dao.Rollback(db, txdb)
return err
}
globals.SugarLogger.Debug("获取UserVendorOrder")
userOrder := model.UserVendorOrder{LocalWayBill: order.OrderID}
if err := dao.GetEntity(db, &userOrder, "LocalWayBill"); err != nil {
dao.Rollback(db, txdb)
return err
}
globals.SugarLogger.Debug("更新UserVendorOrder")
userOrder.OrderStatus = payStatus
if _, err := dao.UpdateEntityTx(txdb, &userOrder, "OrderStatus"); err != nil {
dao.Rollback(db, txdb)
@@ -310,24 +302,18 @@ func onTLpayFinished(call *tonglianpayapi.CallBackResult) (err error) {
}
//1-余额,2-微信,5-混合
if order.PayMethod == 5 {
globals.SugarLogger.Debug("进入混合支付回调流程")
userBill, err := dao.GetUserBill(db, order.UserID, "")
if err != nil {
return err
}
//创建混合支付账单
totalPrice := order.PayPrice + userBill.AccountBalance
globals.SugarLogger.Debug("totalPrice=================", totalPrice)
globals.SugarLogger.Debug("进入增加mixpay账单")
if err := AddMixPay(txdb, order.OrderID, userBill.AccountBalance, totalPrice, 1); err != nil {
globals.SugarLogger.Debug("增加mixpay账单失败")
dao.Rollback(db, txdb)
return err
}
//余额清空
globals.SugarLogger.Debug("开始清空余额")
if err := dao.UpdateUserBill(order.UserID, 0); err != nil {
globals.SugarLogger.Debug("修改余额失败")
dao.Rollback(db, txdb)
return err
}