diff --git a/app/Http/Controllers/ProgettiController.php b/app/Http/Controllers/ProgettiController.php index 0dde7fe..176ad13 100644 --- a/app/Http/Controllers/ProgettiController.php +++ b/app/Http/Controllers/ProgettiController.php @@ -5,6 +5,7 @@ namespace App\Http\Controllers; use App\Models\Progetti; use App\Models\User; use Illuminate\Http\Request; +use App\Models\RigaProgetto; class ProgettiController extends Controller { @@ -34,15 +35,19 @@ class ProgettiController extends Controller return redirect(Route('progetti')); } - public function inserisciTask(Request $id) + public function inserisciTask(Request $args) { - + RigaProgetto::saveRiga($args); + return redirect(Route('detail',['id'=>$args['fk_id_progetto']])); } public function dettaglioProgetto(Request $id) { - $progetto = Progetti::getProgettoById($id['id']); - return view('progetti.dettaglio',['dettaglio'=>$progetto]); + $progetto_id=$id['id']; + $progetto = Progetti::getProgettoById($progetto_id); + $righe = RigaProgetto::getRigheProgetto($progetto_id); + return view('progetti.dettaglio',['dettaglio'=>$progetto, 'righe'=>$righe,]); + //dd($righe); } } diff --git a/app/Http/Controllers/RigaProgettoController.php b/app/Http/Controllers/RigaProgettoController.php new file mode 100644 index 0000000..802f3fd --- /dev/null +++ b/app/Http/Controllers/RigaProgettoController.php @@ -0,0 +1,19 @@ +join('users','progettis.fk_user','=','users.id')->where('progettis.id','=',$id)->get(); + return DB::table('progettis')-> + join('users','progettis.fk_user','=','users.id')-> + select('users.id as userid', 'users.name as name', 'progettis.*')-> + where('progettis.id','=',$id)-> + get(); } public static function saveProgetto($progetto){ diff --git a/app/Models/RigaProgetto.php b/app/Models/RigaProgetto.php new file mode 100644 index 0000000..7b2f4a2 --- /dev/null +++ b/app/Models/RigaProgetto.php @@ -0,0 +1,33 @@ +where('fk_id_progetto','=',$progetto_id)->get(); + } + + public static function saveRiga($args) + { + DB::table('riga_progettos')->insert([ + 'fk_id_progetto'=>$args['fk_id_progetto'], + 'data'=>$args['data'], + 'descrizione'=>$args['descrizione'], + 'prezzo'=>$args['prezzo'], + 'ore'=>$args['ore'], + ]); + } + + public static function deleteRow($id) + { + DB::table('riga_progettos')->delete($id); + } +} diff --git a/database/migrations/2023_05_03_164304_create_riga_progettos_table.php b/database/migrations/2023_05_03_164304_create_riga_progettos_table.php new file mode 100644 index 0000000..36067a1 --- /dev/null +++ b/database/migrations/2023_05_03_164304_create_riga_progettos_table.php @@ -0,0 +1,37 @@ +id(); + $table->timestamps(); + $table->date('data'); + $table->longText('descrizione'); + $table->decimal('prezzo',10,2)->nullable(); + $table->decimal('ore',10,2)->nullable(); + $table->unsignedBigInteger('fk_id_progetto'); + $table->foreign('fk_id_progetto')->references('id')->on('progettis'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('riga_progettos'); + } +} diff --git a/resources/views/progetti/dettaglio.blade.php b/resources/views/progetti/dettaglio.blade.php index 1bdb171..c037c3e 100644 --- a/resources/views/progetti/dettaglio.blade.php +++ b/resources/views/progetti/dettaglio.blade.php @@ -1,110 +1,188 @@ -@extends('admin') -@section('content') +@extends('admin') @section('content')
-
-

Lista Progetti

-
-
-
- -
-
- -
-
- -
-
-
-
- Dettaglio Progetto -
-
- @foreach($dettaglio ?? '' as $progetto) -
-
- Nome -
-
- {{ $progetto->nome; }} -
-
- -
-
- Descrizione -
-
- {{ $progetto->descrizione; }} -
-
-
-
- Data Inizio -
-
- {{ $progetto->data_inizio }} -
-
- Data Termine -
-
- {{ $progetto->data_fine }} -
-
-
-
- Stato -
-
- {{ $progetto->stato }} -
-
- Data Creazione -
-
- {{ $progetto->data_creazione }} -
-
-
-
- Budget -
-
- € {{ $progetto->budget }} -
-
- Coordinatore -
-
- {{ $progetto->name }} -
-
-
-
- Note -
-
- {{ $progetto->note; }} -
-
- @endforeach -
-
-
-
+
+

Dettaglio Progetto

+
+
+ +
+
+ +
+
- +
+
+
+
Dettaglio Progetto
+
+ @foreach($dettaglio ?? '' as $progetto) +
+
Nome:
+
+ {{ $progetto->nome; }} +
+
-@endsection +
+
Descrizione
+
+ {{ $progetto->descrizione; }} +
+
+
+
Data Inizio
+
+ {{ date('d/m/Y',strtotime($progetto->data_inizio)) }} +
+
Data Termine
+
+ {{ date('d/m/Y',strtotime($progetto->data_fine)) }} +
+
+
+
Stato
+
+ {{ $progetto->stato }} +
+
Data Creazione
+
+ {{ date('d/m/Y',strtotime($progetto->data_creazione)) }} +
+
+
+
Budget
+
+ € {{ $progetto->budget }} +
+
Coordinatore
+
+ {{ $progetto->name }} +
+
+
+
Note
+
+ {{ $progetto->note; }} +
+
+ @endforeach +
+
+
+
-@section('script') - -@endsection \ No newline at end of file + + @endsection \ No newline at end of file diff --git a/routes/admin.php b/routes/admin.php index bba09c9..7bacf8f 100644 --- a/routes/admin.php +++ b/routes/admin.php @@ -8,6 +8,7 @@ use App\Http\Controllers\ContatoreEnElController; use App\Http\Controllers\ContatoreGasController; use App\Http\Controllers\DocumentiController; use App\Http\Controllers\MovimentiController; +use App\Http\Controllers\RigaProgettoController; use App\Http\Controllers\TagController; use App\Http\Controllers\FullCalenderController; use App\Http\Controllers\AutoController; @@ -110,7 +111,8 @@ Route::get('/', [MovimentiController::class,'dashboard']); Route::post('progetti/new', [ProgettiController::class, 'salvaProgetto']); Route::get('progetti/new', [ProgettiController::class, 'nuovoProgetto'])->name('nuovoProgetto'); Route::get('progetti/delete',[ProgettiController::class, 'deleteProgetto']); - Route::get('progetti/detail', [ProgettiController::class, 'dettaglioProgetto']); + Route::get('progetti/delete_row/{id_row}/return/{id_prog}',[RigaProgettoController::class, 'deleterow']); + Route::get('progetti/detail', [ProgettiController::class, 'dettaglioProgetto'])->name('detail'); Route::post('progetti/detail', [ProgettiController::class, 'inserisciTask']); /// TEST routes