コード例 #1
0
 public function addVehicle(Request $request)
 {
     //saves user sesssion in $user to be used in the redirected page
     $user = $request->session()->get('user');
     //Gets vehicles categories
     $categories = vehicleCategory::all();
     $vehicles = vehicleModel::where('vehicleOwnerID', '=', $user[0]->id)->get();
     return view('pages.vehicleOwnerAddVehicle', array('categories' => $categories, 'user' => $user, 'vehicles' => $vehicles));
 }
コード例 #2
0
 public function update(Request $request)
 {
     //$categories = buildingCategory::all();
     $color = "";
     $vehicleid = "";
     $error = false;
     if (isset($request['color']) && !empty($request['color'])) {
         $color = $request['color'];
     }
     if (isset($request['vehicleid']) && !empty($request['vehicleid'])) {
         $vehicleid = $request['vehicleid'];
     }
     // Retrieve use session
     $user = $request->session()->get('user');
     //Save vehicle for user
     $vehicle = vehicleModel::find($vehicleid);
     $vehicle->color = $color;
     $vehicle->save();
     Session::flash('success', 'vehicle successfully updated');
     print json_encode(array(1));
 }
コード例 #3
0
 public function getVehicleAdvancedSearch(Request $request)
 {
     $error = False;
     if (isset($request['vehicleName'])) {
         $vehicleName = $request['vehicleName'];
     }
     if (isset($request['vehicleCategory']) && $request['vehicleCategory'] != -1) {
         $vehicleCategory = $request['vehicleCategory'];
     } else {
         $vehicleCategory = False;
     }
     if (isset($request['driver']) && $request['driver'] != -1) {
         $driver = $request['driver'];
         //	var_dump($request['buildingFacility']);
     } else {
         $driver = False;
     }
     if (isset($request['price'])) {
         $price = $request['price'];
         //	var_dump($request['buildingFacility']);
     } else {
         $price = False;
     }
     if (isset($request['transmission']) && $request['transmission'] != -1) {
         if ($request['transmission'] == 0) {
             $transmission = "Automatic";
         } else {
             $transmission = "Manual";
         }
         //	var_dump($request['buildingFacility']);
     } else {
         $transmission = False;
     }
     if (isset($request['numberOfSeats']) && $request['numberOfSeats'] != -1) {
         $numberOfSeats = $request['numberOfSeats'];
         //	var_dump($request['buildingFacility']);
     } else {
         $numberOfSeats = False;
     }
     if (isset($request['checkIn'])) {
         $checkIn = $request['checkIn'];
     } else {
         $checkIn = False;
     }
     if (isset($request['checkOut'])) {
         $checkout = $request['checkOut'];
         //	var_dump($request['buildingFacility']);
     } else {
         $checkout = False;
     }
     $vehicleAvailable = '';
     $vehicles = vehicleModel::where('vehicleName', 'Like', $vehicleName . '%')->Where(function ($query) use($vehicleCategory, $driver, $transmission, $price, $numberOfSeats, $vehicleAvailable) {
         if ($vehicleCategory) {
             $query->where('vehicleCatID', 'like', $vehicleCategory . '%');
         }
         if ($driver) {
             $query->where('driver', 'like', $driver . '%');
         }
         if ($transmission) {
             $query->where('transmission', 'like', $transmission . '%');
         }
         if ($price) {
             $query->where('price', 'like', $price . '%');
         }
         if ($numberOfSeats) {
             $query->where('numOfSeats', 'like', $numberOfSeats . '%');
         }
     })->get();
     $vehicleOccupiedTravel = DB::table('tbltravel')->join('tblvehicle', 'tbltravel.vehicleID', '=', 'tblvehicle.id')->where('tbltravel.pickUpTime1', '<=', $checkIn)->where('tbltravel.pickUpTime2', '>=', $checkout)->select('tblvehicle.*')->get();
     /*$vehicleOccupiedBooking = DB::table('tblvehiclebooking')
     										           ->join('tblvehicle', 'tblvehiclebooking.vehicleid', '=', 'tblvehicle.id')
     										            ->where('tblvehiclebooking.fromdate', '<=', $checkIn)
     										            ->where('tblvehiclebooking.todate','>=', $checkout)
     
     										            ->select('tblvehicle.*')
     
     										            ->get();*/
     $vehicleOccupiedBooking = DB::table('tblvehiclebooking')->join('tblvehicle', 'tblvehiclebooking.vehicleid', '=', 'tblvehicle.id')->where('tblvehiclebooking.fromdate', '<=', $checkIn)->where('tblvehiclebooking.todate', '>=', $checkout)->select('tblvehicle.*')->get();
     //$vehicleTrav =  array_diff($vehicles, $vehicleOccupiedTravel);
     //	  var_dump($vehicleOccupiedBooking);
     //$vehicleBook =  array_diff($vehicles, $vehicleOccupiedBooking);
     $vehicles = $this->removeFromArray($vehicles, $vehicleOccupiedTravel);
     //var_dump($buildings);
     //	var_dump(count($vehicles));
     $vehicles = $this->removeFromArray($vehicles, $vehicleOccupiedBooking);
     //			var_dump(count($vehicles));
     //   die;
     //die;
     return json_encode($vehicles);
 }
コード例 #4
0
ファイル: SearchController.php プロジェクト: manvimal/Logiify
 private function getQueryVehicles(Request $request)
 {
     $initialised = false;
     $query = '';
     //Search by id
     if ($request['id'] != null) {
         $query = vehicleModel::where('id', '=', $request['id']);
         $initialised = true;
     }
     //Search by landlord
     if ($request['vehicleOwnerID'] != null && $initialised) {
         $query->where('vehicleOwnerID', '=', $request['vehicleOwnerID']);
     } else {
         if (!$initialised) {
             $query = vehicleModel::where('vehicleOwnerID', '=', $request['vehicleOwnerID']);
             $initialised = true;
         }
     }
     //Search by buildingcategory
     if ($request['category'] != null && $initialised) {
         $query->where('category', '=', $request['category']);
     } else {
         if (!$initialised) {
             $query = vehicleModel::where('vehicleCatID', '=', $request['category']);
             $initialised = true;
         }
     }
     //Search by desc
     if ($request['name'] != null && $initialised) {
         $query->where('name', 'LIKE', "%" . $request['name'] . "%");
     } else {
         if (!$initialised) {
             $query = vehicleModel::where('name', 'LIKE', "%" . $request['name'] . "%");
             $initialised = true;
         }
     }
     //Search by buildingcategory
     if ($request['numOfSeats'] != null && $initialised) {
         $query->where('numOfSeats', 'LIKE', "%" . $request['numOfSeats'] . "%");
     } else {
         if (!$initialised) {
             $query = buildingModel::where('numOfSeats', 'LIKE', "%" . $request['numOfSeats'] . "%");
             $initialised = true;
         }
     }
     //limit query
     if ($request['limit'] != null && $query != '') {
         $query->take($request['limit']);
     }
     $vehicles = $query->get();
     return $vehicles;
 }
コード例 #5
0
 public function bookVehicles(Request $request)
 {
     $user = $request->session()->get('user');
     if (is_null($user)) {
         return redirect()->action('MainController@index');
     } else {
         if ($user[0]->type == 'tenant') {
             // /var_dump($request['date10']);
             // $numDays = $fromDate->diff($toDate)->format("%a");
             // $numhours = $fromDate->diff($toDate)->format("%h");
             //	var_dump($request['vehicleid']);
             if (isset($request['vehicleid']) && !empty($request['vehicleid'])) {
                 $vehicleid = $request['vehicleid'];
             }
             if (isset($request['date10']) && !empty($request['date10'])) {
                 $fromDate = new \DateTime($request['date10']);
             }
             if (isset($request['date11']) && !empty($request['date11'])) {
                 $toDate = new \DateTime($request['date11']);
             }
             if (isset($request['lattitude']) && !empty($request['lattitude'])) {
                 $lattitude = $request['lattitude'];
             }
             if (isset($request['longitude']) && !empty($request['longitude'])) {
                 $longitude = $request['longitude'];
             }
             $CheckvehicleAvail = vehicleBookingModel::where('vehicleid', '=', $vehicleid)->where('todate', '>=', $fromDate)->where('fromdate', '<=', $toDate)->get();
             $checkTravel = DB::table('tbltravel')->join('tblbooking', 'tbltravel.bookingID', '=', 'tblbooking.id')->where('tbltravel.vehicleID', '=', $vehicleid)->where('tblbooking.checkin', '>=', $fromDate)->where('tblbooking.checkOut', '<=', $toDate)->select('tblbooking.*')->get();
             $arrmsg = array();
             if (isset($CheckvehicleAvail) && count($CheckvehicleAvail) > 0 || isset($checkTravel) && count($checkTravel) > 0) {
                 $arrmsg['status'] = -1;
                 $arrmsg['msg'] = "This vehicle is not available for the specified date";
             } else {
                 $vehicle = vehicleModel::where('id', '=', $vehicleid)->get();
                 $numDays = $fromDate->diff($toDate)->format("%r%a");
                 $numHour1 = $numDays * 24;
                 $numhours = $fromDate->diff($toDate)->format("%r%h");
                 $totalHours = $numHour1 + $numhours;
                 if ($totalHours >= 2) {
                     $vehiclePrice = $vehicle[0]->price;
                     $price = $totalHours * $vehiclePrice;
                     $vehicleBooking = new vehicleBookingModel();
                     $vehicleBooking->tenantid = $user[0]->id;
                     $vehicleBooking->vehicleid = $vehicleid;
                     $vehicleBooking->fromdate = $fromDate;
                     $vehicleBooking->todate = $toDate;
                     $vehicleBooking->price = $price;
                     if (!is_null($request['lattitude'])) {
                         $vehicleBooking->pickuplat = $lattitude;
                     }
                     if (!is_null($request['longitude'])) {
                         $vehicleBooking->pickuplong = $longitude;
                     }
                     $vehicleBooking->save();
                     $arrmsg['status'] = 1;
                     $arrmsg['msg'] = "Vehicle booking successful";
                 } else {
                     $arrmsg['status'] = -1;
                     $arrmsg['msg'] = "Minimum Booking timespan is 2 hours";
                 }
             }
             return json_encode($arrmsg);
         } else {
             return response()->view('pages.404', ['user' => $user], 404);
         }
     }
 }
コード例 #6
0
 public function vehicleBooking(Request $request)
 {
     $user = $request->session()->get('user');
     if (is_null($user)) {
         return redirect()->action('MainController@index');
     } else {
         if ($user[0]->type == 'tenant') {
             $vehicles = vehicleModel::where('created_at', '!=', '')->orderBy('created_at', 'DESC')->paginate(9);
             $vehicleCategories = vehicleCategory::all();
             return view('pages.tenantBookVehicles', array('user' => $user, 'vehicles' => $vehicles, 'vehicleCategories' => $vehicleCategories));
         } else {
             return response()->view('pages.404', ['user' => $user], 404);
         }
     }
 }