101 lines
5.2 KiB
XML
101 lines
5.2 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<!-- Category -->
|
|
<record id="module_category_education_finance" model="ir.module.category">
|
|
<field name="name">Education Finance</field>
|
|
<field name="sequence">30</field>
|
|
</record>
|
|
|
|
<!-- Groups -->
|
|
<record id="group_finance_executive" model="res.groups">
|
|
<field name="name">Finance Executive</field>
|
|
<field name="category_id" ref="module_category_education_finance"/>
|
|
<field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
|
|
<field name="comment">Basic transactional actions: Record payments, view student ledgers.</field>
|
|
</record>
|
|
|
|
<record id="group_finance_manager" model="res.groups">
|
|
<field name="name">Finance Manager</field>
|
|
<field name="category_id" ref="module_category_education_finance"/>
|
|
<field name="implied_ids" eval="[(4, ref('group_finance_executive'))]"/>
|
|
<field name="comment">Manage fee assignments, discounts, scholarships, and approve refunds.</field>
|
|
</record>
|
|
|
|
<record id="group_finance_admin" model="res.groups">
|
|
<field name="name">Finance Administrator</field>
|
|
<field name="category_id" ref="module_category_education_finance"/>
|
|
<field name="implied_ids" eval="[(4, ref('group_finance_manager'))]"/>
|
|
<field name="comment">Full settings control, configure fee types/structures, and delete transactions.</field>
|
|
</record>
|
|
|
|
<record id="group_finance_student_readonly" model="res.groups">
|
|
<field name="name">Student Readonly Finance</field>
|
|
<field name="category_id" ref="module_category_education_finance"/>
|
|
<field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
|
|
<field name="comment">Access control group allowing a student to view their own ledger lines.</field>
|
|
</record>
|
|
|
|
<!-- Record Rules (Multi-Company) -->
|
|
<record id="rule_fee_category_company" model="ir.rule">
|
|
<field name="name">Fee Category Company Rule</field>
|
|
<field name="model_id" ref="model_education_fee_category"/>
|
|
<field name="domain_force">['|', ('company_id', '=', False), ('company_id', '=', user.company_id.id)]</field>
|
|
</record>
|
|
|
|
<record id="rule_fee_type_company" model="ir.rule">
|
|
<field name="name">Fee Type Company Rule</field>
|
|
<field name="model_id" ref="model_education_fee_type"/>
|
|
<field name="domain_force">['|', ('company_id', '=', False), ('company_id', '=', user.company_id.id)]</field>
|
|
</record>
|
|
|
|
<record id="rule_fee_structure_company" model="ir.rule">
|
|
<field name="name">Fee Structure Company Rule</field>
|
|
<field name="model_id" ref="model_education_fee_structure"/>
|
|
<field name="domain_force">['|', ('company_id', '=', False), ('company_id', '=', user.company_id.id)]</field>
|
|
</record>
|
|
|
|
<record id="rule_fee_assignment_company" model="ir.rule">
|
|
<field name="name">Fee Assignment Company Rule</field>
|
|
<field name="model_id" ref="model_education_fee_assignment"/>
|
|
<field name="domain_force">['|', ('company_id', '=', False), ('company_id', '=', user.company_id.id)]</field>
|
|
</record>
|
|
|
|
<record id="rule_student_ledger_company" model="ir.rule">
|
|
<field name="name">Student Ledger Company Rule</field>
|
|
<field name="model_id" ref="model_education_student_ledger"/>
|
|
<field name="domain_force">['|', ('company_id', '=', False), ('company_id', '=', user.company_id.id)]</field>
|
|
</record>
|
|
|
|
<record id="rule_student_payment_company" model="ir.rule">
|
|
<field name="name">Student Payment Company Rule</field>
|
|
<field name="model_id" ref="model_education_student_payment"/>
|
|
<field name="domain_force">['|', ('company_id', '=', False), ('company_id', '=', user.company_id.id)]</field>
|
|
</record>
|
|
|
|
<record id="rule_student_discount_company" model="ir.rule">
|
|
<field name="name">Student Discount Company Rule</field>
|
|
<field name="model_id" ref="model_education_student_discount"/>
|
|
<field name="domain_force">['|', ('company_id', '=', False), ('company_id', '=', user.company_id.id)]</field>
|
|
</record>
|
|
|
|
<record id="rule_student_scholarship_company" model="ir.rule">
|
|
<field name="name">Student Scholarship Company Rule</field>
|
|
<field name="model_id" ref="model_education_student_scholarship"/>
|
|
<field name="domain_force">['|', ('company_id', '=', False), ('company_id', '=', user.company_id.id)]</field>
|
|
</record>
|
|
|
|
<record id="rule_student_refund_company" model="ir.rule">
|
|
<field name="name">Student Refund Company Rule</field>
|
|
<field name="model_id" ref="model_education_student_refund"/>
|
|
<field name="domain_force">['|', ('company_id', '=', False), ('company_id', '=', user.company_id.id)]</field>
|
|
</record>
|
|
|
|
<!-- Student Record Rule for Readonly Group -->
|
|
<record id="rule_student_ledger_student_readonly" model="ir.rule">
|
|
<field name="name">Personal Student Ledger Rule</field>
|
|
<field name="model_id" ref="model_education_student_ledger"/>
|
|
<field name="domain_force">[('student_id.email', '=', user.login)]</field>
|
|
<field name="groups" eval="[(4, ref('group_finance_student_readonly'))]"/>
|
|
</record>
|
|
</odoo>
|