177 lines
5.0 KiB
PHP
177 lines
5.0 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\API;
|
|
|
|
use App\Contracts\FuelTrackerResourceInterface;
|
|
use App\Contracts\LcardActionLogsInterface;
|
|
use App\FuelTracker;
|
|
use App\Http\Requests\FuelTrackerFormValidation;
|
|
use App\Http\Requests\TopUpFormValidation;
|
|
use Illuminate\Http\Request;
|
|
use App\Http\Controllers\Controller;
|
|
use App\Libraries\ParameterHelper;
|
|
use App\Helpers\HttpStatusCode;
|
|
use App\Http\Resources\TopUpResource;
|
|
use App\Helpers\CurrentUserHelper;
|
|
|
|
class FuelTrackerController extends Controller
|
|
{
|
|
|
|
public $fuel_tracker;
|
|
public $lcard_logs;
|
|
|
|
protected $format;
|
|
const MODULE = 'FUELTRACKER';
|
|
|
|
|
|
public function __construct(HttpStatusCode $httpStatusCode, FuelTrackerResourceInterface $fuel_tracker,LcardActionLogsInterface $lcard_logs)
|
|
{
|
|
$this->lcard_logs = $lcard_logs;
|
|
$this->fuel_tracker = $fuel_tracker;
|
|
$this->format = $httpStatusCode;
|
|
$this->module = "FuelTracker";
|
|
$this->model = "FuelTracker";
|
|
}
|
|
|
|
|
|
/**
|
|
* Display a listing of the resource.
|
|
*
|
|
* @return \Illuminate\Http\Response
|
|
*/
|
|
public function index(Request $request)
|
|
{
|
|
$member_details = CurrentUserHelper::get_currentMember();
|
|
|
|
$list = $this->fuel_tracker->listing($member_details->lcard_id);
|
|
|
|
if(count($list)){
|
|
$this->lcard_logs->log(0 ,self::MODULE,'VIEW','View Fuel Tracker');
|
|
return $this->format->mobile_success('Success',$list);
|
|
|
|
}else{
|
|
return $this->format->mobile_error('Empty');
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Show the form for creating a new resource.
|
|
*
|
|
* @return \Illuminate\Http\Response
|
|
*/
|
|
public function create()
|
|
{
|
|
//
|
|
return "create";
|
|
}
|
|
|
|
/**
|
|
* Store a newly created resource in storage.
|
|
*
|
|
* @param \Illuminate\Http\Request $request
|
|
* @return \Illuminate\Http\Response
|
|
*/
|
|
public function store(FuelTrackerFormValidation $request)
|
|
{
|
|
$member_details = CurrentUserHelper::get_currentMember();
|
|
if($member_details->lcard_id){
|
|
$request->lcard_id = $member_details->lcard_id;
|
|
$return = $this->fuel_tracker->store($request) ? $this->fuel_tracker->store($request) : false;
|
|
$this->lcard_logs->log($return ,self::MODULE,'STORE','Added Fuel Tracker');
|
|
|
|
return $this->format->mobile_success('Success Added',[]);
|
|
}
|
|
|
|
return $this->format->mobile_error('Empty');
|
|
}
|
|
|
|
|
|
/**
|
|
* Display the specified resource.
|
|
*
|
|
* @param int $id
|
|
* @return \Illuminate\Http\Response
|
|
*/
|
|
public function show($uuid)
|
|
{
|
|
$member_details = CurrentUserHelper::get_currentMember();
|
|
|
|
$details = FuelTracker::where(['fueltracker_uuid' => $uuid,'lcard_id' => $member_details->lcard_id, 'is_active' => 1])->first();
|
|
if ($details){
|
|
$this->lcard_logs->log($details->fueltracker_id ,self::MODULE,'VIEW','View Fuel Tracker');
|
|
return $this->format->mobile_success('Success',$details);
|
|
}
|
|
return $this->format->mobile_error('Empty');
|
|
}
|
|
|
|
/**
|
|
* Show the form for editing the specified resource.
|
|
*
|
|
* @param int $id
|
|
* @return \Illuminate\Http\Response
|
|
*/
|
|
public function edit($id)
|
|
{
|
|
//
|
|
return "edit";
|
|
}
|
|
|
|
/**
|
|
* Update the specified resource in storage.
|
|
*
|
|
* @param \Illuminate\Http\Request $request
|
|
* @param int $id
|
|
* @return \Illuminate\Http\Response
|
|
*/
|
|
public function update(FuelTrackerFormValidation $request, $uuid)
|
|
{
|
|
$member_details = CurrentUserHelper::get_currentMember();
|
|
|
|
if ($uuid == null && empty($uuid)) {
|
|
return $this->format->notFound();
|
|
}
|
|
|
|
$request->lcard_id = $member_details->lcard_id;
|
|
$request->fueltracker_uuid = $uuid;
|
|
|
|
$details = $this->fuel_tracker->update($request);
|
|
|
|
if ($details){
|
|
$this->lcard_logs->log($details['fueltracker_id'],self::MODULE,'UPDATE','Update Fuel Tracker');
|
|
return $this->format->mobile_success('Success',$details);
|
|
}
|
|
|
|
return $this->format->mobile_error('Error');
|
|
}
|
|
|
|
/**
|
|
* Remove the specified resource from storage.
|
|
*
|
|
* @param int $id
|
|
* @return \Illuminate\Http\Response
|
|
*/
|
|
public function destroy($uuid)
|
|
{
|
|
$member_details = CurrentUserHelper::get_currentMember();
|
|
$details = $this->fuel_tracker->getByFieldAndLcardId('fueltracker_uuid',$uuid,$member_details->lcard_id);
|
|
|
|
if (!$details){
|
|
return $this->format->mobile_error('not found');
|
|
}
|
|
|
|
if(isset($details['0']))
|
|
{
|
|
$details = $details['0'];
|
|
$fueltrack_id = $this->fuel_tracker->delete($uuid);
|
|
if($fueltrack_id)
|
|
{
|
|
$this->lcard_logs->log($fueltrack_id,self::MODULE,'DELETE','Delete Fuel Tracker');
|
|
return $this->format->mobile_success('Success',null);
|
|
}
|
|
}
|
|
|
|
return $this->format->mobile_error('not found');
|
|
}
|
|
|
|
}
|