This commit is contained in:
richboo111
2022-07-28 14:10:39 +08:00
parent 5933a585cd
commit c5e0474fd6

View File

@@ -161,31 +161,34 @@ func PayByBalance(ctx *jxcontext.Context, orderID string, restPrice, payType int
}
orderInfo.Status = AlreadyPay
}
if restPrice != 0 {
//需支付部分
//restPrice := orderInfo.PayPrice - userBill.AccountBalance
globals.SugarLogger.Debug("进入混合支付部分")
orderInfo.PayPrice = restPrice
_, err := Pay(ctx, orderInfo.OrderID, payType, vendorPayType, appID)
if err != nil {
return "微信支付失败:", err
}
//支付成功后修改余额为0
if err := dao.UpdateUserBill(orderInfo.UserID, 0); err != nil {
globals.SugarLogger.Debug("支付后修改余额失败")
dao.Rollback(db, txDB)
return "余额修改失败:", err
}
//增加一条用户账单
globals.SugarLogger.Debug("开始创建用户账单")
if err = financial.AddBillExpend(txDB, userBill.BillID, model.BillTypePayByAccountBalance, orderInfo.PayPrice, 0); err != nil {
globals.SugarLogger.Debug("创建账单失败")
dao.Rollback(db, txDB)
return "创建账单失败", err
}
return "混合支付成功", err
}
}
if restPrice != 0 {
//需支付部分
//restPrice := orderInfo.PayPrice - userBill.AccountBalance
globals.SugarLogger.Debug("进入混合支付部分")
orderInfo.PayPrice = restPrice
globals.SugarLogger.Debug("orderInfo.PayPrice=================", orderInfo.PayPrice)
_, err := Pay(ctx, orderInfo.OrderID, payType, vendorPayType, appID)
globals.SugarLogger.Debug("err=================", err)
if err != nil {
return "微信支付失败:", err
}
//支付成功后修改余额为0
if err := dao.UpdateUserBill(orderInfo.UserID, 0); err != nil {
globals.SugarLogger.Debug("支付后修改余额失败")
dao.Rollback(db, txDB)
return "余额修改失败:", err
}
//增加一条用户账单
globals.SugarLogger.Debug("开始创建用户账单")
if err = financial.AddBillExpend(txDB, userBill.BillID, model.BillTypePayByAccountBalance, orderInfo.PayPrice, 0); err != nil {
globals.SugarLogger.Debug("创建账单失败")
dao.Rollback(db, txDB)
return "创建账单失败", err
}
return "混合支付成功", err
}
dao.Commit(db, txDB)
}
return "", err