diff --git a/addons/laundry_management/__manifest__.py b/addons/laundry_management/__manifest__.py new file mode 100644 index 0000000..c2049f2 --- /dev/null +++ b/addons/laundry_management/__manifest__.py @@ -0,0 +1,151 @@ +{ + 'name': 'Laundry Management', + 'version': '19.0.19.0.4', + 'summary': 'Laundry Management', + 'description': 'Laundry Management', + 'author': 'Laundry Management', + 'category': 'Services', + 'license': 'LGPL-3', + 'depends': [ + 'base', + 'mail', + 'sale', # sale.order (legacy refs in commission/dashboard) + 'account', # account.move, account.payment (legacy refs) + 'product', # product.template, product.product + 'base_setup', # res.config.settings integration + 'sales_team', # group_sale_salesman, group_sale_manager + 'point_of_sale', # pos.order ??? source of truth + ], + 'data': [ + # 1. Security ??? groups must load before ACLs and rules + 'security/res_groups.xml', + 'security/ir_rule.xml', + 'security/ir.model.access.csv', + # 2. Sequences + 'data/sequence.xml', + # 3. Master data + 'data/laundry_data.xml', + 'data/service_catalog_data.xml', + # 4. Reports ??? must load before views that reference report actions + 'report/laundry_order_report.xml', + 'report/laundry_thermal_report.xml', + 'report/laundry_work_order_report.xml', + # 5. Action-defining views ??? must load before menus + reporting, + # because both reference these actions by xml id. + 'views/product_template_views.xml', + 'views/laundry_order_type_views.xml', + 'views/laundry_order_attribute_views.xml', + 'views/laundry_order_views.xml', + 'views/pos_order_views.xml', + 'views/laundry_commission_views.xml', + # 6. Configuration views + 'views/laundry_payment_method_views.xml', + 'views/laundry_settings_views.xml', + 'views/pos_config_views.xml', + # 7. Wizards (their actions are referenced from menus / forms) + 'views/laundry_print_wizard_views.xml', + 'wizard/laundry_order_unlock_wizard_views.xml', + # 8. MENUS ??? must load BEFORE any file that adds a child menu + # under menu_laundry_root (e.g. laundry_reporting_views.xml). + 'views/laundry_menus.xml', + # 9. Reporting ??? adds child menus under menu_laundry_root + # (defined in the file above) and under core + # sale.menu_sale_report / account.menu_finance_reports. + 'views/laundry_reporting_views.xml', + ], + 'assets': { + # ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? + # POS asset bundle ??? EXPLICIT FILE LIST (no broad globs). + # ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? + # Lists only the production-required POS workflow files. + # Suspect / experimental files are commented OUT individually + # rather than disabling the whole bundle. Toggle a single line + # to add or remove a feature. + # + # The defensive guard for the `doHaveConflictWith` crash lives + # in pos_store_patch.js ??? that crash is fixed without removing + # any feature. + # ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? + 'point_of_sale._assets_pos': [ + # ?????? Styling (shared with backend kanban) ?????????????????????????????????????????????????????? + 'laundry_management/static/src/scss/laundry_pos.scss', + + # ?????? Reactive store (must load first; other patches use it) + 'laundry_management/static/src/js/laundry_context_store.js', + + # ?????? Model + screen patches (workflow core) ???????????????????????????????????????????????? + 'laundry_management/static/src/js/pos_order_patch.js', + 'laundry_management/static/src/js/pos_store_patch.js', + 'laundry_management/static/src/js/payment_screen_patch.js', + 'laundry_management/static/src/js/order_payment_validation.js', + + # ?????? Settle-Due (production-required) ?????????????????????????????????????????????????????????????????? + 'laundry_management/static/src/js/settle_dues.js', + 'laundry_management/static/src/js/settlement_receipt.js', + 'laundry_management/static/src/js/laundry_settle_banner.js', + 'laundry_management/static/src/js/closing_popup_patch.js', + + # ?????? Customer Laundry Orders popup (production-required) ?????? + 'laundry_management/static/src/js/view_laundry_orders.js', + 'laundry_management/static/src/js/quick_create_partner.js', + + # ?????? Legacy order-type / attribute / delivery flow ??????????????????????????? + 'laundry_management/static/src/js/laundry_order_context_panel.js', + 'laundry_management/static/src/js/popups/laundry_delivery_details_popup.js', + 'laundry_management/static/src/js/popups/laundry_order_attribute_popup.js', + 'laundry_management/static/src/js/popups/laundry_order_type_popup.js', + + # ?????? Cashier UI helpers ???????????????????????????????????????????????????????????????????????????????????????????????????????????? + 'laundry_management/static/src/js/control_buttons_patch.js', + 'laundry_management/static/src/js/navbar_patch.js', + 'laundry_management/static/src/js/order_summary_patch.js', + 'laundry_management/static/src/js/order_tabs_patch.js', + 'laundry_management/static/src/js/ticket_screen_patch.js', + 'laundry_management/static/src/js/order_receipt_patch.js', + 'laundry_management/static/src/js/laundry_receipt_details.js', + 'laundry_management/static/src/js/laundry_pricing_hook.js', + + # ?????? XML templates for the JS files above ?????????????????????????????????????????????????????? + 'laundry_management/static/src/xml/closing_popup_ext.xml', + 'laundry_management/static/src/xml/control_buttons.xml', + 'laundry_management/static/src/xml/laundry_order_context_panel.xml', + 'laundry_management/static/src/xml/laundry_settle_banner.xml', + 'laundry_management/static/src/xml/order_summary_patch.xml', + 'laundry_management/static/src/xml/partner_line.xml', + 'laundry_management/static/src/xml/popups/laundry_delivery_details_popup.xml', + 'laundry_management/static/src/xml/popups/laundry_order_attribute_popup.xml', + 'laundry_management/static/src/xml/popups/laundry_order_type_popup.xml', + 'laundry_management/static/src/xml/quick_create_partner.xml', + 'laundry_management/static/src/xml/receipt.xml', + 'laundry_management/static/src/xml/settle_dues.xml', + 'laundry_management/static/src/xml/settlement_receipt.xml', + 'laundry_management/static/src/xml/view_laundry_orders.xml', + + # ?????? Improved laundry configurator UX (XML-only) ????????????????????????????????? + # Pure XML inheritance on Odoo's ProductConfiguratorPopup + # that adds two CSS classes to the Dialog's contentClass so + # the existing SCSS in laundry_pos.scss enhances the popup + # for laundry-flagged products only. NO JS override, NO + # logic change. The defensive doHaveConflictWith guard in + # pos_store_patch.js handles the data-shape edge case + # independently ??? re-enabling this is safe. + 'laundry_management/static/src/xml/product_configurator_popup.xml', + + # ?????? STILL EXCLUDED ??? recent / experimental ???????????????????????????????????????????????? + # Thermal-receipt component is kept off until an explicit + # printer-side validation. PDF fallback remains the path. + # 'laundry_management/static/src/js/laundry_thermal_receipt.js', + # 'laundry_management/static/src/xml/laundry_thermal_receipt.xml', + ], + 'web.assets_backend': [ + # SCSS shared with backend kanban / dashboard styling. + 'laundry_management/static/src/scss/laundry_pos.scss', + ], + }, + 'demo': [ + 'demo/demo.xml', + ], + 'installable': True, + 'application': True, + 'auto_install': False, +}