feat(artemis/tools): Ajoute le partage de fichiers temporaires avec QR code

Ajoute une fonctionnalité de partage de fichiers temporaires avec suppression automatique après 30 minutes et génération de QR codes. Ajoute aussi une tâche cron pour supprimer ces fichiers.
This commit is contained in:
Serreau Jovann
2025-11-05 10:39:19 +01:00
parent 9a3944a7a0
commit 13b25efb41
13 changed files with 667 additions and 2 deletions

View File

@@ -0,0 +1,34 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20251105090734 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE temp_file (id SERIAL NOT NULL, name VARCHAR(255) NOT NULL, create_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, update_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, share_file_name VARCHAR(255) DEFAULT NULL, share_dimensions JSON DEFAULT NULL, share_size VARCHAR(255) DEFAULT NULL, share_mine_type VARCHAR(255) DEFAULT NULL, share_original_name VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id))');
$this->addSql('COMMENT ON COLUMN temp_file.create_at IS \'(DC2Type:datetime_immutable)\'');
$this->addSql('COMMENT ON COLUMN temp_file.update_at IS \'(DC2Type:datetime_immutable)\'');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
$this->addSql('DROP TABLE temp_file');
}
}