Bewertungs model

This commit is contained in:
Robert
2024-01-19 15:40:23 +01:00
parent abeefa2d74
commit 98a3c6c790

View File

@@ -0,0 +1,65 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Session;
class bewertungen extends Model
{
use HasFactory;
function bewerten(int $ersteller, int $gericht, int $sterne, string $bemerkung){
$sql = "INSERT INTO bewertungen (ersteller_id,gericht_id,bemerkung,sterne,hervorgehoben) VALUES (".$ersteller. ",". $gericht.",\"". $bemerkung."\",".$sterne.",0);";
DB::insert($sql);
return 1;
}
function bewertungen(){
$sql_bewertungen = "SELECT bewertungen.gericht_id, bewertungen.sterne, bewertungen.bemerkung FROM bewertungen ORDER BY bewertungen.erstellungsdatum LIMIT 30";
$result_sql_bewertungen = DB::select($sql_bewertungen);
$result = [];
foreach ($result_sql_bewertungen as $row) {
$sql = "SELECT gericht.name FROM gericht WHERE gericht.id=". $row->gericht_id;
array_push($result,[DB::select($sql),$row->sterne,$row->bemerkung]);
}
return $result;
}
function meine_bewertungen(int $id){
$sql_bewertungen = "SELECT bewertungen.gericht_id, bewertungen.id ,bewertungen.sterne, bewertungen.bemerkung FROM bewertungen WHERE bewertungen.ersteller_id =". $id." ORDER BY bewertungen.erstellungsdatum";
$result_sql_bewertungen = DB::select($sql_bewertungen);
$result = [];
foreach ($result_sql_bewertungen as $row) {
$sql = "SELECT gericht.name FROM gericht WHERE gericht.id=" . $row->gericht_id;
array_push($result, [DB::select($sql), $row->sterne, $row->bemerkung,$row->id]);
}
return $result;
}
function loschen(int $id){
$sql_bewertungen = "SELECT bewertungen.ersteller_id FROM bewertungen WHERE bewertungen.id =". $id;
$result_sql_bewertungen = DB::select($sql_bewertungen);
if($result_sql_bewertungen[0]->ersteller_id != session("benutzer_id",0)){
return 0;
}
$sql_bewertungen = "DELETE FROM bewertungen WHERE bewertungen.id = ".$id;
DB::delete($sql_bewertungen);
return 1;
}
}