Deploy stack su Proxmox / deploy (push) Failing after 3s
Monorepo npm con apps/public (Angular SSR), apps/private (Angular SPA), apps/api (Fastify), packages/shared e packages/styles; Medusa 2.21 in medusa/; infrastruttura Docker (Postgres PostGIS+pgvector, Redis, Caddy, backup) e workflow Gitea Actions per il deploy via SSH a ogni push su master. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018jQyT6dR9czzGwqb7FkG6u
19 lines
1.1 KiB
Markdown
19 lines
1.1 KiB
Markdown
# 19 — API: preventivi e ticket
|
|
|
|
Leggi `CLAUDE.md`.
|
|
|
|
## Obiettivo
|
|
Gestione richieste preventivo, preventivi e assistenza.
|
|
|
|
## Cosa fare
|
|
- Cliente (autenticato): `GET /me/quotes`, `GET /me/quotes/:id`, `POST /me/quotes/:id/accept`, `POST /me/quotes/:id/reject`; `GET /me/orders` (da Medusa tramite `/internal/customers/:id/orders`); `GET/POST /me/tickets`, `GET /me/tickets/:id`, `POST /me/tickets/:id/messages`.
|
|
- Admin: elenco/filtri `quote_requests` con cambio stato; creazione `quotes` da una richiesta (numero progressivo per anno, es. `2026-0001`), allegato PDF tramite `documents`, invio al cliente (email); gestione ticket (stato, priorità, risposta).
|
|
- Un utente vede solo le proprie risorse (controllo ownership in ogni route).
|
|
- Quando un utente si registra con un'email che ha `quote_requests` anonime, queste vengono collegate al suo account.
|
|
|
|
## Criteri di accettazione
|
|
- Test: un cliente non può leggere preventivi/ticket di un altro (404).
|
|
- Numerazione preventivi progressiva senza duplicati anche con richieste concorrenti.
|
|
- Risposta admin a un ticket invia email al cliente.
|
|
- `CLAUDE.md` aggiornato.
|