From 564529895f16565984e00dd3b976738ef796476c Mon Sep 17 00:00:00 2001 From: Mahesh Sharma Date: Fri, 3 Mar 2023 10:22:36 +0545 Subject: [PATCH] implementing-task-scheduler --- app/Console/Commands/CheckQueue.php | 36 ++++++++++++++++ app/Console/Commands/ProcessQueue.php | 33 +++++++++++++++ app/Console/Kernel.php | 2 +- .../Admin/AppointmentController.php | 19 ++++++--- .../Controllers/AppointmentController.php | 41 ++++++++++++++++--- app/Http/Controllers/HomeController.php | 11 ++--- 6 files changed, 126 insertions(+), 16 deletions(-) create mode 100644 app/Console/Commands/CheckQueue.php create mode 100644 app/Console/Commands/ProcessQueue.php diff --git a/app/Console/Commands/CheckQueue.php b/app/Console/Commands/CheckQueue.php new file mode 100644 index 0000000..8501b28 --- /dev/null +++ b/app/Console/Commands/CheckQueue.php @@ -0,0 +1,36 @@ + 0) { + $this->call('queue:process'); // Call the ProcessQueue command if there is a job in the queue + } + } +} diff --git a/app/Console/Commands/ProcessQueue.php b/app/Console/Commands/ProcessQueue.php new file mode 100644 index 0000000..e644aa5 --- /dev/null +++ b/app/Console/Commands/ProcessQueue.php @@ -0,0 +1,33 @@ +command('inspire')->hourly(); + $schedule->command('queue:check')->everyMinute(); } /** diff --git a/app/Http/Controllers/Admin/AppointmentController.php b/app/Http/Controllers/Admin/AppointmentController.php index 38b2213..e49981d 100644 --- a/app/Http/Controllers/Admin/AppointmentController.php +++ b/app/Http/Controllers/Admin/AppointmentController.php @@ -73,11 +73,10 @@ class AppointmentController extends Controller 'date' => 'required|date', 'start_time' => 'required|date_format:H:i', 'end_time' => 'required|date_format:H:i', - // 'location' => 'required|max:255', - // 'description' => 'required', ]); $start_time = Carbon::createFromFormat('H:i', $request->get('start_time'))->format('H:i A'); $end_time = Carbon::createFromFormat('H:i', $request->get('end_time'))->format('H:i A'); + $appointment = new Appointment([ 'date' => $request->get('date'), 'start_time' => $start_time, @@ -88,8 +87,13 @@ class AppointmentController extends Controller ]); $appointment->save(); + if($request->get('service_type') == "1"){ + $service = 'education'; + }else{ + $service = 'visa'; + } - return redirect($this->redirect)->with('success', 'Appointment has been added'); + return redirect($this->redirect.'/'.$service)->with('success', 'Appointment has been added'); } public function edit($id) @@ -107,7 +111,7 @@ class AppointmentController extends Controller public function update(Request $request, $id) { - dd($request->all()); + $request->validate([ 'date' => 'required|date', 'start_time' => 'required|date_format:H:i', @@ -125,8 +129,13 @@ class AppointmentController extends Controller $appointment->service_type = $request->get('service_type'); $appointment->status = $request->get('status'); $appointment->save(); + if($request->get('service_type') == "1"){ + $service = 'education'; + }else{ + $service = 'visa'; + } - return redirect($this->redirect)->with('success', 'Appointment has been updated'); + return redirect($this->redirect.'/'.$service)->with('success', 'Appointment has been updated'); } public function show($id) diff --git a/app/Http/Controllers/AppointmentController.php b/app/Http/Controllers/AppointmentController.php index 26436ce..1abd9f4 100644 --- a/app/Http/Controllers/AppointmentController.php +++ b/app/Http/Controllers/AppointmentController.php @@ -96,15 +96,46 @@ class AppointmentController extends Controller ), function($message) use ($subject,$email,$name){ - // $subject=($service!= '') ? 'Enquiry for '.$service : 'Contact/Feedback'; - $message->subject($subject); - $message->to($email, $name)->subject($subject); - // $message->cc('extratechweb@gmail.com', 'Extratech')->subject($subject); + // $subject=($service!= '') ? 'Enquiry for '.$service : 'Contact/Feedback'; + $message->subject($subject); + // $message->from('admin@eteducation.com.au', 'Admin'); + $message->to($email, $name)->subject($subject); + // $message->cc('extratechweb@gmail.com', 'Extratech')->subject($subject); // $message->cc('admin@eteducation.com.au', 'Extratech')->subject($subject); }); - + + }); + + dispatch(function() use ($name,$email,$phone,$subject,$formated_date,$appointment) { + + \Mail::send('appointment_confirmed_for_admin', array( + + 'full_name' =>$name, + + 'email' =>$email, + + 'date' => $formated_date, + + 'start_time' => $appointment['start_time'], + + 'end_time' => $appointment['end_time'], + + 'phone' =>$phone, + + 'subject' =>$subject + + ), function($message) use ($subject){ + // $subject=($service!= '') ? 'Enquiry for '.$service : 'Contact/Feedback'; + $message->subject($subject); + // $message->to($email, $name)->subject($subject); + $message->to('mahesh@extratechs.com.au', 'Extratech')->subject($subject); + // $message->cc('admin@eteducation.com.au', 'Extratech')->subject($subject); + + }); + + }); } diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index e1cd665..c258834 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -18,15 +18,16 @@ class HomeController extends Controller } public function runQueueJobs(){ Artisan::call('queue:listen'); - } - public function index(){ + } + public function index(){ + $sliders = Slider::where('status',1)->get(); $testimonials = Testimonial::where('status',1)->get(); $blogs = NewsAndUpdate::where('status',1)->get(); $about_us = AboutUs::where('status',1)->get(); return view('welcome',compact('sliders','testimonials','blogs','about_us')); - } - public function subscribe(Request $request) + } + public function subscribe(Request $request) { $email = $request->email; @@ -50,7 +51,7 @@ class HomeController extends Controller $message->to('admin@eteducation.com.au', 'Et-Visa')->subject($subject); $message->cc('extratechweb@gmail.com', 'Extratech')->subject($subject); $message->cc('suman@extratechs.com.au', 'Extratech')->subject($subject); - + }); return response()->json(['success' => 'Thank You for Subscribing !','status' =>'Ok'],200);