fix: rizhi

This commit is contained in:
周俊耀 2026-02-04 11:26:30 +08:00
parent ef3dd698e5
commit 6ef896b009

View File

@ -118,6 +118,8 @@ func UpdateOrderRecordByOrderNO(orderRecord *model.BundleOrderRecords) (res *bun
if orderRecord.Status == 2 { if orderRecord.Status == 2 {
tempValues := make([]*model.BundleOrderValueAdd, 0) tempValues := make([]*model.BundleOrderValueAdd, 0)
fmt.Println("======================================:")
fmt.Println("tempValues:", tempValues)
err = app.ModuleClients.BundleDB.Model(&model.BundleOrderValueAdd{}). err = app.ModuleClients.BundleDB.Model(&model.BundleOrderValueAdd{}).
Where("order_no = ?", orderRecord.OrderNo). Where("order_no = ?", orderRecord.OrderNo).
Find(&tempValues).Error Find(&tempValues).Error
@ -130,24 +132,24 @@ func UpdateOrderRecordByOrderNO(orderRecord *model.BundleOrderRecords) (res *bun
} }
} }
tempRecord := new(model.BundleOrderRecords) //tempRecord := new(model.BundleOrderRecords)
if err := app.ModuleClients.BundleDB.Where("deleted_at is null and order_no = ?", orderRecord.OrderNo).First(&tempRecord).Error; err != nil { //if err := app.ModuleClients.BundleDB.Where("deleted_at is null and order_no = ?", orderRecord.OrderNo).First(&tempRecord).Error; err != nil {
if errors.Is(err, gorm.ErrRecordNotFound) { // if errors.Is(err, gorm.ErrRecordNotFound) {
return nil, errors.New("订单记录不存在") // return nil, errors.New("订单记录不存在")
} // }
return nil, fmt.Errorf("查询订单失败: %v", err) // return nil, fmt.Errorf("查询订单失败: %v", err)
} //}
if orderRecord.Status == 2 && tempRecord.AmountType == 2 && tempRecord.TotalAmount > 0 { //if orderRecord.Status == 2 && tempRecord.AmountType == 2 && tempRecord.TotalAmount > 0 {
// 当回调支付成功币种是美元且订单金额大于0计算美元手续费订单金额*0.019(四舍五入保留两位小数字)+0.1 // // 当回调支付成功币种是美元且订单金额大于0计算美元手续费订单金额*0.019(四舍五入保留两位小数字)+0.1
amount := decimal.NewFromFloat32(tempRecord.TotalAmount) // amount := decimal.NewFromFloat32(tempRecord.TotalAmount)
rate, _ := decimal.NewFromString("0.019") // rate, _ := decimal.NewFromString("0.019")
fee := amount.Mul(rate) // fee := amount.Mul(rate)
// 4. 四舍五入保留两位小数 // // 4. 四舍五入保留两位小数
feeRounded := fee.Round(2) // feeRounded := fee.Round(2)
addition, _ := decimal.NewFromString("0.1") // addition, _ := decimal.NewFromString("0.1")
result := feeRounded.Add(addition) // result := feeRounded.Add(addition)
valueAdd.HandlingFee = result.String() // valueAdd.HandlingFee = result.String()
} //}
} }
@ -159,6 +161,8 @@ func UpdateOrderRecordByOrderNO(orderRecord *model.BundleOrderRecords) (res *bun
return res, commonErr.ReturnError(err, msg.ErrorUpdateOrderInfo, "更新增值服务支付状态失败: ") return res, commonErr.ReturnError(err, msg.ErrorUpdateOrderInfo, "更新增值服务支付状态失败: ")
} }
// Step 2: 再更新主订单信息(如果存在) // Step 2: 再更新主订单信息(如果存在)
fmt.Println("======================================:")
fmt.Println("orderRecord:", orderRecord)
err = app.ModuleClients.BundleDB.Model(&model.BundleOrderRecords{}). err = app.ModuleClients.BundleDB.Model(&model.BundleOrderRecords{}).
Where("order_no = ?", orderRecord.OrderNo). Where("order_no = ?", orderRecord.OrderNo).
Updates(orderRecord).Error Updates(orderRecord).Error