Some checks failed
Dev Build & Deploy Divida Ativa Web / build-deploy (push) Failing after 33s
Co-authored-by: Cursor <cursoragent@cursor.com>
54 lines
1.9 KiB
Markdown
54 lines
1.9 KiB
Markdown
# divida-ativa-modumfiscal-web
|
|
|
|
Frontend SPA autônomo para gestão de Dívida Ativa municipal.
|
|
|
|
## Stack
|
|
|
|
- Vue 3 + Vite
|
|
- PrimeVue 4 + TailwindCSS
|
|
- Pinia + Vue Router
|
|
- Axios → `divida-ativa-modumfiscal-service` (porta **8094**)
|
|
|
|
## Multi-tenancy (igual ao core)
|
|
|
|
1. `getTenant()` extrai o subdomínio de `window.location.hostname` (ex.: `tutoia.divida.modumfiscal.com.br` → `tutoia`)
|
|
2. Antes de montar a app, `bootstrapPrefeitura()` chama `GET /api/v1/publico/prefeitura/{dominio}`
|
|
3. Resposta da tabela `divida_ativa.T065_CONFIGAPP`: `codigoMunicipio`, `nomePrefeitura`, `dominio`, `template`, `pathLogo`
|
|
4. `prefeituraStore` persiste os dados; interceptors enviam `X-Municipio` e `X-Dominio` em todas as requisições
|
|
|
|
## Desenvolvimento local
|
|
|
|
```bash
|
|
npm install
|
|
npm run dev
|
|
```
|
|
|
|
- Vite: `http://localhost:5174`
|
|
- `.env.development`: `VITE_API_URL=http://localhost:8094` (igual ao core — API direta, sem proxy)
|
|
- Tenant vem do subdomínio da URL (`tutoia.divida.modumfiscal.com.br` → `tutoia`); em localhost puro o tenant é `localhost`, fallback `sistema`
|
|
- Para simular prefeitura em dev: apontar hosts para `tutoia.divida.modumfiscal.com.br` ou acessar via nginx (`*.divida.modumfiscal.com.br`)
|
|
|
|
## Telas (MVP)
|
|
|
|
| Rota | Descrição |
|
|
|---|---|
|
|
| `/app` | Tela inicial |
|
|
| `/app/livro` | Listagem de livros |
|
|
| `/app/livro/cadastro` | Cadastro/edição de livro |
|
|
| `/app/folha` | Listagem de folhas |
|
|
| `/app/folha/cadastro` | Cadastro/edição de folha |
|
|
| `/app/cda` | Listagem de CDAs |
|
|
| `/app/cda/cadastro` | Cadastro/edição de CDA |
|
|
|
|
## Deploy
|
|
|
|
- Imagem Docker: `modumfiscal-divida-ativa-web`
|
|
- URL: `{tenant}.divida.modumfiscal.com.br` (ex.: `tutoia.divida.modumfiscal.com.br`)
|
|
- Nginx encaminha `/api/` para o serviço Java e `/` para o SPA
|
|
|
|
## Variáveis
|
|
|
|
| Variável | Descrição |
|
|
|---|---|
|
|
| `VITE_API_URL` | Base da API (`http://localhost:8094` em dev; vazio em prod = same-origin via nginx) |
|