diff --git a/pos_controlled_interface/README.rst b/pos_controlled_interface/README.rst new file mode 100644 index 000000000..663ad71c4 --- /dev/null +++ b/pos_controlled_interface/README.rst @@ -0,0 +1,28 @@ +Controlled Point Of Sale v14 +============================ + +This module will help you to control POS interface. + +Depends +======= +[point_of_sale] addon Odoo + +Tech +==== +* [Python] - Models +* [XML] - Odoo views +* [JS] - static. + +Installation +============ +- www.odoo.com/documentation/10.0/setup/install.html +- Install our custom addon + +Credits +======= +Cybrosys Techno Solutions + +Authors +------- +* Sreejith P +* Aswani PC diff --git a/pos_controlled_interface/__init__.py b/pos_controlled_interface/__init__.py new file mode 100644 index 000000000..c9d1fcb7d --- /dev/null +++ b/pos_controlled_interface/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +################################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2021-TODAY Cybrosys Technologies(). +# Author: Sreejith P() +# +# 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_controlled_interface/__manifest__.py b/pos_controlled_interface/__manifest__.py new file mode 100644 index 000000000..dcbd5f919 --- /dev/null +++ b/pos_controlled_interface/__manifest__.py @@ -0,0 +1,42 @@ +# -*- coding: utf-8 -*- +################################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2021-TODAY Cybrosys Technologies(). +# Author: Sreejith P() +# +# 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': 'Controlled Point Of Sale', + 'version': '14.0.1.0.0', + 'summary': 'Manager Can Control Discount & Price For the POS.', + 'category': 'Point of Sale', + 'author': 'Cybrosys Techno solutions', + 'maintainer': 'Cybrosys Techno Solutions', + 'company': 'Cybrosys Techno Solutions', + 'website': 'https://www.cybrosys.com', + 'depends': ['point_of_sale'], + 'data': [ + 'views/pos_order_form.xml', + 'views/template.xml', + ], + 'images': ['static/description/banner.jpg'], + 'license': 'AGPL-3', + 'installable': True, + 'application': False, + 'auto_install': False, +} diff --git a/pos_controlled_interface/models/__init__.py b/pos_controlled_interface/models/__init__.py new file mode 100644 index 000000000..523bfa4f4 --- /dev/null +++ b/pos_controlled_interface/models/__init__.py @@ -0,0 +1,8 @@ +# -*- coding: utf-8 -*- +################################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2017-TODAY Cybrosys Technologies(). +# +################################################################################### +from . import pos_order diff --git a/pos_controlled_interface/models/pos_order.py b/pos_controlled_interface/models/pos_order.py new file mode 100644 index 000000000..1f46ab420 --- /dev/null +++ b/pos_controlled_interface/models/pos_order.py @@ -0,0 +1,15 @@ +# -*- coding: utf-8 -*- +################################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2017-TODAY Cybrosys Technologies(). +# +################################################################################### +from odoo import models, fields + + +class PosOrder(models.Model): + _inherit = 'pos.config' + + control_discount = fields.Boolean(string='Control Discount') + control_price = fields.Boolean(string='Control Price') diff --git a/pos_controlled_interface/static/description/assets/icons/chevron.png b/pos_controlled_interface/static/description/assets/icons/chevron.png new file mode 100644 index 000000000..2089293d6 Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/chevron.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/cogs.png b/pos_controlled_interface/static/description/assets/icons/cogs.png new file mode 100644 index 000000000..95d0bad62 Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/cogs.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/consultation.png b/pos_controlled_interface/static/description/assets/icons/consultation.png new file mode 100644 index 000000000..8319d4baa Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/consultation.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/ecom-black.png b/pos_controlled_interface/static/description/assets/icons/ecom-black.png new file mode 100644 index 000000000..a9385ff13 Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/ecom-black.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/education-black.png b/pos_controlled_interface/static/description/assets/icons/education-black.png new file mode 100644 index 000000000..3eb09b27b Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/education-black.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/hotel-black.png b/pos_controlled_interface/static/description/assets/icons/hotel-black.png new file mode 100644 index 000000000..130f613be Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/hotel-black.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/license.png b/pos_controlled_interface/static/description/assets/icons/license.png new file mode 100644 index 000000000..a5869797e Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/license.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/lifebuoy.png b/pos_controlled_interface/static/description/assets/icons/lifebuoy.png new file mode 100644 index 000000000..658d56ccc Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/lifebuoy.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/manufacturing-black.png b/pos_controlled_interface/static/description/assets/icons/manufacturing-black.png new file mode 100644 index 000000000..697eb0e9f Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/manufacturing-black.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/pos-black.png b/pos_controlled_interface/static/description/assets/icons/pos-black.png new file mode 100644 index 000000000..97c0f90c1 Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/pos-black.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/puzzle.png b/pos_controlled_interface/static/description/assets/icons/puzzle.png new file mode 100644 index 000000000..65cf854e7 Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/puzzle.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/restaurant-black.png b/pos_controlled_interface/static/description/assets/icons/restaurant-black.png new file mode 100644 index 000000000..4a35eb939 Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/restaurant-black.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/service-black.png b/pos_controlled_interface/static/description/assets/icons/service-black.png new file mode 100644 index 000000000..301ab51cb Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/service-black.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/trading-black.png b/pos_controlled_interface/static/description/assets/icons/trading-black.png new file mode 100644 index 000000000..9398ba2f1 Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/trading-black.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/training.png b/pos_controlled_interface/static/description/assets/icons/training.png new file mode 100644 index 000000000..884ca024d Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/training.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/update.png b/pos_controlled_interface/static/description/assets/icons/update.png new file mode 100644 index 000000000..ecbc5a01a Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/update.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/user.png b/pos_controlled_interface/static/description/assets/icons/user.png new file mode 100644 index 000000000..6ffb23d9f Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/user.png differ diff --git a/pos_controlled_interface/static/description/assets/icons/wrench.png b/pos_controlled_interface/static/description/assets/icons/wrench.png new file mode 100644 index 000000000..6c04dea0f Binary files /dev/null and b/pos_controlled_interface/static/description/assets/icons/wrench.png differ diff --git a/pos_controlled_interface/static/description/banner.png b/pos_controlled_interface/static/description/banner.png new file mode 100644 index 000000000..8f4a468ac Binary files /dev/null and b/pos_controlled_interface/static/description/banner.png differ diff --git a/pos_controlled_interface/static/description/icon.png b/pos_controlled_interface/static/description/icon.png new file mode 100644 index 000000000..e007fe60a Binary files /dev/null and b/pos_controlled_interface/static/description/icon.png differ diff --git a/pos_controlled_interface/static/description/images/checked.png b/pos_controlled_interface/static/description/images/checked.png new file mode 100644 index 000000000..e6c63d582 Binary files /dev/null and b/pos_controlled_interface/static/description/images/checked.png differ diff --git a/pos_controlled_interface/static/description/images/hero.gif b/pos_controlled_interface/static/description/images/hero.gif new file mode 100644 index 000000000..01da533f5 Binary files /dev/null and b/pos_controlled_interface/static/description/images/hero.gif differ diff --git a/pos_controlled_interface/static/description/images/modules/approval_image.png b/pos_controlled_interface/static/description/images/modules/approval_image.png new file mode 100644 index 000000000..84fe94e80 Binary files /dev/null and b/pos_controlled_interface/static/description/images/modules/approval_image.png differ diff --git a/pos_controlled_interface/static/description/images/modules/dynamic_image.png b/pos_controlled_interface/static/description/images/modules/dynamic_image.png new file mode 100644 index 000000000..74ce220e6 Binary files /dev/null and b/pos_controlled_interface/static/description/images/modules/dynamic_image.png differ diff --git a/pos_controlled_interface/static/description/images/modules/mulitple-ref_image.png b/pos_controlled_interface/static/description/images/modules/mulitple-ref_image.png new file mode 100644 index 000000000..e0964f1e3 Binary files /dev/null and b/pos_controlled_interface/static/description/images/modules/mulitple-ref_image.png differ diff --git a/pos_controlled_interface/static/description/images/modules/pos_image.png b/pos_controlled_interface/static/description/images/modules/pos_image.png new file mode 100644 index 000000000..c5932894b Binary files /dev/null and b/pos_controlled_interface/static/description/images/modules/pos_image.png differ diff --git a/pos_controlled_interface/static/description/images/modules/shopify_image.png b/pos_controlled_interface/static/description/images/modules/shopify_image.png new file mode 100644 index 000000000..c6d92c16d Binary files /dev/null and b/pos_controlled_interface/static/description/images/modules/shopify_image.png differ diff --git a/pos_controlled_interface/static/description/images/screenshot-1.png b/pos_controlled_interface/static/description/images/screenshot-1.png new file mode 100644 index 000000000..4c2519b38 Binary files /dev/null and b/pos_controlled_interface/static/description/images/screenshot-1.png differ diff --git a/pos_controlled_interface/static/description/images/screenshot-2.png b/pos_controlled_interface/static/description/images/screenshot-2.png new file mode 100644 index 000000000..6136a9d22 Binary files /dev/null and b/pos_controlled_interface/static/description/images/screenshot-2.png differ diff --git a/pos_controlled_interface/static/description/index.html b/pos_controlled_interface/static/description/index.html new file mode 100644 index 000000000..d72260f38 --- /dev/null +++ b/pos_controlled_interface/static/description/index.html @@ -0,0 +1,501 @@ +
+
+ +
+
+

Controlled Point Of Sale

+

+ Manager Can Control the POS

+ +
+
+ + + +
+
+

Overview

+
+

+ The module allows the POS managers to control the 'Discount’ and ‘Product Price’ in each ‘POS’. The manager can disable the 'Discount' and 'Price' option in any POS such that the POS users won’t be able to allow discretionary prices and discounts. +

+
+
+ + + + +
+
+

Key Features

+
+
+ + +
+ +
+ +

+ Control Discount in POS. +

+
+ +
+ +

+ + Control Price in POS. +

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

Screenshots

+
+ + +
+
+

+ 01

+
+
+ +

+ Enable editing mode. Here we can view Control Pos Interface +

+
+
+ + + + +
+
+

+ 02

+
+
+ +

+ Controlled Mode. +

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

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

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

Need Help?

+
+
+
+ + +
+ +
+ + +
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+
+
+ + + +
+
diff --git a/pos_controlled_interface/static/src/js/restrict_pos.js b/pos_controlled_interface/static/src/js/restrict_pos.js new file mode 100644 index 000000000..3433d89fd --- /dev/null +++ b/pos_controlled_interface/static/src/js/restrict_pos.js @@ -0,0 +1,33 @@ +odoo.define('pos_controlled_interface', function(require){ + "use strict"; +const components = { + NumpadWidget: require('point_of_sale.NumpadWidget'), +}; +const { patch } = require('web.utils'); + +patch(components.NumpadWidget, 'pos_controlled_interface', { + mounted() { + console.log(this); + + if (this.env.pos.config.control_discount) { + $($('.numpad').find('.mode-button')[2]).removeClass('disable'); + }else{ + $($('.numpad').find('.mode-button')[2]).addClass('disable'); + } + if (this.env.pos.config.control_price) { + $($('.numpad').find('.mode-button')[1]).removeClass('disable'); + }else{ + $($('.numpad').find('.mode-button')[1]).addClass('disable'); + } + }, + changeMode(mode) { + if (mode === 'discount' && this.env.pos.config.control_discount) { + return; + } + if (mode === 'price' && this.env.pos.config.control_price) { + return; + } + this.trigger('set-numpad-mode', { mode }); + } +}); +}); \ No newline at end of file diff --git a/pos_controlled_interface/views/pos_order_form.xml b/pos_controlled_interface/views/pos_order_form.xml new file mode 100644 index 000000000..a40492553 --- /dev/null +++ b/pos_controlled_interface/views/pos_order_form.xml @@ -0,0 +1,41 @@ + + + + Control POS + pos.config + + + +


+

Control pos Interface

+
+ +
+
+ +
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
diff --git a/pos_controlled_interface/views/template.xml b/pos_controlled_interface/views/template.xml new file mode 100644 index 000000000..607718f48 --- /dev/null +++ b/pos_controlled_interface/views/template.xml @@ -0,0 +1,10 @@ + + + + + +