From 6c53f383331aa816edf13bd8b92de6eb3910dbc7 Mon Sep 17 00:00:00 2001 From: Julien Schwanen Date: Fri, 11 Oct 2024 17:16:26 +0200 Subject: [PATCH] [ADD] carpenter: Adding the module Added a new XML template for carpentry project quotations in Odoo. The template provides a detailed structure for custom carpentry projects, including project overview, material requirements, labor breakdown, and estimated costs. It enhances user experience by automating material calculations based on project dimensions and allows for a simplified or detailed quotation view. The template is designed to streamline project management, offering automatic task and project creation upon sale of specific products, and supports flexible margin adjustments. Added the possibility to hide SO lines to the user. --- carpenter/__manifest__.py | 66 +++ carpenter/data/base_automation.xml | 9 + carpenter/data/ir_actions_report.xml | 16 + carpenter/data/ir_actions_server.xml | 31 ++ carpenter/data/ir_attachment_pre.xml | 7 + carpenter/data/ir_model_fields.xml | 31 ++ carpenter/data/ir_ui_view.xml | 144 ++++++ carpenter/data/knowledge_article.xml | 116 +++++ carpenter/data/knowledge_article_favorite.xml | 7 + carpenter/data/knowledge_cover.xml | 6 + carpenter/data/knowledge_tour.xml | 8 + carpenter/data/mail_message.xml | 15 + carpenter/data/mail_template.xml | 231 +++++++++ carpenter/data/product_product.xml | 258 ++++++++++ carpenter/data/project_project.xml | 24 + carpenter/data/project_tags.xml | 9 + carpenter/data/project_task.xml | 135 +++++ carpenter/data/project_task_type.xml | 54 ++ carpenter/data/report_view.xml | 479 ++++++++++++++++++ carpenter/data/res_config_settings.xml | 11 + carpenter/data/sale_order_spreadsheet.xml | 7 + carpenter/data/sale_order_template.xml | 9 + carpenter/data/sale_order_template_line.xml | 46 ++ carpenter/demo/product_supplierinfo.xml | 57 +++ carpenter/demo/purchase_order.xml | 10 + carpenter/demo/purchase_order_confirm.xml | 4 + carpenter/demo/purchase_order_line.xml | 33 ++ carpenter/demo/res_partner.xml | 49 ++ carpenter/demo/res_user.xml | 20 + carpenter/demo/sale_order.xml | 15 + carpenter/demo/sale_order_confirm.xml | 8 + carpenter/demo/sale_order_line.xml | 21 + carpenter/images/main.png | Bin 0 -> 81275 bytes carpenter/static/description/icon.png | Bin 0 -> 1209 bytes .../src/binary/hr_employee/eleonore.jpg | Bin 0 -> 10008 bytes .../static/src/binary/hr_employee/tomate.jpg | Bin 0 -> 10029 bytes .../src/binary/ir_attachment/240-cover.jpg | Bin 0 -> 7372356 bytes carpenter/static/src/js/my_tour.js | 17 + .../static/src/json/Wood_Frame_Estimator.json | 1 + 39 files changed, 1954 insertions(+) create mode 100644 carpenter/__manifest__.py create mode 100644 carpenter/data/base_automation.xml create mode 100644 carpenter/data/ir_actions_report.xml create mode 100644 carpenter/data/ir_actions_server.xml create mode 100644 carpenter/data/ir_attachment_pre.xml create mode 100644 carpenter/data/ir_model_fields.xml create mode 100644 carpenter/data/ir_ui_view.xml create mode 100644 carpenter/data/knowledge_article.xml create mode 100644 carpenter/data/knowledge_article_favorite.xml create mode 100644 carpenter/data/knowledge_cover.xml create mode 100644 carpenter/data/knowledge_tour.xml create mode 100644 carpenter/data/mail_message.xml create mode 100644 carpenter/data/mail_template.xml create mode 100644 carpenter/data/product_product.xml create mode 100644 carpenter/data/project_project.xml create mode 100644 carpenter/data/project_tags.xml create mode 100644 carpenter/data/project_task.xml create mode 100644 carpenter/data/project_task_type.xml create mode 100644 carpenter/data/report_view.xml create mode 100644 carpenter/data/res_config_settings.xml create mode 100644 carpenter/data/sale_order_spreadsheet.xml create mode 100644 carpenter/data/sale_order_template.xml create mode 100644 carpenter/data/sale_order_template_line.xml create mode 100644 carpenter/demo/product_supplierinfo.xml create mode 100644 carpenter/demo/purchase_order.xml create mode 100644 carpenter/demo/purchase_order_confirm.xml create mode 100644 carpenter/demo/purchase_order_line.xml create mode 100644 carpenter/demo/res_partner.xml create mode 100644 carpenter/demo/res_user.xml create mode 100644 carpenter/demo/sale_order.xml create mode 100644 carpenter/demo/sale_order_confirm.xml create mode 100644 carpenter/demo/sale_order_line.xml create mode 100644 carpenter/images/main.png create mode 100644 carpenter/static/description/icon.png create mode 100644 carpenter/static/src/binary/hr_employee/eleonore.jpg create mode 100644 carpenter/static/src/binary/hr_employee/tomate.jpg create mode 100644 carpenter/static/src/binary/ir_attachment/240-cover.jpg create mode 100644 carpenter/static/src/js/my_tour.js create mode 100644 carpenter/static/src/json/Wood_Frame_Estimator.json diff --git a/carpenter/__manifest__.py b/carpenter/__manifest__.py new file mode 100644 index 000000000..e2e942f4a --- /dev/null +++ b/carpenter/__manifest__.py @@ -0,0 +1,66 @@ +{ + 'name': 'Carpenter', + 'version': '1.0', + 'category': 'Retail', + 'description': """ +""", + 'depends': [ + 'base_automation', + 'contacts', + 'knowledge', + 'project', + 'purchase', + 'sale_management', + 'sale_timesheet', + 'stock', + 'web_studio', + ], + 'data': [ + 'data/res_config_settings.xml', + 'data/ir_model_fields.xml', + 'data/report_view.xml', + 'data/ir_actions_report.xml', + 'data/mail_template.xml', + 'data/ir_actions_server.xml', + 'data/ir_ui_view.xml', + 'data/base_automation.xml', + 'data/ir_attachment_pre.xml', + 'data/project_task_type.xml', + 'data/project_tags.xml', + 'data/project_project.xml', + 'data/project_task.xml', + 'data/product_product.xml', + 'data/sale_order_spreadsheet.xml', + 'data/sale_order_template.xml', + 'data/sale_order_template_line.xml', + 'data/knowledge_cover.xml', + 'data/knowledge_article.xml', + 'data/knowledge_article_favorite.xml', + 'data/mail_message.xml', + 'data/knowledge_tour.xml', + ], + 'demo': [ + 'demo/res_partner.xml', + 'demo/res_user.xml', + 'demo/product_supplierinfo.xml', + 'demo/sale_order.xml', + 'demo/sale_order_line.xml', + 'demo/sale_order_confirm.xml', + 'demo/purchase_order.xml', + 'demo/purchase_order_line.xml', + 'demo/purchase_order_confirm.xml', + ], + 'license': 'OPL-1', + 'assets': { + 'web.assets_backend': [ + 'carpenter/static/src/js/my_tour.js', + ] + }, + 'author': 'Odoo S.A.', + "cloc_exclude": [ + "data/knowledge_article.xml", + "data/ir_ui_view.xml", + "static/src/js/my_tour.js", + ], + 'images': ['images/main.png'], +} diff --git a/carpenter/data/base_automation.xml b/carpenter/data/base_automation.xml new file mode 100644 index 000000000..d88bbdeec --- /dev/null +++ b/carpenter/data/base_automation.xml @@ -0,0 +1,9 @@ + + + + + + on_create_or_write + Modify Portal + + diff --git a/carpenter/data/ir_actions_report.xml b/carpenter/data/ir_actions_report.xml new file mode 100644 index 000000000..3017465e8 --- /dev/null +++ b/carpenter/data/ir_actions_report.xml @@ -0,0 +1,16 @@ + + + + + sale.order + Simplified Report + carpenter.simplified_sales_order + + + + account.move + Simplified Report + carpenter.simplified_invoice + True + + diff --git a/carpenter/data/ir_actions_server.xml b/carpenter/data/ir_actions_server.xml new file mode 100644 index 000000000..a23bf141e --- /dev/null +++ b/carpenter/data/ir_actions_server.xml @@ -0,0 +1,31 @@ + + + + + + code + Execute Code + + + + + + + + + + code + Execute Code + base_automation + + diff --git a/carpenter/data/ir_attachment_pre.xml b/carpenter/data/ir_attachment_pre.xml new file mode 100644 index 000000000..580e8d288 --- /dev/null +++ b/carpenter/data/ir_attachment_pre.xml @@ -0,0 +1,7 @@ + + + + unsplash_iZgQKxuMRHc_.jpg + + + diff --git a/carpenter/data/ir_model_fields.xml b/carpenter/data/ir_model_fields.xml new file mode 100644 index 000000000..975d7af2b --- /dev/null +++ b/carpenter/data/ir_model_fields.xml @@ -0,0 +1,31 @@ + + + + float + product_id.standard_price + Unit Cost + + x_studio_unit_cost + + + + + + boolean + + Simplified SO + + x_simplify_so + + + + + many2one + invoice_template_pdf_report_id + Report + + x_report + ir.actions.report + + + diff --git a/carpenter/data/ir_ui_view.xml b/carpenter/data/ir_ui_view.xml new file mode 100644 index 000000000..41b8ba869 --- /dev/null +++ b/carpenter/data/ir_ui_view.xml @@ -0,0 +1,144 @@ + + + + res.config.settings.inherit.sale.view + res.config.settings + extension + + + + +
+
+ +
+
+
+
+
+
+
+ + + + + + + + + + extension + res.partner + + Odoo Studio: res.partner.form customization + 360 + form + + + + + +