FieldType::NUMBER, self::FIELD_SEASON_TICKET_SEQ_NO => FieldType::SINGLE_LINE_TEXT, self::FIELD_VEHICLE_NO => FieldType::SINGLE_LINE_TEXT, self::FIELD_CONTRACT_START_DATE => FieldType::DATE, self::FIELD_CONTRACT_END_DATE => FieldType::DATE, self::FIELD_CONTRACT_AMOUNT => FieldType::NUMBER, self::FIELD_STUDENT_LICENSE_IMAGES => FieldType::FILE, self::FIELD_OTHER_LICENSE_IMAGES => FieldType::FILE, self::FIELD_STUDENT_LICENSE_IMAGES_UPLOAD_DATETIME => FieldType::DATETIME, self::FIELD_OTHER_LICENSE_IMAGES_UPLOAD_DATETIME => FieldType::DATETIME, ]; protected const FIELD_NAMES = [ ...parent::FIELD_NAMES, self::FIELD_SEASON_TICKET_SEQ_NO => 'season_ticket_seq_no', self::FIELD_VEHICLE_NO => 'vehicle_no', self::FIELD_CONTRACT_START_DATE => 'contract_start_date', self::FIELD_CONTRACT_END_DATE => 'contract_end_date', self::FIELD_CONTRACT_AMOUNT => 'contract_amount', self::FIELD_STUDENT_LICENSE_IMAGES_UPLOAD_DATETIME => 'student_license_images_upload_datetime', self::FIELD_OTHER_LICENSE_IMAGES_UPLOAD_DATETIME => 'other_license_images_upload_datetime', ]; public function parkingRoom() { $key = $this->getStr(self::FIELD_SEASON_TICKET_SEQ_NO); if (!$key) { throw new LogicException("モデル初期化不正"); } return ParkingRoom::getAccess()->first( ParkingRoom::getQuery()->where(ParkingRoom::FIELD_SEASON_TICKET_CONTRACT_RECORD_NO, $key) ); } }