merge: fix upload documents légaux (#126)

This commit is contained in:
MARTIN Julien 2026-04-17 17:35:16 +02:00
commit 25b5e0dd93
4 changed files with 11 additions and 6 deletions

View File

@ -32,8 +32,9 @@ COPY --from=builder /app/dist ./dist
RUN addgroup -g 1001 -S nodejs
RUN adduser -S nestjs -u 1001
# Créer le dossier uploads et donner les permissions
RUN mkdir -p /app/uploads/photos && chown -R nestjs:nodejs /app/uploads
# Dossiers écriture runtime (nestjs non-root) : photos + documents légaux (PDF)
RUN mkdir -p /app/uploads/photos /app/documents/legaux && \
chown -R nestjs:nodejs /app/uploads /app/documents
USER nestjs

View File

@ -101,8 +101,9 @@ export class DocumentsLegauxController {
throw new BadRequestException('Aucun fichier fourni');
}
// TODO: Récupérer l'ID utilisateur depuis le guard
const userId = '00000000-0000-0000-0000-000000000000'; // Temporaire
// TODO: Récupérer l'ID utilisateur depuis le guard quand l'auth sera branchée.
// En attendant, on n'associe pas d'utilisateur plutôt que d'envoyer un UUID fictif invalide.
const userId: string | null = null;
const document = await this.documentsService.uploadNouvelleVersion(
uploadDto.type,

View File

@ -43,7 +43,7 @@ export class DocumentsLegauxService {
async uploadNouvelleVersion(
type: 'cgu' | 'privacy',
file: Express.Multer.File,
userId: string,
userId?: string | null,
): Promise<DocumentLegal> {
// Validation du type de fichier
if (file.mimetype !== 'application/pdf') {
@ -84,7 +84,7 @@ export class DocumentsLegauxService {
fichier_path: filePath,
fichier_hash: hash,
actif: false, // Pas actif par défaut
televersePar: { id: userId } as any,
televersePar: userId ? ({ id: userId } as any) : null,
televerseLe: new Date(),
});

View File

@ -61,6 +61,8 @@ services:
UPLOAD_PHOTOS_DIR: ${UPLOAD_PHOTOS_DIR:-/app/uploads/photos}
volumes:
- backend_uploads:/app/uploads/photos
# PDF CGU / privacy (upload admin) — persistance entre redémarrages
- backend_documents_legaux:/app/documents/legaux
depends_on:
- database
labels:
@ -105,6 +107,7 @@ services:
volumes:
postgres_data:
backend_uploads:
backend_documents_legaux:
networks:
ptitspas_network: