Your IP : 216.73.217.79


Current Path : /var/www/v3.cesa.co.za/src/EventBundle/Entity/
Upload File :
Current File : /var/www/v3.cesa.co.za/src/EventBundle/Entity/SchoolEvent.php

<?php

namespace App\EventBundle\Entity;

use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\DBAL\Types\Types;
use Doctrine\ORM\Mapping as ORM;

/**
 * SchoolEvent
 *
 * @ORM\Table(name="SchoolEvents")
 * @ORM\Entity(repositoryClass="App\EventBundle\Repository\SchoolEventRepository")
 */
class SchoolEvent
{
    /**
     * @ORM\Id
     * @ORM\Column(name="EventID", type="integer")
     * @ORM\GeneratedValue(strategy="IDENTITY")
     */
    private $id;

    /**
     * @ORM\Column(name="EventName", type="string", length=255, nullable=true)
     */
    private $event_name;

    /**
     * @ORM\Column(name="Level", type="string", length=255, nullable=true)
     */
    private $level;

    /**
     * @ORM\Column(name="City", type="string", length=255, nullable=true)
     */
    private $city;

    /**
     * @ORM\Column(name="Venue", type="string", length=255, nullable=true)
     */
    private $venue;

    /**
     * @ORM\Column(name="StartDate", type="date", nullable=true)
     */
    private $start_date;

    /**
     * @ORM\Column(name="EndDate", type="date", nullable=true)
     */
    private $end_date;

    /**
     * @ORM\Column(name="StartTime", type="time", nullable=true)
     */
    private $start_time;

    /**
     * @ORM\Column(name="EndTime", type="time", nullable=true)
     */
    private $end_time;

    /**
     * @ORM\Column(name="AvailableSpaces", type="integer", nullable=false, options={"default": 0})
     */
    private $available_spaces;

    /**
     * @ORM\Column(name="CostPerPerson", type="decimal", precision=2, scale=2, nullable=true)
     */
    private $cost_per_person;

    /**
     * @ORM\Column(name="EventDescription", type="text", nullable=true)
     */
    private $event_description;

    /**
     * @ORM\Column(name="Hours", type="integer", nullable=false, options={"default": 0})
     */
    private $hours;

    /**
     * @ORM\Column(name="CPD", type="string", length=50, nullable=true)
     */
    private $cpd;

    /**
     * @ORM\Column(name="CODE", type="string", length=50, nullable=true)
     */
    private $code;

    /**
     * @ORM\Column(name="AccredNum", type="string", length=50, nullable=true)
     */
    private $accred_num;

    /**
     * @ORM\Column(name="Province", type="string", length=50, nullable=true)
     */
    private $province;

    /**
     * @ORM\Column(name="RegDeadline", type="datetime", nullable=true)
     */
    private $reg_deadline;

    /**
     * @ORM\Column(name="MemberDiscount", type="decimal", precision=2, scale=2, nullable=true)
     */
    private $member_discount;

    /**
     * @ORM\Column(name="EarlyBirdDiscount", type="decimal", precision=2, scale=2, nullable=true)
     */
    private $early_bird_discount;

    /**
     * @ORM\Column(name="EarlyBirdDate", type="datetime", nullable=true)
     */
    private $early_bird_date;

    /**
     * @ORM\Column(name="Cancelled", type="boolean", nullable=false, options={"default": 0})
     */
    private $cancelled;

    /**
     * @ORM\Column(name="BankAccName", type="string", length=255, nullable=true)
     */
    private $bank_acc_name;

    /**
     * @ORM\Column(name="ExternalLink", type="text", nullable=true)
     */
    private $external_link;

    /**
     * @ORM\Column(name="FileAttachment", type="string", length=255, nullable=true)
     */
    private $file_attachment;

    /**
     * @ORM\Column(name="CandidateAcademy", type="string", length=1, nullable=true)
     */
    private $candidate_academy;

    /**
     * @ORM\Column(name="BookingConfirmed", type="string", length=1, nullable=true)
     */
    private $booking_confirmed;

    /**
     * @ORM\Column(name="AttendanceRegister", type="string", length=255, nullable=true)
     */
    private $attendance_register;

    /**
     * @ORM\Column(name="SACPCMPNum", type="string", length=255, nullable=true)
     */
    private $sacpcmp_num;

    /**
     * @ORM\Column(name="AccredNum2", type="string", length=255, nullable=true)
     */
    private $accred_num_2;

    /**
     * @ORM\Column(name="ContactPerson", type="string", length=255, nullable=true)
     */
    private $contact_person;

    /**
     * @ORM\Column(name="ContactTel", type="string", length=255, nullable=true)
     */
    private $contact_tel;

    /**
     * @ORM\Column(name="ContactEmail", type="string", length=255, nullable=true)
     */
    private $contact_email;

    /**
     * @ORM\Column(name="CourseType", type="string", columnDefinition="enum('CESA Course', 'Inhouse Client Course')", length=255, nullable=true)
     */
    private $course_type;

    /**
     * @ORM\Column(name="OnlineCourseLink", type="string", length=255, nullable=true)
     */
    private $online_course_link;

    /**
     * @ORM\Column(name="TestRequired", type="boolean", nullable=false, options={"default": 0})
     */
    private $test_required;

    /**
     * @ORM\Column(name="AttendanceRegister2", type="string", length=255, nullable=true)
     */
    private $attendance_register_2;

    /**
     * @ORM\Column(name="AttendanceRegister3", type="string", length=255, nullable=true)
     */
    private $attendance_register_3;

    /**
     * @ORM\Column(name="AttendanceRegister4", type="string", length=255, nullable=true)
     */
    private $attendance_register_4;

    /**
     * @ORM\Column(name="AttendanceRegister5", type="string", length=255, nullable=true)
     */
    private $attendance_register_5;

    /**
     * @ORM\Column(name="CopyRegFormTo", type="string", length=255, nullable=true)
     */
    private $copy_reg_form_to;

    /**
     * @ORM\Column(name="TrainerInvRecv", type="boolean", nullable=false, options={"default": 0})
     */
    private $trainer_inv_recv;

    /**
     * @ORM\ManyToOne(targetEntity="Questionnaire", inversedBy="school_event")
     * @ORM\JoinColumn(name="QuestionnaireID", referencedColumnName="Questionnaire_ID")
     */
    private $questionnaire;

    private Collection $school_attendee;

    /**
     * @ORM\ManyToOne(targetEntity="SchoolCourse", inversedBy="school_event")
     * @ORM\JoinColumn(name="SchoolCourseID", referencedColumnName="SchoolCourseID")
     */
    private ?SchoolCourse $school_course = null;

    private ?SchoolWebCategory $school_web_category = null;

    private ?SchoolCostPackage $school_cost_package = null;

    /**
     * @ORM\ManyToOne(targetEntity="TrainingProvider", inversedBy="school_event")
     * @ORM\JoinColumn(name="TrainerID", referencedColumnName="ProviderID")
     */
    private ?TrainingProvider $training_provider = null;

    public function __construct()
    {
        $this->school_attendee = new ArrayCollection();
    }

    public function getId(): ?int
    {
        return $this->id;
    }

    public function getEventName(): ?string
    {
        return $this->event_name;
    }

    public function setEventName(?string $event_name): static
    {
        $this->event_name = $event_name;

        return $this;
    }

    public function getLevel(): ?string
    {
        return $this->level;
    }

    public function setLevel(?string $level): static
    {
        $this->level = $level;

        return $this;
    }

    public function getCity(): ?string
    {
        return $this->city;
    }

    public function setCity(?string $city): static
    {
        $this->city = $city;

        return $this;
    }

    public function getVenue(): ?string
    {
        return $this->venue;
    }

    public function setVenue(?string $venue): static
    {
        $this->venue = $venue;

        return $this;
    }

    public function getStartDate(): ?\DateTimeInterface
    {
        return $this->start_date;
    }

    public function setStartDate(?\DateTimeInterface $start_date): static
    {
        $this->start_date = $start_date;

        return $this;
    }

    public function getEndDate(): ?\DateTimeInterface
    {
        return $this->end_date;
    }

    public function setEndDate(?\DateTimeInterface $end_date): static
    {
        $this->end_date = $end_date;

        return $this;
    }

    public function getStartTime(): ?\DateTimeInterface
    {
        return $this->start_time;
    }

    public function setStartTime(?\DateTimeInterface $start_time): static
    {
        $this->start_time = $start_time;

        return $this;
    }

    public function getEndTime(): ?\DateTimeInterface
    {
        return $this->end_time;
    }

    public function setEndTime(?\DateTimeInterface $end_time): static
    {
        $this->end_time = $end_time;

        return $this;
    }

    public function getAvailableSpaces(): ?int
    {
        return $this->available_spaces;
    }

    public function setAvailableSpaces(int $available_spaces): static
    {
        $this->available_spaces = $available_spaces;

        return $this;
    }

    public function getCostPerPerson(): ?string
    {
        return $this->cost_per_person;
    }

    public function setCostPerPerson(?string $cost_per_person): static
    {
        $this->cost_per_person = $cost_per_person;

        return $this;
    }

    public function getEventDescription()
    {
        return $this->event_description;
    }

    public function setEventDescription($event_description): static
    {
        $this->event_description = $event_description;

        return $this;
    }

    public function getHours(): ?int
    {
        return $this->hours;
    }

    public function setHours(int $hours): static
    {
        $this->hours = $hours;

        return $this;
    }

    public function getCpd(): ?string
    {
        return $this->cpd;
    }

    public function setCpd(?string $cpd): static
    {
        $this->cpd = $cpd;

        return $this;
    }

    public function getCode(): ?string
    {
        return $this->code;
    }

    public function setCode(?string $code): static
    {
        $this->code = $code;

        return $this;
    }

    public function getAccredNum(): ?string
    {
        return $this->accred_num;
    }

    public function setAccredNum(?string $accred_num): static
    {
        $this->accred_num = $accred_num;

        return $this;
    }

    public function getProvince(): ?string
    {
        return $this->province;
    }

    public function setProvince(?string $province): static
    {
        $this->province = $province;

        return $this;
    }

    public function getRegDeadline(): ?\DateTimeInterface
    {
        return $this->reg_deadline;
    }

    public function setRegDeadline(?\DateTimeInterface $reg_deadline): static
    {
        $this->reg_deadline = $reg_deadline;

        return $this;
    }

    public function getMemberDiscount(): ?string
    {
        return $this->member_discount;
    }

    public function setMemberDiscount(?string $member_discount): static
    {
        $this->member_discount = $member_discount;

        return $this;
    }

    public function getEarlyBirdDiscount(): ?string
    {
        return $this->early_bird_discount;
    }

    public function setEarlyBirdDiscount(?string $early_bird_discount): static
    {
        $this->early_bird_discount = $early_bird_discount;

        return $this;
    }

    public function getEarlyBirdDate(): ?\DateTimeInterface
    {
        return $this->early_bird_date;
    }

    public function setEarlyBirdDate(?\DateTimeInterface $early_bird_date): static
    {
        $this->early_bird_date = $early_bird_date;

        return $this;
    }

    public function isCancelled(): ?bool
    {
        return $this->cancelled;
    }

    public function setCancelled(bool $cancelled): static
    {
        $this->cancelled = $cancelled;

        return $this;
    }

    public function getBankAccName(): ?string
    {
        return $this->bank_acc_name;
    }

    public function setBankAccName(?string $bank_acc_name): static
    {
        $this->bank_acc_name = $bank_acc_name;

        return $this;
    }

    public function getExternalLink(): ?string
    {
        return $this->external_link;
    }

    public function setExternalLink(?string $external_link): static
    {
        $this->external_link = $external_link;

        return $this;
    }

    public function getFileAttachment(): ?string
    {
        return $this->file_attachment;
    }

    public function setFileAttachment(?string $file_attachment): static
    {
        $this->file_attachment = $file_attachment;

        return $this;
    }

    public function getCandidateAcademy(): ?string
    {
        return $this->candidate_academy;
    }

    public function setCandidateAcademy(?string $candidate_academy): static
    {
        $this->candidate_academy = $candidate_academy;

        return $this;
    }

    public function getBookingConfirmed(): ?string
    {
        return $this->booking_confirmed;
    }

    public function setBookingConfirmed(?string $booking_confirmed): static
    {
        $this->booking_confirmed = $booking_confirmed;

        return $this;
    }

    public function getAttendanceRegister(): ?string
    {
        return $this->attendance_register;
    }

    public function setAttendanceRegister(?string $attendance_register): static
    {
        $this->attendance_register = $attendance_register;

        return $this;
    }

    public function getSacpcmpNum(): ?string
    {
        return $this->sacpcmp_num;
    }

    public function setSacpcmpNum(?string $sacpcmp_num): static
    {
        $this->sacpcmp_num = $sacpcmp_num;

        return $this;
    }

    public function getAccredNum2(): ?string
    {
        return $this->accred_num_2;
    }

    public function setAccredNum2(?string $accred_num_2): static
    {
        $this->accred_num_2 = $accred_num_2;

        return $this;
    }

    public function getContactPerson(): ?string
    {
        return $this->contact_person;
    }

    public function setContactPerson(?string $contact_person): static
    {
        $this->contact_person = $contact_person;

        return $this;
    }

    public function getContactTel(): ?string
    {
        return $this->contact_tel;
    }

    public function setContactTel(?string $contact_tel): static
    {
        $this->contact_tel = $contact_tel;

        return $this;
    }

    public function getContactEmail(): ?string
    {
        return $this->contact_email;
    }

    public function setContactEmail(?string $contact_email): static
    {
        $this->contact_email = $contact_email;

        return $this;
    }

    public function getCourseType(): ?string
    {
        return $this->course_type;
    }

    public function setCourseType(?string $course_type): static
    {
        $this->course_type = $course_type;

        return $this;
    }

    public function getOnlineCourseLink(): ?string
    {
        return $this->online_course_link;
    }

    public function setOnlineCourseLink(?string $online_course_link): static
    {
        $this->online_course_link = $online_course_link;

        return $this;
    }

    public function isTestRequired(): ?bool
    {
        return $this->test_required;
    }

    public function setTestRequired(bool $test_required): static
    {
        $this->test_required = $test_required;

        return $this;
    }

    public function getAttendanceRegister2(): ?string
    {
        return $this->attendance_register_2;
    }

    public function setAttendanceRegister2(?string $attendance_register_2): static
    {
        $this->attendance_register_2 = $attendance_register_2;

        return $this;
    }

    public function getAttendanceRegister3(): ?string
    {
        return $this->attendance_register_3;
    }

    public function setAttendanceRegister3(?string $attendance_register_3): static
    {
        $this->attendance_register_3 = $attendance_register_3;

        return $this;
    }

    public function getAttendanceRegister4(): ?string
    {
        return $this->attendance_register_4;
    }

    public function setAttendanceRegister4(?string $attendance_register_4): static
    {
        $this->attendance_register_4 = $attendance_register_4;

        return $this;
    }

    public function getAttendanceRegister5(): ?string
    {
        return $this->attendance_register_5;
    }

    public function setAttendanceRegister5(?string $attendance_register_5): static
    {
        $this->attendance_register_5 = $attendance_register_5;

        return $this;
    }

    public function getCopyRegFormTo(): ?string
    {
        return $this->copy_reg_form_to;
    }

    public function setCopyRegFormTo(?string $copy_reg_form_to): static
    {
        $this->copy_reg_form_to = $copy_reg_form_to;

        return $this;
    }

    public function isTrainerInvRecv(): ?bool
    {
        return $this->trainer_inv_recv;
    }

    public function setTrainerInvRecv(bool $trainer_inv_recv): static
    {
        $this->trainer_inv_recv = $trainer_inv_recv;

        return $this;
    }

    /**
     * @return Collection<int, SchoolAttendee>
     */
    public function getSchoolAttendee(): Collection
    {
        return $this->school_attendee;
    }

    public function addSchoolAttendee(SchoolAttendee $schoolAttendee): static
    {
        if (!$this->school_attendee->contains($schoolAttendee)) {
            $this->school_attendee->add($schoolAttendee);
            $schoolAttendee->setSchoolEvent($this);
        }

        return $this;
    }

    public function removeSchoolAttendee(SchoolAttendee $schoolAttendee): static
    {
        if ($this->school_attendee->removeElement($schoolAttendee)) {
            // set the owning side to null (unless already changed)
            if ($schoolAttendee->getSchoolEvent() === $this) {
                $schoolAttendee->setSchoolEvent(null);
            }
        }

        return $this;
    }

    public function getSchoolCourse(): ?SchoolCourse
    {
        return $this->school_course;
    }

    public function setSchoolCourse(?SchoolCourse $school_course): static
    {
        $this->school_course = $school_course;

        return $this;
    }

    public function getSchoolWebCategory(): ?SchoolWebCategory
    {
        return $this->school_web_category;
    }

    public function setSchoolWebCategory(?SchoolWebCategory $school_web_category): static
    {
        $this->school_web_category = $school_web_category;

        return $this;
    }

    public function getSchoolCostPackage(): ?SchoolCostPackage
    {
        return $this->school_cost_package;
    }

    public function setSchoolCostPackage(?SchoolCostPackage $school_cost_package): static
    {
        $this->school_cost_package = $school_cost_package;

        return $this;
    }

    public function getQuestionnaire(): ?Questionnaire
    {
        return $this->questionnaire;
    }

    public function setQuestionnaire(?Questionnaire $questionnaire): static
    {
        $this->questionnaire = $questionnaire;

        return $this;
    }

    public function getTrainingProvider(): ?TrainingProvider
    {
        return $this->training_provider;
    }

    public function setTrainingProvider(?TrainingProvider $training_provider): static
    {
        $this->training_provider = $training_provider;

        return $this;
    }
}