public static function checkTrackingNumbers()
 {
     $lab_works = LabWork::where('status_id', 1)->get();
     foreach ($lab_works as $v) {
         if ($v->trackingNumbers()->orderBy('id', 'DESC')->count() > 0) {
             $tracking_number = $v->trackingNumbers()->orderBy('id', 'DESC')->take(1)->first();
             if (!$tracking_number->marked_as_delivered) {
                 if ($tracking_number->checkStatus() == 'Delivered') {
                     $tracking_number->markAsDelivered();
                     $v->updateStatus(2, 0, 'Automatically updated by Shipping API');
                 }
             }
         }
     }
     $lab_works = LabWork::where('status_id', 4)->get();
     foreach ($lab_works as $v) {
         $tracking_number = $v->trackingNumbers()->orderBy('id', 'DESC')->take(1)->first();
         if (!$tracking_number->marked_as_delivered) {
             if ($tracking_number->checkStatus() == 'Delivered') {
                 $tracking_number->markAsDelivered();
                 $v->updateStatus(5, 0, 'Automatically updated by Shipping API');
             }
         }
     }
 }
Пример #2
0
 public function doRefine(Request $request)
 {
     $statuses = $request->has('statuses') ? $request->input('statuses') : array();
     $labs = $request->has('labs') ? $request->input('labs') : array();
     $dentists = $request->has('dentists') ? $request->input('dentists') : array();
     $archived = $request->input('archived');
     $lab_work = LabWork::where('id', '>', 0);
     if (!$request->session()->get('global_branch') == 'all') {
         $lab_work = $lab_work->where('branch_id', $request->session()->get('global_branch'));
     }
     if (count($statuses) > 0) {
         $lab_work->whereIn('status_id', $statuses);
     }
     if (count($labs) > 0) {
         $lab_work->whereIn('lab_id', $labs);
     }
     if (count($dentists) > 0) {
         $lab_work->whereIn('dentist_id', $dentists);
     }
     if ($request->has('search_str')) {
         $lab_work->whereRaw("name LIKE '%" . $request->input('search_str') . "%'");
     }
     $lab_work = $lab_work->where('archived', $archived)->orderBy('date_due', 'asc')->get();
     if (Auth::user()->level->id == 4) {
         foreach ($lab_work as $k => $v) {
             if (!in_array($v->lab->id, Auth::user()->getLabIds())) {
                 unset($lab_work[$k]);
             }
         }
         $vars = array("lab_work" => $lab_work);
         return view('backend.partials.external-lab-work-list-table')->with($vars);
     } else {
         $vars = array("lab_work" => $lab_work);
         return view('backend.partials.lab-work-list-table')->with($vars);
     }
 }