f add
This commit is contained in:
@@ -56,6 +56,10 @@ func (l *AdminUpdateAgentWalletBalanceLogic) AdminUpdateAgentWalletBalance(req *
|
||||
|
||||
// 更新余额
|
||||
updateErr := l.svcCtx.AgentWalletModel.Trans(l.ctx, func(transCtx context.Context, session sqlx.Session) error {
|
||||
// 记录变动前的余额
|
||||
balanceBefore := wallet.Balance
|
||||
frozenBalanceBefore := wallet.FrozenBalance
|
||||
|
||||
// 使用版本号更新
|
||||
wallet.Balance = newBalance
|
||||
err := l.svcCtx.AgentWalletModel.UpdateWithVersion(transCtx, session, wallet)
|
||||
@@ -63,9 +67,29 @@ func (l *AdminUpdateAgentWalletBalanceLogic) AdminUpdateAgentWalletBalance(req *
|
||||
return err
|
||||
}
|
||||
|
||||
// TODO: 这里可以添加记录余额变更日志的逻辑
|
||||
// 创建钱包交易流水记录(手动调整)
|
||||
remark := fmt.Sprintf("管理员手动调整余额,金额: %.2f", req.Amount)
|
||||
transErr := l.svcCtx.AgentService.CreateWalletTransaction(
|
||||
transCtx,
|
||||
session,
|
||||
req.AgentId,
|
||||
model.WalletTransactionTypeAdjust,
|
||||
req.Amount, // 变动金额(正数表示增加,负数表示减少)
|
||||
balanceBefore, // 变动前余额
|
||||
wallet.Balance, // 变动后余额
|
||||
frozenBalanceBefore, // 变动前冻结余额
|
||||
wallet.FrozenBalance, // 变动后冻结余额(保持不变)
|
||||
"", // 关联交易ID(无关联)
|
||||
0, // 关联用户ID(无关联)
|
||||
remark, // 备注
|
||||
)
|
||||
if transErr != nil {
|
||||
l.Logger.Errorf("创建代理钱包流水记录失败: %+v", transErr)
|
||||
return transErr
|
||||
}
|
||||
|
||||
l.Logger.Infof("代理钱包余额变更 - AgentId: %d, 原余额: %.2f, 变更金额: %.2f, 新余额: %.2f",
|
||||
req.AgentId, wallet.Balance-req.Amount, req.Amount, newBalance)
|
||||
req.AgentId, balanceBefore, req.Amount, wallet.Balance)
|
||||
|
||||
return nil
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user