Files
izyim/app/Classes/ControllersLogic/Orders/CreateOrder.php
T
omair saleh 8a28eb1790 Revert "Merge branch 'dashboardReport' into 'master'"
This reverts merge request !5
2019-03-19 09:57:38 +00:00

36 lines
1.0 KiB
PHP

<?php
namespace App\Classes\ControllersLogic\Orders;
use App\Classes\Constants;
use App\Classes\Modules\Orders\Steps\GenerateOrderSteps;
use App\Classes\Modules\Steps\ModularStep;
use App\Models\Order;
use Illuminate\Http\Request;
class CreateOrder
{
public function execute(String $companyId, Request $request){
$order = new Order;
$order->company_id = $companyId;
$order->warehouse_id = $request->input('warehouse_id');
$order->marking = $request->input('marking');
$order->current_step = Constants::ORDER_PROCESSING_STEP;
if($order->save()){
// Generate Order Steps
$modularStep = new ModularStep();
$orderSteps = (new GenerateOrderSteps([$modularStep->warehouseModule($order->warehouse_id !== null)]))->getSteps()->toArray();
$order->orderSteps()->createMany($orderSteps);
// confirm order
return (new UpdateOrderStep())->execute($order->id, $request);
}
return false;
}
}