|
@@ -13,6 +13,7 @@ use Illuminate\Foundation\Bus\Dispatchable;
|
|
|
use Illuminate\Http\UploadedFile;
|
|
|
use Illuminate\Queue\InteractsWithQueue;
|
|
|
use Illuminate\Queue\SerializesModels;
|
|
|
+use Illuminate\Support\Facades\Storage;
|
|
|
|
|
|
/**
|
|
|
* 处理BIM的轻量化转换
|
|
@@ -23,16 +24,16 @@ class ConvertBimFile implements ShouldQueue
|
|
|
|
|
|
private $fileId;
|
|
|
private BimFileBO $bimFileBO;
|
|
|
- private $file;
|
|
|
+ private $fileStream;
|
|
|
|
|
|
/**
|
|
|
* Create a new job instance.
|
|
|
*/
|
|
|
- public function __construct(int $fileId, BimFileBO $bimFileBO, ?UploadedFile $file = null)
|
|
|
+ public function __construct(int $fileId, BimFileBO $bimFileBO, ?UploadedFile $fileStream = null)
|
|
|
{
|
|
|
$this->fileId = $fileId;
|
|
|
$this->bimFileBO = $bimFileBO;
|
|
|
- $this->file = $file;
|
|
|
+ $this->fileStream = $fileStream;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -42,13 +43,14 @@ class ConvertBimFile implements ShouldQueue
|
|
|
{
|
|
|
$file = File::find($this->fileId);
|
|
|
|
|
|
- if ($file) {
|
|
|
- $bimInfo = BIMFactory::make()->uploadFile($this->file, $this->bimFileBO);
|
|
|
+ if ($file && $file->bimFile) {
|
|
|
+ if (empty($this->fileStream)) {
|
|
|
+ $this->bimFileBO->modelDownloadUrl = Storage::url($file->pathname);
|
|
|
+ }
|
|
|
|
|
|
- BimFile::query()->create([
|
|
|
- 'file_id' => $file->id,
|
|
|
- ...$bimInfo
|
|
|
- ]);
|
|
|
+ $bimInfo = BIMFactory::make($file->bimFile->bim_driver)->uploadFile($this->fileStream, $this->bimFileBO);
|
|
|
+
|
|
|
+ BimFile::where('file_id', $file->id)->update($bimInfo);
|
|
|
}
|
|
|
}
|
|
|
}
|