Skip to content

Commit 77d1fc8

Browse files
author
odoo
committed
feat: Revamp Records Management menus and views for improved organization and access control
1 parent 1ebaaff commit 77d1fc8

File tree

5 files changed

+279
-78
lines changed

5 files changed

+279
-78
lines changed

records_management/views/customer_inventory_views.xml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,4 @@
1717
<field name="view_id" ref="view_stock_quant_graph_customer"/>
1818
<field name="domain">[('customer_id', '!=', False)]</field>
1919
</record>
20-
<menuitem id="menu_customer_inventory" name="Inventory Dashboard"
21-
parent="stock.menu_stock_root" action="action_customer_inventory_graph"/>
2220
</odoo>
Lines changed: 151 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,154 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<odoo>
3-
<menuitem id="menu_records_management_root"
4-
name="Records Management"
5-
web_icon="records_management,static/description/icon.png"
6-
sequence="90"/>
7-
8-
<menuitem id="menu_records_management_documents"
9-
name="Documents"
10-
parent="menu_records_management_root"
11-
sequence="10"/>
12-
13-
<menuitem id="menu_records_boxes"
14-
name="Boxes"
15-
parent="menu_records_management_root"
16-
action="action_records_box"
17-
sequence="20"/>
18-
19-
<menuitem id="menu_records_documents"
20-
name="Documents"
21-
parent="menu_records_management_documents"
22-
action="action_records_document"
23-
sequence="10"/>
24-
25-
<menuitem id="menu_records_retention"
26-
name="Retention Policies"
27-
parent="menu_records_management_documents"
28-
action="action_records_retention_policy"
29-
sequence="20"/>
30-
31-
<menuitem id="menu_records_configuration"
32-
name="Configuration"
33-
parent="menu_records_management_root"
34-
sequence="100"/>
35-
36-
<menuitem id="menu_records_location"
37-
name="Storage Locations"
38-
parent="menu_records_configuration"
39-
action="action_records_location"
40-
sequence="10"/>
41-
42-
<menuitem id="menu_records_document_type"
43-
name="Document Types"
44-
parent="menu_records_configuration"
45-
action="action_records_document_type"
46-
sequence="20"/>
47-
48-
<menuitem id="menu_records_tags"
49-
name="Tags"
50-
parent="menu_records_configuration"
51-
action="action_records_tag"
52-
sequence="30"/>
3+
<data>
4+
<!-- Root Menu for Records Management -->
5+
<menuitem id="menu_records_management_root"
6+
name="Records Management"
7+
web_icon="records_management,static/description/icon.png"
8+
sequence="50"
9+
groups="records_management.group_records_user"/>
10+
11+
<!-- ==== OPERATIONS SECTION ==== -->
12+
<menuitem id="menu_records_operations"
13+
name="Operations"
14+
parent="menu_records_management_root"
15+
sequence="10"
16+
groups="records_management.group_records_user"/>
17+
18+
<!-- Records and Documents -->
19+
<menuitem id="menu_records_boxes"
20+
name="Storage Boxes"
21+
parent="menu_records_operations"
22+
action="action_records_box"
23+
sequence="10"
24+
groups="records_management.group_records_user"/>
25+
26+
<menuitem id="menu_records_documents"
27+
name="Documents"
28+
parent="menu_records_operations"
29+
action="action_records_document"
30+
sequence="20"
31+
groups="records_management.group_records_user"/>
32+
33+
<!-- Service Operations -->
34+
<menuitem id="menu_pickup_requests"
35+
name="Pickup Requests"
36+
parent="menu_records_operations"
37+
action="action_pickup_request"
38+
sequence="30"
39+
groups="records_management.group_records_user"/>
40+
41+
<menuitem id="menu_shredding_services"
42+
name="Shredding Services"
43+
parent="menu_records_operations"
44+
action="action_shredding_service"
45+
sequence="40"
46+
groups="records_management.group_records_user"/>
47+
48+
<!-- ==== INVENTORY & MANAGEMENT SECTION ==== -->
49+
<menuitem id="menu_records_inventory"
50+
name="Inventory"
51+
parent="menu_records_management_root"
52+
sequence="20"
53+
groups="records_management.group_records_user"/>
54+
55+
<menuitem id="menu_customer_inventory"
56+
name="Customer Inventory"
57+
parent="menu_records_inventory"
58+
action="action_customer_inventory_report"
59+
sequence="10"
60+
groups="records_management.group_records_user"/>
61+
62+
<menuitem id="menu_records_retention"
63+
name="Retention Policies"
64+
parent="menu_records_inventory"
65+
action="action_records_retention_policy"
66+
sequence="20"
67+
groups="records_management.group_records_manager"/>
68+
69+
<!-- ==== REPORTING SECTION ==== -->
70+
<menuitem id="menu_records_reporting"
71+
name="Reporting"
72+
parent="menu_records_management_root"
73+
sequence="30"
74+
groups="records_management.group_records_user"/>
75+
76+
<menuitem id="menu_records_reports"
77+
name="Storage Reports"
78+
parent="menu_records_reporting"
79+
action="report_box_contents"
80+
sequence="10"
81+
groups="records_management.group_records_user"/>
82+
83+
<menuitem id="menu_inventory_reports"
84+
name="Inventory Reports"
85+
parent="menu_records_reporting"
86+
action="action_customer_inventory_report"
87+
sequence="20"
88+
groups="records_management.group_records_user"/>
89+
90+
<!-- ==== CONFIGURATION SECTION ==== -->
91+
<menuitem id="menu_records_configuration"
92+
name="Configuration"
93+
parent="menu_records_management_root"
94+
sequence="100"
95+
groups="records_management.group_records_manager"/>
96+
97+
<!-- Master Data Configuration -->
98+
<menuitem id="menu_records_master_data"
99+
name="Master Data"
100+
parent="menu_records_configuration"
101+
sequence="10"
102+
groups="records_management.group_records_manager"/>
103+
104+
<menuitem id="menu_records_location"
105+
name="Storage Locations"
106+
parent="menu_records_master_data"
107+
action="action_records_location"
108+
sequence="10"
109+
groups="records_management.group_records_manager"/>
110+
111+
<menuitem id="menu_records_document_type"
112+
name="Document Types"
113+
parent="menu_records_master_data"
114+
action="action_records_document_type"
115+
sequence="20"
116+
groups="records_management.group_records_manager"/>
117+
118+
<menuitem id="menu_records_tags"
119+
name="Classification Tags"
120+
parent="menu_records_master_data"
121+
action="action_records_tag"
122+
sequence="30"
123+
groups="records_management.group_records_manager"/>
124+
125+
<!-- Product Configuration -->
126+
<menuitem id="menu_records_products"
127+
name="Products &amp; Services"
128+
parent="menu_records_configuration"
129+
sequence="20"
130+
groups="records_management.group_records_manager"/>
131+
132+
<menuitem id="menu_records_products_list"
133+
name="Service Products"
134+
parent="menu_records_products"
135+
action="product.product_template_action"
136+
sequence="10"
137+
groups="records_management.group_records_manager"/>
138+
139+
<menuitem id="menu_records_product_variants"
140+
name="Product Variants"
141+
parent="menu_records_products"
142+
action="product.product_normal_action"
143+
sequence="20"
144+
groups="records_management.group_records_manager"/>
145+
146+
<!-- Settings -->
147+
<menuitem id="menu_records_settings"
148+
name="Settings"
149+
parent="menu_records_configuration"
150+
sequence="90"
151+
groups="records_management.group_records_manager"/>
152+
153+
</data>
53154
</odoo>

records_management/views/records_retention_policy_views.xml

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -63,11 +63,4 @@
6363
</p>
6464
</field>
6565
</record>
66-
67-
<!-- Menu Item -->
68-
<menuitem id="menu_records_retention_policy"
69-
name="Retention Policies"
70-
parent="records_management_configuration_menu"
71-
action="action_records_retention_policy"
72-
sequence="40"/>
7366
</odoo>
Lines changed: 121 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,128 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<odoo>
3-
<data>
4-
<!-- ...existing records... -->
3+
<!-- Shredding Service Tree View -->
4+
<record id="view_shredding_service_tree" model="ir.ui.view">
5+
<field name="name">shredding.service.tree</field>
6+
<field name="model">shredding.service</field>
7+
<field name="arch" type="xml">
8+
<tree>
9+
<field name="name"/>
10+
<field name="customer_id"/>
11+
<field name="service_date"/>
12+
<field name="status"/>
13+
<field name="total_boxes"/>
14+
<field name="total_cost"/>
15+
<field name="company_id" groups="base.group_multi_company"/>
16+
</tree>
17+
</field>
18+
</record>
519

6-
<record id="shredding_service_form" model="ir.ui.view">
7-
<field name="name">shredding.service.form</field>
8-
<field name="model">shredding.service</field>
9-
<field name="arch" type="xml">
10-
<form string="Shredding Service">
11-
<!-- ...existing fields... -->
20+
<!-- Shredding Service Form View -->
21+
<record id="view_shredding_service_form" model="ir.ui.view">
22+
<field name="name">shredding.service.form</field>
23+
<field name="model">shredding.service</field>
24+
<field name="arch" type="xml">
25+
<form string="Shredding Service">
26+
<header>
27+
<button name="action_confirm" string="Confirm Service" type="object"
28+
class="oe_highlight" states="draft"/>
29+
<button name="action_start" string="Start Service" type="object"
30+
class="oe_highlight" states="confirmed"/>
31+
<button name="action_complete" string="Complete Service" type="object"
32+
class="oe_highlight" states="in_progress"/>
33+
<button name="action_cancel" string="Cancel" type="object"
34+
states="draft,confirmed"/>
35+
<field name="status" widget="statusbar" statusbar_visible="draft,confirmed,in_progress,completed"/>
36+
</header>
37+
<sheet>
38+
<div class="oe_title">
39+
<h1>
40+
<field name="name" placeholder="Shredding Service Reference"/>
41+
</h1>
42+
</div>
1243
<group>
13-
<!-- ...existing fields... -->
14-
<field name="map_display" widget="map_widget" options="{'provider': 'google'}"/>
44+
<group>
45+
<field name="customer_id"/>
46+
<field name="service_date"/>
47+
<field name="scheduled_date"/>
48+
</group>
49+
<group>
50+
<field name="total_boxes"/>
51+
<field name="total_cost"/>
52+
<field name="company_id" groups="base.group_multi_company"/>
53+
</group>
1554
</group>
16-
<!-- ...existing fields... -->
17-
</form>
18-
</field>
19-
</record>
55+
<notebook>
56+
<page string="Box Details">
57+
<field name="box_ids">
58+
<tree editable="bottom">
59+
<field name="box_id"/>
60+
<field name="quantity"/>
61+
<field name="unit_cost"/>
62+
<field name="total_cost"/>
63+
</tree>
64+
</field>
65+
</page>
66+
<page string="Notes">
67+
<field name="notes"/>
68+
</page>
69+
</notebook>
70+
</sheet>
71+
<div class="oe_chatter">
72+
<field name="message_follower_ids"/>
73+
<field name="activity_ids"/>
74+
<field name="message_ids"/>
75+
</div>
76+
</form>
77+
</field>
78+
</record>
2079

21-
<!-- ...existing records... -->
22-
</data>
80+
<!-- Shredding Service Kanban View -->
81+
<record id="view_shredding_service_kanban" model="ir.ui.view">
82+
<field name="name">shredding.service.kanban</field>
83+
<field name="model">shredding.service</field>
84+
<field name="arch" type="xml">
85+
<kanban default_group_by="status" class="o_kanban_small_column">
86+
<field name="customer_id"/>
87+
<field name="service_date"/>
88+
<field name="total_cost"/>
89+
<field name="status"/>
90+
<templates>
91+
<t t-name="kanban-box">
92+
<div class="oe_kanban_global_click">
93+
<div class="o_kanban_record_top">
94+
<div class="o_kanban_record_headings">
95+
<strong class="o_kanban_record_title">
96+
<field name="name"/>
97+
</strong>
98+
</div>
99+
<div class="o_kanban_record_body">
100+
<field name="customer_id"/>
101+
<br/>
102+
Date: <field name="service_date"/>
103+
<br/>
104+
Cost: <field name="total_cost"/>
105+
</div>
106+
</div>
107+
</div>
108+
</t>
109+
</templates>
110+
</kanban>
111+
</field>
112+
</record>
113+
114+
<!-- Shredding Service Action -->
115+
<record id="action_shredding_service" model="ir.actions.act_window">
116+
<field name="name">Shredding Services</field>
117+
<field name="res_model">shredding.service</field>
118+
<field name="view_mode">kanban,tree,form</field>
119+
<field name="help" type="html">
120+
<p class="o_view_nocontent_smiling_face">
121+
Create your first shredding service!
122+
</p>
123+
<p>
124+
Manage document shredding services for secure document destruction.
125+
</p>
126+
</field>
127+
</record>
23128
</odoo>

records_management/views/stock_lot_views.xml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,12 @@
8888
</field>
8989
</record>
9090

91-
<!-- Records Management Menu -->
92-
<menuitem id="menu_records_management_root" name="Records Management" sequence="10" groups="records_management.group_records_user"/>
93-
<menuitem id="menu_stock_lots" name="Serial Numbers" parent="menu_records_management_root" action="action_stock_lot" sequence="10" groups="records_management.group_records_user"/>
91+
<!-- Serial Numbers Menu (under Operations) -->
92+
<menuitem id="menu_stock_lots"
93+
name="Serial Numbers"
94+
parent="records_management.menu_records_operations"
95+
action="action_stock_lot"
96+
sequence="50"
97+
groups="records_management.group_records_user"/>
9498
</data>
9599
</odoo>

0 commit comments

Comments
 (0)