feat(fusion_accounting_followup): menu + window actions with coexistence group filter

Made-with: Cursor
This commit is contained in:
gsinghpal
2026-04-19 21:30:06 -04:00
parent 38a2684782
commit 8ef88da94a
2 changed files with 71 additions and 1 deletions

View File

@@ -1,6 +1,6 @@
{
'name': 'Fusion Accounting Follow-up',
'version': '19.0.1.0.27',
'version': '19.0.1.0.28',
'category': 'Accounting/Accounting',
'summary': 'AI-augmented customer follow-ups (dunning) for unpaid invoices.',
'description': """
@@ -38,6 +38,7 @@ menu hides; the engine + AI tools remain available for the chat.
'data/followup_levels_data.xml',
'data/mail_templates_data.xml',
'wizards/batch_followup_wizard_views.xml',
'views/menu_views.xml',
],
'assets': {
'web.assets_backend': [

View File

@@ -0,0 +1,69 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!-- Top-level menu (visible only when account_followup Enterprise NOT installed) -->
<menuitem id="menu_fusion_followup_root"
name="Customer Follow-ups"
sequence="70"
web_icon="fusion_accounting_followup,static/description/icon.png"
groups="fusion_accounting_core.group_fusion_show_when_enterprise_absent"/>
<!-- Partners list (gated to overdue) -->
<record id="action_fusion_followup_partners" model="ir.actions.act_window">
<field name="name">Overdue Customers</field>
<field name="res_model">res.partner</field>
<field name="view_mode">list,form</field>
<field name="domain">[('fusion_followup_status', 'in', ('action_due', 'paused', 'blocked', 'with_credit_team'))]</field>
<field name="context">{}</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Customer follow-ups
</p>
<p>
AI-augmented dunning sequences for unpaid invoices.
</p>
</field>
</record>
<menuitem id="menu_fusion_followup_partners"
name="Overdue Customers"
parent="menu_fusion_followup_root"
action="action_fusion_followup_partners"
sequence="10"
groups="fusion_accounting_core.group_fusion_show_when_enterprise_absent"/>
<!-- Levels config -->
<record id="action_fusion_followup_levels" model="ir.actions.act_window">
<field name="name">Follow-up Levels</field>
<field name="res_model">fusion.followup.level</field>
<field name="view_mode">list,form</field>
</record>
<menuitem id="menu_fusion_followup_levels"
name="Levels"
parent="menu_fusion_followup_root"
action="action_fusion_followup_levels"
sequence="20"
groups="fusion_accounting_core.group_fusion_show_when_enterprise_absent"/>
<!-- Run history -->
<record id="action_fusion_followup_runs" model="ir.actions.act_window">
<field name="name">Follow-up History</field>
<field name="res_model">fusion.followup.run</field>
<field name="view_mode">list,form</field>
</record>
<menuitem id="menu_fusion_followup_runs"
name="History"
parent="menu_fusion_followup_root"
action="action_fusion_followup_runs"
sequence="30"
groups="fusion_accounting_core.group_fusion_show_when_enterprise_absent"/>
<!-- Batch wizard -->
<menuitem id="menu_fusion_followup_batch"
name="Batch Send..."
parent="menu_fusion_followup_root"
action="action_fusion_batch_followup_wizard"
sequence="40"
groups="fusion_accounting_core.group_fusion_show_when_enterprise_absent"/>
</odoo>