diff --git a/app/Enums/FlightStatus.php b/app/Enums/FlightStatus.php deleted file mode 100644 index a0c6529..0000000 --- a/app/Enums/FlightStatus.php +++ /dev/null @@ -1,14 +0,0 @@ -paginate(4); - return view('admin.flights.index',compact('flights')); + return view('admin.flights.index', compact('flights')); } + + public function create() { return view('admin.flights.create'); } + + public function store(FlightStoreRequest $request) { - $data = $request->validated(); + DB::beginTransaction(); - $data['type'] = (int) $data['type']; + try { - if ($request->hasFile('image')) { - $data['image'] = $request->file('image')->store('flights', 'public'); + $data = $request->validated(); + + + if ($request->hasFile('image')) { + + $data['image'] = $request + ->file('image') + ->store('flights','public'); + + } + + + Flight::create($data); + + + DB::commit(); + + + return redirect() + ->route('admin.flights.index') + ->with('success','پرواز ثبت شد'); + + + } catch(\Exception $e) { + + DB::rollBack(); + + dd($e->getMessage()); } - Flight::create($data); - - return redirect()->route('admin.flights.index') - ->with('success', 'پرواز با موفقیت ثبت شد'); } + + public function edit(Flight $flight) { return view('admin.flights.edit',compact('flight')); - } - public function update(FlightStoreRequest $request, Flight $flight) + + + + public function update(FlightStoreRequest $request, Flight $flight) { - $data = $request->validated(); - $data['type'] = (int) $data['type']; + DB::beginTransaction(); + + try { + + $data = $request->validated(); + + + if ($request->hasFile('image')) { + + + if($flight->image){ + + Storage::disk('public') + ->delete($flight->image); + + } + + + $data['image'] = $request + ->file('image') + ->store('flights','public'); + + } + + + $flight->update($data); + + + DB::commit(); + + + return redirect() + ->route('admin.flights.index') + ->with('success','پرواز ویرایش شد'); + + + }catch(\Exception $e){ + + DB::rollBack(); + + dd($e->getMessage()); - if ($request->hasFile('image')) { - $data['image'] = $request->file('image')->store('flights', 'public'); } - $flight->update($data); - - return redirect()->route('admin.flights.index') - ->with('success', 'پرواز با موفقیت ویرایش شد'); } - public function destroy(Flight $flight) + + public function destroy(Flight $flight) { + + if($flight->image){ + + Storage::disk('public') + ->delete($flight->image); + + } + + $flight->delete(); - return back()->with('پرواز با موفقیت حذف شد.'); + + + return back() + ->with('success','پرواز حذف شد'); } } diff --git a/app/Http/Controllers/RoleController.php b/app/Http/Controllers/Admin/RoleController.php similarity index 72% rename from app/Http/Controllers/RoleController.php rename to app/Http/Controllers/Admin/RoleController.php index 85c5672..db98581 100644 --- a/app/Http/Controllers/RoleController.php +++ b/app/Http/Controllers/Admin/RoleController.php @@ -1,7 +1,8 @@ [ 'required', 'date', - + 'after_or_equal:today' ], 'departure_time'=>[ - 'required' + 'required', + 'date_format:H:i' ], 'arrival_time'=>[ 'required' diff --git a/app/Models/Flight.php b/app/Models/Flight.php index 5f6a022..1c9fd45 100644 --- a/app/Models/Flight.php +++ b/app/Models/Flight.php @@ -39,7 +39,9 @@ use Illuminate\Database\Eloquent\Model; class Flight extends Model { protected $table = 'flights'; + public static $snakeAttributes = false; + public $timestamps = true; protected $casts = [ 'departure_date' => 'datetime', @@ -47,8 +49,8 @@ class Flight extends Model 'arrival_time' => 'datetime', 'capacity' => 'int', 'price' => 'float', - 'type' => FlightType::class, - 'status' => FlightStatus::class, + 'type' => 'int', + 'status' => 'int', ]; protected $fillable = [ diff --git a/resources/views/admin/flights/create.blade.php b/resources/views/admin/flights/create.blade.php index 56637ad..10b8986 100644 --- a/resources/views/admin/flights/create.blade.php +++ b/resources/views/admin/flights/create.blade.php @@ -91,15 +91,9 @@ نوع پرواز - + + + @@ -110,10 +104,11 @@ تاریخ حرکت - - + id="departure_date" + class="form-control" + autocomplete="off"> diff --git a/resources/views/admin/flights/index.blade.php b/resources/views/admin/flights/index.blade.php index 7d5bf24..80ade7f 100644 --- a/resources/views/admin/flights/index.blade.php +++ b/resources/views/admin/flights/index.blade.php @@ -41,32 +41,28 @@