Freigabe → main: Mobile UI, Webhook, IMAP, Zahlung-Workflow und weitere Features #5
@@ -66,19 +66,12 @@ export class PaperlessProcessorService {
|
||||
/**
|
||||
* Verarbeitet ein einzelnes Dokument anhand seiner ID – die ereignisgesteuerte
|
||||
* Variante des früheren Cron-Jobs (vom Paperless-Webhook aufgerufen). Es wird
|
||||
* nur verarbeitet, wenn das Dokument den Tag "paperlessmanager" trägt.
|
||||
* jedes gemeldete Dokument verarbeitet, unabhängig vom Tag "paperlessmanager".
|
||||
*/
|
||||
async processDocumentById(
|
||||
documentId: number,
|
||||
): Promise<{ processed: boolean; reason?: string }> {
|
||||
const doc = await this.paperlessService.getDocument(documentId);
|
||||
const tags: number[] = doc.tags || [];
|
||||
if (!tags.includes(PAPERLESSMANAGER_TAG_ID)) {
|
||||
this.logger.log(
|
||||
`Dokument ${documentId} ohne Tag "paperlessmanager" (ID ${PAPERLESSMANAGER_TAG_ID}) – übersprungen.`,
|
||||
);
|
||||
return { processed: false, reason: 'tag-missing' };
|
||||
}
|
||||
|
||||
const customFields = await this.paperlessService.getCustomFields();
|
||||
const validFieldIds = new Set<number>(customFields.map((f: any) => f.id));
|
||||
|
||||
Reference in New Issue
Block a user