@ -0,0 +1,16 @@ |
|||||
|
POS Product Multi Barcode |
||||
|
========================= |
||||
|
Allows to create multiple barcode for a single product. |
||||
|
|
||||
|
Installation |
||||
|
============ |
||||
|
- www.odoo.com/documentation/13.0/setup/install.html |
||||
|
- Install our custom addon |
||||
|
|
||||
|
Configuration |
||||
|
============= |
||||
|
No additional configurations needed |
||||
|
|
||||
|
Credits |
||||
|
======= |
||||
|
Developer: Risha C.T @ cybrosys, odoo@cybrosys.com |
@ -0,0 +1,24 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
################################################################################### |
||||
|
# |
||||
|
# Cybrosys Technologies Pvt. Ltd. |
||||
|
# |
||||
|
# Copyright (C) 2020-TODAY Cybrosys Technologies (<https://www.cybrosys.com>). |
||||
|
# Author: Risha C.T (<https://www.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 <https://www.gnu.org/licenses/>. |
||||
|
# |
||||
|
################################################################################### |
||||
|
|
||||
|
from . import models |
@ -0,0 +1,44 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
################################################################################### |
||||
|
# |
||||
|
# Cybrosys Technologies Pvt. Ltd. |
||||
|
# |
||||
|
# Copyright (C) 2020-TODAY Cybrosys Technologies (<https://www.cybrosys.com>). |
||||
|
# Author: Risha C.T (<https://www.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 <https://www.gnu.org/licenses/>. |
||||
|
# |
||||
|
################################################################################### |
||||
|
|
||||
|
{ |
||||
|
'name': 'POS Product Multi Barcode', |
||||
|
'summary': """Allows to create multiple barcode for a single product""", |
||||
|
'description': """Allows to create multiple barcode for a single product""", |
||||
|
'version': '13.0.1.0.0', |
||||
|
'author': 'Cybrosys Techno Solutions', |
||||
|
'company': 'Cybrosys Techno Solutions', |
||||
|
'maintainer': 'Cybrosys Techno Solutions', |
||||
|
'website': 'https://www.cybrosys.com/', |
||||
|
'category': 'Point of Sale', |
||||
|
'depends': ['product', 'point_of_sale'], |
||||
|
'license': 'AGPL-3', |
||||
|
'data': [ |
||||
|
'security/ir.model.access.csv', |
||||
|
'views/product_views.xml', |
||||
|
'views/pos_template.xml', |
||||
|
], |
||||
|
'images': ['static/description/banner.png'], |
||||
|
'installable': True, |
||||
|
'auto_install': False, |
||||
|
} |
@ -0,0 +1,6 @@ |
|||||
|
## Module <multi_barcodes_pos> |
||||
|
|
||||
|
#### 27.03.2020 |
||||
|
#### Version 13.0.1.0.0 |
||||
|
##### ADD |
||||
|
- Initial commit for POS Multi Barcode Scan |
@ -0,0 +1,24 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
################################################################################### |
||||
|
# |
||||
|
# Cybrosys Technologies Pvt. Ltd. |
||||
|
# |
||||
|
# Copyright (C) 2020-TODAY Cybrosys Technologies (<https://www.cybrosys.com>). |
||||
|
# Author: Risha C.T (<https://www.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 <https://www.gnu.org/licenses/>. |
||||
|
# |
||||
|
################################################################################### |
||||
|
|
||||
|
from . import product_product |
@ -0,0 +1,91 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
################################################################################### |
||||
|
# |
||||
|
# Cybrosys Technologies Pvt. Ltd. |
||||
|
# |
||||
|
# Copyright (C) 2020-TODAY Cybrosys Technologies (<https://www.cybrosys.com>). |
||||
|
# Author: Risha C.T (<https://www.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 <https://www.gnu.org/licenses/>. |
||||
|
# |
||||
|
################################################################################### |
||||
|
|
||||
|
from odoo import models, fields, api |
||||
|
from odoo.osv import expression |
||||
|
|
||||
|
|
||||
|
class ProductProduct(models.Model): |
||||
|
_inherit = 'product.product' |
||||
|
|
||||
|
product_multi_barcodes = fields.One2many('multi.barcode.products', 'product_multi', string='Barcodes') |
||||
|
|
||||
|
@api.model |
||||
|
def create(self, vals): |
||||
|
res = super(ProductProduct, self).create(vals) |
||||
|
res.product_multi_barcodes.update({ |
||||
|
'template_multi': res.product_tmpl_id.id |
||||
|
}) |
||||
|
return res |
||||
|
|
||||
|
def write(self, vals): |
||||
|
res = super(ProductProduct, self).write(vals) |
||||
|
self.product_multi_barcodes.update({ |
||||
|
'template_multi': self.product_tmpl_id.id |
||||
|
}) |
||||
|
return res |
||||
|
|
||||
|
@api.model |
||||
|
def _name_search(self, name, args=None, operator='ilike', limit=100, name_get_uid=None): |
||||
|
args = args or [] |
||||
|
print("666666666666666") |
||||
|
domain = [] |
||||
|
if name: |
||||
|
domain = ['|', '|', ('name', operator, name), ('default_code', operator, name), |
||||
|
'|', ('barcode', operator, name), ('product_multi_barcodes', operator, name)] |
||||
|
product_id = self._search(expression.AND([domain, args]), limit=limit, access_rights_uid=name_get_uid) |
||||
|
return self.browse(product_id).name_get() |
||||
|
|
||||
|
|
||||
|
class ProductTemplate(models.Model): |
||||
|
_inherit = 'product.template' |
||||
|
|
||||
|
template_multi_barcodes = fields.One2many('multi.barcode.products', 'template_multi', string='Barcodes') |
||||
|
|
||||
|
@api.model |
||||
|
def create(self, vals): |
||||
|
res = super(ProductTemplate, self).create(vals) |
||||
|
res.template_multi_barcodes.update({ |
||||
|
'product_multi': res.product_variant_id.id |
||||
|
}) |
||||
|
return res |
||||
|
|
||||
|
def write(self, vals): |
||||
|
res = super(ProductTemplate, self).write(vals) |
||||
|
if self.template_multi_barcodes: |
||||
|
self.template_multi_barcodes.update({ |
||||
|
'product_multi': self.product_variant_id.id |
||||
|
}) |
||||
|
return res |
||||
|
|
||||
|
|
||||
|
class ProductMultiBarcode(models.Model): |
||||
|
_name = 'multi.barcode.products' |
||||
|
|
||||
|
multi_barcode = fields.Char(string="Barcode", help="Provide alternate barcodes for this product") |
||||
|
product_multi = fields.Many2one('product.product') |
||||
|
template_multi = fields.Many2one('product.template') |
||||
|
|
||||
|
def get_barcode_val(self, product): |
||||
|
# returns barcode of record in self and product id |
||||
|
return self.multi_barcode, product |
|
After Width: | Height: | Size: 55 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 138 KiB |
After Width: | Height: | Size: 88 KiB |
After Width: | Height: | Size: 127 KiB |
After Width: | Height: | Size: 151 KiB |
After Width: | Height: | Size: 87 KiB |
After Width: | Height: | Size: 93 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 51 KiB |
After Width: | Height: | Size: 98 KiB |
After Width: | Height: | Size: 138 KiB |
After Width: | Height: | Size: 101 KiB |
@ -0,0 +1,503 @@ |
|||||
|
<div class="row" |
||||
|
style="margin: 0;position: relative;color: #000;background-position: center;background: #ffffff;border-bottom: 1px solid #e4e4e4;text-align: center; margin: auto; display: flex;justify-content: center;"> |
||||
|
<a href="https://www.cybrosys.com/" target="_blank"><img src="images/cybrosys.png" |
||||
|
style=" width: 293px; padding: 1rem 0rem; margin: auto" |
||||
|
alt="cybrosys-logo"></a></div> |
||||
|
<div class="row" |
||||
|
style="margin:75px 0;position: relative;color: #000;background-position: center;background: #ffffff;border-bottom: 1px solid #e4e4e4; padding-bottom: 30px;"> |
||||
|
<div class="col-md-7 col-sm-12 col-xs-12" style="padding: 0px"> |
||||
|
<div style=" margin: 0 0 0px;padding: 20px 0 10;font-size: 23px;line-height: 35px;font-weight: 400;color: #000;border-top: 1px solid rgba(255,255,255,0.1);border-bottom: 1px solid rgba(255,255,255,0.11);text-align: left;"> |
||||
|
<h1 style="font-size: 39px;font-weight: 600;margin: 0px !important;">POS Product Multi Barcode</h1> |
||||
|
<h3 style="font-size: 21px;margin-top: 8px;position: relative;">Allow to scan multiple barcodes of a product in POS.</h3> |
||||
|
</div> |
||||
|
<h2 style="font-weight: 600;font-size: 1.8rem;margin-top: 15px;">Key Highlights</h2> |
||||
|
<ul style=" padding: 0 1px; list-style: none; "> |
||||
|
<li style="display: flex;align-items: center;padding: 8px 0;font-size: 18px;"><img src="images/checked.png" style=" width: 22px; margin-right: 6px; " alt="check"> |
||||
|
Create multiple barcode for a single product |
||||
|
</li> |
||||
|
<li style="display: flex;align-items: center;padding: 8px 0;font-size: 18px;"><img src="images/checked.png" style=" width: 22px; margin-right: 6px; " alt="check"> |
||||
|
Scan the multiple barcode in POS for single product. |
||||
|
</li> |
||||
|
</ul> |
||||
|
</div> |
||||
|
<div class="col-md-5 col-sm-12 col-xs-12"><img src="images/multi_barcode_pos_1.png" class="img-responsive" alt=""></div> |
||||
|
</div> |
||||
|
<div> |
||||
|
<section class="oe_container" style="padding: 1rem 0rem 1rem; background-color: #ffffff !important;"> |
||||
|
<div class="row py-4 px-3"> |
||||
|
<div class="w-100" style="padding-top:30px;padding-bottom:45px;border-radius: 10px;"> |
||||
|
<ul role="tablist" class="nav nav-pills justify-content-center" data-tabs="tabs" id="pills-tab" |
||||
|
style="border: none;background: unset;"> |
||||
|
<li class="nav-item mr-1 mb-3" |
||||
|
style="font-size: 1.05rem;font-weight: 400;transition: all .15s ease;color: #d31c22;background-color: #d31c22;box-shadow: 0 4px 6px rgba(50,50,93,.11), 0 1px 3px rgba(0,0,0,.08);border: 0;font-family: 'Open Sans',sans-serif;width: 140px;border-radius: 0.30rem;"> |
||||
|
<a id="pills-home-tab" data-toggle="pill" href="#pills-home" role="tab" |
||||
|
aria-controls="pills-home" aria-selected="true" class="nav-link active show" style="color: #000000;line-height: 33px;border: 0;border-radius: .25rem;font-weight: 400;text-align: center; |
||||
|
color: #fff;">Overview </a></li> |
||||
|
<li class="nav-item mr-1 mb-3" |
||||
|
style="font-size: 1.05rem;font-weight: 400;transition: all .15s ease;color: #d31c22;background-color: #d31c22;box-shadow: 0 4px 6px rgba(50,50,93,.11), 0 1px 3px rgba(0,0,0,.08);border: 0;font-family: 'Open Sans',sans-serif;width: 140px;border-radius: 0.30rem;"> |
||||
|
<a id="pills-home-tab" data-toggle="pill" href="#pills-home1" role="tab" |
||||
|
aria-controls="pills-home" aria-selected="true" class="nav-link " style="color: #000000;line-height: 33px;border: 0;border-radius: .25rem;font-weight: 400; text-align: center; |
||||
|
color: #fff;">Features </a></li> |
||||
|
<li class="nav-item mr-1 mb-3" |
||||
|
style="font-size: 1.05rem;font-weight: 400;transition: all .15s ease;color: #ffffff;background-color: #d31c22;box-shadow: 0 4px 6px rgba(50,50,93,.11), 0 1px 3px rgba(0,0,0,.08);border: 0;font-family: 'Open Sans',sans-serif;width: 140px;border-radius: 0.30rem;"> |
||||
|
<a class="nav-link" id="pills-profile-tab" data-toggle="pill" href="#pills-profile" role="tab" |
||||
|
aria-controls="pills-profile" aria-selected="false" style="color: #000000;line-height: 33px;border: 0;border-radius: .25rem;font-weight: 400; text-align: center; |
||||
|
color: #fff;">Screenshots </a></li> |
||||
|
<!-- <li class="nav-item mr-1 mb-3" style="font-size: 1.05rem;font-weight: 400;transition: all .15s ease;color: #ffffff;background-color: #d31c22;box-shadow: 0 4px 6px rgba(50,50,93,.11), 0 1px 3px rgba(0,0,0,.08);border: 0;font-family: 'Open Sans',sans-serif;width: 140px;border-radius: 0.30rem;"> <a class="nav-link" id="pills-profile-tab" data-toggle="pill" href="#pills-video" role="tab" aria-controls="pills-profile" aria-selected="false" style="color: #000000;line-height: 33px;border: 0;border-radius: .25rem;font-weight: 400; text-align: center;--> |
||||
|
<!-- color: #fff;">Video </a> </li>--> |
||||
|
</ul> |
||||
|
<div class="tab-content" id="pills-tabContent" |
||||
|
style="padding-top: 30px; padding-bottom: 30px; padding: 30px;"> |
||||
|
<div class="px-3 pt-1 tab-pane fade active show" id="pills-home" role="tabpanel" aria-labelledby=" |
||||
|
pills-home-tab"> |
||||
|
<!-- Overview--> |
||||
|
<h2 style="font-weight: 600;text-align: center;width: 100%;">Overview</h2> |
||||
|
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;"> |
||||
|
<h3 class="oe_slogan" |
||||
|
style="text-align: center;font-size: 19px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 31px;font-weight: 400;letter-spacing: .5px;margin-bottom: 21px;"> |
||||
|
Odoo allows having a single barcode for products. This module allows you to set |
||||
|
multiple barcodes for a product and product variants and use these barcodes for |
||||
|
scanning the product in pos. |
||||
|
</h3> |
||||
|
</div> |
||||
|
<div class="px-3 pt-1 tab-pane fade " id="pills-home1" role="tabpanel" aria-labelledby=" |
||||
|
pills-home-tab"> |
||||
|
<!-- feature tab--> |
||||
|
<h2 style="font-weight: 600;text-align: center;width: 100%;">POS Product Multi Barcodes</h2> |
||||
|
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;"> |
||||
|
<ul> |
||||
|
<li class="mb8" |
||||
|
style="font-family: Roboto;color: #000;list-style-type: square;font-size: 19px;line-height: 50px; background-color: #3a34380d;padding-left: 20px;border-radius: 7px;list-style: none;"> |
||||
|
<img src="images/checked.png" style=" width: 22px; margin-right: 6px; " alt="check"> |
||||
|
Set multiple barcodes for a single product. |
||||
|
</li> |
||||
|
<li class="mb8" |
||||
|
style="font-family: Roboto;color: #000;list-style-type: square;font-size: 19px;line-height: 50px; background-color: #3a34380d;padding-left: 20px;border-radius: 7px;list-style: none;"> |
||||
|
<img src="images/checked.png" style=" width: 22px; margin-right: 6px; " alt="check"> |
||||
|
Scan using these barcodes in pos. |
||||
|
</li> |
||||
|
<li class="mb8" |
||||
|
style="font-family: Roboto;color: #000;list-style-type: square;font-size: 19px;line-height: 50px; background-color: #3a34380d;padding-left: 20px;border-radius: 7px;list-style: none;"> |
||||
|
<img src="images/checked.png" style=" width: 22px; margin-right: 6px; " alt="check"> |
||||
|
Allows using default barcode option also. |
||||
|
</li> |
||||
|
</ul> |
||||
|
</div> |
||||
|
<!-- Screenshot tab--> |
||||
|
<div class="px-3 tab-pane fade" id="pills-profile" role="tabpanel" |
||||
|
aria-labelledby="pills-profile-tab"> |
||||
|
<div class="tab-pane"> |
||||
|
<h2 style="font-weight: 600;text-align: center;width: 100%;">Screenshots</h2> |
||||
|
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;"> |
||||
|
<div> |
||||
|
<section class="oe_container"> |
||||
|
<div id="demo" class="row carousel slide mb32" data-ride="carousel"> |
||||
|
<div class="carousel-inner"> |
||||
|
<div class="carousel-item active" style="min-height: 0px;"> |
||||
|
<div class="col-xs-12 col-sm-12 col-md-12 mb16 mt16" |
||||
|
style="float: left;"> |
||||
|
<h3 class="alert" |
||||
|
style="font-weight:400;color: #091E42;background: #fff;text-align: left;border-radius: 0; font-size: 18px;"> |
||||
|
<img src="images/checked.png" |
||||
|
style=" width: 22px; margin-right: 6px; " alt="check">For |
||||
|
setting multiple barcodes for products, go to |
||||
|
<strong>Point of sale --> Products --> Product Variants |
||||
|
</strong>and select <strong>Barcodes</strong> Tab.</h3> |
||||
|
<div style=""><img class="img img-responsive center-block" |
||||
|
style="border-top-left-radius: 10px;border-top-right-radius: 10px;" |
||||
|
src="images/multi_barcode_pos_1.png"></div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="carousel-item" style="min-height: 0px;"> |
||||
|
<div class="col-xs-12 col-sm-12 col-md-12 mb16 mt16" |
||||
|
style="float: left;"> |
||||
|
<h3 class="alert" |
||||
|
style="font-weight:400;color: #091E42;background: #fff;text-align: left;border-radius: 0; font-size: 18px;"> |
||||
|
<img src="images/checked.png" |
||||
|
style=" width: 22px; margin-right: 6px; " alt="check"> |
||||
|
Now set multiple barcodes and go to Dashboard and open a pos to scan barcode using barcode scanner. |
||||
|
</h3> |
||||
|
<div style=""><img class="img img-responsive center-block" |
||||
|
style="border-top-left-radius: 10px;border-top-right-radius: 10px;" |
||||
|
src="images/multi_barcode_pos_2.png"></div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<div class="carousel-item" style="min-height: 0px;"> |
||||
|
<div class="col-xs-12 col-sm-12 col-md-12 mb16 mt16" |
||||
|
style="float: left;"> |
||||
|
<h3 class="mb32 alert" |
||||
|
style="font-weight:400;color: #091E42;background: #fff;text-align: left;border-radius: 0; font-size: 18px; "> |
||||
|
<img src="images/checked.png" |
||||
|
style=" width: 22px; margin-right: 6px; " alt="check"> |
||||
|
Scan the barcode using the barcode scanner and you can see the product gets added in ordeline. If there is only single product Variant, you can see the multiple |
||||
|
barcodes set for product in <strong>Point of sale -- > Products --> Products</strong></h3> |
||||
|
<div style=""><img class="img img-responsive center-block" |
||||
|
style="border-top-left-radius: 10px;border-top-right-radius: 10px;" |
||||
|
src="images/multi_barcode_pos_3.png"></div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<a class="carousel-control-prev" href="#demo" data-slide="prev" |
||||
|
style="left:-25px;width: 35px;color: #000;"> <span |
||||
|
class="carousel-control-prev-icon"><i class="fa fa-chevron-left" |
||||
|
style="font-size:24px"></i></span> |
||||
|
</a> <a class="carousel-control-next" href="#demo" data-slide="next" |
||||
|
style="right:-25px;width: 35px;color: #000;"> <span |
||||
|
class="carousel-control-next-icon"><i class="fa fa-chevron-right" |
||||
|
style="font-size:24px"></i></span> |
||||
|
</a> |
||||
|
</div> |
||||
|
</section> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="px-2 px-lg-4 pt-3 tab-pane fade" id="pills-contact" role="tabpanel" |
||||
|
aria-labelledby="pills-contact-tab"> |
||||
|
<ul class="list-unstyled"> |
||||
|
</ul> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</section> |
||||
|
<section class="oe_container" style="padding: 2rem 3rem 1rem;"> |
||||
|
<h2 style="font-weight: 600;text-align: center;margin-bottom: 25px;width: 100%;">Suggested Products</h2> |
||||
|
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;"> |
||||
|
<div id="demo1" class="row carousel slide" data-ride="carousel"> |
||||
|
<!-- The slideshow --> |
||||
|
<div class="carousel-inner"> |
||||
|
<div class="carousel-item active" style="min-height: 0px;"> |
||||
|
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float: left;"> |
||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/product_brand_sale/" target="_blank"> |
||||
|
<div style="box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);border-radius: 10px;"> |
||||
|
<img class="img img-responsive center-block" |
||||
|
style="border-top-left-radius: 10px;border-top-right-radius: 10px;" |
||||
|
src="images/banner_product_branding.png"></div> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float: left;"> |
||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/product_expiry_warning/" target="_blank"> |
||||
|
<div style="box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);border-radius: 10px;"> |
||||
|
<img class="img img-responsive center-block" |
||||
|
style="border-top-left-radius: 10px;border-top-right-radius: 10px;" |
||||
|
src="images/banner_product_expiry.jpeg"></div> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float: left;"> |
||||
|
<a href="https://apps.odoo.com/apps/modules/12.0/sale_purchase_previous_product_cost/" |
||||
|
target="_blank"> |
||||
|
<div style="box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);border-radius: 10px;"> |
||||
|
<img class="img img-responsive center-block" |
||||
|
style="border-top-left-radius: 10px;border-top-right-radius: 10px;" |
||||
|
src="images/banner_previous_rates.jpeg"></div> |
||||
|
</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="carousel-item" style="min-height: 0px;"> |
||||
|
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float: left;"> |
||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/customer_sequence/" target="_blank"> |
||||
|
<div style="box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);border-radius: 10px;"> |
||||
|
<img class="img img-responsive center-block" |
||||
|
style="border-top-left-radius: 10px;border-top-right-radius: 10px;" |
||||
|
src="images/banner_customer_sequence.jpeg"></div> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float: left;"> |
||||
|
<a href="https://apps.odoo.com/apps/modules/12.0/barcode_scanning_sale_purchase/" |
||||
|
target="_blank"> |
||||
|
<div style="box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);border-radius: 10px;"> |
||||
|
<img class="img img-responsive center-block" |
||||
|
style="border-top-left-radius: 10px;border-top-right-radius: 10px;" |
||||
|
src="images/banner_barcode_scanning.jpeg"></div> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float: left;"> |
||||
|
<a href="https://apps.odoo.com/apps/modules/12.0/amount_currency_sale/" target="_blank"> |
||||
|
<div style="box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);border-radius: 10px;"> |
||||
|
<img class="img img-responsive center-block" |
||||
|
style="border-top-left-radius: 10px;border-top-right-radius: 10px;" |
||||
|
src="images/banner_currency_total.png"></div> |
||||
|
</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<!-- Left and right controls --> |
||||
|
<a class="carousel-control-prev" href="#demo1" data-slide="prev" |
||||
|
style="left:-25px;width: 35px;color: #000;"> <span class="carousel-control-prev-icon"><i |
||||
|
class="fa fa-chevron-left" style="font-size:24px"></i></span> </a> <a class="carousel-control-next" |
||||
|
href="#demo1" |
||||
|
data-slide="next" |
||||
|
style="right:-25px;width: 35px;color: #000;"> |
||||
|
<span class="carousel-control-next-icon"><i class="fa fa-chevron-right" style="font-size:24px"></i></span> |
||||
|
</a> |
||||
|
</div> |
||||
|
</section> |
||||
|
<section class="row" style="padding: 2rem 3rem 1rem;margin:0px"> |
||||
|
<h2 style="font-weight: 600;margin-bottom: 20px;text-align: center;width: 100%;">Our Service</h2> |
||||
|
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;"> |
||||
|
<div class="row" style=" display: flex; justify-content: center; flex-wrap: wrap;width: 100%; "> |
||||
|
<!-- <div style="display:flex;padding-top: 20px;justify-content: space-between;"> --> |
||||
|
<div class="col-md-2 col-sm-6 col-xs-12"> |
||||
|
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"><a |
||||
|
href="https://www.cybrosys.com/odoo-customization-and-installation/" target="_blank"> <img |
||||
|
src="https://www.cybrosys.com/images/odoo-customization.png" |
||||
|
style="width: 100%;border-radius: 100%;"/> </a></div> |
||||
|
<h3 class="oe_slogan" |
||||
|
style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;"> |
||||
|
<a href="https://www.cybrosys.com/odoo-customization-and-installation/" target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;"> |
||||
|
Odoo Customization </a></h3> |
||||
|
</div> |
||||
|
<div class="col-md-2 col-sm-6 col-xs-12"> |
||||
|
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"><a |
||||
|
href="https://www.cybrosys.com/odoo-erp-implementation/" target="_blank"> <img |
||||
|
src="https://www.cybrosys.com/images/odoo-erp-implementation.png" |
||||
|
style="width: 100%;border-radius: 100%;"/> </a></div> |
||||
|
<h3 class="oe_slogan" |
||||
|
style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;"> |
||||
|
<a href="https://www.cybrosys.com/odoo-erp-implementation/" target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;"> |
||||
|
Odoo Implementation </a></h3> |
||||
|
</div> |
||||
|
<div class="col-md-2 col-sm-6 col-xs-12"> |
||||
|
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"><a |
||||
|
href="https://www.cybrosys.com/odoo-erp-integration/" target="_blank"> <img |
||||
|
src="https://www.cybrosys.com/images/odoo-erp-integration.png" |
||||
|
style="width: 100%;border-radius: 100%;"/> </a></div> |
||||
|
<h3 class="oe_slogan" |
||||
|
style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;"> |
||||
|
<a href="https://www.cybrosys.com/odoo-erp-integration/" target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;"> |
||||
|
Odoo Integration </a></h3> |
||||
|
</div> |
||||
|
<div class="col-md-2 col-sm-6 col-xs-12"> |
||||
|
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"><a |
||||
|
href="https://www.cybrosys.com/odoo-erp-support/" target="_blank"> <img |
||||
|
src="https://www.cybrosys.com/images/odoo-erp-support.png" |
||||
|
style="width: 100%;border-radius: 100%;"/> </a></div> |
||||
|
<h3 class="oe_slogan" |
||||
|
style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;"> |
||||
|
<a href="https://www.cybrosys.com/odoo-erp-support/" target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;"> |
||||
|
Odoo Support</a></h3> |
||||
|
</div> |
||||
|
<div class="col-md-2 col-sm-6 col-xs-12"> |
||||
|
<div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"><a |
||||
|
href="https://www.cybrosys.com/hire-odoo-developer/" target="_blank"> <img |
||||
|
src="https://www.cybrosys.com/images/hire-odoo-developer.png" |
||||
|
style="width: 100%;border-radius: 100%;"/> </a></div> |
||||
|
<h3 class="oe_slogan" |
||||
|
style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;"> |
||||
|
<a href="https://www.cybrosys.com/hire-odoo-developer/" target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;"> |
||||
|
Hire Odoo Developers</a></h3> |
||||
|
</a> |
||||
|
</div> |
||||
|
<!-- </div> --> |
||||
|
</div> |
||||
|
</section> |
||||
|
<section class="row" style="padding: 2rem 3rem 1rem;margin:0px"> |
||||
|
<div class="row" style="margin: 0"> |
||||
|
<h2 style="font-weight: 600;margin-bottom: 20px;text-align: center;width: 100%;">Our Industries</h2> |
||||
|
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;"> |
||||
|
<!-- <div style="display:flex;justify-content: space-between;flex-wrap:wrap;"> --> |
||||
|
<div class="row" style="width: 100%"> |
||||
|
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; "> |
||||
|
<div> |
||||
|
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/best-trading-erp/" target="_blank"> <img |
||||
|
src="https://www.cybrosys.com/images/odoo-index-industry-1.png" alt="Odoo Industry" |
||||
|
style=" border-radius: 100%;width:100%;"/> </a></div> |
||||
|
</div> |
||||
|
<div style="width:70%;float:left;"> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/best-trading-erp/" target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none;font-family: 'Montserrat',sans-serif;"> |
||||
|
Trading </a></h3> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px; font-family: 'Montserrat',sans-serif;"> |
||||
|
Easily procure and sell your products. </h3> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; "> |
||||
|
<div> |
||||
|
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/manufacturing-erp-software/" |
||||
|
target="_blank"> <img src="https://www.cybrosys.com/images/odoo-index-industry-2.png" |
||||
|
alt="Odoo Industry" style=" border-radius: 100%;width:100%;"/> |
||||
|
</a></div> |
||||
|
</div> |
||||
|
<div style="width:70%;float:left;" style=" margin-bottom: 10px; "> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/manufacturing-erp-software/" |
||||
|
target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none;font-family: 'Montserrat',sans-serif;"> |
||||
|
Manufacturing</a></h3> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;font-family: 'Montserrat',sans-serif;"> |
||||
|
Plan, track and schedule your operations. </h3> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; "> |
||||
|
<div> |
||||
|
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/restaurant-management/" target="_blank"> |
||||
|
<img src="https://www.cybrosys.com/images/odoo-index-industry-3.png" alt="Odoo Industry" |
||||
|
style=" border-radius: 100%;width:100%;"/> </a></div> |
||||
|
</div> |
||||
|
<div style="width:70%;float:left;"> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/restaurant-management/" target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none;font-family: 'Montserrat',sans-serif;"> |
||||
|
Restaurant</a></h3> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;font-family: 'Montserrat',sans-serif;"> |
||||
|
Run your bar or restaurant methodical. </h3> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; "> |
||||
|
<div> |
||||
|
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/pos/" target="_blank"> <img |
||||
|
src="https://www.cybrosys.com/images/odoo-index-industry-4.png" alt="Odoo Industry" |
||||
|
style=" border-radius: 100%;width:100%;"/> </a></div> |
||||
|
</div> |
||||
|
<div style="width:70%;float:left;"> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/pos/" target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none;font-family: 'Montserrat',sans-serif;"> |
||||
|
POS</a></h3> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;font-family: 'Montserrat',sans-serif;"> |
||||
|
Easy configuring and convivial selling. </h3> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; "> |
||||
|
<div> |
||||
|
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/ecommerce-website/" target="_blank"> <img |
||||
|
src="https://www.cybrosys.com/images/odoo-index-industry-5.png" alt="Odoo Industry" |
||||
|
style=" border-radius: 100%;width:100%;"/> </a></div> |
||||
|
</div> |
||||
|
<div style="width:70%;float:left;"> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 0px;margin-left: 16px;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/ecommerce-website/" target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;"> |
||||
|
E-commerce & Website</a></h3> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px; font-family: 'Montserrat',sans-serif;"> |
||||
|
Mobile friendly, awe-inspiring product pages. </h3> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; "> |
||||
|
<div> |
||||
|
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/hotel-management-erp/" target="_blank"> |
||||
|
<img src="https://www.cybrosys.com/images/odoo-index-industry-6.png" alt="Odoo Industry" |
||||
|
style=" border-radius: 100%;width:100%;"/> </a></div> |
||||
|
</div> |
||||
|
<div style="width:70%;float:left;"> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/hotel-management-erp/" target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;"> |
||||
|
Hotel Management</a></h3> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px; font-family: 'Montserrat',sans-serif;"> |
||||
|
An all-inclusive hotel management application. </h3> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; "> |
||||
|
<div> |
||||
|
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/education-erp-software/" target="_blank"> |
||||
|
<img src="https://www.cybrosys.com/images/odoo-index-industry-7.png" alt="Odoo Industry" |
||||
|
style=" border-radius: 100%;width:100%;"/> </a></div> |
||||
|
</div> |
||||
|
<div style="width:70%;float:left;"> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/education-erp-software/" target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;"> |
||||
|
Education</a></h3> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px; font-family: 'Montserrat',sans-serif;"> |
||||
|
A Collaborative platform for educational management. </h3> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4 col-sm-6 col-xs-12" style=" margin-bottom: 10px; "> |
||||
|
<div> |
||||
|
<div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/service-management/" target="_blank"> <img |
||||
|
src="https://www.cybrosys.com/images/odoo-index-industry-8.png" alt="Odoo Industry" |
||||
|
style=" border-radius: 100%;width:100%;"/> </a></div> |
||||
|
</div> |
||||
|
<div style="width:70%;float:left;"> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> |
||||
|
<a href="https://www.cybrosys.com/odoo/industries/service-management/" target="_blank" |
||||
|
style="list-style: none; color:#000; text-decoration: none; font-family: 'Montserrat',sans-serif;"> |
||||
|
Service Management</a></h3> |
||||
|
<h3 class="oe_slogan" |
||||
|
style=" text-align: left;font-size: 12px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px; font-family: 'Montserrat',sans-serif;"> |
||||
|
Keep track of services and invoice accordingly. </h3> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</section> |
||||
|
<section class="oe_container" style="padding: 0% 0% 6% 0%;"> |
||||
|
<center> |
||||
|
<div class="col-md-12" style="margin: auto !important; |
||||
|
width: 70%; |
||||
|
padding: 30px;"> |
||||
|
<h2 style="font-weight: 600;text-align: center;width: 100%;">Need Any Help?</h2> |
||||
|
<hr style="margin-top: 0px;margin-bottom: 2%;border: 0;text-align: center;border-top: 3px solid #d21c22;width: 5%;"> |
||||
|
<h4 style="font-size:16px;"> If you have anything to share with us based on your use of this module, please |
||||
|
let us know. We are ready to offer our support. </h4> |
||||
|
<div class="col-md-6" style="float:left; padding:20px;"> |
||||
|
<h4><i class="fa fa-envelope"></i>Email us </h4> |
||||
|
<p>odoo@cybrosys.com / info@cybrosys.com</p> |
||||
|
</div> |
||||
|
<div class="col-md-6" style="float:left; padding:20px;"> |
||||
|
<h4><i class="fa fa-phone"></i> Contact Us </h4> |
||||
|
<a href="https://www.cybrosys.com/contact/" target="_blank"> www.cybrosys.com</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
</center> |
||||
|
</section> |
||||
|
<section class="oe_container" style="padding: 0% 0% 6% 0%;"> |
||||
|
<div class="oe_slogan" style="margin-bottom: 0px;"> |
||||
|
<div style=" display: flex; justify-content: center; flex-wrap: wrap; "> |
||||
|
</div> |
||||
|
<br> |
||||
|
<img src="https://www.cybrosys.com/images/logo.png" style="width: 190px; margin-bottom: 25px;margin-top: 30px;" |
||||
|
class="center-block"> |
||||
|
<div style=" display: flex; justify-content: center; flex-wrap: wrap; "><a href="https://twitter.com/cybrosys" |
||||
|
target="_blank"><i |
||||
|
class="fa fa-2x fa-twitter" |
||||
|
style="color:white;background: #00a0d1;width:35px;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a> |
||||
|
</td> |
||||
|
<a href="https://www.linkedin.com/company/cybrosys-technologies-pvt-ltd" target="_blank"><i |
||||
|
class="fa fa-2x fa-linkedin" |
||||
|
style="color:white;background: #31a3d6;width:35px;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a> |
||||
|
</td> |
||||
|
<a href="https://www.facebook.com/cybrosystechnologies" target="_blank"><i class="fa fa-2x fa-facebook" |
||||
|
style="color:white;background: #3b5998;width:35px; height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a> |
||||
|
</td> |
||||
|
<a href="https://in.pinterest.com/cybrosys" target="_blank"><i class="fa fa-2x fa-pinterest" |
||||
|
style="color:white;background: #ac0f18;width:35px;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a> |
||||
|
</td> |
||||
|
</div> |
||||
|
</div> |
||||
|
</section> |
||||
|
</div> |
@ -0,0 +1,59 @@ |
|||||
|
odoo.define('multi_barcodes_pos.product', function (require) { |
||||
|
"use strict"; |
||||
|
var rpc = require('web.rpc'); |
||||
|
var models = require('point_of_sale.models'); |
||||
|
var DB = require('point_of_sale.DB'); |
||||
|
models.load_fields("product.product", ['product_multi_barcodes']); |
||||
|
DB.include({ |
||||
|
init: function(options){ |
||||
|
this._super.apply(this, arguments); |
||||
|
|
||||
|
}, |
||||
|
add_products: function(products){ |
||||
|
var stored_categories = this.product_by_category_id; |
||||
|
if(!products instanceof Array){ |
||||
|
products = [products]; |
||||
|
} |
||||
|
for(var i = 0, len = products.length; i < len; i++){ |
||||
|
var product = products[i]; |
||||
|
var search_string = this._product_search_string(product); |
||||
|
var categ_id = product.pos_categ_id ? product.pos_categ_id[0] : this.root_category_id; |
||||
|
product.product_tmpl_id = product.product_tmpl_id[0]; |
||||
|
if(!stored_categories[categ_id]){ |
||||
|
stored_categories[categ_id] = []; |
||||
|
} |
||||
|
stored_categories[categ_id].push(product.id); |
||||
|
if(this.category_search_string[categ_id] === undefined){ |
||||
|
this.category_search_string[categ_id] = ''; |
||||
|
} |
||||
|
this.category_search_string[categ_id] += search_string; |
||||
|
var ancestors = this.get_category_ancestors_ids(categ_id) || []; |
||||
|
for(var j = 0, jlen = ancestors.length; j < jlen; j++){ |
||||
|
var ancestor = ancestors[j]; |
||||
|
if(! stored_categories[ancestor]){ |
||||
|
stored_categories[ancestor] = []; |
||||
|
} |
||||
|
stored_categories[ancestor].push(product.id); |
||||
|
if( this.category_search_string[ancestor] === undefined){ |
||||
|
this.category_search_string[ancestor] = ''; |
||||
|
} |
||||
|
this.category_search_string[ancestor] += search_string; |
||||
|
} |
||||
|
this.product_by_id[product.id] = product; |
||||
|
if(product.barcode){ |
||||
|
this.product_by_barcode[product.barcode] = product; |
||||
|
} |
||||
|
for(var t=0;t < product.product_multi_barcodes.length;t++){ |
||||
|
var self = this; |
||||
|
rpc.query({ |
||||
|
model: 'multi.barcode.products', |
||||
|
method: 'get_barcode_val', |
||||
|
args: [product.product_multi_barcodes[t], product.id], |
||||
|
}).then(function (barcode_val) { |
||||
|
self.product_by_barcode[barcode_val[0]] = self.product_by_id[barcode_val[1]]; |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
}); |
||||
|
}); |
@ -0,0 +1,9 @@ |
|||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||
|
<odoo> |
||||
|
<template id="float_price" inherit_id="web.assets_backend" name="Float Price"> |
||||
|
<xpath expr="." position="inside"> |
||||
|
<script type="text/javascript" |
||||
|
src="/multi_barcodes_pos/static/src/js/pos_scan.js"/> |
||||
|
</xpath> |
||||
|
</template> |
||||
|
</odoo> |
@ -0,0 +1,34 @@ |
|||||
|
<odoo> |
||||
|
<record model="ir.ui.view" id="product_template_form_view_supplier_ean13"> |
||||
|
<field name="name">product.template.ean13</field> |
||||
|
<field name="model">product.template</field> |
||||
|
<field name="inherit_id" ref="product.product_template_only_form_view"/> |
||||
|
<field name="arch" type="xml"> |
||||
|
<xpath expr="//page[@name='general_information']" position="after"> |
||||
|
<page string="Barcodes" attrs="{'invisible':[('product_variant_count', '>', 1)]}"> |
||||
|
<field name="template_multi_barcodes"> |
||||
|
<tree editable="bottom"> |
||||
|
<field name="multi_barcode"/> |
||||
|
</tree> |
||||
|
</field> |
||||
|
</page> |
||||
|
</xpath> |
||||
|
</field> |
||||
|
</record> |
||||
|
<record id="product_product_view_form_inherit_supplier_ean13" model="ir.ui.view"> |
||||
|
<field name="name">product.product.view.form.inherit.supplier.ean13</field> |
||||
|
<field name="model">product.product</field> |
||||
|
<field name="inherit_id" ref="product.product_normal_form_view"/> |
||||
|
<field name="arch" type="xml"> |
||||
|
<xpath expr="//page[@name='general_information']" position="after"> |
||||
|
<page string="Barcodes"> |
||||
|
<field name="product_multi_barcodes"> |
||||
|
<tree editable="bottom"> |
||||
|
<field name="multi_barcode"/> |
||||
|
</tree> |
||||
|
</field> |
||||
|
</page> |
||||
|
</xpath> |
||||
|
</field> |
||||
|
</record> |
||||
|
</odoo> |