improve customer timetable

This commit is contained in:
Roland Schneider
2021-09-19 21:01:07 +02:00
parent fe2f0766e3
commit 678b005c1c
24 changed files with 314 additions and 246 deletions

View File

@@ -5,37 +5,37 @@ namespace customerapi\models\details;
use common\models\Event;
use yii\base\Model;
class EventDetailsView extends Event
/**
$property string $eventName;
$property string $start;
$property string $end;
$property string $seatCount;
$property string $reservationCount;
$property customerapi\models\details\EventDetailsView $room;
$property customerapi\models\details\TrainerDetailsView $trainer;
$property customerapi\models\details\EventTypeDetailsView $eventType;
$property string $registrations;
*/
class EventDetailsView extends Model // extends Event
{
public $id;
public $start;
public $end;
public $seatCount;
// total count of registrations
public $reservationCount;
public $room;
public $trainer;
public $eventType;
// registrations for current user
public $registrations;
public $hasFreeSeats;
/**
* @return string
*/
protected function getTrainerClass()
{
// override trainer class to have more control
// about json fields
return TrainerDetailsView::class;
}
protected function getEventTypeClass()
{
return EventTypeDetailsView::class;
}
protected function getRoomClass()
{
return RoomDetailsView::class;
}
protected function getEquipmentTypeAssignmentsClass()
{
return EventEquipmentTypeAssignmentView::class;
}
/**
@@ -49,15 +49,17 @@ class EventDetailsView extends Event
"id" => "id",
"start" => "start",
"end" => "end",
"seat_count" => "seat_count",
"active" => "active",
// "reservationCount" => "reservationCount"
"seat_count" => "seatCount",
"reservationCount" => "reservationCount",
"registrations" => "registrations",
"hasFreeSeats" => "hasFreeSeats"
];
$fields['trainer'] = 'trainer';
$fields['eventType'] = 'eventType';
$fields['room'] = 'room';
$fields['equipmentTypeAssignments'] = 'equipmentTypeAssignments';
return $fields;
}
}