diff --git a/pos_refund_password/README.rst b/pos_refund_password/README.rst new file mode 100755 index 000000000..66391fbcd --- /dev/null +++ b/pos_refund_password/README.rst @@ -0,0 +1,47 @@ +.. 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 + +Restrict POS Refund With Password +================================= +This module is used to set password on refund button process in pos . + +Configuration +============= +* No additional configurations needed + +Company +======= +* `Cybrosys Techno Solutions `__ + +License +======= +General Public License, Version 3 (AGPL-3). +(https://www.gnu.org/licenses/AGPL-3.0-standalone.html) + +Credits +======= +* Developer: (V15) - jaseem V @ cybrosys, 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_refund_password/__init__.py b/pos_refund_password/__init__.py new file mode 100755 index 000000000..a77e02acb --- /dev/null +++ b/pos_refund_password/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies() +# Author: Cybrosys Technologies () +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# 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 (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from . import models diff --git a/pos_refund_password/__manifest__.py b/pos_refund_password/__manifest__.py new file mode 100755 index 000000000..b7b2a64ee --- /dev/null +++ b/pos_refund_password/__manifest__.py @@ -0,0 +1,49 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies() +# Author: Cybrosys Technologies () +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# 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 (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +{ + 'name': 'Restrict POS Refund With Password', + 'version': '15.0.1.0.0', + 'category': 'Point of Sale', + 'summary': """SecureRefund: Safeguarding POS Transactions""", + 'description': """Enhance security by implementing a password requirement + for POS refunds, ensuring controlled access to refund + transactions.""", + 'author': 'Cybrosys Techno Solutions', + 'company': 'Cybrosys Techno Solutions', + 'maintainer': 'Cybrosys Techno Solutions', + 'website': "https://www.cybrosys.com", + 'depends': ['web', 'base', 'point_of_sale'], + 'data': [ + 'views/pos_config_views.xml', + 'views/res_config_settings_views.xml', + ], + 'assets': { + 'web.assets_backend': [ + 'pos_refund_password/static/src/js/refund_password.js' + ], + }, + 'images': ['static/description/banner.jpg'], + 'license': "AGPL-3", + 'installable': True, + 'application': False, + 'auto_install': False, +} diff --git a/pos_refund_password/doc/RELEASE_NOTES.md b/pos_refund_password/doc/RELEASE_NOTES.md new file mode 100755 index 000000000..f6ad511d7 --- /dev/null +++ b/pos_refund_password/doc/RELEASE_NOTES.md @@ -0,0 +1,6 @@ +## Module + +#### 10.11.2023 +#### Version 15.0.1.0.0 +#### ADD +- Initial commit for Restrict POS Refund With Password diff --git a/pos_refund_password/models/__init__.py b/pos_refund_password/models/__init__.py new file mode 100755 index 000000000..caa2c13dc --- /dev/null +++ b/pos_refund_password/models/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies() +# Author: Cybrosys Technologies () +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# 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 (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from . import pos_config +from . import res_config_settings diff --git a/pos_refund_password/models/pos_config.py b/pos_refund_password/models/pos_config.py new file mode 100755 index 000000000..d6b43fb3e --- /dev/null +++ b/pos_refund_password/models/pos_config.py @@ -0,0 +1,41 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies() +# Author: Cybrosys Technologies () +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# 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 (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from odoo import api, fields, models + + +class PosConfig(models.Model): + """This class used to inherit from pos.config in order to add fields such as + refund_security.""" + _inherit = 'pos.config' + + refund_security = fields.Char(string='Refund Security', + help='This filed used to store password ' + 'for refund ') + + @api.constrains('refund_security') + def _check_refund_security(self): + """The function has Checked the refund security""" + for config in self: + if config.refund_security and not config.refund_security.isdigit(): + raise models.ValidationError( + "Invalid password format. Password can only contain digits." + ) diff --git a/pos_refund_password/models/res_config_settings.py b/pos_refund_password/models/res_config_settings.py new file mode 100755 index 000000000..ecaf43efa --- /dev/null +++ b/pos_refund_password/models/res_config_settings.py @@ -0,0 +1,41 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies() +# Author: Cybrosys Technologies () +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# 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 (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from odoo import api, fields, models, _ + + +class ResConfigSettings(models.TransientModel): + """This class used to inherit from res.config.settings(settings) to add the + field global_refund_security.""" + _inherit = 'res.config.settings' + + global_refund_security = fields.Char( + help="This field used to store password for refund ", + string='Global Refund Security', + config_parameter='pos_refund_password.global_refund_security') + + @api.constrains('refund_security') + def _check_refund_security(self): + """The function has checked refund security""" + for config in self: + if config.refund_security and not config.refund_security.isdigit(): + raise models.ValidationError(_("Invalid password format." + "Password can only contain digits.")) diff --git a/pos_refund_password/static/description/assets/icons/check.png b/pos_refund_password/static/description/assets/icons/check.png new file mode 100755 index 000000000..c8e85f51d Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/check.png differ diff --git a/pos_refund_password/static/description/assets/icons/chevron.png b/pos_refund_password/static/description/assets/icons/chevron.png new file mode 100755 index 000000000..2089293d6 Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/chevron.png differ diff --git a/pos_refund_password/static/description/assets/icons/cogs.png b/pos_refund_password/static/description/assets/icons/cogs.png new file mode 100755 index 000000000..95d0bad62 Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/cogs.png differ diff --git a/pos_refund_password/static/description/assets/icons/consultation.png b/pos_refund_password/static/description/assets/icons/consultation.png new file mode 100755 index 000000000..8319d4baa Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/consultation.png differ diff --git a/pos_refund_password/static/description/assets/icons/ecom-black.png b/pos_refund_password/static/description/assets/icons/ecom-black.png new file mode 100755 index 000000000..a9385ff13 Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/ecom-black.png differ diff --git a/pos_refund_password/static/description/assets/icons/education-black.png b/pos_refund_password/static/description/assets/icons/education-black.png new file mode 100755 index 000000000..3eb09b27b Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/education-black.png differ diff --git a/pos_refund_password/static/description/assets/icons/hotel-black.png b/pos_refund_password/static/description/assets/icons/hotel-black.png new file mode 100755 index 000000000..130f613be Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/hotel-black.png differ diff --git a/pos_refund_password/static/description/assets/icons/license.png b/pos_refund_password/static/description/assets/icons/license.png new file mode 100755 index 000000000..a5869797e Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/license.png differ diff --git a/pos_refund_password/static/description/assets/icons/lifebuoy.png b/pos_refund_password/static/description/assets/icons/lifebuoy.png new file mode 100755 index 000000000..658d56ccc Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/lifebuoy.png differ diff --git a/pos_refund_password/static/description/assets/icons/logo.png b/pos_refund_password/static/description/assets/icons/logo.png new file mode 100755 index 000000000..478462d3e Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/logo.png differ diff --git a/pos_refund_password/static/description/assets/icons/manufacturing-black.png b/pos_refund_password/static/description/assets/icons/manufacturing-black.png new file mode 100755 index 000000000..697eb0e9f Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/manufacturing-black.png differ diff --git a/pos_refund_password/static/description/assets/icons/pos-black.png b/pos_refund_password/static/description/assets/icons/pos-black.png new file mode 100755 index 000000000..97c0f90c1 Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/pos-black.png differ diff --git a/pos_refund_password/static/description/assets/icons/puzzle.png b/pos_refund_password/static/description/assets/icons/puzzle.png new file mode 100755 index 000000000..65cf854e7 Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/puzzle.png differ diff --git a/pos_refund_password/static/description/assets/icons/restaurant-black.png b/pos_refund_password/static/description/assets/icons/restaurant-black.png new file mode 100755 index 000000000..4a35eb939 Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/restaurant-black.png differ diff --git a/pos_refund_password/static/description/assets/icons/service-black.png b/pos_refund_password/static/description/assets/icons/service-black.png new file mode 100755 index 000000000..301ab51cb Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/service-black.png differ diff --git a/pos_refund_password/static/description/assets/icons/trading-black.png b/pos_refund_password/static/description/assets/icons/trading-black.png new file mode 100755 index 000000000..9398ba2f1 Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/trading-black.png differ diff --git a/pos_refund_password/static/description/assets/icons/training.png b/pos_refund_password/static/description/assets/icons/training.png new file mode 100755 index 000000000..884ca024d Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/training.png differ diff --git a/pos_refund_password/static/description/assets/icons/update.png b/pos_refund_password/static/description/assets/icons/update.png new file mode 100755 index 000000000..ecbc5a01a Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/update.png differ diff --git a/pos_refund_password/static/description/assets/icons/user.png b/pos_refund_password/static/description/assets/icons/user.png new file mode 100755 index 000000000..6ffb23d9f Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/user.png differ diff --git a/pos_refund_password/static/description/assets/icons/wrench.png b/pos_refund_password/static/description/assets/icons/wrench.png new file mode 100755 index 000000000..6c04dea0f Binary files /dev/null and b/pos_refund_password/static/description/assets/icons/wrench.png differ diff --git a/pos_refund_password/static/description/assets/misc/categories.png b/pos_refund_password/static/description/assets/misc/categories.png new file mode 100755 index 000000000..bedf1e0b1 Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/categories.png differ diff --git a/pos_refund_password/static/description/assets/misc/check-box.png b/pos_refund_password/static/description/assets/misc/check-box.png new file mode 100755 index 000000000..42caf24b9 Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/check-box.png differ diff --git a/pos_refund_password/static/description/assets/misc/compass.png b/pos_refund_password/static/description/assets/misc/compass.png new file mode 100755 index 000000000..d5fed8faa Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/compass.png differ diff --git a/pos_refund_password/static/description/assets/misc/corporate.png b/pos_refund_password/static/description/assets/misc/corporate.png new file mode 100755 index 000000000..2eb13edbf Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/corporate.png differ diff --git a/pos_refund_password/static/description/assets/misc/customer-support.png b/pos_refund_password/static/description/assets/misc/customer-support.png new file mode 100755 index 000000000..79efc72ed Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/customer-support.png differ diff --git a/pos_refund_password/static/description/assets/misc/cybrosys-logo.png b/pos_refund_password/static/description/assets/misc/cybrosys-logo.png new file mode 100755 index 000000000..cc3cc0ccf Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/cybrosys-logo.png differ diff --git a/pos_refund_password/static/description/assets/misc/features.png b/pos_refund_password/static/description/assets/misc/features.png new file mode 100755 index 000000000..b41769f77 Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/features.png differ diff --git a/pos_refund_password/static/description/assets/misc/logo.png b/pos_refund_password/static/description/assets/misc/logo.png new file mode 100755 index 000000000..478462d3e Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/logo.png differ diff --git a/pos_refund_password/static/description/assets/misc/pictures.png b/pos_refund_password/static/description/assets/misc/pictures.png new file mode 100755 index 000000000..56d255fe9 Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/pictures.png differ diff --git a/pos_refund_password/static/description/assets/misc/pie-chart.png b/pos_refund_password/static/description/assets/misc/pie-chart.png new file mode 100755 index 000000000..426e05244 Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/pie-chart.png differ diff --git a/pos_refund_password/static/description/assets/misc/right-arrow.png b/pos_refund_password/static/description/assets/misc/right-arrow.png new file mode 100755 index 000000000..730984a06 Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/right-arrow.png differ diff --git a/pos_refund_password/static/description/assets/misc/star.png b/pos_refund_password/static/description/assets/misc/star.png new file mode 100755 index 000000000..2eb9ab29f Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/star.png differ diff --git a/pos_refund_password/static/description/assets/misc/support.png b/pos_refund_password/static/description/assets/misc/support.png new file mode 100755 index 000000000..4f18b8b82 Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/support.png differ diff --git a/pos_refund_password/static/description/assets/misc/whatsapp.png b/pos_refund_password/static/description/assets/misc/whatsapp.png new file mode 100755 index 000000000..d513a5356 Binary files /dev/null and b/pos_refund_password/static/description/assets/misc/whatsapp.png differ diff --git a/pos_refund_password/static/description/assets/modules/pos_booking_order.jpg b/pos_refund_password/static/description/assets/modules/pos_booking_order.jpg new file mode 100644 index 000000000..31f0a1878 Binary files /dev/null and b/pos_refund_password/static/description/assets/modules/pos_booking_order.jpg differ diff --git a/pos_refund_password/static/description/assets/modules/pos_numpad_show_hide.png b/pos_refund_password/static/description/assets/modules/pos_numpad_show_hide.png new file mode 100644 index 000000000..6d589b993 Binary files /dev/null and b/pos_refund_password/static/description/assets/modules/pos_numpad_show_hide.png differ diff --git a/pos_refund_password/static/description/assets/modules/pos_order_line_product_image.png b/pos_refund_password/static/description/assets/modules/pos_order_line_product_image.png new file mode 100644 index 000000000..3f285a8e0 Binary files /dev/null and b/pos_refund_password/static/description/assets/modules/pos_order_line_product_image.png differ diff --git a/pos_refund_password/static/description/assets/modules/pos_product_multi_barcode.png b/pos_refund_password/static/description/assets/modules/pos_product_multi_barcode.png new file mode 100644 index 000000000..5713b11f6 Binary files /dev/null and b/pos_refund_password/static/description/assets/modules/pos_product_multi_barcode.png differ diff --git a/pos_refund_password/static/description/assets/modules/pos_product_multiple_uom.png b/pos_refund_password/static/description/assets/modules/pos_product_multiple_uom.png new file mode 100644 index 000000000..28a75d732 Binary files /dev/null and b/pos_refund_password/static/description/assets/modules/pos_product_multiple_uom.png differ diff --git a/pos_refund_password/static/description/assets/modules/product_return_pos.png b/pos_refund_password/static/description/assets/modules/product_return_pos.png new file mode 100644 index 000000000..be8dd200b Binary files /dev/null and b/pos_refund_password/static/description/assets/modules/product_return_pos.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/hero.gif b/pos_refund_password/static/description/assets/screenshots/hero.gif new file mode 100644 index 000000000..56ec7ce5a Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/hero.gif differ diff --git a/pos_refund_password/static/description/assets/screenshots/img.png b/pos_refund_password/static/description/assets/screenshots/img.png new file mode 100755 index 000000000..160dc4938 Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/img.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot1.png b/pos_refund_password/static/description/assets/screenshots/screenshot1.png new file mode 100644 index 000000000..c8efc8876 Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot1.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot10.png b/pos_refund_password/static/description/assets/screenshots/screenshot10.png new file mode 100644 index 000000000..9492e7dd4 Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot10.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot11.png b/pos_refund_password/static/description/assets/screenshots/screenshot11.png new file mode 100644 index 000000000..24ec08454 Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot11.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot12.png b/pos_refund_password/static/description/assets/screenshots/screenshot12.png new file mode 100644 index 000000000..8087248a1 Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot12.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot13.png b/pos_refund_password/static/description/assets/screenshots/screenshot13.png new file mode 100644 index 000000000..ba39637ea Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot13.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot14.png b/pos_refund_password/static/description/assets/screenshots/screenshot14.png new file mode 100644 index 000000000..1101c6868 Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot14.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot2.png b/pos_refund_password/static/description/assets/screenshots/screenshot2.png new file mode 100644 index 000000000..17f7e3810 Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot2.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot3.png b/pos_refund_password/static/description/assets/screenshots/screenshot3.png new file mode 100644 index 000000000..4d5e6895d Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot3.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot4.png b/pos_refund_password/static/description/assets/screenshots/screenshot4.png new file mode 100644 index 000000000..14d10e211 Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot4.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot5.png b/pos_refund_password/static/description/assets/screenshots/screenshot5.png new file mode 100644 index 000000000..c62db5884 Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot5.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot6.png b/pos_refund_password/static/description/assets/screenshots/screenshot6.png new file mode 100644 index 000000000..1f8d81151 Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot6.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot7.png b/pos_refund_password/static/description/assets/screenshots/screenshot7.png new file mode 100644 index 000000000..7b63b6081 Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot7.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot8.png b/pos_refund_password/static/description/assets/screenshots/screenshot8.png new file mode 100644 index 000000000..d3b2221c0 Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot8.png differ diff --git a/pos_refund_password/static/description/assets/screenshots/screenshot9.png b/pos_refund_password/static/description/assets/screenshots/screenshot9.png new file mode 100644 index 000000000..3ebd38c9d Binary files /dev/null and b/pos_refund_password/static/description/assets/screenshots/screenshot9.png differ diff --git a/pos_refund_password/static/description/banner.jpg b/pos_refund_password/static/description/banner.jpg new file mode 100755 index 000000000..868b210bb Binary files /dev/null and b/pos_refund_password/static/description/banner.jpg differ diff --git a/pos_refund_password/static/description/icon.png b/pos_refund_password/static/description/icon.png new file mode 100755 index 000000000..f86241b0c Binary files /dev/null and b/pos_refund_password/static/description/icon.png differ diff --git a/pos_refund_password/static/description/index.html b/pos_refund_password/static/description/index.html new file mode 100755 index 000000000..e83156cd0 --- /dev/null +++ b/pos_refund_password/static/description/index.html @@ -0,0 +1,609 @@ +
+ +
+ +
+
+ Community +
+
+ Enterprise +
+
+
+ +
+
+
+ +

+ Restrict POS Refund With Password

+

+ Pos Refund Restriction Using Password Globally & Session + wise

+ + +
+
+
+
+ +
+ x +
+ +
+

+ Explore This Module

+
+ + + +
+
+ +
+

+ Overview

+
+
+
This module is used to set a password on pos + refund process in globally and session wise. +
+
+ + +
+
+ +
+

+ Features

+
+
+
+
+ + Support in odoo community and enterprise +
+
+
+
+ + Set Password on Pos Refund Process Session Wise +
+
+
+
+ + Set Password on Pos Refund Process Globally +
+
+
+ + +
+
+ +
+

+ Screenshots

+
+
+
+
+

+ Enable Password Protection for Refunds in Point of Sale Session + Settings.

+

+ +
+
+

+ After opening the session, you'll find orders displayed along + with a 'Refund' button. To initiate a refund, simply click the + 'Refund' button.

+ +
+
+

+ Upon viewing the screen displaying orders, you can easily choose + the product for refund by selecting it, adjusting the quantity, + and then proceeding to click the 'Refund' button.

+ +
+
+

+ A numerical pop-up will be displayed on the screen.

+ +
+
+

+ You can input the password into the pop-up, just as it was set + in the POS session settings.

+ +
+
+

+ You can see the refund process successfully done.

+ +
+
+

+ You can add the wrong + password Here.

+
+
+

+ You can see the error message will show the screen .

+ +
+
+

+ Here you can have another feature , you can set the password + globally , you just add a password in pos configuration settings + .

+ +
+
+

+ Do the same process you can see while clicking the refund button + the popup window will show there.

+ +
+
+

+ You just add the wrong password

+ +
+
+

+ A visible error popup will appear.

+ +
+
+

+ Next, you'll enter the designated password, which should match + the configuration settings you've established.

+ +
+
+

+ You can see the refund process done successfully.

+ +
+
+
+ + +
+
+

Suggested Products

+
+ +
+
+ + +
+
+ +
+

+ Our Services

+
+
+
+
+
+ +
+
+ Odoo Customization
+
+
+
+ +
+
+ Odoo Implementation
+
+
+
+ +
+
+ Odoo Support
+
+
+
+ +
+
+ Hire Odoo Developer
+
+
+
+ +
+
+ Odoo Integration
+
+
+
+ +
+
+ Odoo Migration
+
+
+
+ +
+
+ Odoo Consultancy
+
+
+
+ +
+
+ Odoo Implementation
+
+
+
+ +
+
+ Odoo Licensing Consultancy
+
+
+
+ + +
+
+ +
+

+ Our Industries

+
+
+
+
+
+ +
+ Trading
+

+ Easily procure and sell your products

+
+
+
+
+ +
+ POS
+

+ Easy configuration and convivial experience

+
+
+
+
+ +
+ Education
+

+ A platform for educational management

+
+
+
+
+ +
+ Manufacturing
+

+ Plan, track and schedule your operations

+
+
+
+
+ +
+ E-commerce & Website
+

+ Mobile friendly, awe-inspiring product pages

+
+
+
+
+ +
+ Service Management
+

+ Keep track of services and invoice

+
+
+
+
+ +
+ Restaurant
+

+ Run your bar or restaurant methodically

+
+
+
+
+ +
+ Hotel Management
+

+ An all-inclusive hotel management application

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

+ Support

+
+
+
+
+
+
+ +
+
+

Need Help?

+

Got questions or need help? + Get in touch.

+ +

+ odoo@cybrosys.com

+
+
+
+
+
+
+
+ +
+
+

WhatsApp

+

Say hi to us on WhatsApp!

+ +

+ +91 86068 27707

+
+
+
+
+
+
+
+ +
+
+
+ diff --git a/pos_refund_password/static/src/js/refund_password.js b/pos_refund_password/static/src/js/refund_password.js new file mode 100755 index 000000000..b483f8b86 --- /dev/null +++ b/pos_refund_password/static/src/js/refund_password.js @@ -0,0 +1,38 @@ +odoo.define('pos_refund_password.RefundPasswordButton', function (require) { + 'use strict'; + + const PosComponent = require('point_of_sale.PosComponent'); + const ProductScreen = require('point_of_sale.ProductScreen'); + const Registries = require('point_of_sale.Registries'); + const { useListener } = require("@web/core/utils/hooks"); + const TicketScreen = require('point_of_sale.TicketScreen'); + const rpc = require("web.rpc"); + + const PosResTicketScreen1 = (TicketScreen) => class extends TicketScreen { + async _onDoRefund() { + let refund = await rpc.query({ + model: 'ir.config_parameter', + method: 'get_param', + args: ["pos_refund_password.global_refund_security"], + }); + + refund = refund || this.env.pos.config.refund_security; + + if (refund) { + const { confirmed, payload } = await this.showPopup('NumberPopup'); + + if (refund == payload) { + super._onDoRefund(); + } else { + this.showPopup('ErrorPopup', { + body: this.env._t('Invalid Password'), + }); + } + } else { + super._onDoRefund(); + } + } + }; + + Registries.Component.extend(TicketScreen, PosResTicketScreen1); +}); diff --git a/pos_refund_password/views/pos_config_views.xml b/pos_refund_password/views/pos_config_views.xml new file mode 100755 index 000000000..6e82009a9 --- /dev/null +++ b/pos_refund_password/views/pos_config_views.xml @@ -0,0 +1,36 @@ + + + + + pos.config.view.form.inherit.pos.refund.password + + pos.config + + + +

Security

+
+
+
+ Refund Security +
+ Set a security password on refund on pos screen +
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pos_refund_password/views/res_config_settings_views.xml b/pos_refund_password/views/res_config_settings_views.xml new file mode 100755 index 000000000..85d37b39d --- /dev/null +++ b/pos_refund_password/views/res_config_settings_views.xml @@ -0,0 +1,33 @@ + + + + + + res.config.settings.view.form.inherit.pos.refund.password + + res.config.settings + + + +

Password Refund

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