diff --git a/pos_controlled_interface/README.rst b/pos_controlled_interface/README.rst new file mode 100644 index 000000000..f40b51bd8 --- /dev/null +++ b/pos_controlled_interface/README.rst @@ -0,0 +1,28 @@ +Controlled Point Of Sale v11 +============================ + +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..fc6ac07b5 --- /dev/null +++ b/pos_controlled_interface/__init__.py @@ -0,0 +1,8 @@ +# -*- coding: utf-8 -*- +################################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2017-TODAY Cybrosys Technologies(). +# +################################################################################### +from . import models diff --git a/pos_controlled_interface/__manifest__.py b/pos_controlled_interface/__manifest__.py new file mode 100644 index 000000000..21c3bd34b --- /dev/null +++ b/pos_controlled_interface/__manifest__.py @@ -0,0 +1,40 @@ +# -*- coding: utf-8 -*- +################################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2017-TODAY Cybrosys Technologies(). +# 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': '11.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/banner.jpg b/pos_controlled_interface/static/description/banner.jpg new file mode 100644 index 000000000..9efbb4ebf Binary files /dev/null and b/pos_controlled_interface/static/description/banner.jpg differ diff --git a/pos_controlled_interface/static/description/cybro_logo.png b/pos_controlled_interface/static/description/cybro_logo.png new file mode 100644 index 000000000..bb309114c Binary files /dev/null and b/pos_controlled_interface/static/description/cybro_logo.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..1c13cad55 Binary files /dev/null and b/pos_controlled_interface/static/description/icon.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..0c2b5734c --- /dev/null +++ b/pos_controlled_interface/static/description/index.html @@ -0,0 +1,336 @@ +
+
+

+ Controlled Point Of Sale +

+

+ Manager Can Control the POS +

+
+ Cybrosys Technologies +
+ +
+ cybrosys technologies
+
+
+
+ +
+
+

+ 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 +

+
+ +
+
+
+

+ Features +

+

+ + Control Discount in POS. +

+

+ + Control Price in POS. +

+ +
+
+
+
+

+ Screenshots +

+

+ + Point Of Sale +

+

+ ☛ Enable editing mode.
+ ☛ Select the control.
+

+
+ +
+

+ + POS Interface +

+

+ ☛ Controlled Mode.
+

+
+ +
+ +
+
+
+
+

+ Our Services +

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

+ + Odoo Support +

+ +
+ +
+
+
+
+
+

+ Our Industries +

+
+ +
+ +
+
+ + Odoo Industry + +
+
+
+

+ + Manufacturing +

+

+ Plan, track and schedule your operations. +

+
+ +
+
+ +
+
+ + Odoo Industry + +
+
+
+

+ + Restaurant +

+

+ Run your bar or restaurant methodical. +

+
+ +
+
+ +
+
+ + Odoo Industry + +
+
+
+

+ + POS +

+

+ Easy configuring and convivial selling. +

+
+ +
+
+ +
+
+ + Odoo Industry + +
+
+
+

+ + E-commerce & Website +

+

+ Mobile friendly, awe-inspiring product pages. +

+
+
+
+ +
+
+ + Odoo Industry + +
+
+
+

+ + Hotel Management +

+

+ An all-inclusive hotel management application. +

+
+
+
+ +
+
+ + Odoo Industry + +
+
+
+

+ + Education +

+

+ A Collaborative platform for educational management. +

+
+
+
+ +
+
+ + Odoo Industry + +
+
+
+

+ + Service Management +

+

+ Keep track of services and invoice accordingly. +

+
+
+
+
+
+
+ +
\ No newline at end of file diff --git a/pos_controlled_interface/static/description/point_of_sale.png b/pos_controlled_interface/static/description/point_of_sale.png new file mode 100644 index 000000000..a4f25b191 Binary files /dev/null and b/pos_controlled_interface/static/description/point_of_sale.png differ diff --git a/pos_controlled_interface/static/description/pos_control.gif b/pos_controlled_interface/static/description/pos_control.gif new file mode 100644 index 000000000..0ca51c655 Binary files /dev/null and b/pos_controlled_interface/static/description/pos_control.gif differ 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..7f7836fa1 --- /dev/null +++ b/pos_controlled_interface/static/src/js/restrict_pos.js @@ -0,0 +1,24 @@ +/** + * Created by cybrosys on 12/12/17. + */ +odoo.define('pos_controlled_interface', function (require) { + "use strict"; + // Restrict the sales persons in the interface + var screens = require('point_of_sale.screens'); + screens.NumpadWidget.include({ + clickChangeMode: function(event) { + var newMode = event.currentTarget.attributes['data-mode'].nodeValue; + if (newMode =='discount' && this.pos.config.control_discount){ + return 0; + } + else if(newMode =='price' && this.pos.config.control_price){ + return 0; + } + else{ + return this.state.changeMode(newMode); + } + + } + }) + +}); 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..37e1720b2 --- /dev/null +++ b/pos_controlled_interface/views/pos_order_form.xml @@ -0,0 +1,33 @@ + + + + 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..ddca135c0 --- /dev/null +++ b/pos_controlled_interface/views/template.xml @@ -0,0 +1,10 @@ + + + + + +