BimFileResource.php 947 B

123456789101112131415161718192021222324252627282930
  1. <?php
  2. namespace App\Http\Resources\API;
  3. use Illuminate\Http\Request;
  4. use Illuminate\Support\Facades\Storage;
  5. class BimFileResource extends BaseResource
  6. {
  7. /**
  8. * Transform the resource into an array.
  9. *
  10. * @return array<string, mixed>
  11. */
  12. public function toArray(Request $request): array
  13. {
  14. $extraArr = json_decode_arr($this->extra);
  15. return [
  16. 'id' => $this->id,
  17. 'file_id' => $this->file_id,
  18. 'bim_file_id' => $this->bim_file_id,
  19. 'convert_status' => $this->convert_status,
  20. 'lightweight_size' => $extraArr['achievementFileSize'] ?? 0,
  21. 'data_version' => $extraArr['dataVersion'] ?? '',
  22. 'software_type' => $extraArr['softwareType'] ?? ($extraArr['fileOwnership'] ?? ''),
  23. 'preview_image' => empty($this->preview_path) ? null : Storage::url($this->preview_path) . '&imageMogr2/thumbnail/!50p'
  24. ];
  25. }
  26. }