|
|
|
|
@@ -0,0 +1,75 @@
|
|
|
|
|
<?xml version="1.0" encoding="utf-8"?>
|
|
|
|
|
<!--
|
|
|
|
|
Copyright 2026 Nexa Systems Inc.
|
|
|
|
|
License OPL-1 (Odoo Proprietary License v1.0)
|
|
|
|
|
Part of the Fusion Plating product family.
|
|
|
|
|
-->
|
|
|
|
|
<odoo>
|
|
|
|
|
|
|
|
|
|
<!-- ================================================================== -->
|
|
|
|
|
<!-- RECORD RULES -->
|
|
|
|
|
<!-- Customers (portal users) only see THEIR OWN quote requests + jobs. -->
|
|
|
|
|
<!-- Internal shop users (Operator+) see everything they're entitled to.-->
|
|
|
|
|
<!-- ================================================================== -->
|
|
|
|
|
|
|
|
|
|
<!-- Quote Request: portal users see only their own -->
|
|
|
|
|
<record id="fp_quote_request_portal_rule" model="ir.rule">
|
|
|
|
|
<field name="name">Plating Quote Request: portal — own company</field>
|
|
|
|
|
<field name="model_id" ref="model_fusion_plating_quote_request"/>
|
|
|
|
|
<field name="domain_force">[('partner_id','child_of', user.commercial_partner_id.id)]</field>
|
|
|
|
|
<field name="groups" eval="[(4, ref('base.group_portal'))]"/>
|
|
|
|
|
<field name="perm_read" eval="True"/>
|
|
|
|
|
<field name="perm_write" eval="False"/>
|
|
|
|
|
<field name="perm_create" eval="True"/>
|
|
|
|
|
<field name="perm_unlink" eval="False"/>
|
|
|
|
|
</record>
|
|
|
|
|
|
|
|
|
|
<!-- Quote Request: internal shop users — all -->
|
|
|
|
|
<record id="fp_quote_request_internal_rule" model="ir.rule">
|
|
|
|
|
<field name="name">Plating Quote Request: internal shop users</field>
|
|
|
|
|
<field name="model_id" ref="model_fusion_plating_quote_request"/>
|
|
|
|
|
<field name="domain_force">[(1,'=',1)]</field>
|
|
|
|
|
<field name="groups" eval="[(4, ref('fusion_plating.group_fusion_plating_operator'))]"/>
|
|
|
|
|
</record>
|
|
|
|
|
|
|
|
|
|
<!-- Quote Request Line: portal users see only their own (via parent) -->
|
|
|
|
|
<record id="fp_quote_request_line_portal_rule" model="ir.rule">
|
|
|
|
|
<field name="name">Plating Quote Request Line: portal — own company</field>
|
|
|
|
|
<field name="model_id" ref="model_fusion_plating_quote_request_line"/>
|
|
|
|
|
<field name="domain_force">[('request_id.partner_id','child_of', user.commercial_partner_id.id)]</field>
|
|
|
|
|
<field name="groups" eval="[(4, ref('base.group_portal'))]"/>
|
|
|
|
|
<field name="perm_read" eval="True"/>
|
|
|
|
|
<field name="perm_write" eval="False"/>
|
|
|
|
|
<field name="perm_create" eval="True"/>
|
|
|
|
|
<field name="perm_unlink" eval="False"/>
|
|
|
|
|
</record>
|
|
|
|
|
|
|
|
|
|
<!-- Quote Request Line: internal shop users — all -->
|
|
|
|
|
<record id="fp_quote_request_line_internal_rule" model="ir.rule">
|
|
|
|
|
<field name="name">Plating Quote Request Line: internal shop users</field>
|
|
|
|
|
<field name="model_id" ref="model_fusion_plating_quote_request_line"/>
|
|
|
|
|
<field name="domain_force">[(1,'=',1)]</field>
|
|
|
|
|
<field name="groups" eval="[(4, ref('fusion_plating.group_fusion_plating_operator'))]"/>
|
|
|
|
|
</record>
|
|
|
|
|
|
|
|
|
|
<!-- Portal Job: portal users see only their own -->
|
|
|
|
|
<record id="fp_portal_job_portal_rule" model="ir.rule">
|
|
|
|
|
<field name="name">Plating Portal Job: portal — own company</field>
|
|
|
|
|
<field name="model_id" ref="model_fusion_plating_portal_job"/>
|
|
|
|
|
<field name="domain_force">[('partner_id','child_of', user.commercial_partner_id.id)]</field>
|
|
|
|
|
<field name="groups" eval="[(4, ref('base.group_portal'))]"/>
|
|
|
|
|
<field name="perm_read" eval="True"/>
|
|
|
|
|
<field name="perm_write" eval="False"/>
|
|
|
|
|
<field name="perm_create" eval="False"/>
|
|
|
|
|
<field name="perm_unlink" eval="False"/>
|
|
|
|
|
</record>
|
|
|
|
|
|
|
|
|
|
<!-- Portal Job: internal shop users — all -->
|
|
|
|
|
<record id="fp_portal_job_internal_rule" model="ir.rule">
|
|
|
|
|
<field name="name">Plating Portal Job: internal shop users</field>
|
|
|
|
|
<field name="model_id" ref="model_fusion_plating_portal_job"/>
|
|
|
|
|
<field name="domain_force">[(1,'=',1)]</field>
|
|
|
|
|
<field name="groups" eval="[(4, ref('fusion_plating.group_fusion_plating_operator'))]"/>
|
|
|
|
|
</record>
|
|
|
|
|
|
|
|
|
|
</odoo>
|