|
@@ -19,6 +19,7 @@ use App\Models\Container;
|
|
|
use App\Models\Enums\ApprovalFlowObjectType;
|
|
|
use App\Models\Enums\ApprovalFlowType;
|
|
|
use App\Models\Enums\ApprovalObjectType;
|
|
|
+use App\Models\Enums\FileObjectType;
|
|
|
use App\Models\Enums\FolderObjectType;
|
|
|
use App\Models\Enums\ObjectAction;
|
|
|
use App\Models\Enums\ObjectApprovalStatus;
|
|
@@ -217,10 +218,22 @@ class ApprovalController extends Controller
|
|
|
$files = File::query()->whereIn("id", $approval->sub_object_ids)->get();
|
|
|
|
|
|
foreach ($files as $file) {
|
|
|
+ $fileBuilder = File::query()
|
|
|
+ ->where('object_type', FileObjectType::CONTAINER)
|
|
|
+ ->where('object_id', $file->object_id)
|
|
|
+ ->where("title", $file->title)
|
|
|
+ ->where("source", 1)
|
|
|
+ ->where("folder_id", $targetFolder->id);
|
|
|
+
|
|
|
+ $version = (clone $fileBuilder)->count();
|
|
|
+
|
|
|
+ (clone $fileBuilder)->update(['is_latest_version' => 0]);
|
|
|
+
|
|
|
$file->replicate()->fill([
|
|
|
- 'version' => 1,
|
|
|
'source_file_id' => $file->id,
|
|
|
'folder_id' => $targetFolder->id,
|
|
|
+ 'version' => $version + 1,
|
|
|
+ 'is_latest_version' => 1,
|
|
|
])->save();
|
|
|
}
|
|
|
|