# Spec 001 — CONTIX+ Odoo Apps Home Menu Branding + Auto-Open + Atalhos Financeiros **Criado:** 2026-07-26 **Atualizado:** 2026-07-26 (atalhos Home img 6/7 + login + ligit sync) **Solicitado por:** Roger **Status:** ✅ Definitivo em **erp.myvexx.com** e **erp.ligit.com.br** **Projeto:** [erp-odoo-ligit-myvexx](https://github.com/itecnologys-tech/erp-odoo-ligit-myvexx) **Módulo Odoo:** `myvexx_apps_branding` **16.0.1.4.3** **Dependências:** `web`, OCA `web_responsive`, `account`, `account_financial_report` ## 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 1. Personalizar o **Apps Menu** fullscreen do `web_responsive` com branding CONTIX+. 2. Abrir essa tela **automaticamente após o login**. 3. Branding da **página de login**. 4. Atalhos na Home para menus Financeiro / Contabilidade (ícones cortados das artes Roger). --- ## Layout Home Menu (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 ### 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 | | | Grid max-width | ~780px | | ### Assets Home | Ficheiro | Uso | |----------|-----| | `static/src/img/logo-contix-home.png` | Logo canónica Home | | `static/src/img/logo-contabilidade_5.png` | Backup / origem | --- ## Login (definitivo Roger) | Elemento | Valor | |----------|-------| | Logo | `static/src/img/logo-contix-login.png` (otimizado ~200KB) ou home PNG se login específico ausente | | max-height logo | **340px** | | Card max-width | **580px** | | Gap logo→form | **`margin-bottom: -2.5rem`** (aprovado) | | Views | `views/login_layout.xml` + `static/src/scss/login.scss` | **Nota performance:** logo original ~2.3MB deixava o login lento; versão otimizada é a canónica. --- ## Atalhos Home Menu (definitivos) XML: `views/home_finance_menus.xml` + `views/home_accounting_menus.xml` Arte origem: `logo-contabilidade_6.png` e `logo-contabilidade_7.png` (Documents Roger) → ícones 256×256 em `static/src/img/icon_*.png`. ### Imagem 6 — Financeiro | Menu Home | Action Odoo | Ícone | |-----------|-------------|-------| | Contas a Receber | `account.action_move_out_invoice_type` | `icon_contas_receber.png` | | Recebimentos | `account.action_account_payments` | `icon_recebimentos.png` | | Contas a Pagar | `account.action_move_in_invoice_type` | `icon_contas_pagar.png` | | Pagamentos | `account.action_account_payments_payable` | `icon_pagamentos.png` | ### Imagem 7 — Contabilidade | Menu Home | Action Odoo | Ícone | |-----------|-------------|-------| | Contabilidade | `account.open_account_journal_dashboard_kanban` | `icon_contabilidade.png` | | Extratos Bancarios | `account.action_bank_statement_tree` | `icon_extratos_bancarios.png` | | Relatorios Contabeis | `account_financial_report.action_trial_balance_wizard` | `icon_relatorios_contabeis.png` | | Diarios | `account.action_move_journal_line` | `icon_diarios.png` | Sequences: 46–49 (finance) · 50–53 (accounting). Groups: `account.group_account_invoice` / `account.group_account_user` (relatórios). --- ## Arquitectura técnica ``` web_responsive.AppsMenu (OCA) │ ├─ XML inherit → apps_menu.xml ├─ SCSS → apps_menu.scss └─ JS patch → open_home_on_login.esm.js + login_layout.xml / login.scss + home_finance_menus.xml + home_accounting_menus.xml ``` ### Árvore do módulo ``` myvexx_apps_branding/ ├── __init__.py ├── __manifest__.py # 16.0.1.4.3 ├── LAYOUT_DEFINITIVO.txt ├── PREFERENCIAS_ROGER.txt ├── views/ │ ├── login_layout.xml │ ├── home_finance_menus.xml │ └── home_accounting_menus.xml └── static/src/ ├── js/open_home_on_login.esm.js ├── scss/login.scss ├── img/ │ ├── logo-contix-home.png │ ├── logo-contix-login.png # se presente │ ├── logo-contabilidade_5.png │ └── icon_*.png # 8 ícones Home └── components/apps_menu/ ├── apps_menu.xml └── apps_menu.scss ``` --- ## Auto-open no login 1. Após montar `AppsMenu`, `setOpenState(true, false)`. 2. ~**1.5s** bloqueia o 1º `ACTION_MANAGER:UI-UPDATED`. 3. Depois libera o fecho normal. - `import {patch} from "web.utils"` - Patch: `myvexx_apps_branding.OpenHomeOnLogin` --- ## Performance / operações (notas 2026-07-26) | Tema | Decisão | |------|---------| | `workers > 0` no ligit | **NÃO usar** — race MRO com `l10n-brazil` / `spec_driven_model` (`TypeError: SpecModel, nfe.40.comb`) → Internal Server Error | | `dbfilter` | `^ligit$` + `list_db = False` (estável single-DB) | | Logo login | Manter PNG otimizado (~200KB), não o 2.3MB | | Upgrade módulo | Preferir XML-RPC `button_immediate_upgrade` **ou** CLI `-u` com `systemctl start odoo` sempre no fim | --- ## Deploy / upgrade ```bash systemctl stop odoo 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 # OBRIGATÓRIO — nunca deixar parado ``` Sync entre instâncias: empacotar `/opt/odoo/custom/addons/myvexx_apps_branding` e `-u` na outra VM. ### Teste 1. Logout / login · `Ctrl+Shift+R` 2. Home CONTIX+ abre; 8 atalhos visíveis com ícones custom 3. Login com logo grande e gap `-2.5rem` --- ## Preferências travadas (Roger) - Ícones Home **5.5rem** - Gap login logo→form **`-2.5rem`** - Logo transparente CONTIX+ - Auto-open no login - 8 atalhos + ícones das imagens 6 e 7 --- ## Paths Spec Hub / Obsidian (VM130 / CT130) | Onde | Path | |------|------| | Acesso | Big → `ssh -p 4422 root@100.116.138.100` → `pct exec 130` | | 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`.