feat(#275): documents-Modul mit Controller, Service, DTOs #311
No reviewers
Labels
No labels
app/archiv
app/einkaufslisten
app/imap-client
app/wissensbasis
arch-answered
arch-question
area/api
area/auth
area/infra
area/mobile
area/shared
area/ui
area/web
portfolio-status
prio/high
prio/low
prio/medium
roadmap/public
size/l
size/m
size/s
size/xl
size/xs
status/blocked
status/needs-info
type/bug
type/chore
type/docs
type/feature
type/idea
type/refactor
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
admin-mrrm/mrrmlabapp!311
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/275-documents-module"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
NestJS-Modul, das den
PaperlessClient(#274) hinter REST-Endpoints freigibt und damit den API-Foundation-Block der Paperless-Integration abschließt.Endpoints (
/documents):GET /documents— Liste mit Zod-validierter Query (query,tagsals CSV,correspondent,documentType,page,pageSize,ordering)GET /documents/tags·/correspondents·/document-typesGET /documents/:id— Details (ParseIntPipe)GET /documents/:id/previewund/thumbnail— Stream viaStreamableFile(Readable.fromWeb)POST /documents— multipart Upload (FileInterceptor('document')) mit Zod-validierter Meta (Title, Tags, Correspondent, …)Bausteine:
documents.service.ts— dünner Delegator vorPaperlessClientdocuments.dto.ts— Zod-Schemas inkl.csvNumbers-Transform fürtags=1,2,3documents.module.tsregistriert beimAppModuleZodValidationPipegenerisch aufZodTypeAnyumgestellt, damit Schemas mit.transform()(Output ≠ Input) korrekt typisierenTests: 28 grün (Service 4, Controller 7, PaperlessClient 17).
Test plan
/documents,/documents/:id/preview, Upload) nach Deploy