diff --git a/open_workshop_pos/__manifest__.py b/open_workshop_pos/__manifest__.py index 2fd0524..e111a50 100644 --- a/open_workshop_pos/__manifest__.py +++ b/open_workshop_pos/__manifest__.py @@ -38,6 +38,7 @@ Autor: HobbyHimmel 'open_workshop_pos/static/src/js/ows_pos_customer_sidebar.js', 'open_workshop_pos/static/src/js/ows_machine_access_list.js', 'open_workshop_pos/static/src/js/ows_product_screen_template_patch.js', + 'open_workshop_pos/static/src/js/ows_product_screen_default_category.js', # XML Templates 'open_workshop_pos/static/src/xml/ows_pos_sidebar.xml', diff --git a/open_workshop_pos/static/src/js/ows_product_screen_default_category.js b/open_workshop_pos/static/src/js/ows_product_screen_default_category.js new file mode 100644 index 0000000..aa8ba97 --- /dev/null +++ b/open_workshop_pos/static/src/js/ows_product_screen_default_category.js @@ -0,0 +1,40 @@ +// ows_product_screen_default_category.js +// @odoo-module + +import { ProductScreen } from "@point_of_sale/app/screens/product_screen/product_screen"; +import { patch } from "@web/core/utils/patch"; +import { onMounted } from "@odoo/owl"; + +// Konfiguration: Tragen Sie hier den Namen oder die ID der Standardkategorie ein +const DEFAULT_CATEGORY_NAME = "Nutzung"; // Name der Kategorie +// oder verwenden Sie eine ID: +// const DEFAULT_CATEGORY_ID = 1; // ID der Kategorie + +patch(ProductScreen.prototype, { + setup() { + super.setup(); + + onMounted(() => { + // Setze die Standardkategorie beim Laden des Screens + this.setDefaultCategory(); + }); + }, + + setDefaultCategory() { + // Suche die Kategorie nach Name oder ID + let category = null; + + if (typeof DEFAULT_CATEGORY_NAME !== 'undefined' && DEFAULT_CATEGORY_NAME) { + // Suche nach Name + const categories = this.pos.models["pos.category"].getAll(); + category = categories.find(cat => cat.name === DEFAULT_CATEGORY_NAME); + } else if (typeof DEFAULT_CATEGORY_ID !== 'undefined' && DEFAULT_CATEGORY_ID) { + // Suche nach ID + category = this.pos.models["pos.category"].get(DEFAULT_CATEGORY_ID); + } + + if (category) { + this.pos.setSelectedCategory(category.id); + } + }, +});