perf(user): 优化用户资金操作逻辑
- 在 UserLogic 中,将用户资金的增加和减少操作从查询后更新改为直接更新 - 使用 where 条件更新用户 purchase_funds 和 now_money 字段,提高效率 - 移除了不必要的对象加载和 save 方法调用,简化了代码结构
This commit is contained in:
parent
81f9840993
commit
995a63949d
@ -243,12 +243,10 @@ class UserLogic extends BaseLogic
|
||||
$capitalFlowDao = new CapitalFlowLogic($find, 'user');
|
||||
if ($params['type'] == 1) {
|
||||
$capitalFlowDao->userIncome('system_purchase_add', 'system', 0, $params['purchase_funds'],$params['mark']??'',1);
|
||||
$find->purchase_funds = bcadd($params['purchase_funds'], $find['purchase_funds'], 2);
|
||||
$find->save();
|
||||
User::where(['id' => $params['id']])->update(['purchase_funds' => bcadd($params['purchase_funds'], $find['purchase_funds'], 2)]);
|
||||
} else {
|
||||
$capitalFlowDao->userExpense('system_purchase_dec', 'system', 0, $params['purchase_funds'],$params['mark']??'');
|
||||
$find->purchase_funds = bcsub($find['purchase_funds'],$params['purchase_funds'], 2);
|
||||
$find->save();
|
||||
User::where(['id' => $params['id']])->update(['purchase_funds' =>bcsub($find['purchase_funds'],$params['purchase_funds'], 2)]);
|
||||
}
|
||||
Db::commit();
|
||||
return true;
|
||||
@ -268,12 +266,10 @@ class UserLogic extends BaseLogic
|
||||
$capitalFlowDao = new CapitalFlowLogic($find, 'user');
|
||||
if ($params['type'] == 1) {
|
||||
$capitalFlowDao->userIncome('system_balance_add', 'system', 0, $params['now_money'],$params['mark']??'');
|
||||
$find->now_money = bcadd($params['now_money'], $find['now_money'], 2);
|
||||
$find->save();
|
||||
User::where(['id' => $params['id']])->update(['now_money' => bcadd($params['now_money'], $find['now_money'], 2)]);
|
||||
} else {
|
||||
$capitalFlowDao->userExpense('system_balance_reduce', 'system', 0, $params['now_money'],$params['mark']??'');
|
||||
$find->now_money = bcsub($find['now_money'],$params['now_money'], 2);
|
||||
$find->save();
|
||||
User::where(['id' => $params['id']])->update(['now_money' =>bcsub($find['now_money'],$params['now_money'], 2)]);
|
||||
}
|
||||
Db::commit();
|
||||
return true;
|
||||
|
Loading…
x
Reference in New Issue
Block a user