|
@@ -9,8 +9,8 @@ use Illuminate\Support\Str;
|
|
|
|
|
|
|
|
class GenerateDocumentsService
|
|
class GenerateDocumentsService
|
|
|
{
|
|
{
|
|
|
- const INSTALL_FILENAME = 'Монт аж_';
|
|
|
|
|
- const HANDOVER_FILENAME = 'Сдача_';
|
|
|
|
|
|
|
+ const INSTALL_FILENAME = 'Монтаж ';
|
|
|
|
|
+ const HANDOVER_FILENAME = 'Сдача ';
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* @param Order $order
|
|
* @param Order $order
|
|
@@ -23,7 +23,8 @@ class GenerateDocumentsService
|
|
|
$techDocsPath = base_path('/tech-docs/');
|
|
$techDocsPath = base_path('/tech-docs/');
|
|
|
$products_sku = $order->products_sku;
|
|
$products_sku = $order->products_sku;
|
|
|
$articles = [];
|
|
$articles = [];
|
|
|
- Storage::disk('public')->makeDirectory('orders/' . $order->id . '/tmp/Схемы сборки');
|
|
|
|
|
|
|
+ Storage::disk('public')->makeDirectory('orders/' . $order->id . '/tmp/Схемы сборки/');
|
|
|
|
|
+
|
|
|
foreach ($products_sku as $sku) {
|
|
foreach ($products_sku as $sku) {
|
|
|
if(!in_array($sku->product->article, $articles)) {
|
|
if(!in_array($sku->product->article, $articles)) {
|
|
|
$articles[] = $sku->product->article;
|
|
$articles[] = $sku->product->article;
|
|
@@ -35,20 +36,18 @@ class GenerateDocumentsService
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- // generate xlsx order file
|
|
|
|
|
- // ...
|
|
|
|
|
- // create zip archive
|
|
|
|
|
- $fileModel = (new FileService())->createZipArchive('orders/' . $order->id . '/tmp', self::INSTALL_FILENAME . $order->common_name . '.zip', $userId);
|
|
|
|
|
-
|
|
|
|
|
- // remove temp files
|
|
|
|
|
- Storage::disk('public')->deleteDirectory('orders/' . $order->id . '/tmp');
|
|
|
|
|
- $order->documents()->syncWithoutDetaching($fileModel);
|
|
|
|
|
-
|
|
|
|
|
- // return link
|
|
|
|
|
- return $fileModel->link;
|
|
|
|
|
|
|
+ // generate xlsx order file
|
|
|
|
|
+ // ...
|
|
|
|
|
+ // create zip archive
|
|
|
|
|
+ $fileModel = (new FileService())->createZipArchive('orders/' . $order->id . '/tmp', self::INSTALL_FILENAME . $order->common_name . '.zip', $userId);
|
|
|
|
|
|
|
|
|
|
+ // remove temp files
|
|
|
|
|
+ Storage::disk('public')->deleteDirectory('orders/' . $order->id . '/tmp');
|
|
|
|
|
+ $order->documents()->syncWithoutDetaching($fileModel);
|
|
|
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ // return link
|
|
|
|
|
+ return $fileModel?->link ?? '';
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|