|
|
@@ -182,19 +182,62 @@ class BalanceLogsService extends BaseService
|
|
|
public function apply($data)
|
|
|
{
|
|
|
try {
|
|
|
+ $money = $data['money'] ?? 0;
|
|
|
+ $account = $data['account'] ?? '';
|
|
|
+ if($money<=0){
|
|
|
+ return [
|
|
|
+ 'code' => 1,
|
|
|
+ 'msg' => '请输入提现金额'
|
|
|
+ ];
|
|
|
+ }
|
|
|
+
|
|
|
+ if(empty($account)){
|
|
|
+ return [
|
|
|
+ 'code' => 1,
|
|
|
+ 'msg' => '请输入提现账户'
|
|
|
+ ];
|
|
|
+ }
|
|
|
+
|
|
|
+ $storeInfo = StoreModel::where(['user_id'=>$data['user_id']])->select(['id','balance','status'])
|
|
|
+ ->first();
|
|
|
+ $balance = isset($storeInfo['balance'])?$storeInfo['balance'] : 0;
|
|
|
+ $status = isset($storeInfo['status'])?$storeInfo['status'] : 0;
|
|
|
+ if(empty($storeInfo) || $status != 1){
|
|
|
+ return [
|
|
|
+ 'code' => 1,
|
|
|
+ 'msg' => '商家账户不存在或已冻结,请联系客服'
|
|
|
+ ];
|
|
|
+ }
|
|
|
+
|
|
|
+ if($balance<$money){
|
|
|
+ return [
|
|
|
+ 'code' => 1,
|
|
|
+ 'msg' => '商家可提现余额不足'
|
|
|
+ ];
|
|
|
+ }
|
|
|
+
|
|
|
+ // 扣除余额
|
|
|
+ DB::beginTransaction();
|
|
|
+ if(!StoreModel::where(['user_id'=>$data['user_id']])->update(['balance'=>DB::raw("balance - {$money}"),'update_time'=>time()])){
|
|
|
+ DB::rollBack();
|
|
|
+ return [
|
|
|
+ 'code' => 1,
|
|
|
+ 'msg' => '商家可提现余额不足'
|
|
|
+ ];
|
|
|
+ }
|
|
|
+
|
|
|
// 生成订单号
|
|
|
$orderNo = 'BL' . date('YmdHis') . rand(1000, 9999);
|
|
|
-
|
|
|
$record = new BalanceLogModel();
|
|
|
$record->order_no = $orderNo;
|
|
|
$record->user_id = $data['user_id'] ?? 0; // 选择的用户ID
|
|
|
$record->type = $data['type'] ?? 2; // 1-充值,2-提现
|
|
|
$record->account_type = $data['account_type'] ?? 1;
|
|
|
$record->realname = $data['realname'] ?? '';
|
|
|
- $record->money = $data['money'] ?? 0;
|
|
|
+ $record->money = $money;
|
|
|
$record->actual_money = $data['money'] ?? 0; // 默认实际到账等于申请金额
|
|
|
$record->pay_type = $data['pay_type'] ?? 10;
|
|
|
- $record->account = $data['account'] ?? '';
|
|
|
+ $record->account = $account;
|
|
|
$record->account_remark = $data['account_remark'] ?? '';
|
|
|
$record->pay_status = 10; // 10-待支付
|
|
|
$record->status = 1; // 1-待审核
|
|
|
@@ -205,6 +248,7 @@ class BalanceLogsService extends BaseService
|
|
|
|
|
|
$record->save();
|
|
|
|
|
|
+ DB::commit();
|
|
|
return [
|
|
|
'code' => 0,
|
|
|
'msg' => '申请提交成功',
|