Esempio n. 1
0
 public function getMrktOfcDriverCount($mrktOfcId)
 {
     $drvCnt = 0;
     $datef = date('Y-m-d');
     $curTime = date('H:m:s');
     $meal_plan = FoodjetsMealPlan::select('id', 'market_office_id')->where(DB::raw("DATE(meal_plan_date)"), $datef)->where('start_time', '<=', $curTime)->where('end_time', '>=', $curTime)->where('active', 'true')->where('market_office_id', $mrktOfcId)->first();
     if (!empty($meal_plan->id)) {
         $drvListIds = TodaysDriversInventory::select('todays_drivers_list_id')->where('foodjets_meal_plan_id', $meal_plan->id)->groupBy('todays_drivers_list_id')->get()->toArray();
         //echo '<pre>';        print_r($drvListIds);die;
         $drvCnt = TodaysDriversList::where('date', $datef)->whereIn('id', $drvListIds)->count();
     }
     return $drvCnt;
 }
Esempio n. 2
0
 public function resetDriverItemQuantity($driver_id = '', $foodjets_meal_plan_id, $menu_item_ids, $order_id)
 {
     $todays_driver_list_id = '';
     if (isset($driver_id) && $driver_id != '') {
         $cdate = date('Y-m-d');
         $todays_driver_list_id = TodaysDriversList::where('drivers_id', '=', $driver_id)->where('date', '=', $cdate)->pluck('id');
         foreach ($menu_item_ids as $eachM) {
             $quantity = 0;
             $quantity = OrderDetails::where('order_id', '=', $order_id)->where('menu_item_id', '=', $eachM)->pluck('quantity');
             TodaysDriversInventory::where('todays_drivers_list_id', '=', $todays_driver_list_id)->where('foodjets_menu_item_id', '=', $eachM)->where('foodjets_meal_plan_id', '=', $foodjets_meal_plan_id)->increment('quantity', $quantity);
         }
     }
     return $todays_driver_list_id;
 }
Esempio n. 3
0
 public function dragndropDriver()
 {
     $input = array();
     $response = array();
     $data = array();
     $input = Input::all();
     try {
         $response['status'] = "1";
         $response['msg'] = "Success";
         $onfleet_id = Driver::where('id', $input['driver_id'])->pluck('onfleet_id');
         if ($onfleet_id) {
             $onfleetClass = new OnFleet();
             $worker = ['id' => $onfleet_id];
             $onfleetResponse = $onfleetClass->getSingleWorker($worker);
             if (isset($onfleetResponse) && isset($onfleetResponse->id) && $onfleetResponse->id != "" && ($onfleetResponse->activeTask == "" || $onfleetResponse->activeTask == "null")) {
                 if (isset($onfleetResponse->tasks) && is_array($onfleetResponse->tasks) && count($onfleetResponse->tasks) > 0) {
                     $response['status'] = '3';
                 }
             }
         }
         if ($response['status'] == "1") {
             $has_processing_order = Order::where('meal_plan_id', $input['meal_plan_id'])->where('market_office_city_delivery_zone_id', $input['exist_zone_id'])->where('driver_id', $input['driver_id'])->where('order_status', 'Processing')->count();
             if ($has_processing_order > 0) {
                 $response['status'] = '4';
                 $response['msg'] = "The driver is assigned,So unable to change zone.";
             } else {
                 $data['market_office_city_delivery_zone_id'] = $input['zone_id'];
                 TodaysDriversList::where('id', $input['driver_list_id'])->update($data);
                 $response['status'] = '1';
                 $response['msg'] = "Driver successfully moved";
             }
         }
         $drivers = $this->driverAndLocationInfo($input);
         $response['drivers'] = $drivers['data'];
         $response['driver_count'] = $drivers['count'];
         $response['meal_cat_name'] = $drivers['meal_cat_name'];
         $response['delivery_zone'] = $drivers['delivery_zone'];
         $response['each_driver_count'] = $drivers['each_driver_count'];
     } catch (Exception $e) {
         Log::error($e);
         $response['status'] = '0';
         $msg = (array) $e->getMessage();
         $response['msg'] = $msg[0];
     }
     return Response::json($response);
 }
Esempio n. 4
0
 public function getDriversForZone($zoneId, $mrktOfcId)
 {
     $drivers = array();
     $datef = date('Y-m-d');
     $curTime = date('H:m:s');
     $meal_plan = FoodjetsMealPlan::select('id', 'market_office_id')->where(DB::raw("DATE(meal_plan_date)"), $datef)->where('start_time', '<=', $curTime)->where('end_time', '>=', $curTime)->where('active', 'true')->where('market_office_id', $mrktOfcId)->first();
     if (!empty($meal_plan->id)) {
         $drvListIds = TodaysDriversInventory::select('todays_drivers_list_id')->where('foodjets_meal_plan_id', $meal_plan->id)->groupBy('todays_drivers_list_id')->get()->toArray();
         //echo '<pre>';        print_r($drvListIds);die;
         $driversIds = TodaysDriversList::select('drivers_id', DB::raw('id as list_id'), DB::raw("{$meal_plan->id} AS meal_plan_id"))->where('date', $datef)->whereIn('id', $drvListIds)->where('market_office_city_delivery_zone_id', $zoneId)->get();
         foreach ($driversIds as $val) {
             $driverInfo = Driver::select(DB::raw('SUBSTRING(CONCAT_WS(" ",first_name,last_name),1,17) AS short_name'), DB::raw('CONCAT_WS(" ",first_name,last_name) AS driver_name'), 'image', 'onfleet_worker_status AS online_status')->where('id', $val['drivers_id'])->first();
             if ($driverInfo['image'] != "" && $driverInfo['image'] != null) {
                 $image = Config::get('images.driver') . $driverInfo['image'];
             } else {
                 $image = "/images/avatar.png";
             }
             if ($driverInfo['online_status'] == "true" && $driverInfo['online_status'] != null) {
                 $online_status = 1;
             } else {
                 $online_status = 0;
             }
             $driverInfo['image'] = $image;
             $driverInfo['online_status'] = $online_status;
             $driverInfo['meal_plan_id'] = $val['meal_plan_id'];
             $driverInfo['list_id'] = $val['list_id'];
             $driverInfo['driver_id'] = $val['drivers_id'];
             $drivers[] = $driverInfo;
         }
     }
     return $drivers;
 }