HEX
Server: Apache/2.4.41 (Amazon) OpenSSL/1.0.2k-fips PHP/5.6.40
System: Linux ip-172-31-40-18 4.14.146-93.123.amzn1.x86_64 #1 SMP Tue Sep 24 00:45:23 UTC 2019 x86_64
User: apache (48)
PHP: 5.6.40
Disabled: NONE
Upload Files
File: //var/www/html/punjabcabs/Original_Backup/app/Http/Controllers/Resource/TripResource.php
<?php

namespace App\Http\Controllers\Resource;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\UserRequests;
use Auth;
use Setting;

class TripResource extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        try {
            $requests = UserRequests::RequestHistory()->paginate(100);
            $user_id = '';
            $provider_id ='';
            return view('admin.request.index', compact('requests','user_id','provider_id'));
        } catch (Exception $e) {
            return back()->with('flash_error','Something Went Wrong!');
        }
    }

    public function Fleetindex()
    {
        try {
            $requests = UserRequests::RequestHistory()
                        ->whereHas('provider', function($query) {
                            $query->where('fleet', Auth::user()->id );
                        })->get();
            $provider_id ='';
            return view('fleet.request.index', compact('requests','provider_id'));
        } catch (Exception $e) {
            return back()->with('flash_error','Something Went Wrong!');
        }
    }

    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function scheduled()
    {
        try{
            $requests = UserRequests::where('status' , 'SCHEDULED')
                        ->with('user','payment','provider')
                        ->get();

            return view('admin.request.scheduled', compact('requests'));
        } catch (Exception $e) {
             return back()->with('flash_error','Something Went Wrong!');
        }
    }

    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function Fleetscheduled()
    {
        try{
            $requests = UserRequests::where('status' , 'SCHEDULED')
                         ->whereHas('provider', function($query) {
                            $query->where('fleet', Auth::user()->id );
                        })
                        ->get();

            return view('fleet.request.scheduled', compact('requests'));
        } catch (Exception $e) {
             return back()->with('flash_error','Something Went Wrong!');
        }
    }
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function requests_row(Request $request){

        $columns = array( 
                            0 =>'id', 
                            1 =>'booking_id',
                            2=> 'user_name',
                            3=> 'provider_name',
                            4=> 'date_time',
                            5=> 'status',
                            6=> 'amount',
                            7=> 'payment_mode',
                            8=> 'payment_status',
                            9=> 'action',
                        );
        if(request()->has('user_id')){
            $requestslist = UserRequests::where('user_requests.user_id',$request->user_id)->RequestHistory();
        }elseif(request()->has('provider_id')){
            $requestslist = UserRequests::where('user_requests.provider_id',$request->provider_id)->RequestHistory();
        }else{
            $requestslist = UserRequests::RequestHistory();
        }

        $totalData = $requestslist->count();
        $totalFiltered = $totalData; 

        $limit = $request->input('length');
        $start = $request->input('start');
        $order = $columns[$request->input('order.0.column')];
        $dir = $request->input('order.0.dir');

        if(empty($request->input('search.value')))
        {            
            $trips = $requestslist->offset($start)
                     ->limit($limit)
                     ->orderBy('id','desc')
                     ->get();
        }
        else {
            $search = $request->input('search.value'); 

            $trips =  $requestslist->where('booking_id','LIKE',"%{$search}%")
                            ->offset($start)
                            ->limit($limit)
                            ->orderBy('id','desc')
                            ->get();

            $totalFiltered = $requestslist->where('booking_id','LIKE',"%{$search}%")
                            ->count();
        }

        $data = array();
        if(!empty($trips))
        {
            foreach ($trips as $index => $trip)
            {
                if($trip->user){
                    if($trip->user->first_name != ''){ $first_name = $trip->user->first_name;}else{$first_name = "";}
                    if($trip->user->last_name != ''){ $last_name = $trip->user->last_name;}else{$last_name = "";}
                }else{
                    $first_name ='Not Found';
                    $last_name ='Not Found';
                }

                if($trip->provider){
                    if($trip->provider->first_name != ''){ $provider_first_name = $trip->provider->first_name;}else{$provider_first_name = "";}
                    if($trip->provider->last_name != ''){ $provider_last_name = $trip->provider->last_name;}else{$provider_last_name = "";}
                }else{
                    $provider_first_name = 'Not Found';
                    $provider_last_name = 'Not Found';
                }

                if($trip->created_at){
                    $date_time ='<span class="text-muted">'.date_formatter($trip->created_at).'</span>';
                }else{
                    $date_time = '-';
                }

                if($trip->payment != ""){
                    $amount = '<span class="text-info">'.currency($trip->payment->total).'</span>';
                }else{
                    $amount = 'N/A';
                }

                if($trip->paid){
                    $paid = 'Paid';
                }else{
                    $paid = 'Not Paid';
                }

                $action = '<div class="btn-group" role="group">
                                <button type="button" class="btn btn-info waves-effect waves-light dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
                                    '.trans("admin.member.action").'
                                </button>
                                <div class="dropdown-menu">
                                    <a href="'.route('admin.requests.show', $trip->id).'" class="dropdown-item">
                                        <i class="fa fa-search"></i> '.trans("admin.member.more_details").'
                                    </a>
                                    <form action="'.route('admin.requests.destroy', $trip->id).'" method="POST">
                                        '.csrf_field().'
                                        '.method_field('DELETE').'
                                        <button type="submit" class="dropdown-item">
                                            <i class="fa fa-trash"></i> '.trans("admin.member.delete").'
                                        </button>
                                    </form>
                                </div>
                            </div>';
            
                $user_name = $first_name.' '.$last_name;
                $provider_name = $provider_first_name.' '.$provider_last_name;
                $nestedData['id'] = $start + 1;
                $nestedData['booking_id'] = $trip->booking_id;
                $nestedData['user_name'] =  $user_name;
                $nestedData['provider_name'] = $provider_name;
                $nestedData['date_time'] = $date_time;
                $nestedData['status'] = $trip->status;
                $nestedData['amount'] = $amount;
                $nestedData['payment_mode'] = $trip->payment_mode;
                $nestedData['payment_status'] = $paid;
                $nestedData['action'] = $action;
                $data[] = $nestedData;
                $start++;
            }
        }
        $json_data = array(
                    "draw"            => intval($request->input('draw')),  
                    "recordsTotal"    => intval($totalData),  
                    "recordsFiltered" => intval($totalFiltered), 
                    "data"            => $data
                    );
            
        echo json_encode($json_data);     

    }

    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function fleetrequests_row(Request $request){

        $columns = array( 
                            0 =>'id', 
                            1 =>'booking_id',
                            2=> 'user_name',
                            3=> 'provider_name',
                            4=> 'date_time',
                            5=> 'status',
                            6=> 'amount',
                            7=> 'payment_mode',
                            8=> 'payment_status',
                            9=> 'action',
                        );
        if(request()->has('provider_id')){
            $requestslist = UserRequests::where('user_requests.provider_id',$request->provider_id)->RequestHistory()->whereHas('provider', function($query) {
                            $query->where('fleet', Auth::user()->id );
                        });
        }else{
            $requestslist = UserRequests::RequestHistory()->whereHas('provider', function($query) {
                            $query->where('fleet', Auth::user()->id );
                        });
        }

        $totalData = $requestslist->count();
        $totalFiltered = $totalData; 

        $limit = $request->input('length');
        $start = $request->input('start');
        $order = $columns[$request->input('order.0.column')];
        $dir = $request->input('order.0.dir');

        if(empty($request->input('search.value')))
        {            
            $trips = $requestslist->offset($start)
                     ->limit($limit)
                     ->orderBy('id','desc')
                     ->get();
        }
        else {
            $search = $request->input('search.value'); 

            $trips =  $requestslist->where('booking_id','LIKE',"%{$search}%")
                            ->offset($start)
                            ->limit($limit)
                            ->orderBy('id','desc')
                            ->get();

            $totalFiltered = $requestslist->where('booking_id','LIKE',"%{$search}%")
                            ->count();
        }

        $data = array();
        if(!empty($trips))
        {
            foreach ($trips as $index => $trip)
            {
                if($trip->user){
                    if($trip->user->first_name != ''){ $first_name = $trip->user->first_name;}else{$first_name = "";}
                    if($trip->user->last_name != ''){ $last_name = $trip->user->last_name;}else{$last_name = "";}
                }else{
                    $first_name ='Not Found';
                    $last_name ='Not Found';
                }

                if($trip->provider){
                    if($trip->provider->first_name != ''){ $provider_first_name = $trip->provider->first_name;}else{$provider_first_name = "";}
                    if($trip->provider->last_name != ''){ $provider_last_name = $trip->provider->last_name;}else{$provider_last_name = "";}
                }else{
                    $provider_first_name = 'Not Found';
                    $provider_last_name = 'Not Found';
                }

                if($trip->created_at){
                    $date_time ='<span class="text-muted">'.date_formatter($trip->created_at).'</span>';
                }else{
                    $date_time = '-';
                }

                if($trip->payment != ""){
                    $amount = '<span class="text-info">'.currency($trip->payment->total).'</span>';
                }else{
                    $amount = 'N/A';
                }

                if($trip->paid){
                    $paid = 'Paid';
                }else{
                    $paid = 'Not Paid';
                }

                $action = '<div class="btn-group" role="group">
                                <button type="button" class="btn btn-info waves-effect waves-light dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
                                    '.trans("admin.member.action").'
                                </button>
                                <div class="dropdown-menu">
                                    <a href="'.route('fleet.requests.show', $trip->id).'" class="dropdown-item">
                                        <i class="fa fa-search"></i> '.trans("admin.member.more_details").'
                                    </a>
                                    <form action="'.route('fleet.requests.destroy', $trip->id).'" method="POST">
                                        '.csrf_field().'
                                        '.method_field('DELETE').'
                                        <button type="submit" class="dropdown-item">
                                            <i class="fa fa-trash"></i> '.trans("admin.member.delete").'
                                        </button>
                                    </form>
                                </div>
                            </div>';
            
                $user_name = $first_name.' '.$last_name;
                $provider_name = $provider_first_name.' '.$provider_last_name;
                $nestedData['id'] = $start + 1;
                $nestedData['booking_id'] = $trip->booking_id;
                $nestedData['user_name'] =  $user_name;
                $nestedData['provider_name'] = $provider_name;
                $nestedData['date_time'] = $date_time;
                $nestedData['status'] = $trip->status;
                $nestedData['amount'] = $amount;
                $nestedData['payment_mode'] = $trip->payment_mode;
                $nestedData['payment_status'] = $paid;
                $nestedData['action'] = $action;
                $data[] = $nestedData;
                $start++;
            }
        }
        $json_data = array(
                    "draw"            => intval($request->input('draw')),  
                    "recordsTotal"    => intval($totalData),  
                    "recordsFiltered" => intval($totalFiltered), 
                    "data"            => $data
                    );
            
        echo json_encode($json_data);     

    }
    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
        //
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {
        
        $this->validate($request, [
                's_latitude' => 'required|numeric',
                'd_latitude' => 'required|numeric',
                's_longitude' => 'required|numeric',
                'd_longitude' => 'required|numeric',
                'service_type' => 'required|numeric|exists:service_types,id',
                'promo_code' => 'exists:promocodes,promo_code',
                'distance' => 'required|numeric',
                'use_wallet' => 'numeric',
                'payment_mode' => 'required|in:CASH,CARD,PAYPAL',
            ]);


    }

    /**
     * Display the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function show($id)
    {
        try {
            $unit = Setting::get('distance_unit','km');
            $request = UserRequests::findOrFail($id);
            return view('admin.request.show', compact('request','unit'));
        } catch (Exception $e) {
             return back()->with('flash_error','Something Went Wrong!');
        }
    }

    public function Fleetshow($id)
    {
        try {
            $unit = Setting::get('distance_unit','km');
            $request = UserRequests::findOrFail($id);
            return view('fleet.request.show', compact('request','unit'));
        } catch (Exception $e) {
             return back()->with('flash_error','Something Went Wrong!');
        }
    }

    public function Accountshow($id)
    {
        try {
            $unit = Setting::get('distance_unit','km');
            $request = UserRequests::findOrFail($id);
            return view('account.request.show', compact('request','unit'));
        } catch (Exception $e) {
             return back()->with('flash_error','Something Went Wrong!');
        }
    }

    /**
     * Show the form for editing the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function edit($id)
    {
        //
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, $id)
    {
        //
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function destroy($id)
    {
        
        try {
            $Request = UserRequests::findOrFail($id);
            $Request->delete();
            return back()->with('flash_success','Request Deleted!');
        } catch (Exception $e) {
            return back()->with('flash_error','Something Went Wrong!');
        }
    }

    public function Fleetdestroy($id)
    {
        try {
            $Request = UserRequests::findOrFail($id);
            $Request->delete();
            return back()->with('flash_success','Request Deleted!');
        } catch (Exception $e) {
            return back()->with('flash_error','Something Went Wrong!');
        }
    }
}