ParsedWorker.php 837 B

1234567891011121314151617181920212223242526272829303132
  1. <?php
  2. /*
  3. * Copyright 2026 Alessandro Chiapparini <sprint_planer_web@chiapparini.org>
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. * Licensed under the Apache License, Version 2.0 (the "License");
  7. * you may not use this file except in compliance with the License.
  8. * See the LICENSE file in the project root for the full license text.
  9. */
  10. declare(strict_types=1);
  11. namespace App\Domain\Import;
  12. /**
  13. * One Arbeitstage-block worker row.
  14. *
  15. * `daysPerWeek` is keyed by week sort_order (1-based) for stable cross-
  16. * referencing into ParsedSheet::$weeks.
  17. */
  18. final class ParsedWorker
  19. {
  20. /**
  21. * @param array<int, float> $daysPerWeek week sortOrder => days
  22. */
  23. public function __construct(
  24. public readonly string $name,
  25. public readonly array $daysPerWeek,
  26. public readonly float $rtb,
  27. ) {
  28. }
  29. }