diff --git a/app/Http/Controllers/AnagraficaInquiliniController.php b/app/Http/Controllers/AnagraficaInquiliniController.php new file mode 100644 index 0000000..0464c95 --- /dev/null +++ b/app/Http/Controllers/AnagraficaInquiliniController.php @@ -0,0 +1,65 @@ + CotrattiAffitti::all() + ]); + } + + /** + * Show the form for creating a new resource. + */ + public function create() + { + // + return view('affitti.contratti.create',[ + 'immobili' => \App\Models\Immobili::all() + ]); + } + + /** + * Store a newly created resource in storage. + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + */ + public function show(CotrattiAffitti $cotrattiAffitti) + { + // + } + + /** + * Show the form for editing the specified resource. + */ + public function edit(CotrattiAffitti $cotrattiAffitti) + { + // + } + + /** + * Update the specified resource in storage. + */ + public function update(Request $request, CotrattiAffitti $cotrattiAffitti) + { + // + } + + /** + * Remove the specified resource from storage. + */ + public function destroy(CotrattiAffitti $cotrattiAffitti) + { + // + } +} diff --git a/app/Http/Controllers/TipoContrattoController.php b/app/Http/Controllers/TipoContrattoController.php new file mode 100644 index 0000000..c01e40b --- /dev/null +++ b/app/Http/Controllers/TipoContrattoController.php @@ -0,0 +1,65 @@ +belongsTo(Immobili::class, 'immobile_id'); + } +} diff --git a/app/Models/TipoContratto.php b/app/Models/TipoContratto.php new file mode 100644 index 0000000..19d71bc --- /dev/null +++ b/app/Models/TipoContratto.php @@ -0,0 +1,10 @@ + 'Contratti di locazione', - 'url' => 'admin/affitti/locazioni', + 'url' => 'admin/affitti/contratti', 'icon' => 'fas fa-fw fa-tags', 'can' => ['affitti'], ], diff --git a/database/migrations/2025_10_03_081937_create_cotratti_affittis_table.php b/database/migrations/2025_10_03_081937_create_cotratti_affittis_table.php new file mode 100644 index 0000000..fb5942d --- /dev/null +++ b/database/migrations/2025_10_03_081937_create_cotratti_affittis_table.php @@ -0,0 +1,38 @@ +id(); + $table->timestamps(); + $table->foreignId('immobile_id'); + $table->foreignId('tipo_contratto_id'); + $table->date('data_inizio')->nullable(); + $table->date('data_fine')->nullable(); + $table->unsignedTinyInteger('tacito_rinnovo'); + $table->string('canone_mensile')->nullable(); + $table->string('deposito_cauzionale')->nullable(); + $table->string('spese_condominiali')->nullable(); + $table->string('iva')->nullable(); + $table->string('registrazione')->nullable(); + $table->string('note')->nullable(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('cotratti_affittis'); + } +}; diff --git a/database/migrations/2025_10_03_093033_create_tipo_contrattos_table.php b/database/migrations/2025_10_03_093033_create_tipo_contrattos_table.php new file mode 100644 index 0000000..64637fb --- /dev/null +++ b/database/migrations/2025_10_03_093033_create_tipo_contrattos_table.php @@ -0,0 +1,27 @@ +id(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('tipo_contrattos'); + } +}; diff --git a/database/migrations/2025_10_03_093140_contratto_inquilino.php b/database/migrations/2025_10_03_093140_contratto_inquilino.php new file mode 100644 index 0000000..88fa2f3 --- /dev/null +++ b/database/migrations/2025_10_03_093140_contratto_inquilino.php @@ -0,0 +1,24 @@ +id(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('anagrafica_inquilinis'); + } +}; diff --git a/resources/views/affitti/contratti/index.blade.php b/resources/views/affitti/contratti/index.blade.php new file mode 100644 index 0000000..f2dee02 --- /dev/null +++ b/resources/views/affitti/contratti/index.blade.php @@ -0,0 +1,46 @@ +@extends('adminlte::page') + +@section('title', 'Contratti Affitti') +@section('content_header') +

Contratti Affitti

+@stop + +@section('content') +
+ Crea Nuovo Contratto + + + + + + + + + + + + + + @foreach($contratti as $contratto) + + + + + + + + + + @endforeach + +
IDNomeDescrizioneImmobileData InizioData FineAzioni
{{ $contratto->id }}{{ $contratto->nome }}{{ $contratto->descrizione }}{{ $contratto->immobile ? $contratto->immobile->indirizzo : 'N/A' }}{{ $contratto->data_inizio }}{{ $contratto->data_fine }} + Visualizza + Modifica +
+ @csrf + @method('DELETE') + +
+
+
+@endsection diff --git a/routes/web.php b/routes/web.php index c34dada..f287399 100644 --- a/routes/web.php +++ b/routes/web.php @@ -263,13 +263,13 @@ Route::middleware([ Route::get('admin/affitti/associaContratto', [App\Http\Controllers\ImmobiliController::class,'associaContratto'])->name('affitti_contratti.associa'); // Cotratti - Route::get('admin/affitti/contratti', [App\Http\Controllers\ContrattiAffittiController::class,'index'])->name('contratti_affitti'); - Route::get('admin/affitti/contratti/create', [App\Http\Controllers\ContrattiAffittiController::class,'create'])->name('contratti_affitti.create'); - Route::post('admin/affitti/contratti', [App\Http\Controllers\ContrattiAffittiController::class,'store'])->name('contratti_affitti.store'); - Route::get('admin/affitti/contratti/{contrattiAffitti}', [App\Http\Controllers\ContrattiAffittiController::class,'show'])->name('contratti_affitti.show'); - Route::get('admin/affitti/contratti/{contrattiAffitti}/edit', [App\Http\Controllers\ContrattiAffittiController::class,'edit'])->name('contratti_affitti.edit'); - Route::put('admin/affitti/contratti/{contrattiAffitti}', [App\Http\Controllers\ContrattiAffittiController::class,'update'])->name('contratti_affitti.update'); - Route::delete('admin/affitti/contratti/{contrattiAffitti}', [App\Http\Controllers\ContrattiAffittiController::class,'destroy'])->name('contratti_affitti'); + Route::get('admin/affitti/contratti', [App\Http\Controllers\CotrattiAffittiController::class,'index'])->name('contratti_affitti'); + Route::get('admin/affitti/contratti/create', [App\Http\Controllers\CotrattiAffittiController::class,'create'])->name('contratti_affitti.create'); + Route::post('admin/affitti/contratti', [App\Http\Controllers\CotrattiAffittiController::class,'store'])->name('contratti_affitti.store'); + Route::get('admin/affitti/contratti/{contrattiAffitti}', [App\Http\Controllers\CotrattiAffittiController::class,'show'])->name('contratti_affitti.show'); + Route::get('admin/affitti/contratti/{contrattiAffitti}/edit', [App\Http\Controllers\CotrattiAffittiController::class,'edit'])->name('contratti_affitti.edit'); + Route::put('admin/affitti/contratti/{contrattiAffitti}', [App\Http\Controllers\CotrattiAffittiController::class,'update'])->name('contratti_affitti.update'); + Route::delete('admin/affitti/contratti/{contrattiAffitti}', [App\Http\Controllers\CotrattiAffittiController::class,'destroy'])->name('contratti_affitti'); }); // API