You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
1.7KB

  1. <?php
  2. namespace App\Kintone\Models\SubTable\SeasonTicketContractSelection;
  3. use App\Kintone\Models\SeasonTicketContractSelection;
  4. use App\Kintone\Models\SubTable\SubTableData;
  5. use App\Util\DateUtil;
  6. use Illuminate\Support\Carbon;
  7. class Entry extends SubTableData
  8. {
  9. public int $entryRecordNo;
  10. public string $status;
  11. public string $planName;
  12. public string $entryNo;
  13. public string $name;
  14. public ?Carbon $entryDatetime;
  15. public ?Carbon $wantsToUseStartDate;
  16. public int $carAmount;
  17. public function __construct(array $data = [])
  18. {
  19. $this->entryRecordNo = intval(data_get($data, SeasonTicketContractSelection::FIELD_ENTRY_LIST_RECORD_NO, 0));
  20. $this->status = data_get($data, SeasonTicketContractSelection::FIELD_ENTRY_LIST_STATUS, "");
  21. $this->planName = data_get($data, SeasonTicketContractSelection::FIELD_ENTRY_LIST_PLAN, "");
  22. $this->entryNo = data_get($data, SeasonTicketContractSelection::FIELD_ENTRY_LIST_ENTRY_NO, "");
  23. $this->name = data_get($data, SeasonTicketContractSelection::FIELD_ENTRY_LIST_NAME, "");
  24. $this->entryDatetime = DateUtil::parse(data_get($data, SeasonTicketContractSelection::FIELD_ENTRY_LIST_ENTRY_DATETIME, ""));
  25. $this->wantsToUseStartDate = DateUtil::parse(data_get($data, SeasonTicketContractSelection::FIELD_ENTRY_LIST_WANTS_TO_USE_START_DATE, ""));
  26. $this->carAmount = intval(data_get($data, SeasonTicketContractSelection::FIELD_ENTRY_LIST_CAR_AMOUNT, 0));
  27. parent::__construct($data);
  28. }
  29. public function toArray(): array
  30. {
  31. return [
  32. SeasonTicketContractSelection::FIELD_ENTRY_LIST_RECORD_NO => $this->entryRecordNo,
  33. ];
  34. }
  35. }