fix(model): centralize row locking in transactional flows
This commit is contained in:
+1
-1
@@ -456,7 +456,7 @@ func (user *User) TransferAffQuotaToQuota(quota int) error {
|
||||
defer tx.Rollback() // 确保在函数退出时事务能回滚
|
||||
|
||||
// 加锁查询用户以确保数据一致性
|
||||
err := tx.Set("gorm:query_option", "FOR UPDATE").First(&user, user.Id).Error
|
||||
err := lockForUpdate(tx).First(&user, user.Id).Error
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user