|
|
@@ -60,19 +60,36 @@ class UserExtract extends BaseModel
|
|
|
if(!in_array($data['extract_type'],self::$extractType))
|
|
|
return self::setErrorInfo('提现方式不存在');
|
|
|
$userInfo = User::get($userInfo['uid']);
|
|
|
- $extractPrice = $userInfo['brokerage_price'];
|
|
|
- if($extractPrice < 0) return self::setErrorInfo('提现佣金不足'.$data['money']);
|
|
|
- if($data['money'] > $extractPrice) return self::setErrorInfo('提现佣金不足'.$data['money']);
|
|
|
- if($data['money'] <= 0) return self::setErrorInfo('提现佣金大于0');
|
|
|
- $balance = bcsub($userInfo['brokerage_price'],$data['money'],2);
|
|
|
+ switch(intval($data['balance_type']))
|
|
|
+ {
|
|
|
+ case 0:
|
|
|
+ if($data['money'] <= 0) return self::setErrorInfo('提现佣金大于0');
|
|
|
+ $extractPrice = $userInfo['brokerage_price'];
|
|
|
+ if($extractPrice < 0 || $data['money'] > $extractPrice ) return self::setErrorInfo('提现佣金不足'.$data['money']);
|
|
|
+ $field = "brokerage_price";
|
|
|
+ $title = "佣金提现";
|
|
|
+ break;
|
|
|
+ case 1:
|
|
|
+ if($data['money'] <= 0) return self::setErrorInfo('提现余额大于0');
|
|
|
+ $extractPrice = $userInfo['now_money'];
|
|
|
+ if($extractPrice < 0 || $data['money'] > $extractPrice ) return self::setErrorInfo('提现余额不足'.$data['money']);
|
|
|
+ $field = "now_money";
|
|
|
+ $title = "余额提现";
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ $balance = bcsub($userInfo[$field],$data['money'],2);
|
|
|
if($balance < 0) $balance=0;
|
|
|
+ $commission = sys_config('commission');
|
|
|
$insertData = [
|
|
|
'uid' => $userInfo['uid'],
|
|
|
'extract_type' => $data['extract_type'],
|
|
|
'extract_price' => $data['money'],
|
|
|
'add_time' => time(),
|
|
|
'balance' => $balance,
|
|
|
- 'status' => self::AUDIT_STATUS
|
|
|
+ 'status' => self::AUDIT_STATUS,
|
|
|
+ 'commission' => $commission,
|
|
|
+ 'balance_type'=>$data['balance_type'],
|
|
|
+ 'name' => $data['name'],
|
|
|
];
|
|
|
if(isset($data['name']) && strlen(trim($data['name']))) $insertData['real_name'] = $data['name'];
|
|
|
else $insertData['real_name'] = $userInfo['nickname'];
|
|
|
@@ -94,13 +111,18 @@ class UserExtract extends BaseModel
|
|
|
if(!$data['weixin']) return self::setErrorInfo('请输入微信账号');
|
|
|
$mark = '使用微信提现'.$insertData['extract_price'].'元';
|
|
|
}
|
|
|
+ elseif($data['extract_type'] == 'yz')
|
|
|
+ {
|
|
|
+ $mark = '使用悦赚提现'.$insertData['extract_price'].'元';
|
|
|
+ }
|
|
|
self::beginTrans();
|
|
|
try{
|
|
|
$res1 = self::create($insertData);
|
|
|
if(!$res1) return self::setErrorInfo('提现失败');
|
|
|
- $res2 = User::edit(['brokerage_price'=>$balance],$userInfo['uid'],'uid');
|
|
|
- $res3 = UserBill::expend('余额提现',$userInfo['uid'],'now_money','extract',$data['money'],$res1['id'],$balance,$mark);
|
|
|
+ $res2 = User::edit([$field => $balance], $userInfo['uid'], 'uid');
|
|
|
+ $res3 = UserBill::expend($title, $userInfo['uid'], 'now_money', 'extract', $data['money'], $res1['id'], $balance, $mark);
|
|
|
$res = $res2 && $res3;
|
|
|
+
|
|
|
if($res){
|
|
|
self::commitTrans();
|
|
|
try{
|
|
|
@@ -111,6 +133,7 @@ class UserExtract extends BaseModel
|
|
|
return true;
|
|
|
}else return self::setErrorInfo('提现失败!');
|
|
|
}catch (\Exception $e){
|
|
|
+
|
|
|
self::rollbackTrans();
|
|
|
return self::setErrorInfo('提现失败!');
|
|
|
}
|