Specs stay at repo root (cross-VM). Move deploy and code into logical projects with README per domain, updated manifest.yaml, and symlinks at legacy paths for VM122 backward compatibility.
33 lines
1.3 KiB
Python
33 lines
1.3 KiB
Python
"""Mapeamento Desk role → grupos Odoo 16 (Spec 027 contrato §3)."""
|
|
|
|
from __future__ import annotations
|
|
|
|
# XML IDs standard Odoo 16 — requerem apps instaladas (sale, account, …)
|
|
DESK_ROLE_ODOO_XMLIDS: dict[str, tuple[str, ...]] = {
|
|
"sales_admin": ("sales_team.group_sale_manager",),
|
|
"sales_support": ("sales_team.group_sale_salesman",),
|
|
"finance": (
|
|
"account.group_account_invoice",
|
|
"account.group_account_manager",
|
|
),
|
|
"marketing": ("sales_team.group_sale_salesman",), # CRM + leads (Odoo CRM app)
|
|
"super_admin": ("base.group_system",),
|
|
}
|
|
|
|
# Fallback search por nome quando módulo ainda não tem ir.model.data (dev)
|
|
DESK_ROLE_ODOO_GROUP_NAMES: dict[str, tuple[str, ...]] = {
|
|
"sales_admin": ("Sales / Manager", "User: Own Documents Only"),
|
|
"sales_support": ("Sales / User: Own Documents Only", "User: Own Documents Only"),
|
|
"finance": ("Billing", "Billing Administrator"),
|
|
}
|
|
|
|
PROVISIONABLE_DESK_ROLES = frozenset(
|
|
{"sales_admin", "sales_support", "finance", "marketing", "developer"}
|
|
)
|
|
FOSS_GROUP_BY_ROLE: dict[str, str] = {
|
|
"sales_admin": "ligbox-sales-admin",
|
|
"sales_support": "ligbox-sales-support",
|
|
"finance": "ligbox-finance-admin",
|
|
"marketing": "ligbox-marketing",
|
|
"developer": "ligbox-dev-api",
|
|
}
|