45 lines
1.2 KiB
PHP
Executable File
45 lines
1.2 KiB
PHP
Executable File
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Models\TransfertCommissionTransaction;
|
|
use App\Models\Wallet;
|
|
use Illuminate\Http\Response;
|
|
|
|
class CommissionController extends Controller
|
|
{
|
|
/**
|
|
* Create a new controller instance.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function __construct()
|
|
{
|
|
//
|
|
}
|
|
|
|
public function virement($id_wallet)
|
|
{
|
|
$wallet = Wallet::findOrFail($id_wallet);
|
|
|
|
if($wallet->balance_com <=0 )
|
|
return $this->errorResponse(trans('messages.empty_com_balance') , Response::HTTP_BAD_REQUEST);
|
|
|
|
$transaction = new TransfertCommissionTransaction();
|
|
$transaction->balance_princ_init = $wallet->balance_princ;
|
|
$transaction->balance_com_init = $wallet->balance_com;
|
|
$wallet->balance_princ += $wallet->balance_com;
|
|
$wallet->balance_com = 0;
|
|
$transaction->balance_princ_final = $wallet->balance_princ;
|
|
$transaction->balance_com_final = $wallet->balance_com;
|
|
$transaction->id_wallet_ag = $wallet->id;
|
|
$transaction->date = $this->getCurrentTime($wallet->networks_agent->network->country_id);
|
|
$wallet->save();
|
|
$transaction->save();
|
|
|
|
return $this->successResponse($wallet);
|
|
|
|
}
|
|
|
|
}
|