<?phpnamespace AdminBundle\Entity;use DateTime;use Doctrine\ORM\Mapping as ORM;#[ORM\Table(name: 'booking_history')]#[ORM\Entity]class BookingHistory extends BaseEntity{ const ACTION_TYPE_CHANGED_STATUS = 0; const ACTION_TYPE_CHANGED_DRIVER = 1; const ACTION_TYPE_NEW_BOOKING = 2; const ACTION_TYPE_BROADCAST = 3; const ACTION_TYPE_SEND_EMAIL = 4; const ACTION_TYPE_UPDATE_BOOKING_PAYMENT_AMOUNT = 5; const ACTION_TYPE_FLIGHT_NOT_LATE = 6; const ACTION_TYPE_FLIGHT_LATE = 7; const ACTION_TYPE_GENERATE_INVOICE = 8; const ACTION_TYPE_UPDATE_BOOKING = 9; const ACTION_TYPE_AUTO_ASSIGNED_BOOKING = 10; const ACTION_TYPE_ADDED_REVIEW = 11; const ACTION_TYPE_ADD_BOOKING_FROM_ASAP = 12; const ACTION_TYPE_PAYMENT = 13; const ACTION_TYPE_CALCULATED_DISTANCE_AND_DURATION = 14; const ACTION_TYPE_LIVE_UPDATE = 15; const ACTION_DRIVER_SHIFT_TEST = 99; /** * @var int */ #[ORM\Column(name: 'id', type: 'integer', nullable: false)] #[ORM\Id] #[ORM\GeneratedValue(strategy: 'IDENTITY')] protected $id; /** * @var Booking */ #[ORM\JoinColumn(name: 'booking_id', referencedColumnName: 'id')] #[ORM\ManyToOne(targetEntity: \Booking::class, inversedBy: 'bookingHistory', cascade: ['all'])] protected $booking; #[ORM\JoinColumn(name: 'user_id', referencedColumnName: 'id')] #[ORM\ManyToOne(targetEntity: \User::class)] protected $user; /** * @var DateTime */ #[ORM\Column(name: 'date', type: 'datetime')] protected $date; /** * @var int */ #[ORM\Column(name: 'action_type', type: 'integer')] protected $actionType; /** * @var array */ #[ORM\Column(name: 'payload', type: 'array')] protected $payload; public function __construct() { $this->date = new DateTime(); } /** * @return int */ public function getId() { return $this->id; } /** * @param int $id * * @return BookingHistory */ public function setId($id) { $this->id = $id; return $this; } /** * @return mixed */ public function getBooking() { return $this->booking; } /** * @param mixed $booking * * @return BookingHistory */ public function setBooking($booking) { $this->booking = $booking; return $this; } /** * @return mixed */ public function getUser() { return $this->user; } /** * @param mixed $user * * @return BookingHistory */ public function setUser($user) { $this->user = $user; return $this; } /** * @return DateTime */ public function getDate() { return $this->date; } /** * @param DateTime $date * * @return BookingHistory */ public function setDate($date) { $this->date = $date; return $this; } /** * @return int */ public function getActionType() { return $this->actionType; } /** * @param int $actionType * * @return BookingHistory */ public function setActionType($actionType) { $this->actionType = $actionType; return $this; } /** * @return array */ public function getPayload() { return $this->payload; } /** * @param array $payload * * @return BookingHistory */ public function setPayload($payload) { $this->payload = $payload; return $this; }}