Я пытался сделать это в приложении laravel, но schedular не работает, поэтому я пытаюсь сделать это в основном php с in laravel, но разобрался с помощью laravel с помощью wget в cron
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Models\Admin\Stock;
use Illuminate\Support\Facades\DB;
use Maatwebsite\Excel\Facades\Excel;
use Carbon\Carbon;
class CroneController extends Controller
{
public function booking_status_3in_hour()//for cron,executing after every one hour
{
$new = Carbon::now()->subHours(1)->toDateTimeString();
// return $new;
// $current_time = Carbon::now()->toDateTimeString();
$data=DB::table('bookings')
->select('bookings.id as b_id', 'stocks.*')
->join('stocks', 'stocks.frame_no', '=', 'bookings.chasis_no')
->where([['stocks.stock_status','=','3'],['stocks.status','=','0']])
->where([['bookings.status','0'],['bookings.created_at','<=',Carbon::now()->subMinutes(10)]])->get();
// return $data;
if($data)
{
foreach ($data as $value)
{
// return $value->id;
DB::table('stocks')
->where('id', $value->id)
->update([
'status'=>'-1']
);
DB::table('bookings')
->where('id', $value->b_id)
->update([
'status'=>'-1',
'cancel_remark'=>'Cancel due to no payment'
]
);
DB::table('stocks')->insert(
array(
'frame_no' => $value->frame_no,
'engine_no' => $value->engine_no,
'free_service_coupen_no' => $value->free_service_coupen_no,
'physical_status' => $value->physical_status,
'model_variant' => $value->model_variant,
'model_name' => $value->model_name,
'product_name' => $value->product_name,
'color' => $value->color,
'manufacturing_date' => $value->manufacturing_date,
'model_code' => $value->model_code,
'color_code' => $value->color_code,
'stock_status' => '0',
'transfer_remarks' => $value->transfer_remarks,
'transfer_time' => $value->transfer_time,
'transfer_type' => $value->transfer_type,
'stock_location' => $value->stock_location,
'created_user' => $value->created_user
)
);
}
// $this->booking canceled
}
}
}
cron
*/5 * * * * wget http://000.000.000.0:000/booking_status_3in_hour