feat: hide authorizer for rental orders, auto-set sale type

Rental orders no longer show the "Authorizer Required?" question or
the Authorizer field. The sale type is automatically set to 'Rentals'
when creating or confirming a rental order. Validation logic also
skips authorizer checks for rental sale type.

Made-with: Cursor
This commit is contained in:
gsinghpal
2026-02-25 23:33:23 -05:00
parent 3c8f83b8e6
commit 14fe9ab716
51 changed files with 4192 additions and 822 deletions

View File

@@ -1,7 +1,10 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_poynt_terminal_user,poynt.terminal.user,model_poynt_terminal,base.group_user,1,0,0,0
access_poynt_terminal_admin,poynt.terminal.admin,model_poynt_terminal,base.group_system,1,1,1,1
access_poynt_payment_wizard_user,poynt.payment.wizard.user,model_poynt_payment_wizard,account.group_account_invoice,1,1,1,0
access_poynt_payment_wizard_admin,poynt.payment.wizard.admin,model_poynt_payment_wizard,base.group_system,1,1,1,1
access_poynt_refund_wizard_user,poynt.refund.wizard.user,model_poynt_refund_wizard,account.group_account_invoice,1,1,1,0
access_poynt_refund_wizard_admin,poynt.refund.wizard.admin,model_poynt_refund_wizard,base.group_system,1,1,1,1
access_poynt_terminal_user,poynt.terminal.user,model_poynt_terminal,group_fusion_poynt_user,1,0,0,0
access_poynt_terminal_admin,poynt.terminal.admin,model_poynt_terminal,group_fusion_poynt_admin,1,1,1,1
access_poynt_payment_wizard_user,poynt.payment.wizard.user,model_poynt_payment_wizard,group_fusion_poynt_user,1,1,1,0
access_poynt_payment_wizard_admin,poynt.payment.wizard.admin,model_poynt_payment_wizard,group_fusion_poynt_admin,1,1,1,1
access_poynt_refund_wizard_user,poynt.refund.wizard.user,model_poynt_refund_wizard,group_fusion_poynt_user,1,1,1,0
access_poynt_refund_wizard_admin,poynt.refund.wizard.admin,model_poynt_refund_wizard,group_fusion_poynt_admin,1,1,1,1
access_payment_provider_poynt_user,payment.provider.poynt.user,payment.model_payment_provider,group_fusion_poynt_user,1,0,0,0
access_payment_transaction_poynt_user,payment.transaction.poynt.user,payment.model_payment_transaction,group_fusion_poynt_user,1,1,1,0
access_payment_method_poynt_user,payment.method.poynt.user,payment.model_payment_method,group_fusion_poynt_user,1,0,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_poynt_terminal_user poynt.terminal.user model_poynt_terminal base.group_user group_fusion_poynt_user 1 0 0 0
3 access_poynt_terminal_admin poynt.terminal.admin model_poynt_terminal base.group_system group_fusion_poynt_admin 1 1 1 1
4 access_poynt_payment_wizard_user poynt.payment.wizard.user model_poynt_payment_wizard account.group_account_invoice group_fusion_poynt_user 1 1 1 0
5 access_poynt_payment_wizard_admin poynt.payment.wizard.admin model_poynt_payment_wizard base.group_system group_fusion_poynt_admin 1 1 1 1
6 access_poynt_refund_wizard_user poynt.refund.wizard.user model_poynt_refund_wizard account.group_account_invoice group_fusion_poynt_user 1 1 1 0
7 access_poynt_refund_wizard_admin poynt.refund.wizard.admin model_poynt_refund_wizard base.group_system group_fusion_poynt_admin 1 1 1 1
8 access_payment_provider_poynt_user payment.provider.poynt.user payment.model_payment_provider group_fusion_poynt_user 1 0 0 0
9 access_payment_transaction_poynt_user payment.transaction.poynt.user payment.model_payment_transaction group_fusion_poynt_user 1 1 1 0
10 access_payment_method_poynt_user payment.method.poynt.user payment.model_payment_method group_fusion_poynt_user 1 0 0 0

View File

@@ -0,0 +1,49 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!-- ================================================================== -->
<!-- MODULE CATEGORY (required for user settings section rendering) -->
<!-- Odoo 19 organizes privileges by ir.module.category. -->
<!-- Without this, groups fall into the generic Extra Rights list. -->
<!-- ================================================================== -->
<record id="module_category_fusion_poynt" model="ir.module.category">
<field name="name">Fusion Poynt</field>
<field name="sequence">47</field>
</record>
<!-- ================================================================== -->
<!-- FUSION POYNT PRIVILEGE (Odoo 19 pattern) -->
<!-- Linked to module_category_fusion_poynt so all groups appear -->
<!-- under a "FUSION POYNT" section in user settings. -->
<!-- ================================================================== -->
<record id="res_groups_privilege_fusion_poynt" model="res.groups.privilege">
<field name="name">Fusion Poynt</field>
<field name="sequence">47</field>
<field name="category_id" ref="module_category_fusion_poynt"/>
</record>
<!-- ================================================================== -->
<!-- USER GROUP -->
<!-- Can view terminals, collect payments, and send receipts. -->
<!-- Implies base.group_user and account invoice access. -->
<!-- ================================================================== -->
<record id="group_fusion_poynt_user" model="res.groups">
<field name="name">User</field>
<field name="sequence">10</field>
<field name="implied_ids" eval="[(4, ref('base.group_user')), (4, ref('account.group_account_invoice'))]"/>
<field name="privilege_id" ref="res_groups_privilege_fusion_poynt"/>
</record>
<!-- ================================================================== -->
<!-- ADMINISTRATOR GROUP -->
<!-- Full access: configure providers, manage terminals, process -->
<!-- payments, voids, and refunds. -->
<!-- ================================================================== -->
<record id="group_fusion_poynt_admin" model="res.groups">
<field name="name">Administrator</field>
<field name="sequence">20</field>
<field name="privilege_id" ref="res_groups_privilege_fusion_poynt"/>
<field name="implied_ids" eval="[(4, ref('group_fusion_poynt_user'))]"/>
<field name="user_ids" eval="[(4, ref('base.user_root')), (4, ref('base.user_admin'))]"/>
</record>
</odoo>