temporary stored object fixes

This commit is contained in:
Julien Fastré 2021-09-29 15:15:10 +02:00
parent 8c2d211661
commit 2c1d3d08c3
5 changed files with 12 additions and 9 deletions

View File

@ -138,7 +138,7 @@ class DocGeneratorTemplateController extends AbstractController
$em->flush();
return $this->redirectToRoute('chill_wopi_file_edit', [
'fileId' => $genDocName,
'fileId' => $storedObject->getUuid(),
'returnPath' => $request->query->get('returnPath', "/")
]);
}

View File

@ -10,6 +10,7 @@ use ChampsLibres\AsyncUploaderBundle\Validator\Constraints\AsyncFileExists;
use ChampsLibres\WopiLib\Contract\Entity\Document;
use DateTimeInterface;
use Ramsey\Uuid\Uuid;
use Ramsey\Uuid\UuidInterface;
use Symfony\Component\Serializer\Annotation as Serializer;
/**
@ -51,8 +52,9 @@ class StoredObject implements AsyncFileInterface, Document
/**
* @ORM\Column(type="uuid", unique=true)
* @Serializer\Groups({"read"})
*/
private Uuid $uuid;
private UuidInterface $uuid;
/**
* @ORM\Column(type="datetime", name="creation_date")
@ -163,7 +165,7 @@ class StoredObject implements AsyncFileInterface, Document
return $this;
}
public function getUuid(): Uuid
public function getUuid(): UuidInterface
{
return $this->uuid;
}

View File

@ -16,15 +16,15 @@ final class Version20210928182542 extends AbstractMigration
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE chill_doc.stored_object ADD uuid UUID NOT NULL');
$this->addSql('CREATE EXTENSION IF NOT EXISTS "uuid-ossp"');
$this->addSql('ALTER TABLE chill_doc.stored_object ADD uuid UUID DEFAULT NULL');
$this->addSql('UPDATE chill_doc.stored_object SET uuid=uuid_generate_v4()');
$this->addSql('ALTER TABLE chill_doc.stored_object ALTER uuid SET NOT NULL');
$this->addSql('CREATE UNIQUE INDEX UNIQ_49604E36D17F50A6 ON chill_doc.stored_object (uuid)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DROP INDEX UNIQ_49604E36D17F50A6');
$this->addSql('ALTER TABLE chill_doc.stored_object DROP uuid');
}
}

View File

@ -109,7 +109,7 @@ export default {
this.toggleEditEvaluation();
},
buildEditLink(storedObject) {
return `/fr/chill_wopi/edit/${storedObject.filename}?returnPath=` + encodeURIComponent(
return `/fr/chill_wopi/edit/${storedObject.uuid}?returnPath=` + encodeURIComponent(
window.location.pathname + window.location.search + window.location.hash);
},
}

View File

@ -21,6 +21,7 @@ use Error;
use loophp\psr17\Psr17Interface;
use Psr\Http\Message\RequestInterface;
use Psr\Http\Message\StreamInterface;
use Ramsey\Uuid\Uuid;
use Symfony\Bridge\PsrHttpMessage\HttpMessageFactoryInterface;
use Symfony\Component\HttpFoundation\RequestStack;
use Symfony\Component\Mime\MimeTypes;
@ -103,7 +104,7 @@ final class ChillDocumentManager implements DocumentManagerInterface
public function findByDocumentId(string $documentId): ?Document {
return $this->storedObjectRepository->findOneBy(
[
'uuid' => $documentId,
'uuid' => Uuid::fromString($documentId),
]
);
}