feat: supplier name autocomplete on received invoices

- Added GET /api/admin/received-invoices/suppliers endpoint (distinct names)
- Upload and edit forms use HTML datalist for browser-native autocomplete
- Suggestions loaded once on page mount

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
BOHA
2026-03-23 13:32:38 +01:00
parent a4c4a377c9
commit c817e004b7
2 changed files with 31 additions and 0 deletions

View File

@@ -87,6 +87,16 @@ export default async function receivedInvoicesRoutes(fastify: FastifyInstance):
});
});
// GET /api/admin/received-invoices/suppliers — distinct supplier names for autocomplete
fastify.get('/suppliers', { preHandler: requirePermission('invoices.view') }, async (_request, reply) => {
const results = await prisma.received_invoices.findMany({
select: { supplier_name: true },
distinct: ['supplier_name'],
orderBy: { supplier_name: 'asc' },
});
return success(reply, results.map(r => r.supplier_name));
});
// GET /api/admin/received-invoices/:id/file
fastify.get<{ Params: { id: string } }>('/:id/file', { preHandler: requirePermission('invoices.view') }, async (request, reply) => {
const id = parseId(request.params.id, reply);