|
@@ -94,7 +94,7 @@ class Wallet extends Model
|
|
|
//钱包名称
|
|
|
$wallet_name = $this->getwalletname($accountType);
|
|
|
|
|
|
- //检测
|
|
|
+ //检测0
|
|
|
$number = floatval( $number );
|
|
|
if( $number == 0 )
|
|
|
{
|
|
@@ -106,16 +106,20 @@ class Wallet extends Model
|
|
|
return $result;
|
|
|
}
|
|
|
|
|
|
-
|
|
|
- //检测
|
|
|
+ //查询余额
|
|
|
$wallet = Db::name('user_wallet')->lock(true)->where(['user_id'=>$user_id])->find();
|
|
|
- if(!$wallet)
|
|
|
+ if(empty($wallet))
|
|
|
{
|
|
|
$result['msg'] = '不存在的用户';
|
|
|
return $result;
|
|
|
}
|
|
|
|
|
|
- if(bccomp(bcadd($wallet[$accountType], $number), 0) === -1)
|
|
|
+ //之前的余额
|
|
|
+ $wallet_before = $wallet[$accountType];
|
|
|
+
|
|
|
+ //检查是否够扣
|
|
|
+
|
|
|
+ if(bccomp(bcadd($wallet_before, $number), 0) === -1)
|
|
|
{
|
|
|
$result['msg'] = $wallet_name.'余额不足!';
|
|
|
return $result;
|
|
@@ -126,28 +130,28 @@ class Wallet extends Model
|
|
|
$data['user_id'] = $user_id;
|
|
|
$data['log_type'] = $logtype;
|
|
|
$data['money_type'] = $accountType;
|
|
|
- $data['before'] = $wallet[$accountType];
|
|
|
+ $data['before'] = $wallet_before;
|
|
|
$data['change_value'] = $number;
|
|
|
- $data['remain'] = bcadd($wallet[$accountType], $number);
|
|
|
+ $data['remain'] = bcadd($wallet_before, $number);
|
|
|
$data['table'] = $table;
|
|
|
$data['table_id'] = $table_id;
|
|
|
$data['remark'] = $remark;
|
|
|
$data['createtime'] = time();
|
|
|
$data['updatetime'] = time();
|
|
|
|
|
|
- //修改金额
|
|
|
- $rs1 = Db::name('user_wallet')->where(['user_id'=>$user_id])->update([$accountType => $data['remain']]);
|
|
|
-
|
|
|
- /////////////
|
|
|
$log_table = 'user_gold_log';
|
|
|
-
|
|
|
$rs2_id = Db::name($log_table)->insertGetId($data);
|
|
|
|
|
|
+ //修改金额
|
|
|
+ $rs1 = Db::name('user_wallet')->where(['user_id'=>$user_id])->update([$accountType => $data['remain']]);
|
|
|
+
|
|
|
+ //操作数据库失败
|
|
|
if($rs1 === false || $rs2_id === false){
|
|
|
$result['msg'] = '更新财务记录失败!';
|
|
|
return $result;
|
|
|
}
|
|
|
|
|
|
+ //默认成功
|
|
|
$result['status'] = true;
|
|
|
$result['msg'] = '账户余额已更新!';
|
|
|
$result['log_table'] = $log_table;
|
|
@@ -155,7 +159,6 @@ class Wallet extends Model
|
|
|
|
|
|
return $result;
|
|
|
|
|
|
-
|
|
|
}
|
|
|
|
|
|
|