value('mer_money'); $where=['mer_id'=>$merchant['mer_id']]; if($is_check==1){ $where[]=['is_check','=',1]; }elseif($is_check==0){ $where[]=['is_check','=',0]; } $bank_list = MerchantBank::where($where)->select()->each(function ($data) { $bank_info = Bank::where('id', $data['bank_id'])->findOrEmpty(); $data['bank_name'] = !$bank_info->isEmpty() ? $bank_info['name'] : ''; $data['bank_image'] = !$bank_info->isEmpty() ? $bank_info['image'] : ''; return $data; })->toArray(); return [ 'balance' => $mer_money, 'bank_list' => $bank_list ]; } catch (\Exception $e) { self::setError($e->getMessage()); return false; } } /** * 用户提现操作 */ public static function withdraw($params, $merchant) { try { $merchant = Merchant::where('mer_id', $merchant['mer_id'])->find(); if ($params['amount'] > $merchant['mer_money']) { self::setError('提现余额不足'); return false; } $save_data = [ 'mer_id' => $merchant['mer_id'], 'merchant_bank_id' => $params['merchant_bank_id'], 'amount' => $params['amount'], 'is_check' => 0, 'is_arrival' => 0, 'admin_id' => 0, 'create_time' => time(), ]; $merchant->mer_money =bcsub($merchant->mer_money, $params['amount'], 2); $merchant->save(); (new MerchantWithdraw)->save($save_data); return true; } catch (\Exception $e) { self::setError($e->getMessage()); return false; } } /** * 提现信息 */ public static function taking_info($merchant) { try { $total_amount = MerchantWithdraw::where('mer_id', $merchant['mer_id'])->where('is_check', 1)->where('is_arrival', 1)->sum('amount'); $count = MerchantWithdraw::where('mer_id', $merchant['mer_id'])->where('is_check', 1)->where('is_arrival', 1)->count(); return ['total' => $total_amount, 'count' => $count]; } catch (\Exception $e) { self::setError($e->getMessage()); return false; } } }