public function updateBus(Request $request, $id) { // dd($request->all()); $this->validate($request, ['name' => 'required', 'images' => 'required', 'features' => 'required']); $bus = Bus::find($id); $bus->update($request->only('name')); $bus->bus_features()->sync($request->input('features')); $images = $request->images; $n_o_i = count($images); // dd($n_o_i, $images); $destinationPath = null; if (App::environment() == 'local') { $destinationPath = base_path() . '/public/images/'; } elseif (App::environment() == 'production') { $destinationPath = '/home/twokays/public_html/images/'; } for ($i = 0; $i < $n_o_i; $i++) { if ($images[$i]->isValid()) { $img = $images[$i]; $file = $img; $ext = $file->getClientOriginalExtension(); $destinationPath = $destinationPath; $fileName = str_slug($request->name) . '_img_' . $i . '.' . $ext; $full_path = '/images/' . $fileName; $file->move($destinationPath, $fileName); // uploading file to given path $bus->bus_images()->update(['path' => $full_path]); // $tcl = BusImage::where('bus_id', $bus->id)->where('path', $full_path)->first(); // // $tcl->update(['path'=>$full_path]); } } return redirect()->route('bus_rental_index'); }
/** * Display the specified resource. * * @param int $id * @return Response */ public function show($id) { // $bus = new Bus(); try { $statusCode = 200; $response = $bus->getBusById($id); if ($response->count() < 1) { $statusCode = 204; $response = ["error" => "No hay autobuses con ese id"]; } } catch (Exception $e) { $response = ["error" => "Error interno"]; $statusCode = 500; } finally { return Response::json($response, $statusCode); } }
/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { // $input = $request->all(); array_forget($input, "_token"); if (isset($input['type']) && $input['type'] == 'edit') { $validator = Validator::make($request->all(), ['name' => 'required|min:2', 'model' => 'required|min:2', 'plate_no' => 'required|min:2', 'chases_no' => 'required|min:5']); if ($validator->fails()) { if ($request->ajax()) { return response()->json($validator->messages()); } else { return \Redirect::back()->withErrors($validator)->withInput(); } } array_forget($input, "type"); $bus = Bus::find($input['id']); foreach ($input as $key => $value) { $bus->{$key} = $value; } if ($bus->update()) { return response()->json("record update successfully"); } } else { $validator = Validator::make($request->all(), ['name' => 'required|min:2', 'model' => 'required|min:2', 'plate_no' => 'required|min:2', 'chases_no' => 'required|min:5|unique:buses']); if ($validator->fails()) { if ($request->ajax()) { return response()->json($validator->messages()); } else { return \Redirect::back()->withErrors($validator)->withInput(); } } $bus = new Bus(); foreach ($input as $key => $value) { $bus->{$key} = $value; } if ($bus->save()) { return response()->json("record saved successfully"); } } return View("buses.index", ["buses" => Bus::all(), "title" => "Buses' Listing"]); }
/** * Display the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function show($id) { // $route = Route::find($id); return View("routes.routedetails", ["title" => "Route Details", "subtitle" => $route->name, "thisroute" => $route, "busstops" => Busstop::where("route_id", $route->id)->get(), "buses" => Bus::where("route_id", $route->id)->get()]); }
public function calendario() { $buses = Bus::lists('placa', 'id'); return view('reservas.calendario', array('buses' => $buses)); }
public function exportPdf($ids = null) { $ids = explode(',', substr($ids, 0, -1)); $ids = array_unique($ids); $model = Bus::whereIn('id', $ids)->where('user_id', \Auth::user()->id)->get(['marque', 'modele', 'matricule', 'chauffeur', 'capacite']); Excel::create('La liste des autocars', function ($excel) use($model, $ids) { $excel->sheet('La liste des autocars', function ($sheet) use($model, $ids) { $sheet->fromModel($model); $sheet->setAllBorders('thin'); $sheet->setFontFamily('OpenSans'); $sheet->setFontSize(13); $sheet->setFontBold(false); $sheet->setAllBorders('thin'); for ($i = 1; $i <= count($ids) + 1; $i++) { $sheet->setHeight($i, 25); $sheet->row($i, function ($rows) { $rows->setFontColor('#556b7b'); $rows->setAlignment('center'); }); $sheet->cells('A' . $i . ':' . 'E' . $i, function ($cells) { $cells->setValignment('middle'); $cells->setFontColor('#556b7b'); $cells->setFont(array('family' => 'OpenSans', 'size' => '13', 'bold' => false)); }); } // normal header $sheet->cells('A1:E1', function ($cells) { $cells->setBackground('#e9f1f3'); $cells->setFontColor('#556b7b'); $cells->setFont(array('family' => 'OpenSans', 'size' => '15', 'bold' => true)); }); $sheet->row(1, array('Marque', 'Modèle', "Matricule", "Chauffeur", "Capacité")); }); })->export('pdf'); }
/** * Store a newly created resource in storage. * * @return Response */ public function store() { Bus::create(array("bus_reg_no" => Input::get('bus_reg_no'), "bus_type" => Input::get('bus_type'), "bus_max_seat" => Input::get('bus_max_seat'))); return Redirect::route('buses.create')->with('message', 'Bus Added'); }
/** * Url: * /public/api/v1.0/update/bus/destination/{dropping_id} * * Payload: { "params": { "buses_id": 27, "bus_departure_points_id": 5, "dropping_point": "Tada", "dropping_time": "9am", "price": "1003" } } */ public function updateDroppingDetails(Request $request) { $data = Input::json()->all(); $response = $this->response; $validateAndHandleError = new ValidateAndHandleError(); if (!Auth::user()->id) { return $validateAndHandleError->invalidUser(); } if (!$request->route('dropping_id')) { return $response->errorResponse("dropping_id_not_exist"); } $dropping_id = $request->route('dropping_id'); if (!isset($data) || !isset($data['params']) || !isset($data['params']['buses_id']) || !isset($data['params']['bus_departure_points_id']) || !isset($data['params']['dropping_point']) || !isset($data['params']['place_id']) || !isset($data['params']['dropping_time']) || !isset($data['params']['price'])) { return $response->errorResponse('invalid_params'); // return $validateAndHandleError->errorIdentifier("invalid_params"); } $buses_id = $data['params']['buses_id']; $bus_departure_points_id = $data['params']['bus_departure_points_id']; $dropping_point = $data['params']['dropping_point']; $dropping_time = $data['params']['dropping_time']; $place_id = $data['params']['place_id']; $price = $data['params']['price']; /* Null validation */ $validateNullData = array("buses_id" => $buses_id, "bus_departure_points_id" => $bus_departure_points_id, "dropping_point" => $dropping_point, "dropping_time" => $dropping_time, "price" => $price, "place_id" => $place_id); $nullValidator = $validateAndHandleError->multiValidator($validateNullData, "string"); if ($nullValidator != "success") { return $nullValidator; } /* Bus id is number or not */ $validateBusId = $validateAndHandleError->multiValidator(['buses_id' => $buses_id, 'dropping_id_not_number' => $dropping_id, 'place_id' => $place_id, 'departure_id_not_number' => $bus_departure_points_id], "number"); if ($validateBusId != "success") { return $validateBusId; } $place = Place::where('id', $place_id)->get()[0]->place; if ($place != $dropping_point) { return $response->errorResponse('to_place_mismatch'); // return $validateAndHandleError->errorIdentifier("to_place_mismatch"); } /* Validate dropping id present in db or not */ $check_dropping_id = BusDroppingPoint::where('id', $dropping_id)->get(); if (count($check_dropping_id) <= 0) { return $response->errorResponse("dropping_details_not_available"); } /* for this dropping id check bus_id and departure id is matching or not */ if ($check_dropping_id[0]->buses_id != $buses_id || $check_dropping_id[0]->bus_departure_points_id != $bus_departure_points_id) { return $response->errorResponse("bus_id_and_departure_id_mismatch"); } /* Bus id exist or not */ $check_bus_availability = Bus::where('id', $buses_id)->get(); if (count($check_bus_availability) <= 0) { return $response->errorResponse("bus_details_not_available"); } /* Departure id exist or not */ $prev_departure_details = BusDeparturePoint::where('id', $bus_departure_points_id)->get(); if (count($prev_departure_details) <= 0) { return $response->errorResponse('bus_departure_details_does_not_exist'); // return $validateAndHandleError->errorIdentifier("bus_departure_details_does_not_exist"); } /* bus id passed through param should be equal with bus id of db */ if ($prev_departure_details[0]->buses_id != $buses_id) { return $response->errorResponse('invalid_departure_details'); // return $validateAndHandleError->errorIdentifier("invalid_departure_details"); } $user_id = Auth::user()->id; $bus_owners_id = $check_bus_availability[0]->bus_owners_id; /* $user_id_temp is used to check whether the details are accessible or not */ $user_id_temp = BusOwner::where('id', $bus_owners_id)->get()[0]->user_id; $user_type = $validateAndHandleError->userIdentifier($user_id); /* details are only accessible by admin and bus owner */ if ($user_type == "customer" || $user_type == "dealer" || $user_type == "unknown" || $user_type == "bus_owner" && $user_id_temp != $user_id) { return $response->errorResponse("details_not_accessible"); } $is_dropping_details_updated = BusDroppingPoint::where('id', $dropping_id)->where('buses_id', $buses_id)->where('bus_departure_points_id', $bus_departure_points_id)->update(['dropping_point' => $dropping_point, 'dropping_time' => $dropping_time, 'price' => $price]); $info = array('bus_dropping_id' => $dropping_id, 'bus_id' => $buses_id, 'bus_owners_id' => $bus_owners_id, 'departure_id' => $bus_departure_points_id, 'dropping_point' => $dropping_point, 'dropping_time' => $dropping_time, 'price' => $price); if ($is_dropping_details_updated == 1) { return $response->successResponse(200, "Bus dropping details has been updated successully", $info); } return $response->errorResponse("update_unsuccessfull"); }
/** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function conductorUpdate(ConductorBusRequest $request, $id) { $input = $request->all(); $obj = Bus::findOrFail($id); $obj->conductor_id = $input['conductor_id']; $obj->save(); Session::flash('mensaje', 'Conductor asignado a bus'); Session::flash('alert-class', 'alert-success'); return redirect(route('buses_detail', ['id' => $id])); }
public function allBuses() { $buses = Bus::all(); return view('pages.all_buses', ['buses' => $buses]); }