Exemplo n.º 1
0
 public function testMethod()
 {
     $pickupDateReminder = config('app.pickup_reminder_days_to_remind');
     $today = Carbon::today('America/Halifax');
     $twoDaysFromNow = Carbon::today('America/Halifax')->addDay($pickupDateReminder);
     $startWorkOrders = WorkOrder::whereDate('start_date', '=', $today)->get();
     $startCount = $startWorkOrders->count();
     $endWorkOrders = WorkOrder::whereDate('end_date', '=', $twoDaysFromNow)->with('product', 'customer')->get();
     $endCount = $endWorkOrders->count();
     $endDueDate = $twoDaysFromNow->toFormattedDateString();
     $viewData = ['todaysDate' => $today->toFormattedDateString(), 'startCount' => $startCount, 'endCount' => $endCount, 'startWorkOrders' => $startWorkOrders, 'endWorkOrders' => $endWorkOrders, 'endDueDate' => $endDueDate, 'pickupDateReminder' => $pickupDateReminder];
     $to = config('app.pickup_reminder_email_to');
     $from = config('app.pickup_reminder_email_from');
     $subject = config('app.pickup_reminder_email_subject');
     $view = config('app.pickup_reminder_email_view');
     Mail::send($view, ['viewdata' => $viewData], function ($message) use($viewData, $to, $from, $subject) {
         $message->from($from);
         $message->to($to);
         $message->subject($subject);
     });
     /*
     return view(config('app.pickup_reminder_email_view'))->with(['todaysDate' => $today->toFormattedDateString(),
                                         'startCount' => $startCount,
                                         'endCount' => $endCount,
                                         'startWorkOrders' => $startWorkOrders,
                                         'endWorkOrders' => $endWorkOrders,
                                         'endDueDate' => $endDueDate,
                                         'pickupDateReminder' => $pickupDateReminder
     
     ]);
     */
     echo 'Done';
 }
Exemplo n.º 2
0
 public function getWeekWorkOrderReport()
 {
     $startOfWeek = Carbon::today('America/Halifax')->startOfWeek();
     $endOfWeek = Carbon::today('America/Halifax')->endOfWeek();
     /*
     $results = WorkOrder::whereDate('start_date', '>=', $startOfWeek)
                             ->whereDate('start_date', '<=', $endOfWeek)
                             ->where('completed', 0)
                             ->with(['product', 'customer', 'purchaseOrder'])
                             ->orderBy('start_date', 'asc')
                             ->get();
     */
     $results = WorkOrder::whereDate('start_date', '<=', $endOfWeek)->where('completed', 0)->with(['product', 'customer', 'purchaseOrder', 'workOrderProgress'])->orderBy('end_date', 'asc')->get();
     return $results;
 }
 public function sendWorkOrderReport()
 {
     Log::info('=============================================');
     Log::info('Starting work order reminder service');
     // Setup the dates
     $pickupDateReminder = config('app.pickup_reminder_days_to_remind');
     $today = Carbon::today('America/Halifax');
     $twoDaysFromNow = Carbon::today('America/Halifax')->addDay($pickupDateReminder);
     Log::info('The date is: ' . $today->toFormattedDateString() . ' (America/Halifax)');
     // Get work orders to start today
     $startWorkOrders = WorkOrder::whereDate('start_date', '=', $today)->get();
     $startCount = $startWorkOrders->count();
     Log::info('Start Work Orders found: ' . $startCount);
     // Get work orders due for pick up in [$pickupDateReminder] days
     $endWorkOrders = WorkOrder::whereDate('end_date', '>=', $today)->whereDate('end_date', '<=', $twoDaysFromNow)->with('product', 'customer')->get();
     $endCount = $endWorkOrders->count();
     $endDueDate = $twoDaysFromNow->toFormattedDateString();
     Log::info('Sending end reminders for work orders due in [' . $pickupDateReminder . '] day(s) - [' . $endDueDate . ']');
     Log::info('End Work Orders found: ' . $endCount);
     $viewData = ['todaysDate' => $today->toFormattedDateString(), 'startCount' => $startCount, 'endCount' => $endCount, 'startWorkOrders' => $startWorkOrders, 'endWorkOrders' => $endWorkOrders, 'endDueDate' => $endDueDate, 'pickupDateReminder' => $pickupDateReminder];
     $to = config('app.pickup_reminder_email_to');
     $from = config('app.pickup_reminder_email_from');
     $subject = config('app.pickup_reminder_email_subject') . $today->toFormattedDateString();
     $view = config('app.pickup_reminder_email_view');
     Log::info('Sending work order reminder email to: ' . $to);
     Mail::send($view, ['viewdata' => $viewData], function ($message) use($viewData, $to, $from, $subject) {
         $message->from($from);
         $message->to($to);
         $message->subject($subject);
     });
     Log::info('Ending work order reminder service');
     Log::info('=============================================');
 }