|null $additionalData Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well. */ private ?array $additionalData = null; /** * @var DateTime|null $createdAt Date d'enregistrement dans le système. */ private ?DateTime $createdAt = null; /** * @var Date|null $endDate Date de fin de contrat effective (optionnelle). */ private ?Date $endDate = null; /** * @var string|null $establishment Code de l'établissement d'affectation. */ private ?string $establishment = null; /** * @var string|null $firstName Prénom de l'employé. */ private ?string $firstName = null; /** * @var string|null $lastName Nom de famille de l'employé. */ private ?string $lastName = null; /** * @var string|null $matricule Matricule public unique de l'employé (SIRH). */ private ?string $matricule = null; /** * @var Date|null $plannedEndDate Date de fin de contrat prévue (optionnelle). */ private ?Date $plannedEndDate = null; /** * @var string|null $service Identifiant du service interne. */ private ?string $service = null; /** * @var string|null $site Code du site géographique. */ private ?string $site = null; /** * @var Date|null $startDate Date de prise de poste (YYYY-MM-DD). */ private ?Date $startDate = null; /** * @var DateTime|null $updatedAt Date de dernière mise à jour. */ private ?DateTime $updatedAt = null; /** * Instantiates a new Employee and sets the default values. */ public function __construct() { $this->setAdditionalData([]); } /** * Creates a new instance of the appropriate class based on discriminator value * @param ParseNode $parseNode The parse node to use to read the discriminator value and create the object * @return Employee */ public static function createFromDiscriminatorValue(ParseNode $parseNode): Employee { return new Employee(); } /** * Gets the AdditionalData property value. Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well. * @return array|null */ public function getAdditionalData(): ?array { return $this->additionalData; } /** * Gets the createdAt property value. Date d'enregistrement dans le système. * @return DateTime|null */ public function getCreatedAt(): ?DateTime { return $this->createdAt; } /** * Gets the endDate property value. Date de fin de contrat effective (optionnelle). * @return Date|null */ public function getEndDate(): ?Date { return $this->endDate; } /** * Gets the establishment property value. Code de l'établissement d'affectation. * @return string|null */ public function getEstablishment(): ?string { return $this->establishment; } /** * The deserialization information for the current model * @return array */ public function getFieldDeserializers(): array { $o = $this; return [ 'createdAt' => fn(ParseNode $n) => $o->setCreatedAt($n->getDateTimeValue()), 'endDate' => fn(ParseNode $n) => $o->setEndDate($n->getDateValue()), 'establishment' => fn(ParseNode $n) => $o->setEstablishment($n->getStringValue()), 'firstName' => fn(ParseNode $n) => $o->setFirstName($n->getStringValue()), 'lastName' => fn(ParseNode $n) => $o->setLastName($n->getStringValue()), 'matricule' => fn(ParseNode $n) => $o->setMatricule($n->getStringValue()), 'plannedEndDate' => fn(ParseNode $n) => $o->setPlannedEndDate($n->getDateValue()), 'service' => fn(ParseNode $n) => $o->setService($n->getStringValue()), 'site' => fn(ParseNode $n) => $o->setSite($n->getStringValue()), 'startDate' => fn(ParseNode $n) => $o->setStartDate($n->getDateValue()), 'updatedAt' => fn(ParseNode $n) => $o->setUpdatedAt($n->getDateTimeValue()), ]; } /** * Gets the firstName property value. Prénom de l'employé. * @return string|null */ public function getFirstName(): ?string { return $this->firstName; } /** * Gets the lastName property value. Nom de famille de l'employé. * @return string|null */ public function getLastName(): ?string { return $this->lastName; } /** * Gets the matricule property value. Matricule public unique de l'employé (SIRH). * @return string|null */ public function getMatricule(): ?string { return $this->matricule; } /** * Gets the plannedEndDate property value. Date de fin de contrat prévue (optionnelle). * @return Date|null */ public function getPlannedEndDate(): ?Date { return $this->plannedEndDate; } /** * Gets the service property value. Identifiant du service interne. * @return string|null */ public function getService(): ?string { return $this->service; } /** * Gets the site property value. Code du site géographique. * @return string|null */ public function getSite(): ?string { return $this->site; } /** * Gets the startDate property value. Date de prise de poste (YYYY-MM-DD). * @return Date|null */ public function getStartDate(): ?Date { return $this->startDate; } /** * Gets the updatedAt property value. Date de dernière mise à jour. * @return DateTime|null */ public function getUpdatedAt(): ?DateTime { return $this->updatedAt; } /** * Serializes information the current object * @param SerializationWriter $writer Serialization writer to use to serialize this model */ public function serialize(SerializationWriter $writer): void { $writer->writeDateTimeValue('createdAt', $this->getCreatedAt()); $writer->writeDateValue('endDate', $this->getEndDate()); $writer->writeStringValue('establishment', $this->getEstablishment()); $writer->writeStringValue('firstName', $this->getFirstName()); $writer->writeStringValue('lastName', $this->getLastName()); $writer->writeStringValue('matricule', $this->getMatricule()); $writer->writeDateValue('plannedEndDate', $this->getPlannedEndDate()); $writer->writeStringValue('service', $this->getService()); $writer->writeStringValue('site', $this->getSite()); $writer->writeDateValue('startDate', $this->getStartDate()); $writer->writeDateTimeValue('updatedAt', $this->getUpdatedAt()); $writer->writeAdditionalData($this->getAdditionalData()); } /** * Sets the AdditionalData property value. Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well. * @param array $value Value to set for the AdditionalData property. */ public function setAdditionalData(?array $value): void { $this->additionalData = $value; } /** * Sets the createdAt property value. Date d'enregistrement dans le système. * @param DateTime|null $value Value to set for the createdAt property. */ public function setCreatedAt(?DateTime $value): void { $this->createdAt = $value; } /** * Sets the endDate property value. Date de fin de contrat effective (optionnelle). * @param Date|null $value Value to set for the endDate property. */ public function setEndDate(?Date $value): void { $this->endDate = $value; } /** * Sets the establishment property value. Code de l'établissement d'affectation. * @param string|null $value Value to set for the establishment property. */ public function setEstablishment(?string $value): void { $this->establishment = $value; } /** * Sets the firstName property value. Prénom de l'employé. * @param string|null $value Value to set for the firstName property. */ public function setFirstName(?string $value): void { $this->firstName = $value; } /** * Sets the lastName property value. Nom de famille de l'employé. * @param string|null $value Value to set for the lastName property. */ public function setLastName(?string $value): void { $this->lastName = $value; } /** * Sets the matricule property value. Matricule public unique de l'employé (SIRH). * @param string|null $value Value to set for the matricule property. */ public function setMatricule(?string $value): void { $this->matricule = $value; } /** * Sets the plannedEndDate property value. Date de fin de contrat prévue (optionnelle). * @param Date|null $value Value to set for the plannedEndDate property. */ public function setPlannedEndDate(?Date $value): void { $this->plannedEndDate = $value; } /** * Sets the service property value. Identifiant du service interne. * @param string|null $value Value to set for the service property. */ public function setService(?string $value): void { $this->service = $value; } /** * Sets the site property value. Code du site géographique. * @param string|null $value Value to set for the site property. */ public function setSite(?string $value): void { $this->site = $value; } /** * Sets the startDate property value. Date de prise de poste (YYYY-MM-DD). * @param Date|null $value Value to set for the startDate property. */ public function setStartDate(?Date $value): void { $this->startDate = $value; } /** * Sets the updatedAt property value. Date de dernière mise à jour. * @param DateTime|null $value Value to set for the updatedAt property. */ public function setUpdatedAt(?DateTime $value): void { $this->updatedAt = $value; } }