record servicce update
This commit is contained in:
@@ -57,15 +57,17 @@ readonly class RecordService
|
|||||||
}
|
}
|
||||||
$uploadResult = FileService::create($schema, $uploadFromUrl, $file);
|
$uploadResult = FileService::create($schema, $uploadFromUrl, $file);
|
||||||
|
|
||||||
|
$newRecordId = empty($id) ? Id::new() : $id;
|
||||||
$uniqueEdges = collect($edges)
|
$uniqueEdges = collect($edges)
|
||||||
->map(function ($edge, $index) {
|
->map(function ($edge, $index) use ($newRecordId, $schemaName) {
|
||||||
|
$edge['source'] = $newRecordId;
|
||||||
|
$edge['sourceSchema'] = $schemaName;
|
||||||
$edge["rank"] = $index;
|
$edge["rank"] = $index;
|
||||||
return (array)(new Edge(...$edge));
|
return (array)(new Edge(...$edge));
|
||||||
})
|
})
|
||||||
->unique(fn($e) => $e['field'] . $e['source'] . $e['target'] . $e['sourceSchema'])
|
->unique(fn($e) => $e['field'] . $e['source'] . $e['target'] . $e['sourceSchema'])
|
||||||
->values()->toArray();
|
->values()->toArray();
|
||||||
$uniqueEdgesCollection = EdgeCollection::fromArray($uniqueEdges);
|
$uniqueEdgesCollection = EdgeCollection::fromArray($uniqueEdges);
|
||||||
|
|
||||||
if ($uploadResult->isDuplicate) {
|
if ($uploadResult->isDuplicate) {
|
||||||
|
|
||||||
$this->edgeService->update($uploadResult->duplicateId, $uniqueEdgesCollection);
|
$this->edgeService->update($uploadResult->duplicateId, $uniqueEdgesCollection);
|
||||||
@@ -73,7 +75,7 @@ readonly class RecordService
|
|||||||
}
|
}
|
||||||
|
|
||||||
$record = new Record(
|
$record = new Record(
|
||||||
id: empty($id) ? Id::new() : $id,
|
id: $newRecordId,
|
||||||
schema: $schema->name,
|
schema: $schema->name,
|
||||||
status: Status::from($status),
|
status: Status::from($status),
|
||||||
_sys: System::newRecord($this->authService->currentUserId()),
|
_sys: System::newRecord($this->authService->currentUserId()),
|
||||||
|
|||||||
Reference in New Issue
Block a user