+ Update wallet returned format

This commit is contained in:
DJERY-TOM 2020-04-21 15:07:57 +01:00
parent 35befe4b1c
commit 8e18aabfb2
5 changed files with 40 additions and 24 deletions

View File

@ -56,7 +56,8 @@ class TransactionController extends Controller
{
$frais = $transaction->montant * $config->taux_com_client_depot / 100 ;
if($walletAgent->balance_princ >= ($transaction->montant + $frais + $config->frais_min_banque_depot)){
// Verification faites au niveau du frontend
// if($walletAgent->balance_princ >= ($transaction->montant + $frais + $config->frais_min_banque_depot)){
$response = $client->post('https://ilink-app.com/mobilebackendtest/interacted/MembersAction.php');
$code = $response->getStatusCode();
@ -68,6 +69,7 @@ class TransactionController extends Controller
//dépôt client) et créditer sa carte visa de cette valeur
$banqueCommission = floatval($config->frais_min_banque_depot * $config->part_banque_depot / 100);
$transaction->commission_banque = $banqueCommission;
// 2---> Emmètre via API sécurisé SSL une requête de débit de notre
//compte marchand du (Part de la banque partenaire en %
//pour le dépôtqui sapplique sur les frais minimum) et créditer
@ -85,9 +87,9 @@ class TransactionController extends Controller
$walletHyperviseur->balance_com += $hyperviseurCommission;
}
}else{
return $this->errorResponse('Solde agent inferieur au montant de depot + frais + frais minimun de depot de la banque', Response::HTTP_BAD_REQUEST);
}
// }else{
// return $this->errorResponse('Solde agent inferieur au montant de depot + frais + frais minimun de depot de la banque', Response::HTTP_BAD_REQUEST);
// }
// Procedure de retrait d'argent
}elseif ($transaction->type == 'debit')
@ -104,6 +106,7 @@ class TransactionController extends Controller
//sa carte et créditer notre compte marchand
$banqueCommission = floatval($transaction->montant * $config->part_banque_retrait / 100);
$transaction->commission_banque = $banqueCommission;
// 2---> Emmètre via API sécurisé SSL une requête de débit de notre
//compte marchand du (montant de la transaction multiplié
//par la Part de la banque partenaire en % ) et créditer le
@ -131,6 +134,6 @@ class TransactionController extends Controller
$walletSuperviseur->save();
$walletHyperviseur->save();
$transaction->save();
return $this->successResponse($transaction);
return $this->successResponse($walletAgent);
}
}

View File

@ -25,17 +25,30 @@ class WalletController extends Controller
public function activated($id_agent)
{
$networks = DB::select('SELECT na.network_id ,ne.name as network , countries.name AS country,ne.country_id , wallets.* FROM agents ag
INNER JOIN networks_agents na ON ag.id=na.agent_id INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id INNER JOIN networks ne ON ne.id=na.network_id INNER JOIN countries ON ne.country_id=countries.id LEFT JOIN wallets ON na.id = wallets.id_networkAgent WHERE ag.id= :id AND network_id IN (
$networks = DB::select('SELECT na.network_id ,ne.name as network , countries.name AS country,ne.country_id , w.id, w.balance_princ , w.balance_com, w.created_date, na.id AS id_networkAgent ,cw.taux_com_client_retrait, cw.taux_com_client_depot , cw.frais_min_banque_depot FROM agents ag
INNER JOIN networks_agents na ON ag.id=na.agent_id INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id INNER JOIN networks ne ON ne.id=na.network_id INNER JOIN configWallet cw ON ne.id = cw.id_network
INNER JOIN countries ON ne.country_id=countries.id LEFT JOIN wallets w ON na.id = w.id_networkAgent WHERE ag.id= :id AND network_id IN (
SELECT networks.id FROM networks LEFT JOIN configWallet ON configWallet.id_network = networks.id WHERE status = 1 AND id_network IS NOT NULL)', ['id' => $id_agent]);
return $this->successResponse($this->formatResponse(Response::HTTP_OK,$networks,null));
return $this->successResponse($networks);
}
public function show($id_wallet)
{
$wallet = Wallet::findOrFail($id_wallet);
return $this->successResponse($this->formatResponse(Response::HTTP_OK,$wallet,null));
return $this->successResponse($$wallet);
}
public function create(Request $request)
{
$rules = [
'id_networkAgent'=>'required|integer|min:1'
];
$this->validate($request,$rules);
DB::insert('INSERT INTO wallets (id_networkAgent) VALUES (?);', [$request->id_networkAgent]);
return $this->successResponse('Nouveau wallet ajoute');
}
}

View File

@ -17,7 +17,7 @@ use phpDocumentor\Reflection\Types\Integer;
* @property float $montant
* @property string $numCarte
* @property Carbon expiration_date
* @property int cvv
* @property string commission_banque
* @property string $type
* @property Carbon $date
* @property string $statut
@ -35,7 +35,6 @@ class WalletTransaction extends Model
protected $casts = [
'montant' => 'float',
'cvv' => 'int',
'id_wallet' => 'int'
];
@ -48,7 +47,7 @@ class WalletTransaction extends Model
'montant',
'numCarte',
'expiration_date',
'cvv',
'commission_banque',
'type',
'date',
'statut',
@ -61,22 +60,22 @@ class WalletTransaction extends Model
return $this->belongsTo(Wallet::class, 'id_wallet');
}
public function getTaxeAttribute($value)
{
return ucfirst($value);
}
public function setTaxeAttribute($value)
{
$this->attributes['taxe'] = (int) $value;
}
// public function getTaxeAttribute($value)
// {
// return ucfirst($value);
// }
//
// public function setTaxeAttribute($value)
// {
// $this->attributes['taxe'] = (int) $value;
// }
public function rules()
{
return [
'montant'=> 'required|numeric|min:1',
'numCarte'=>'required|integer',
'cvv'=>'required|integer|min:100|max:999',
'cvv'=>'required|integer|min:100|max:9999',
'expiration_date'=>'required|date_format:m/Y|after_or_equal:today',
'type' =>'required|in:credit,debit',
'id_wallet' => 'required|integer|min:0'

View File

@ -8,7 +8,7 @@ trait ApiResponser
{
public function successResponse($data , $code = Response::HTTP_OK)
{
return response($data , $code)->header('Content-Type', 'application/json');
return response($this->formatResponse($code,$data,null) , $code)->header('Content-Type', 'application/json');
}
public function errorResponse($message , $code)
@ -21,7 +21,7 @@ trait ApiResponser
return response($message ,$code)->header('Content-Type', 'application/json');
}
public function formatResponse(int $status, $response = null , $error = null)
private function formatResponse(int $status, $response = null , $error = null)
{
return ['status' => $status , 'response' => $response , 'error' => $error];
}

View File

@ -22,4 +22,5 @@ $router->post('/virement','CommissionController@virement');
$router->group(['prefix' => '/wallets'] , function () use ($router){
$router->get('{id_agent}/activated', 'WalletController@activated');
$router->get('{id_wallet}', 'WalletController@show');
$router->post('', 'WalletController@create');
});