docs(spec-001): CONTIX apps home branding + auto-open
This commit is contained in:
parent
11f28353c4
commit
b55a242970
1 changed files with 168 additions and 0 deletions
|
|
@ -0,0 +1,168 @@
|
|||
# Spec 001 — CONTIX+ Odoo Apps Home Menu Branding + Auto-Open
|
||||
|
||||
**Criado:** 2026-07-26
|
||||
**Solicitado por:** Roger
|
||||
**Status:** ✅ Implementado (myvexx + ligit)
|
||||
**Projeto:** [erp-odoo-ligit-myvexx](https://github.com/itecnologys-tech/erp-odoo-ligit-myvexx)
|
||||
**Módulo Odoo:** `myvexx_apps_branding` **16.0.1.2.1**
|
||||
**Dependência:** OCA `web_responsive` (Odoo 16)
|
||||
|
||||
## Sistemas
|
||||
|
||||
| Instância | Host | Acesso | DB |
|
||||
|-----------|------|--------|-----|
|
||||
| erp.myvexx.com | VM 111 `erp-myvexx` (Big) | `10.10.10.111:22248` | `ligit` |
|
||||
| erp.ligit.com.br | lig315 | `200.187.190.30:22248` | `ligit` |
|
||||
|
||||
**Path do módulo:** `/opt/odoo/custom/addons/myvexx_apps_branding`
|
||||
|
||||
---
|
||||
|
||||
## Objectivo
|
||||
|
||||
Personalizar o **Apps Menu** fullscreen do `web_responsive` (tela roxa de apps) com branding CONTIX+ e abrir essa tela **automaticamente após o login**.
|
||||
|
||||
Não é a “Ação inicial” do utilizador Odoo (isso abre um app). É o **Home Menu de aplicativos**.
|
||||
|
||||
---
|
||||
|
||||
## Layout definitivo (aprovado Roger — não alterar sem OK)
|
||||
|
||||
### Composição
|
||||
- **Esquerda:** logo CONTIX+ (transparente)
|
||||
- **Direita:** busca + grid compacto de ícones
|
||||
- Sem caixas/bordas/retângulos decorativos
|
||||
- Sem slogan HTML (logo PNG já contém a arte)
|
||||
|
||||
### Medidas aprovadas
|
||||
|
||||
| Elemento | Valor | Nota |
|
||||
|----------|-------|------|
|
||||
| Painel logo | ~560px (`min-width` 420px) | `.o_myvexx_apps_brand` |
|
||||
| Logo max-width | ~520px | `.o_myvexx_logo` |
|
||||
| Ícone app | **5.5rem** | `.o-app-icon` — **NÃO ALTERAR** |
|
||||
| Célula app | ~118px | `.o_app` |
|
||||
| Títulos | ~1.2rem / weight 500 | |
|
||||
| Row-gap | ~1.15rem | entre linhas de apps |
|
||||
| Grid max-width | ~780px | ao lado da logo |
|
||||
|
||||
### Assets visuais
|
||||
|
||||
| Ficheiro | Uso |
|
||||
|----------|-----|
|
||||
| `static/src/img/logo-contix-home.png` | Logo canónica no XML |
|
||||
| `static/src/img/logo-contabilidade_5.png` | Origem / backup da mesma arte |
|
||||
|
||||
---
|
||||
|
||||
## Arquitectura técnica
|
||||
|
||||
```
|
||||
web_responsive.AppsMenu (OCA)
|
||||
│
|
||||
├─ XML inherit → apps_menu.xml (shell esquerda/direita)
|
||||
├─ SCSS → apps_menu.scss (medidas definitivas)
|
||||
└─ JS patch → open_home_on_login.esm.js (auto-open)
|
||||
```
|
||||
|
||||
### Ficheiros do módulo
|
||||
|
||||
```
|
||||
myvexx_apps_branding/
|
||||
├── __init__.py
|
||||
├── __manifest__.py
|
||||
├── LAYOUT_DEFINITIVO.txt
|
||||
├── PREFERENCIAS_ROGER.txt
|
||||
└── static/src/
|
||||
├── js/open_home_on_login.esm.js
|
||||
├── img/logo-contix-home.png
|
||||
├── img/logo-contabilidade_5.png
|
||||
└── components/apps_menu/
|
||||
├── apps_menu.xml
|
||||
└── apps_menu.scss
|
||||
```
|
||||
|
||||
### Manifest (assets)
|
||||
|
||||
```python
|
||||
"depends": ["web_responsive"],
|
||||
"assets": {
|
||||
"web.assets_backend": [
|
||||
"myvexx_apps_branding/static/src/js/open_home_on_login.esm.js",
|
||||
"myvexx_apps_branding/static/src/components/apps_menu/apps_menu.xml",
|
||||
"myvexx_apps_branding/static/src/components/apps_menu/apps_menu.scss",
|
||||
],
|
||||
},
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Auto-open no login
|
||||
|
||||
1. Após montar `AppsMenu`, chama `setOpenState(true, false)`.
|
||||
2. Durante ~**1.5s** bloqueia o 1º `ACTION_MANAGER:UI-UPDATED` que normalmente fecha o menu.
|
||||
3. Depois libera o fecho normal.
|
||||
|
||||
Implementação Odoo 16 / estilo OCA:
|
||||
- `import {patch} from "web.utils"`
|
||||
- Patch: `myvexx_apps_branding.OpenHomeOnLogin`
|
||||
- `this._super(...)` + `owl.onMounted`
|
||||
|
||||
Alvo: `@web_responsive/components/apps_menu/apps_menu.esm` → `AppsMenu`
|
||||
|
||||
---
|
||||
|
||||
## Riscos em actualizações
|
||||
|
||||
| Actualização | Risco | Acção |
|
||||
|--------------|-------|-------|
|
||||
| Só dados / módulos de negócio | Baixo | Nenhuma |
|
||||
| Update `web_responsive` OCA | Médio | Rever `AppsMenu` / `setOpenState` |
|
||||
| Odoo 16 → 17+ | Alto | Reescrever patch (API sem `_super`) |
|
||||
| Cloudflare / browser cache | Baixo | Hard refresh |
|
||||
|
||||
O módulo é **custom** (fora do path OCA) → pull do OCA não apaga o branding.
|
||||
|
||||
---
|
||||
|
||||
## Deploy / upgrade
|
||||
|
||||
```bash
|
||||
systemctl stop odoo
|
||||
sudo -u odoo psql -d ligit -c "DELETE FROM ir_attachment WHERE name ILIKE '%web.assets_backend%' OR url ILIKE '%web.assets_backend%';"
|
||||
sudo -u odoo /opt/odoo/venv/bin/python3 /opt/odoo/server/odoo-bin \
|
||||
-c /etc/odoo.conf -d ligit -u myvexx_apps_branding --stop-after-init
|
||||
systemctl start odoo
|
||||
```
|
||||
|
||||
Conf: `/etc/odoo.conf` · `addons_path` deve incluir `/opt/odoo/custom/addons`.
|
||||
|
||||
### Teste
|
||||
1. Logout / login em `/web`
|
||||
2. `Ctrl+Shift+R`
|
||||
3. Home Menu CONTIX+ abre sozinho
|
||||
|
||||
---
|
||||
|
||||
## Preferências travadas (Roger)
|
||||
|
||||
- Ícones **5.5rem**
|
||||
- Proporção logo/grid actual
|
||||
- Logo transparente
|
||||
- Auto-open no login
|
||||
|
||||
---
|
||||
|
||||
## Paths Spec Hub / Obsidian (VM130)
|
||||
|
||||
| Onde | Path |
|
||||
|------|------|
|
||||
| Repo Git | `/opt/ligbox-spec-hub/repos/erp-odoo-ligit-myvexx` |
|
||||
| Specs | `.../specs/001-contix-apps-home-branding/` |
|
||||
| Obsidian | `/opt/ligbox-spec-hub/obsidian-vault/ERP-Odoo-Ligit-Myvexx/` |
|
||||
|
||||
---
|
||||
|
||||
## Changelog
|
||||
|
||||
Ver `CHANGELOG.md`.
|
||||
Loading…
Reference in a new issue