walletservice/app/Http/Controllers/CommissionController.php

140 lines
4.3 KiB
PHP
Executable File

<?php
namespace App\Http\Controllers;
use App\Models\ConfigWallet;
use App\Models\Network;
use App\Models\NetworksAgent;
use App\Models\Wallet;
use App\Models\WalletTransaction;
use App\Traits\ApiResponser;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Illuminate\Support\Facades\Date;
use Illuminate\Support\Facades\Mail;
class CommissionController extends Controller
{
use ApiResponser;
/**
* 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);
$wallet->balance_princ += $wallet->balance_com;
$wallet->balance_com = 0;
$wallet->save();
return $this->successResponse($wallet);
}
public function sendMail(){
$recipients = ['dietchidjery@gmail.com'];
Mail::mailer('smtp')->raw('Message test.', function ($message) use ($recipients) {
$message->subject('This is a test to see if emails are working');
$message->to($recipients);
});
return $this->successResponse("mail envoye");
}
public function fileUpload(Request $request) {
// if ($request->hasFile('image')) {
// $image = $request->file('image');
// $name = time().'.'.$image->getClientOriginalExtension();
// $destinationPath = storage_path('/storage');
// $image->move($destinationPath, $name);
//
//
// return $this->successResponse("image envoye");
// }
$response = null;
$user = (object) ['image' => ""];
if ($request->hasFile('image')) {
$original_filename = $request->file('image')->getClientOriginalName();
$original_filename_arr = explode('.', $original_filename);
$file_ext = end($original_filename_arr);
$destination_path = './upload/user/';
$image = 'U-' . time() . '.' . $file_ext;
// File info
// $fileName = basename($_FILES["image"]["name"]);
// $imageUploadPath = $uploadPath . $fileName;
// $fileType = pathinfo($imageUploadPath, PATHINFO_EXTENSION);
// Allow certain file formats
$allowTypes = array('jpg','png','jpeg','gif');
if(in_array(strtolower($file_ext), $allowTypes)){
// Image temp source
// $imageTemp = $_FILES["image"]["tmp_name"];
// Compress size and upload image
$compressedImage = $this->compressImage($request->file('image'), '/'. $image, 80);
if($compressedImage){
return $this->successResponse("Image compressed successfully.");
}else{
return $this->errorResponse( "Image compress failed!");
}
}else{
return $this->errorResponse('Sorry, only JPG, JPEG, PNG, & GIF files are allowed to upload.');
}
// if ($request->file('image')->move($destination_path, $image)) {
// $user->image = '/upload/user/' . $image;
// return $this->successResponse($user);
// } else {
// return $this->errorResponse('Cannot upload file');
// }
} else {
return $this->errorResponse('File not found');
}
}
/*
* Custom function to compress image size and
* upload to the server using PHP
*/
function compressImage($source, $destination, $quality) {
// Get image info
$imgInfo = getimagesize($source);
$mime = $imgInfo['mime'];
// Create a new image from file
switch($mime){
case 'image/jpeg':
$image = imagecreatefromjpeg($source);
break;
case 'image/png':
$image = imagecreatefrompng($source);
break;
case 'image/gif':
$image = imagecreatefromgif($source);
break;
default:
$image = imagecreatefromjpeg($source);
}
// Save image
imagejpeg($image, $destination, $quality);
// Return compressed image
return $destination;
}
}