Creato pagine Avvisi e sistemato dashboard (creato permesso "Avvisi")

This commit is contained in:
Amministratore 2023-07-19 11:09:25 +02:00
parent b5eb6c383b
commit 58e9344180
8 changed files with 53 additions and 19 deletions

View File

@ -3,8 +3,14 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use App\Models\Avviso;
class AvvisoController extends Controller class AvvisoController extends Controller
{ {
// //
public function saveAvviso(Request $request)
{
Avviso::newAvviso($request);
return redirect()->back();
}
} }

View File

@ -6,7 +6,7 @@ use App\Models\Categorie;
use App\Models\Movimenti; use App\Models\Movimenti;
use App\Models\tag; use App\Models\tag;
use App\Models\Task; use App\Models\Task;
// use App\Models\User; use App\Models\Avviso;
// use App\Http\Controllers\Auth; // use App\Http\Controllers\Auth;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\DB;
@ -46,14 +46,16 @@ class MovimentiController extends Controller
$uscite=Movimenti::getUscite(date('Y')); $uscite=Movimenti::getUscite(date('Y'));
$saldo=Movimenti::getSaldoTot(); $saldo=Movimenti::getSaldoTot();
$mieiTasks=Task::getTaskAssignedToUser(Auth::id()); $mieiTasks=Task::getTaskAssignedToUser(Auth::id());
$TasksAssegnati=Task::getTaskAssignedByUser(Auth::id()); // $TasksAssegnati=Task::getTaskAssignedByUser(Auth::id());
$avvisi=Avviso::getAvvisi();
return view('layouts.dashboard',[ return view('layouts.dashboard',[
'entrate'=>$entrate, 'entrate'=>$entrate,
'uscite'=>$uscite, 'uscite'=>$uscite,
'saldo'=>$saldo, 'saldo'=>$saldo,
'mieitask' => $mieiTasks, 'mieitask' => $mieiTasks,
'assegnati' => $TasksAssegnati, // 'assegnati' => $TasksAssegnati,
'avvisi'=>$avvisi,
]); ]);
} }

View File

@ -8,4 +8,21 @@ use Illuminate\Database\Eloquent\Model;
class Avviso extends Model class Avviso extends Model
{ {
use HasFactory; use HasFactory;
protected $fillable=['avviso','creato_il', 'creato_da', 'urgente'];
public static function newAvviso($data)
{
self::create([
'avviso'=>$data['avviso'],
'creato_da'=>$data['creato_da'],
'creato_il'=>date('Y-m-d'),
'urgente'=>$data['urgente'],
]);
}
public static function getAvvisi()
{
return self::all();
}
} }

View File

@ -17,7 +17,9 @@ class CreateAvvisosTable extends Migration
$table->id(); $table->id();
$table->timestamps(); $table->timestamps();
$table->longtext('avviso'); $table->longtext('avviso');
$table->date('creato_il'); $table->date('creato_il')->nullable()->default(date('Y-m-d'));
$table->bigInteger('creato_da');
$table->boolean('urgente')->nullable()->default(false);
}); });
} }

View File

@ -4,10 +4,12 @@ $(document).ready(function() {
responsive: true responsive: true
}); });
// Reload del div // Reload del div
/*
$.ajaxSetup({ cache: false }); $.ajaxSetup({ cache: false });
setInterval(function() { setInterval(function() {
$('#mieitask').load('/admin'); $('#mieitask').load('/admin');
}, 8000); }, 8000);
*/
}); });

View File

@ -146,29 +146,29 @@
</div> </div>
<div class="panel-body"> <div class="panel-body">
<ul class="chat"> <ul class="chat">
@foreach($assegnati as $assegnato) @foreach($avvisi as $avviso)
<span class="chat-img pull-left"> <span class="chat-img pull-left">
<!-- rendere immagine dinamica --> <!-- rendere immagine dinamica -->
<img src="{{ Gravatar::get(App\Models\User::getUserById($assegnato->assegnato_a)->email)}}" width="32" class="img-circle"> <img src="{{ Gravatar::get(App\Models\User::getUserById($avviso->creato_da)->email)}}" width="32" class="img-circle">
</span> </span>
<div class="chat-body clearfix"> <div class="chat-body clearfix">
<li class="left clearfix"> <li class="left clearfix">
@if($assegnato->stato==='Chiuso')
<s> <a href="#{{ $avviso->id }}"><i>{{date_format(date_create($avviso->creato_il),'d/m/Y')}}</i> - {{ $avviso->avviso }}</a>
<a href="#{{ $assegnato->id }}"> {{ $assegnato->titolo }}</a>
{{$assegnato->descrizione}}</s>
@else
<b><a href="#{{ $assegnato->id }}"> {{ $assegnato->titolo }}</a></b>
<h6>{{$assegnato->descrizione}}</h6>
@endif
</li> </li>
</div> </div>
@endforeach @endforeach
</ul> </ul>
</div> </div>
<div class="panel-footer"> <div class="panel-footer">
<form action="{{ Route('newAvviso') }}" method="POST">
@csrf
<label for="avviso" class="form-label">Nuovo Avviso:</label>
<textarea class="form-control" name="avviso"></textarea>
<input type="hidden" name="creato_da" value="{{ Auth::user()->id }}">
<input type="submit" name="submit" class="button btn-primary">
</form>
</div> </div>
</div> </div>
</div> </div>
@ -177,5 +177,5 @@
@endsection @endsection
@section('script') @section('script')
<script src="/js/app/dashboard.js"></script>
@endsection @endsection

View File

@ -25,7 +25,7 @@
<li class="left" clearfix> <li class="left" clearfix>
<span class="chat-img pull-left"> <span class="chat-img pull-left">
<!-- rendere immagine dinamica --> <!-- rendere immagine dinamica -->
<img src="{{ Gravatar::get(App\Models\User::getUserById($task->assegnato_a)->email)}}" width="32" class="img-circle"> <img src="{{ Gravatar::get(App\Models\User::getUserById($task->assegnato_a)->email )}}" width="32" class="img-circle">
</span> </span>
<div class="chat-body clearfix"> <div class="chat-body clearfix">
{{ $task->titolo}} {{ $task->titolo}}
@ -84,7 +84,7 @@
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<input type="hidden" name="creato_da" value="{{ Auth::user()->id}}"> <input type="hidden" name="creato_da" value="{{ Auth::user()->id }}">
<input type="hidden" name="stato" value="Aperto"> <input type="hidden" name="stato" value="Aperto">
<input type="hidden" name="creato_il" value="{{ date('Y-m-d'); }}"> <input type="hidden" name="creato_il" value="{{ date('Y-m-d'); }}">
<input type="hidden" name="chiuso_il" value="{{ date('Y-m-d'); }}"> <input type="hidden" name="chiuso_il" value="{{ date('Y-m-d'); }}">

View File

@ -16,6 +16,7 @@ use App\Http\Controllers\AnagraficaController;
use App\Http\Controllers\Utenti; use App\Http\Controllers\Utenti;
use App\Http\Controllers\ProgettiController; use App\Http\Controllers\ProgettiController;
use App\Http\Controllers\TaskController; use App\Http\Controllers\TaskController;
use App\Http\Controllers\AvvisoController;
use App\Mail\myTestEmail; use App\Mail\myTestEmail;
/* /*
@ -154,6 +155,10 @@ Route::group(['middleware'=>['permission:tasks']], function(){
Route::get('service/getUsers', [Utenti::class,'getUsers']); Route::get('service/getUsers', [Utenti::class,'getUsers']);
}); });
Route::group(['middleware'=>['permission:avvisi']], function(){
Route::post('avvisi/new',[AvvisoController::class,'saveAvviso'])->name('newAvviso');
});
// -- ONLY FOR TEST -- TO BE REMOVED // // -- ONLY FOR TEST -- TO BE REMOVED //
/// TEST ROUTES /// TEST ROUTES