restore composer.json, add mysqli extension

This commit is contained in:
2026-04-15 17:02:52 +05:00
commit 77cf56a348
4317 changed files with 1397107 additions and 0 deletions

50
app/Jobs/Api/Order/Product.php Executable file
View File

@@ -0,0 +1,50 @@
<?php
namespace App\Jobs\Api\Order;
use App\Models\Order;
use App\Http\Requests\Api\Order\Request as OrderRequest;
use App\Models\OrderProducts;
use App\Models\Product as Model;
class Product
{
protected $request;
protected $order;
/**
* Product constructor.
* @param Order $order
* @param OrderRequest $request
*/
public function __construct(Order $order, OrderRequest $request)
{
$this->request = $request;
$this->order = $order;
}
/**
* Execute the job.
*
* @return void
*/
public function handle()
{
foreach ($this->request->getProducts() as $product) {
$row = Model::find($product['id']);
$discount = $row->price_discount ? 100 - $row->price_discount * 100 / $row->price : null;
OrderProducts::create([
'order_id' => $this->order->id,
'product_id' => $product['id'],
'discount' => $discount,
'count' => $product['count'],
'size' => $product['size'],
'color_id' => $product['color_id']
]);
}
}
}

64
app/Jobs/Api/Order/Store.php Executable file
View File

@@ -0,0 +1,64 @@
<?php
namespace App\Jobs\Api\Order;
use App\Models\Currency;
use App\Models\Order;
use Illuminate\Support\Arr;
use App\Http\Requests\Api\Order\Request as OrderRequest;
class Store
{
protected $attr;
/**
* Store constructor.
* @param array $attr
*/
public function __construct(array $attr = [])
{
$this->attr = Arr::only($attr, ['user_id', 'address_id', 'price_total', 'price_delivery', 'shipment_date', 'type_delivery', 'payment_type', 'comment', 'status', 'branch_id', 'price_product', 'payment_status', 'currency']);
}
/**
* @param $user_id
* @param $address_id
* @param OrderRequest $request
* @param $total
* @param $delivery
* @param $status
* @param $product_total
* @param Currency $currency
* @return Store
*/
public static function fromRequest($user_id, $address_id, OrderRequest $request, $total, $delivery, $status, $product_total, Currency $currency)
{
return new static([
'user_id' => $user_id,
'address_id' => $address_id,
'price_total' => $total,
'price_delivery' => $delivery,
'shipment_date' => $request->getShipmentDate(),
'type_delivery' => $request->getTypeDelivery(),
'payment_type' => $request->getPaymentType(),
'comment' => $request->getComment(),
'status' => 0,
'branch_id' => $request->getBranchID(),
'price_product' => $product_total,
'payment_status' => $status,
'currency' => [
'dollar' => $currency->dollar,
'euro' => $currency->euro
]
]);
}
/**
*
*/
public function handle()
{
return Order::create($this->attr);
}
}