feat: detect and resolve duplicate correspondents in Agrarmonitor sync
Build and Push Multi-Platform Images / build-and-push (push) Successful in 35s

- Detect duplicates after sync (same AgrarmonitorId, multiple correspondents)
- Auto-merge duplicates with identical names (delete empty, move docs to larger)
- Expose conflicts with different names for manual resolution
- New mergeCorrespondents endpoint + service method
- Conflict resolution modal in SettingsPage with radio selection per conflict
- deleteCorrespondent added to PaperlessService

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-25 14:33:48 +02:00
parent b4fe5a336c
commit 018f487baf
5 changed files with 214 additions and 16 deletions
@@ -56,4 +56,11 @@ export class AgrarmonitorController {
async syncCorrespondents() {
return this.pollingService.syncCorrespondentIds();
}
@Post('merge-correspondents')
@HttpCode(200)
@RequirePermissions(Permission.MANAGE_SETTINGS)
async mergeCorrespondents(@Body() body: { keepId: number; deleteId: number }) {
return this.pollingService.mergeCorrespondents(body.keepId, body.deleteId);
}
}