1
This commit is contained in:
@@ -265,17 +265,32 @@ func onTLpayFinished(call *tonglianpayapi.CallBackResult) (err error) {
|
||||
payStatus = model.OrderStatusFailPay
|
||||
}
|
||||
|
||||
if _, err := dao.UpdateEntity(db, order); err != nil {
|
||||
return err
|
||||
}
|
||||
if _, err := dao.UpdateEntity(db, &model.UserVendorOrder{LocalWayBill: order.OrderID, OrderStatus: payStatus}, "OrderStatus"); err != nil {
|
||||
txdb, _ := dao.Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
if _, err := dao.UpdateEntityTx(txdb, order); err != nil {
|
||||
dao.Rollback(db, txdb)
|
||||
return err
|
||||
}
|
||||
|
||||
userOrder := model.UserVendorOrder{LocalWayBill: order.OrderID}
|
||||
if err := dao.GetEntity(db, &userOrder, `LocalWayBill`); err != nil {
|
||||
dao.Rollback(db, txdb)
|
||||
return err
|
||||
}
|
||||
userOrder.OrderStatus = payStatus
|
||||
if _, err := dao.UpdateEntityTx(txdb, &userOrder, "OrderStatus"); err != nil {
|
||||
dao.Rollback(db, txdb)
|
||||
return err
|
||||
}
|
||||
dao.Commit(db, txdb)
|
||||
if call.TrxStatus == tonglianpayapi.TrxStatusSuccess {
|
||||
switch order.OrderType {
|
||||
case model.PayType4Express:
|
||||
err = q_bida.CreateOrder2QBiDa(order.OrderID)
|
||||
err = q_bida.CreateOrder2QBiDa(&userOrder)
|
||||
case model.PayType4Member, model.PayType4Recharge:
|
||||
err = OnPayFinished(order)
|
||||
}
|
||||
|
||||
@@ -325,18 +325,19 @@ func QueryUserOrderList(userId string, expressType, orderStatus int, pageNum, pa
|
||||
}
|
||||
|
||||
// CreateOrder2QBiDa 订单回调成功,且为运费支付时使用该接口
|
||||
func CreateOrder2QBiDa(orderId string) error {
|
||||
// 加载订单
|
||||
order := &model.UserVendorOrder{}
|
||||
sql := `SELECT * FROM user_vendor_order WHERE local_way_bill = ? `
|
||||
if err := dao.GetRow(dao.GetDB(), order, sql, []interface{}{orderId}...); err != nil {
|
||||
return err
|
||||
}
|
||||
func CreateOrder2QBiDa(order *model.UserVendorOrder) error {
|
||||
//// 加载订单
|
||||
//order := &model.UserVendorOrder{}
|
||||
//sql := `SELECT * FROM user_vendor_order WHERE local_way_bill = ? `
|
||||
//if err := dao.GetRow(dao.GetDB(), order, sql, []interface{}{orderId}...); err != nil {
|
||||
// return err
|
||||
//}
|
||||
//
|
||||
//if order.OrderStatus != model.OrderStatusSuccessPay {
|
||||
// globals.SugarLogger.Debug("Callback Success But Order Status Update Fail ....")
|
||||
// return errors.New("Callback Success But Order Status Update Fail ")
|
||||
//}
|
||||
|
||||
if order.OrderStatus != model.OrderStatusSuccessPay {
|
||||
globals.SugarLogger.Debug("Callback Success But Order Status Update Fail ....")
|
||||
return errors.New("Callback Success But Order Status Update Fail ")
|
||||
}
|
||||
// 创建QBIDA订单
|
||||
makeOrder := &bida.MakeOrderReq{
|
||||
PromiseTimeType: order.PromiseTimeType,
|
||||
|
||||
Reference in New Issue
Block a user