mirror of
				https://github.com/v2board/v2board.git
				synced 2025-10-31 09:21:46 +08:00 
			
		
		
		
	transfer and withdraw
This commit is contained in:
		| @@ -4,6 +4,7 @@ namespace App\Http\Controllers\User; | ||||
|  | ||||
| use App\Http\Controllers\Controller; | ||||
| use App\Http\Requests\User\TicketSave; | ||||
| use App\Http\Requests\User\TicketWithdraw; | ||||
| use Illuminate\Http\Request; | ||||
| use App\Models\Ticket; | ||||
| use App\Models\TicketMessage; | ||||
| @@ -144,4 +145,40 @@ class TicketController extends Controller | ||||
|             ->orderBy('id', 'DESC') | ||||
|             ->first(); | ||||
|     } | ||||
|  | ||||
|     public function withdraw(TicketWithdraw $request) | ||||
|     { | ||||
|         DB::beginTransaction(); | ||||
|         $subject = '[提现申请]本工单由系统发出'; | ||||
|         $ticket = Ticket::create([ | ||||
|             'subject' => $subject, | ||||
|             'level' => 2, | ||||
|             'user_id' => $request->session()->get('id'), | ||||
|             'last_reply_user_id' => $request->session()->get('id') | ||||
|         ]); | ||||
|         if (!$ticket) { | ||||
|             DB::rollback(); | ||||
|             abort(500, '工单创建失败'); | ||||
|         } | ||||
|         $methodText = [ | ||||
|             'alipay' => '支付宝', | ||||
|             'paypal' => '贝宝(Paypal)', | ||||
|             'usdt' => 'USDT', | ||||
|             'btc' => '比特币' | ||||
|         ]; | ||||
|         $message = "提现方式:{$methodText[$request->input('withdraw_method')]}\r\n提现账号:{$request->input('withdraw_account')}\r\n"; | ||||
|         $ticketMessage = TicketMessage::create([ | ||||
|             'user_id' => $request->session()->get('id'), | ||||
|             'ticket_id' => $ticket->id, | ||||
|             'message' => $message | ||||
|         ]); | ||||
|         if (!$ticketMessage) { | ||||
|             DB::rollback(); | ||||
|             abort(500, '工单创建失败'); | ||||
|         } | ||||
|         DB::commit(); | ||||
|         return response([ | ||||
|             'data' => true | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -137,4 +137,26 @@ class UserController extends Controller | ||||
|             'data' => true | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
|     public function transfer(Request $request) | ||||
|     { | ||||
|         $user = User::find($request->session()->get('id')); | ||||
|         if (!$user) { | ||||
|             abort(500, '该用户不存在'); | ||||
|         } | ||||
|         if ($request->input('transfer_amount') <= 0) { | ||||
|             abort(500, '参数错误'); | ||||
|         } | ||||
|         if ($request->input('transfer_amount') > $user->commission_balance) { | ||||
|             abort(500, '推广佣金余额不足'); | ||||
|         } | ||||
|         $user->commission_balance = $user->commission_balance - $request->input('transfer_amount'); | ||||
|         $user->balance = $user->balance + $request->input('transfer_amount'); | ||||
|         if (!$user->save()) { | ||||
|             abort(500, '划转失败'); | ||||
|         } | ||||
|         return response([ | ||||
|             'data' => true | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user