diff --git a/pos_discount_manager/README.rst b/pos_discount_manager/README.rst new file mode 100755 index 000000000..1c43dec5f --- /dev/null +++ b/pos_discount_manager/README.rst @@ -0,0 +1,54 @@ +.. image:: https://img.shields.io/badge/license-AGPL--3-blue.svg + :target: https://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 + +POS Discount Manager Approval +===================== +This module helps to provide Discount limit for each employee in every pos + +Configuration +============= +* No additional configurations needed + +Company +------- +* `Cybrosys Techno Solutions `__ + +License +------- +General Public License, Version 3 (AGPL v3). +(https://www.gnu.org/licenses/agpl-3.0-standalone.html) + + +Credits +------- +* Developers: +(V15) Sruthi Pavithran, +(V16) Sruthi Pavithran, +(V17) Anjhana A K, +(V18) Bhagyadev K P, +Contact: odoo@cybrosys.com + + +Contacts +-------- +* Mail Contact : odoo@cybrosys.com +* Website : https://cybrosys.com + +Bug Tracker +----------- +Bugs are tracked on GitHub Issues. In case of trouble, please check there +if your issue has already been reported. + +Maintainer +---------- +.. image:: https://cybrosys.com/images/logo.png + :target: https://cybrosys.com + +This module is maintained by Cybrosys Technologies. + +For support and more information, please visit `Our Website `__ + +Further information +------------------- +HTML Description: ``__ diff --git a/pos_discount_manager/__init__.py b/pos_discount_manager/__init__.py new file mode 100755 index 000000000..76757b5e0 --- /dev/null +++ b/pos_discount_manager/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +################################################################################ +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2025-TODAY Cybrosys Technologies(). +# Author: Bhagyadev KP (odoo@cybrosys.com) +# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################ +from . import models diff --git a/pos_discount_manager/__manifest__.py b/pos_discount_manager/__manifest__.py new file mode 100755 index 000000000..8821cbe81 --- /dev/null +++ b/pos_discount_manager/__manifest__.py @@ -0,0 +1,48 @@ +# -*- coding: utf-8 -*- +################################################################################ +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2025-TODAY Cybrosys Technologies(). +# Author: Bhagyadev KP (odoo@cybrosys.com) +# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################ +{ + 'name': "POS Discount Manager Approval", + 'version': '18.0.1.0.0', + 'category': 'Point Of Sale', + 'summary': "Discount limit for each employee in every point of sale""", + 'description': """This module helps you to set a discount limit for each + employee in every point of sale.It facilitate the manager approval when + discount over the limit of employee""", + 'author': 'Cybrosys Techno Solutions', + 'company': 'Cybrosys Techno Solutions', + 'maintainer': "Cybrosys Techno Solutions", + 'website': "http://www.cybrosys.com", + 'depends': ['pos_discount', 'hr'], + 'data': [ + 'views/hr_employee_views.xml', + ], + 'assets': { + 'point_of_sale._assets_pos': [ + 'pos_discount_manager/static/src/js/payment_screen.js', + ] + }, + 'images': ['static/description/banner.jpg'], + 'license': 'AGPL-3', + 'installable': True, + 'auto_install': False, + 'application': False +} diff --git a/pos_discount_manager/doc/RELEASE_NOTES.md b/pos_discount_manager/doc/RELEASE_NOTES.md new file mode 100755 index 000000000..1f79bdf07 --- /dev/null +++ b/pos_discount_manager/doc/RELEASE_NOTES.md @@ -0,0 +1,6 @@ +## Module + +#### 29.05.2025 +#### Version 18.0.1.0.0 +#### ADD +- Initial Commit POS Discount Manager Approval diff --git a/pos_discount_manager/models/__init__.py b/pos_discount_manager/models/__init__.py new file mode 100755 index 000000000..3751cf96e --- /dev/null +++ b/pos_discount_manager/models/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +################################################################################ +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2025-TODAY Cybrosys Technologies(). +# Author: Bhagyadev KP (odoo@cybrosys.com) +# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################ +from . import hr_employee +from . import hr_employee_public diff --git a/pos_discount_manager/models/hr_employee.py b/pos_discount_manager/models/hr_employee.py new file mode 100755 index 000000000..4b89a027d --- /dev/null +++ b/pos_discount_manager/models/hr_employee.py @@ -0,0 +1,40 @@ +# -*- coding: utf-8 -*- +################################################################################ +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2025-TODAY Cybrosys Technologies(). +# Author: Bhagyadev KP (odoo@cybrosys.com) +# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################ +from odoo import api, fields, models + + +class HrEmployee(models.Model): + """Add field into hr employee""" + _inherit = 'hr.employee' + + limited_discount = fields.Integer(string="Discount Limit", + help="Provide discount limit to each " + "employee") + + @api.model + def _load_pos_data_fields(self, config_id): + """Loading fields""" + result = super()._load_pos_data_fields(config_id) + result.append('limited_discount') + result.append('parent_id') + result.append('pin') + return result diff --git a/pos_discount_manager/models/hr_employee_public.py b/pos_discount_manager/models/hr_employee_public.py new file mode 100644 index 000000000..6361ac747 --- /dev/null +++ b/pos_discount_manager/models/hr_employee_public.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- +################################################################################ +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2025-TODAY Cybrosys Technologies(). +# Author: Bhagyadev KP (odoo@cybrosys.com) +# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################ +from odoo import api, fields, models + + +class HrEmployeePublic(models.Model): + """Add field into hr employee""" + _inherit = 'hr.employee.public' + + limited_discount = fields.Integer(string="Discount Limit", + help="Provide discount limit to each " + "employee", + related="employee_id.limited_discount") + + @api.model + def _load_pos_data_fields(self, config_id): + """Loading fields""" + result = super()._load_pos_data_fields(config_id) + result.append('limited_discount') + return result diff --git a/pos_discount_manager/static/description/assets/cybro-icon.png b/pos_discount_manager/static/description/assets/cybro-icon.png new file mode 100644 index 000000000..06e73e11d Binary files /dev/null and b/pos_discount_manager/static/description/assets/cybro-icon.png differ diff --git a/pos_discount_manager/static/description/assets/cybro-odoo.png b/pos_discount_manager/static/description/assets/cybro-odoo.png new file mode 100644 index 000000000..ed02e07a4 Binary files /dev/null and b/pos_discount_manager/static/description/assets/cybro-odoo.png differ diff --git a/pos_discount_manager/static/description/assets/h2.png b/pos_discount_manager/static/description/assets/h2.png new file mode 100644 index 000000000..0bfc4707d Binary files /dev/null and b/pos_discount_manager/static/description/assets/h2.png differ diff --git a/pos_discount_manager/static/description/assets/icons/arrows-repeat.svg b/pos_discount_manager/static/description/assets/icons/arrows-repeat.svg new file mode 100644 index 000000000..1d7efabc5 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/arrows-repeat.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/banner-1.png b/pos_discount_manager/static/description/assets/icons/banner-1.png new file mode 100644 index 000000000..c180db172 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/banner-1.png differ diff --git a/pos_discount_manager/static/description/assets/icons/banner-2.svg b/pos_discount_manager/static/description/assets/icons/banner-2.svg new file mode 100644 index 000000000..e606d97d9 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/banner-2.svg @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/banner-bg.png b/pos_discount_manager/static/description/assets/icons/banner-bg.png new file mode 100644 index 000000000..a8238d3c0 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/banner-bg.png differ diff --git a/pos_discount_manager/static/description/assets/icons/banner-bg.svg b/pos_discount_manager/static/description/assets/icons/banner-bg.svg new file mode 100644 index 000000000..b1378103e --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/banner-bg.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/banner-call.svg b/pos_discount_manager/static/description/assets/icons/banner-call.svg new file mode 100644 index 000000000..96c687e81 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/banner-call.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/banner-mail.svg b/pos_discount_manager/static/description/assets/icons/banner-mail.svg new file mode 100644 index 000000000..cbf0d158d --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/banner-mail.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/banner-pattern.svg b/pos_discount_manager/static/description/assets/icons/banner-pattern.svg new file mode 100644 index 000000000..9c1c7e101 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/banner-pattern.svg @@ -0,0 +1,343 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/banner-promo.svg b/pos_discount_manager/static/description/assets/icons/banner-promo.svg new file mode 100644 index 000000000..d52791b11 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/banner-promo.svg @@ -0,0 +1,147 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/brand-pair.svg b/pos_discount_manager/static/description/assets/icons/brand-pair.svg new file mode 100644 index 000000000..d8db7fc1e --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/brand-pair.svg @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/check.png b/pos_discount_manager/static/description/assets/icons/check.png new file mode 100644 index 000000000..c8e85f51d Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/check.png differ diff --git a/pos_discount_manager/static/description/assets/icons/chevron.png b/pos_discount_manager/static/description/assets/icons/chevron.png new file mode 100644 index 000000000..2089293d6 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/chevron.png differ diff --git a/pos_discount_manager/static/description/assets/icons/close-icon.svg b/pos_discount_manager/static/description/assets/icons/close-icon.svg new file mode 100644 index 000000000..df8cce37a --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/close-icon.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/cogs.png b/pos_discount_manager/static/description/assets/icons/cogs.png new file mode 100644 index 000000000..95d0bad62 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/cogs.png differ diff --git a/pos_discount_manager/static/description/assets/icons/collabarate-icon.svg b/pos_discount_manager/static/description/assets/icons/collabarate-icon.svg new file mode 100644 index 000000000..dd4e10518 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/collabarate-icon.svg @@ -0,0 +1,3 @@ + + + diff --git a/pos_discount_manager/static/description/assets/icons/consultation.png b/pos_discount_manager/static/description/assets/icons/consultation.png new file mode 100644 index 000000000..8319d4baa Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/consultation.png differ diff --git a/pos_discount_manager/static/description/assets/icons/cybro-logo.png b/pos_discount_manager/static/description/assets/icons/cybro-logo.png new file mode 100644 index 000000000..ff4b78220 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/cybro-logo.png differ diff --git a/pos_discount_manager/static/description/assets/icons/down.svg b/pos_discount_manager/static/description/assets/icons/down.svg new file mode 100644 index 000000000..f21c36271 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pos_discount_manager/static/description/assets/icons/ecom-black.png b/pos_discount_manager/static/description/assets/icons/ecom-black.png new file mode 100644 index 000000000..a9385ff13 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/ecom-black.png differ diff --git a/pos_discount_manager/static/description/assets/icons/education-black.png b/pos_discount_manager/static/description/assets/icons/education-black.png new file mode 100644 index 000000000..3eb09b27b Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/education-black.png differ diff --git a/pos_discount_manager/static/description/assets/icons/faq.png b/pos_discount_manager/static/description/assets/icons/faq.png new file mode 100644 index 000000000..4250b5b81 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/faq.png differ diff --git a/pos_discount_manager/static/description/assets/icons/feature-icon.svg b/pos_discount_manager/static/description/assets/icons/feature-icon.svg new file mode 100644 index 000000000..fa0ea6850 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/feature-icon.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/feature.png b/pos_discount_manager/static/description/assets/icons/feature.png new file mode 100644 index 000000000..ac7a785c0 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/feature.png differ diff --git a/pos_discount_manager/static/description/assets/icons/gear.svg b/pos_discount_manager/static/description/assets/icons/gear.svg new file mode 100644 index 000000000..0cc66b6ea --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/gear.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/hero.gif b/pos_discount_manager/static/description/assets/icons/hero.gif new file mode 100644 index 000000000..380654dfe Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/hero.gif differ diff --git a/pos_discount_manager/static/description/assets/icons/hire-odoo.svg b/pos_discount_manager/static/description/assets/icons/hire-odoo.svg new file mode 100644 index 000000000..e1ac089b0 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/hire-odoo.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/hotel-black.png b/pos_discount_manager/static/description/assets/icons/hotel-black.png new file mode 100644 index 000000000..130f613be Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/hotel-black.png differ diff --git a/pos_discount_manager/static/description/assets/icons/license.png b/pos_discount_manager/static/description/assets/icons/license.png new file mode 100644 index 000000000..a5869797e Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/license.png differ diff --git a/pos_discount_manager/static/description/assets/icons/life-ring-icon.svg b/pos_discount_manager/static/description/assets/icons/life-ring-icon.svg new file mode 100644 index 000000000..3ae6e1d89 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/life-ring-icon.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/lifebuoy.png b/pos_discount_manager/static/description/assets/icons/lifebuoy.png new file mode 100644 index 000000000..658d56ccc Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/lifebuoy.png differ diff --git a/pos_discount_manager/static/description/assets/icons/mail.svg b/pos_discount_manager/static/description/assets/icons/mail.svg new file mode 100644 index 000000000..1eedde695 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/mail.svg @@ -0,0 +1,3 @@ + + + diff --git a/pos_discount_manager/static/description/assets/icons/manufacturing-black.png b/pos_discount_manager/static/description/assets/icons/manufacturing-black.png new file mode 100644 index 000000000..697eb0e9f Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/manufacturing-black.png differ diff --git a/pos_discount_manager/static/description/assets/icons/notes.png b/pos_discount_manager/static/description/assets/icons/notes.png new file mode 100644 index 000000000..ee5e95404 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/notes.png differ diff --git a/pos_discount_manager/static/description/assets/icons/notification icon.svg b/pos_discount_manager/static/description/assets/icons/notification icon.svg new file mode 100644 index 000000000..053189973 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/notification icon.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/odoo-consultancy.svg b/pos_discount_manager/static/description/assets/icons/odoo-consultancy.svg new file mode 100644 index 000000000..e05f65bde --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/odoo-consultancy.svg @@ -0,0 +1,4 @@ + + + + diff --git a/pos_discount_manager/static/description/assets/icons/odoo-licencing.svg b/pos_discount_manager/static/description/assets/icons/odoo-licencing.svg new file mode 100644 index 000000000..2606c88b0 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/odoo-licencing.svg @@ -0,0 +1,3 @@ + + + diff --git a/pos_discount_manager/static/description/assets/icons/odoo-logo.png b/pos_discount_manager/static/description/assets/icons/odoo-logo.png new file mode 100644 index 000000000..0e4d0eb5a Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/odoo-logo.png differ diff --git a/pos_discount_manager/static/description/assets/icons/patter.svg b/pos_discount_manager/static/description/assets/icons/patter.svg new file mode 100644 index 000000000..25c9c0a8f --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/patter.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/pattern1.png b/pos_discount_manager/static/description/assets/icons/pattern1.png new file mode 100644 index 000000000..09ab0fb2d Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/pattern1.png differ diff --git a/pos_discount_manager/static/description/assets/icons/pos-black.png b/pos_discount_manager/static/description/assets/icons/pos-black.png new file mode 100644 index 000000000..97c0f90c1 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/pos-black.png differ diff --git a/pos_discount_manager/static/description/assets/icons/puzzle-piece-icon.svg b/pos_discount_manager/static/description/assets/icons/puzzle-piece-icon.svg new file mode 100644 index 000000000..3e9ad9373 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/puzzle-piece-icon.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/puzzle.png b/pos_discount_manager/static/description/assets/icons/puzzle.png new file mode 100644 index 000000000..65cf854e7 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/puzzle.png differ diff --git a/pos_discount_manager/static/description/assets/icons/replace-icon.svg b/pos_discount_manager/static/description/assets/icons/replace-icon.svg new file mode 100644 index 000000000..d0e3a7af1 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/replace-icon.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/restaurant-black.png b/pos_discount_manager/static/description/assets/icons/restaurant-black.png new file mode 100644 index 000000000..4a35eb939 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/restaurant-black.png differ diff --git a/pos_discount_manager/static/description/assets/icons/screenshot-main.png b/pos_discount_manager/static/description/assets/icons/screenshot-main.png new file mode 100644 index 000000000..575f8e676 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/screenshot-main.png differ diff --git a/pos_discount_manager/static/description/assets/icons/screenshot.png b/pos_discount_manager/static/description/assets/icons/screenshot.png new file mode 100644 index 000000000..cef272529 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/screenshot.png differ diff --git a/pos_discount_manager/static/description/assets/icons/service-black.png b/pos_discount_manager/static/description/assets/icons/service-black.png new file mode 100644 index 000000000..301ab51cb Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/service-black.png differ diff --git a/pos_discount_manager/static/description/assets/icons/skype-fill.svg b/pos_discount_manager/static/description/assets/icons/skype-fill.svg new file mode 100644 index 000000000..c17423639 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/skype-fill.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/skype.png b/pos_discount_manager/static/description/assets/icons/skype.png new file mode 100644 index 000000000..51b409fb3 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/skype.png differ diff --git a/pos_discount_manager/static/description/assets/icons/skype.svg b/pos_discount_manager/static/description/assets/icons/skype.svg new file mode 100644 index 000000000..df3dad39b --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/skype.svg @@ -0,0 +1,3 @@ + + + diff --git a/pos_discount_manager/static/description/assets/icons/star-1.svg b/pos_discount_manager/static/description/assets/icons/star-1.svg new file mode 100644 index 000000000..7e55ab162 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/star-1.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/star-2.svg b/pos_discount_manager/static/description/assets/icons/star-2.svg new file mode 100644 index 000000000..5ae9f507a --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/star-2.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/support.png b/pos_discount_manager/static/description/assets/icons/support.png new file mode 100644 index 000000000..4f18b8b82 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/support.png differ diff --git a/pos_discount_manager/static/description/assets/icons/test-1 - Copy.png b/pos_discount_manager/static/description/assets/icons/test-1 - Copy.png new file mode 100644 index 000000000..f6a902663 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/test-1 - Copy.png differ diff --git a/pos_discount_manager/static/description/assets/icons/test-1.png b/pos_discount_manager/static/description/assets/icons/test-1.png new file mode 100644 index 000000000..0908add2b Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/test-1.png differ diff --git a/pos_discount_manager/static/description/assets/icons/test-2.png b/pos_discount_manager/static/description/assets/icons/test-2.png new file mode 100644 index 000000000..4671fe91e Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/test-2.png differ diff --git a/pos_discount_manager/static/description/assets/icons/trading-black.png b/pos_discount_manager/static/description/assets/icons/trading-black.png new file mode 100644 index 000000000..9398ba2f1 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/trading-black.png differ diff --git a/pos_discount_manager/static/description/assets/icons/training.png b/pos_discount_manager/static/description/assets/icons/training.png new file mode 100644 index 000000000..884ca024d Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/training.png differ diff --git a/pos_discount_manager/static/description/assets/icons/translate.svg b/pos_discount_manager/static/description/assets/icons/translate.svg new file mode 100644 index 000000000..af9c8a1aa --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/translate.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/update.png b/pos_discount_manager/static/description/assets/icons/update.png new file mode 100644 index 000000000..ecbc5a01a Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/update.png differ diff --git a/pos_discount_manager/static/description/assets/icons/user.png b/pos_discount_manager/static/description/assets/icons/user.png new file mode 100644 index 000000000..6ffb23d9f Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/user.png differ diff --git a/pos_discount_manager/static/description/assets/icons/video.png b/pos_discount_manager/static/description/assets/icons/video.png new file mode 100644 index 000000000..576705b17 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/video.png differ diff --git a/pos_discount_manager/static/description/assets/icons/whatsapp.png b/pos_discount_manager/static/description/assets/icons/whatsapp.png new file mode 100644 index 000000000..d513a5356 Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/whatsapp.png differ diff --git a/pos_discount_manager/static/description/assets/icons/wrench-icon.svg b/pos_discount_manager/static/description/assets/icons/wrench-icon.svg new file mode 100644 index 000000000..174b5a465 --- /dev/null +++ b/pos_discount_manager/static/description/assets/icons/wrench-icon.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/pos_discount_manager/static/description/assets/icons/wrench.png b/pos_discount_manager/static/description/assets/icons/wrench.png new file mode 100644 index 000000000..6c04dea0f Binary files /dev/null and b/pos_discount_manager/static/description/assets/icons/wrench.png differ diff --git a/pos_discount_manager/static/description/assets/modules/1.jpg b/pos_discount_manager/static/description/assets/modules/1.jpg new file mode 100644 index 000000000..f4dd434d0 Binary files /dev/null and b/pos_discount_manager/static/description/assets/modules/1.jpg differ diff --git a/pos_discount_manager/static/description/assets/modules/2.jpg b/pos_discount_manager/static/description/assets/modules/2.jpg new file mode 100644 index 000000000..db6ac7cef Binary files /dev/null and b/pos_discount_manager/static/description/assets/modules/2.jpg differ diff --git a/pos_discount_manager/static/description/assets/modules/3.jpg b/pos_discount_manager/static/description/assets/modules/3.jpg new file mode 100644 index 000000000..16f3eb4b4 Binary files /dev/null and b/pos_discount_manager/static/description/assets/modules/3.jpg differ diff --git a/pos_discount_manager/static/description/assets/modules/4.jpg b/pos_discount_manager/static/description/assets/modules/4.jpg new file mode 100644 index 000000000..9aece48f5 Binary files /dev/null and b/pos_discount_manager/static/description/assets/modules/4.jpg differ diff --git a/pos_discount_manager/static/description/assets/modules/5.jpg b/pos_discount_manager/static/description/assets/modules/5.jpg new file mode 100644 index 000000000..5125e0cb4 Binary files /dev/null and b/pos_discount_manager/static/description/assets/modules/5.jpg differ diff --git a/pos_discount_manager/static/description/assets/modules/6.jpg b/pos_discount_manager/static/description/assets/modules/6.jpg new file mode 100644 index 000000000..7fb4d85cc Binary files /dev/null and b/pos_discount_manager/static/description/assets/modules/6.jpg differ diff --git a/pos_discount_manager/static/description/assets/screenshots/1.png b/pos_discount_manager/static/description/assets/screenshots/1.png new file mode 100644 index 000000000..ab5aaa9fe Binary files /dev/null and b/pos_discount_manager/static/description/assets/screenshots/1.png differ diff --git a/pos_discount_manager/static/description/assets/screenshots/2.png b/pos_discount_manager/static/description/assets/screenshots/2.png new file mode 100644 index 000000000..77f14d48f Binary files /dev/null and b/pos_discount_manager/static/description/assets/screenshots/2.png differ diff --git a/pos_discount_manager/static/description/assets/screenshots/3.png b/pos_discount_manager/static/description/assets/screenshots/3.png new file mode 100644 index 000000000..787c53953 Binary files /dev/null and b/pos_discount_manager/static/description/assets/screenshots/3.png differ diff --git a/pos_discount_manager/static/description/assets/screenshots/4.png b/pos_discount_manager/static/description/assets/screenshots/4.png new file mode 100644 index 000000000..d852f7f74 Binary files /dev/null and b/pos_discount_manager/static/description/assets/screenshots/4.png differ diff --git a/pos_discount_manager/static/description/assets/screenshots/5.png b/pos_discount_manager/static/description/assets/screenshots/5.png new file mode 100644 index 000000000..f00c9b738 Binary files /dev/null and b/pos_discount_manager/static/description/assets/screenshots/5.png differ diff --git a/pos_discount_manager/static/description/assets/screenshots/6.png b/pos_discount_manager/static/description/assets/screenshots/6.png new file mode 100644 index 000000000..6557972dc Binary files /dev/null and b/pos_discount_manager/static/description/assets/screenshots/6.png differ diff --git a/pos_discount_manager/static/description/assets/screenshots/7.png b/pos_discount_manager/static/description/assets/screenshots/7.png new file mode 100644 index 000000000..33c92d08a Binary files /dev/null and b/pos_discount_manager/static/description/assets/screenshots/7.png differ diff --git a/pos_discount_manager/static/description/assets/screenshots/8.png b/pos_discount_manager/static/description/assets/screenshots/8.png new file mode 100644 index 000000000..f1a68e1bb Binary files /dev/null and b/pos_discount_manager/static/description/assets/screenshots/8.png differ diff --git a/pos_discount_manager/static/description/assets/screenshots/9.png b/pos_discount_manager/static/description/assets/screenshots/9.png new file mode 100644 index 000000000..f851e1bb3 Binary files /dev/null and b/pos_discount_manager/static/description/assets/screenshots/9.png differ diff --git a/pos_discount_manager/static/description/assets/screenshots/hero.gif b/pos_discount_manager/static/description/assets/screenshots/hero.gif new file mode 100644 index 000000000..9ec5afe46 Binary files /dev/null and b/pos_discount_manager/static/description/assets/screenshots/hero.gif differ diff --git a/pos_discount_manager/static/description/assets/y18.jpg b/pos_discount_manager/static/description/assets/y18.jpg new file mode 100644 index 000000000..eea1714f2 Binary files /dev/null and b/pos_discount_manager/static/description/assets/y18.jpg differ diff --git a/pos_discount_manager/static/description/banner.jpg b/pos_discount_manager/static/description/banner.jpg new file mode 100644 index 000000000..dd33b87e3 Binary files /dev/null and b/pos_discount_manager/static/description/banner.jpg differ diff --git a/pos_discount_manager/static/description/hero.gif b/pos_discount_manager/static/description/hero.gif new file mode 100644 index 000000000..9ec5afe46 Binary files /dev/null and b/pos_discount_manager/static/description/hero.gif differ diff --git a/pos_discount_manager/static/description/icon.png b/pos_discount_manager/static/description/icon.png new file mode 100644 index 000000000..931ff609a Binary files /dev/null and b/pos_discount_manager/static/description/icon.png differ diff --git a/pos_discount_manager/static/description/index.html b/pos_discount_manager/static/description/index.html new file mode 100644 index 000000000..5790083de --- /dev/null +++ b/pos_discount_manager/static/description/index.html @@ -0,0 +1,1167 @@ + + + + + + + POS Discount Manager Approval + + + + + + + + + + + +
+
+ + + +
+
+ Community +
+
+ Enterprise +
+
+ Odoo.sh +
+
+
+ +
+
+
+
+

+ POS Discount Manager Approval +

+

POS Discount Manager Approval +

+
+
+ +
+ +
+ +
+
+
+ +
+
+ +
+
+ +
+
+
+

Key + Highlights

+
+
+
+
+ +
+
+ Employee-Based Discount Limits +
+
+
+
+
+
+ +
+
+ Manager Approval for Excess Discounts +
+
+
+
+
+
+ +
+
+ Secure PIN Verification +
+
+
+
+
+ +
+
+
+ Click + And Collect POS +

+ Are you ready to make your business more + organized? +
Improve now! +

+ +
+
+ +
+
+
+ + + +
+
+ +
+
+
+
+ acc_bg +
+ +
+
+
+
+

+ Set Employee Discount Limits + with Manager + Oversight +

+
+
+

+

+
+
+
+ +
+
+
+
+
+
+
+
+
+

+ Manager can set the PIN Code for approving the discount. + +

+
+
+

+

+
+
+
+ +
+
+
+
+
+
+
+
+
+

+ + Set multiple employees per session in POS. + +

+
+
+

+
+
+
+ +
+

+ + Select the employee to whom we are giving the discount limit. + +

+
+ +
+
+
+
+
+
+
+
+
+

+ + Add a discount greater than the limit we are giving the employee. + +

+
+
+

+

+
+
+
+ +
+
+
+
+
+
+
+
+
+

+ We have to enter the manager's PIN to approve the discount limit. + +

+
+
+

+

+
+
+
+ + +
+
+
+
+
+
+
+
+
+

+ + If we are entering the correct PIN, we can successfully validate the payment. + +

+
+
+

+

+
+
+
+ +
+
+
+
+
+
+
+
+
+

+ + If we are entering the wrong PIN, it will show an error notification. + +

+
+
+

+

+
+
+
+ +
+
+
+
+
+
+
+
+ +
+
+
+
+ +
+

+ Employee-Based Discount Limits +

+
+ +
+
+ +
+
+
+
+
+
+
+ +
+ +
+ +
+

+ This module allows + businesses to set + employee-specific + discount limits in + Odoo POS. If a + discount exceeds the + assigned limit, it + requires a manager's + approval through a + secure PIN system. +

+
+
+ +
+ +
+

+ You can set + individual discount + limits for each + employee directly + from the POS + configuration + settings. Once set, + any discount + exceeding this limit + will prompt a + manager approval. +

+
+
+ +
+ +
+

+ When a discount + exceeds the limit: + + The system will + request the + manager’s PIN. + + If the correct PIN + is entered, the + discount is + approved, and + payment can proceed. + + If the wrong PIN is + entered, an error + notification appears + and the discount is + denied. +

+
+
+ +
+ +
+

+ Yes, only users with + the correct manager + PIN can authorize + high-value + discounts, ensuring + that unauthorized + discounting is + prevented. +

+
+
+
+ +
+
+
+
+
+
+ +
+
+

+ Latest Release 18.0.1.0.0 +

+ + 29th May 2025 + +
+
+
+
+
+ Add +
+
+
+
    +
  • + Initial Commit +
  • + +
+
+
+
+
+
+
+
+
+
+ + + + + + +
+
+

+ Our Services

+
+ +
+ +
+
+ .... +
+
+ +
+ + +
+
+ + + + + + + \ No newline at end of file diff --git a/pos_discount_manager/static/src/js/payment_screen.js b/pos_discount_manager/static/src/js/payment_screen.js new file mode 100755 index 000000000..254488385 --- /dev/null +++ b/pos_discount_manager/static/src/js/payment_screen.js @@ -0,0 +1,48 @@ +/* global Sha1 */ +import { patch } from "@web/core/utils/patch"; +import { PaymentScreen } from "@point_of_sale/app/screens/payment_screen/payment_screen"; +import { session } from "@web/session"; +import { _t } from "@web/core/l10n/translation"; +import { NumberPopup } from "@point_of_sale/app/utils/input_popups/number_popup"; +//Patching PaymentScreen +patch(PaymentScreen.prototype, { + async _finalizeValidation() { + var order = this.pos.get_order(); + var orderlines = this.currentOrder.get_orderlines() + var employee_dis = this.pos.get_cashier()['limited_discount']; + var employee_name = this.pos.get_cashier()['name'] + var manager = this.pos.get_cashier() + var flag = 1; + if (employee_dis != 0) { + orderlines.forEach((order) => { + if(order.discount > employee_dis) + flag = 0; + }); + } + if (flag != 1) { + this.dialog.add(NumberPopup, { + title: _t(employee_name + ', your discount is over the limit. \n Manager pin for Approval'), + getPayload: async (num) => { + if (manager.parent_id){ + var output = this.pos.models["hr.employee"].filter((obj) => obj.id === manager.parent_id.id ); + if (Sha1.hash(num) == output[0]._pin) { + await super._finalizeValidation(...arguments); + } else { + this.notification.add(_t("Manager Restricted your discount"), { + type: "danger", + title: _t(employee_name + ", Your Manager pin is incorrect."), + }); + } + } else { + this.notification.add(_t("Manager/Pin not set"), { + type: "danger", + title: _t(employee_name + ", Manager/Pin not set."), + }); + } + }, + }); + } else { + await super._finalizeValidation(...arguments); + } + } +}); diff --git a/pos_discount_manager/views/hr_employee_views.xml b/pos_discount_manager/views/hr_employee_views.xml new file mode 100755 index 000000000..8499c2374 --- /dev/null +++ b/pos_discount_manager/views/hr_employee_views.xml @@ -0,0 +1,14 @@ + + + + + hr.employee.view.form.inherit.pos.discount.manager + hr.employee + + + + + + + +