diff --git a/import_lots/README.rst b/import_lots/README.rst new file mode 100755 index 000000000..59ab8112e --- /dev/null +++ b/import_lots/README.rst @@ -0,0 +1,39 @@ +.. image:: https://img.shields.io/badge/license-LGPL--3-green.svg + :target: https://www.gnu.org/licenses/lgpl.html + :alt: License: LGPL-3 + +Import Lot from Excel +===================== +Module Helps to Import Lots From Excel Sheet to Stock Move Line. + +Company +------- +* `Cybrosys Techno Solutions `__ + +Credits +------- +Developer: (V15) Gayathri V + (V16) Sabeel B +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/import_lots/__init__.py b/import_lots/__init__.py new file mode 100644 index 000000000..00cc715bc --- /dev/null +++ b/import_lots/__init__.py @@ -0,0 +1,24 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Gayathri V(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU LESSER +# GENERAL PUBLIC LICENSE (LGPL 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# +# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE +# (LGPL v3) along with this program. +# If not, see . +# +############################################################################### +from . import controllers +from . import models +from . import wizard diff --git a/import_lots/__manifest__.py b/import_lots/__manifest__.py new file mode 100644 index 000000000..e56b93e4e --- /dev/null +++ b/import_lots/__manifest__.py @@ -0,0 +1,45 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Gayathri V(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU LESSER +# GENERAL PUBLIC LICENSE (LGPL 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# +# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE +# (LGPL v3) along with this program. +# If not, see . +# +############################################################################### +{ + 'name': 'Import Lot from Excel', + 'version': '15.0.1.0.0', + 'category': 'Warehouse', + 'summary': 'Import lots and add while validating a purchase ' + 'order picking', + 'description': 'Module helps to import lots and add to products in' + 'purchase order line while validating a stock_picking ', + 'author': 'Cybrosys Techno Solution', + 'company': 'Cybrosys Techno Solutions', + 'maintainer': 'Cybrosys Techno Solution', + 'website': 'https://www.cybrosys.com', + 'depends': ['stock', 'purchase'], + 'data': [ + 'security/ir.model.access.csv', + 'views/stock_move_views.xml', + 'wizard/lots_attachment_view_form.xml' + ], + 'images': ['static/description/banner.png'], + 'license': 'LGPL-3', + 'installable': True, + 'auto-install': False, + 'application': False, +} diff --git a/import_lots/controllers/__init__.py b/import_lots/controllers/__init__.py new file mode 100644 index 000000000..57fedd008 --- /dev/null +++ b/import_lots/controllers/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Gayathri V(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU LESSER +# GENERAL PUBLIC LICENSE (LGPL 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# +# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE +# (LGPL v3) along with this program. +# If not, see . +# +############################################################################### +from . import import_lots diff --git a/import_lots/controllers/import_lots.py b/import_lots/controllers/import_lots.py new file mode 100644 index 000000000..b13e52e08 --- /dev/null +++ b/import_lots/controllers/import_lots.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Gayathri V(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU LESSER +# GENERAL PUBLIC LICENSE (LGPL 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# +# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE +# (LGPL v3) along with this program. +# If not, see . +# +############################################################################### +import base64 +import io +import openpyxl +from odoo import http + + +class ImportLots(http.Controller): + """Class to handle excel download""" + @http.route('/download/excel', type='http', auth="user") + def download_excel_file(self): + """Download sample Excel sheet""" + # Create a new workbook + wb = openpyxl.Workbook() + ws = wb.active + # Add headers + ws.append(['Lots', 'Product', 'Quantity']) + # Add sample data + data = [ + ('0000021', '[FURN_8220] Four Person Desk', 2.00), + ('0000022', '[FURN_8220] Four Person Desk', 3.00), + ('0000023', '[FURN_8900] Drawer Black', 6.00), + ] + for row in data: + ws.append(row) + # Save the workbook to a BytesIO buffer + buffer = io.BytesIO() + wb.save(buffer) + buffer.seek(0) + # Convert the buffer content to base64 + file_content_base64 = base64.b64encode(buffer.getvalue()) + return http.send_file(io.BytesIO(base64.b64decode(file_content_base64)), + filename='my_excel_file.xlsx', + as_attachment=True, + mimetype='application/vnd.' + 'openxmlformats-officedocument.' + 'spreadsheetml.sheet') diff --git a/import_lots/doc/RELEASE_NOTES.md b/import_lots/doc/RELEASE_NOTES.md new file mode 100644 index 000000000..ca2b59523 --- /dev/null +++ b/import_lots/doc/RELEASE_NOTES.md @@ -0,0 +1,6 @@ +## Module + +#### 05.07.2024 +#### Version 15.0.1.0.0 +#### ADD +- Initial commit for Import Lot from Excel diff --git a/import_lots/models/__init__.py b/import_lots/models/__init__.py new file mode 100644 index 000000000..48b32566f --- /dev/null +++ b/import_lots/models/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Gayathri V(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU LESSER +# GENERAL PUBLIC LICENSE (LGPL 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# +# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE +# (LGPL v3) along with this program. +# If not, see . +# +############################################################################### +from . import stock_move diff --git a/import_lots/models/stock_move.py b/import_lots/models/stock_move.py new file mode 100644 index 000000000..1500cfbfe --- /dev/null +++ b/import_lots/models/stock_move.py @@ -0,0 +1,46 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Gayathri V(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU LESSER +# GENERAL PUBLIC LICENSE (LGPL 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. +# +# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE +# (LGPL v3) along with this program. +# If not, see . +# +############################################################################### +from odoo import fields, models, _ + + +class StockMove(models.Model): + """Inheriting stock_move to add additional new field and function""" + _inherit = 'stock.move' + + attachment = fields.Binary(string="Upload") + + def action_return_lot_wizard(self): + """Return lot_attachment Wizard""" + return { + 'name': _('Import Lots'), + 'type': 'ir.actions.act_window', + 'view_mode': 'form', + 'views': [(False, 'form')], + 'res_model': 'lot.attachment', + 'target': 'new', + 'context': { + 'default_product_id': self.product_id.id, + 'default_demanded_quantity': self.product_uom_qty, + 'default_picking_id': self.picking_id.id, + 'default_move_id': self.id + }, + } diff --git a/import_lots/security/ir.model.access.csv b/import_lots/security/ir.model.access.csv new file mode 100644 index 000000000..4fe2259d8 --- /dev/null +++ b/import_lots/security/ir.model.access.csv @@ -0,0 +1,2 @@ +id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink +access_lot_attachment,access.lot.attachment,model_lot_attachment,base.group_user,1,1,1,1 diff --git a/import_lots/static/description/assets/icons/capture (1).png b/import_lots/static/description/assets/icons/capture (1).png new file mode 100644 index 000000000..8824deafc Binary files /dev/null and b/import_lots/static/description/assets/icons/capture (1).png differ diff --git a/import_lots/static/description/assets/icons/check.png b/import_lots/static/description/assets/icons/check.png new file mode 100644 index 000000000..c8e85f51d Binary files /dev/null and b/import_lots/static/description/assets/icons/check.png differ diff --git a/import_lots/static/description/assets/icons/chevron.png b/import_lots/static/description/assets/icons/chevron.png new file mode 100644 index 000000000..2089293d6 Binary files /dev/null and b/import_lots/static/description/assets/icons/chevron.png differ diff --git a/import_lots/static/description/assets/icons/cogs.png b/import_lots/static/description/assets/icons/cogs.png new file mode 100644 index 000000000..95d0bad62 Binary files /dev/null and b/import_lots/static/description/assets/icons/cogs.png differ diff --git a/import_lots/static/description/assets/icons/consultation.png b/import_lots/static/description/assets/icons/consultation.png new file mode 100644 index 000000000..8319d4baa Binary files /dev/null and b/import_lots/static/description/assets/icons/consultation.png differ diff --git a/import_lots/static/description/assets/icons/ecom-black.png b/import_lots/static/description/assets/icons/ecom-black.png new file mode 100644 index 000000000..a9385ff13 Binary files /dev/null and b/import_lots/static/description/assets/icons/ecom-black.png differ diff --git a/import_lots/static/description/assets/icons/education-black.png b/import_lots/static/description/assets/icons/education-black.png new file mode 100644 index 000000000..3eb09b27b Binary files /dev/null and b/import_lots/static/description/assets/icons/education-black.png differ diff --git a/import_lots/static/description/assets/icons/hotel-black.png b/import_lots/static/description/assets/icons/hotel-black.png new file mode 100644 index 000000000..130f613be Binary files /dev/null and b/import_lots/static/description/assets/icons/hotel-black.png differ diff --git a/import_lots/static/description/assets/icons/img.png b/import_lots/static/description/assets/icons/img.png new file mode 100644 index 000000000..70197f477 Binary files /dev/null and b/import_lots/static/description/assets/icons/img.png differ diff --git a/import_lots/static/description/assets/icons/license.png b/import_lots/static/description/assets/icons/license.png new file mode 100644 index 000000000..a5869797e Binary files /dev/null and b/import_lots/static/description/assets/icons/license.png differ diff --git a/import_lots/static/description/assets/icons/lifebuoy.png b/import_lots/static/description/assets/icons/lifebuoy.png new file mode 100644 index 000000000..658d56ccc Binary files /dev/null and b/import_lots/static/description/assets/icons/lifebuoy.png differ diff --git a/import_lots/static/description/assets/icons/logo.png b/import_lots/static/description/assets/icons/logo.png new file mode 100644 index 000000000..478462d3e Binary files /dev/null and b/import_lots/static/description/assets/icons/logo.png differ diff --git a/import_lots/static/description/assets/icons/manufacturing-black.png b/import_lots/static/description/assets/icons/manufacturing-black.png new file mode 100644 index 000000000..697eb0e9f Binary files /dev/null and b/import_lots/static/description/assets/icons/manufacturing-black.png differ diff --git a/import_lots/static/description/assets/icons/photo-capture.png b/import_lots/static/description/assets/icons/photo-capture.png new file mode 100644 index 000000000..06c111758 Binary files /dev/null and b/import_lots/static/description/assets/icons/photo-capture.png differ diff --git a/import_lots/static/description/assets/icons/pos-black.png b/import_lots/static/description/assets/icons/pos-black.png new file mode 100644 index 000000000..97c0f90c1 Binary files /dev/null and b/import_lots/static/description/assets/icons/pos-black.png differ diff --git a/import_lots/static/description/assets/icons/puzzle.png b/import_lots/static/description/assets/icons/puzzle.png new file mode 100644 index 000000000..65cf854e7 Binary files /dev/null and b/import_lots/static/description/assets/icons/puzzle.png differ diff --git a/import_lots/static/description/assets/icons/restaurant-black.png b/import_lots/static/description/assets/icons/restaurant-black.png new file mode 100644 index 000000000..4a35eb939 Binary files /dev/null and b/import_lots/static/description/assets/icons/restaurant-black.png differ diff --git a/import_lots/static/description/assets/icons/service-black.png b/import_lots/static/description/assets/icons/service-black.png new file mode 100644 index 000000000..301ab51cb Binary files /dev/null and b/import_lots/static/description/assets/icons/service-black.png differ diff --git a/import_lots/static/description/assets/icons/trading-black.png b/import_lots/static/description/assets/icons/trading-black.png new file mode 100644 index 000000000..9398ba2f1 Binary files /dev/null and b/import_lots/static/description/assets/icons/trading-black.png differ diff --git a/import_lots/static/description/assets/icons/training.png b/import_lots/static/description/assets/icons/training.png new file mode 100644 index 000000000..884ca024d Binary files /dev/null and b/import_lots/static/description/assets/icons/training.png differ diff --git a/import_lots/static/description/assets/icons/update.png b/import_lots/static/description/assets/icons/update.png new file mode 100644 index 000000000..ecbc5a01a Binary files /dev/null and b/import_lots/static/description/assets/icons/update.png differ diff --git a/import_lots/static/description/assets/icons/user.png b/import_lots/static/description/assets/icons/user.png new file mode 100644 index 000000000..6ffb23d9f Binary files /dev/null and b/import_lots/static/description/assets/icons/user.png differ diff --git a/import_lots/static/description/assets/icons/wrench.png b/import_lots/static/description/assets/icons/wrench.png new file mode 100644 index 000000000..6c04dea0f Binary files /dev/null and b/import_lots/static/description/assets/icons/wrench.png differ diff --git a/import_lots/static/description/assets/misc/Cybrosys R.png b/import_lots/static/description/assets/misc/Cybrosys R.png new file mode 100644 index 000000000..da4058087 Binary files /dev/null and b/import_lots/static/description/assets/misc/Cybrosys R.png differ diff --git a/import_lots/static/description/assets/misc/categories.png b/import_lots/static/description/assets/misc/categories.png new file mode 100644 index 000000000..bedf1e0b1 Binary files /dev/null and b/import_lots/static/description/assets/misc/categories.png differ diff --git a/import_lots/static/description/assets/misc/check-box.png b/import_lots/static/description/assets/misc/check-box.png new file mode 100644 index 000000000..42caf24b9 Binary files /dev/null and b/import_lots/static/description/assets/misc/check-box.png differ diff --git a/import_lots/static/description/assets/misc/compass.png b/import_lots/static/description/assets/misc/compass.png new file mode 100644 index 000000000..d5fed8faa Binary files /dev/null and b/import_lots/static/description/assets/misc/compass.png differ diff --git a/import_lots/static/description/assets/misc/corporate.png b/import_lots/static/description/assets/misc/corporate.png new file mode 100644 index 000000000..2eb13edbf Binary files /dev/null and b/import_lots/static/description/assets/misc/corporate.png differ diff --git a/import_lots/static/description/assets/misc/customer-support.png b/import_lots/static/description/assets/misc/customer-support.png new file mode 100644 index 000000000..79efc72ed Binary files /dev/null and b/import_lots/static/description/assets/misc/customer-support.png differ diff --git a/import_lots/static/description/assets/misc/cybrosys-logo.png b/import_lots/static/description/assets/misc/cybrosys-logo.png new file mode 100644 index 000000000..cc3cc0ccf Binary files /dev/null and b/import_lots/static/description/assets/misc/cybrosys-logo.png differ diff --git a/import_lots/static/description/assets/misc/email.svg b/import_lots/static/description/assets/misc/email.svg new file mode 100644 index 000000000..15291cdc3 --- /dev/null +++ b/import_lots/static/description/assets/misc/email.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/import_lots/static/description/assets/misc/features.png b/import_lots/static/description/assets/misc/features.png new file mode 100644 index 000000000..b41769f77 Binary files /dev/null and b/import_lots/static/description/assets/misc/features.png differ diff --git a/import_lots/static/description/assets/misc/logo.png b/import_lots/static/description/assets/misc/logo.png new file mode 100644 index 000000000..478462d3e Binary files /dev/null and b/import_lots/static/description/assets/misc/logo.png differ diff --git a/import_lots/static/description/assets/misc/phone.svg b/import_lots/static/description/assets/misc/phone.svg new file mode 100644 index 000000000..b7bd7f251 --- /dev/null +++ b/import_lots/static/description/assets/misc/phone.svg @@ -0,0 +1,3 @@ + + + diff --git a/import_lots/static/description/assets/misc/pictures.png b/import_lots/static/description/assets/misc/pictures.png new file mode 100644 index 000000000..56d255fe9 Binary files /dev/null and b/import_lots/static/description/assets/misc/pictures.png differ diff --git a/import_lots/static/description/assets/misc/pie-chart.png b/import_lots/static/description/assets/misc/pie-chart.png new file mode 100644 index 000000000..426e05244 Binary files /dev/null and b/import_lots/static/description/assets/misc/pie-chart.png differ diff --git a/import_lots/static/description/assets/misc/right-arrow.png b/import_lots/static/description/assets/misc/right-arrow.png new file mode 100644 index 000000000..730984a06 Binary files /dev/null and b/import_lots/static/description/assets/misc/right-arrow.png differ diff --git a/import_lots/static/description/assets/misc/star (1) 2.svg b/import_lots/static/description/assets/misc/star (1) 2.svg new file mode 100644 index 000000000..5ae9f507a --- /dev/null +++ b/import_lots/static/description/assets/misc/star (1) 2.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/import_lots/static/description/assets/misc/star.png b/import_lots/static/description/assets/misc/star.png new file mode 100644 index 000000000..2eb9ab29f Binary files /dev/null and b/import_lots/static/description/assets/misc/star.png differ diff --git a/import_lots/static/description/assets/misc/support (1) 1.svg b/import_lots/static/description/assets/misc/support (1) 1.svg new file mode 100644 index 000000000..7d37a8f30 --- /dev/null +++ b/import_lots/static/description/assets/misc/support (1) 1.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/import_lots/static/description/assets/misc/support-email.svg b/import_lots/static/description/assets/misc/support-email.svg new file mode 100644 index 000000000..eb70370d6 --- /dev/null +++ b/import_lots/static/description/assets/misc/support-email.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/import_lots/static/description/assets/misc/support.png b/import_lots/static/description/assets/misc/support.png new file mode 100644 index 000000000..4f18b8b82 Binary files /dev/null and b/import_lots/static/description/assets/misc/support.png differ diff --git a/import_lots/static/description/assets/misc/tick-mark.svg b/import_lots/static/description/assets/misc/tick-mark.svg new file mode 100644 index 000000000..2dbb40187 --- /dev/null +++ b/import_lots/static/description/assets/misc/tick-mark.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/import_lots/static/description/assets/misc/whatsapp 1.svg b/import_lots/static/description/assets/misc/whatsapp 1.svg new file mode 100644 index 000000000..0bfaf8fc6 --- /dev/null +++ b/import_lots/static/description/assets/misc/whatsapp 1.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/import_lots/static/description/assets/misc/whatsapp.png b/import_lots/static/description/assets/misc/whatsapp.png new file mode 100644 index 000000000..d513a5356 Binary files /dev/null and b/import_lots/static/description/assets/misc/whatsapp.png differ diff --git a/import_lots/static/description/assets/misc/whatsapp.svg b/import_lots/static/description/assets/misc/whatsapp.svg new file mode 100644 index 000000000..b618aea1d --- /dev/null +++ b/import_lots/static/description/assets/misc/whatsapp.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/import_lots/static/description/assets/modules/1.gif b/import_lots/static/description/assets/modules/1.gif new file mode 100644 index 000000000..8ac32db03 Binary files /dev/null and b/import_lots/static/description/assets/modules/1.gif differ diff --git a/import_lots/static/description/assets/modules/1.png b/import_lots/static/description/assets/modules/1.png new file mode 100644 index 000000000..958601ec8 Binary files /dev/null and b/import_lots/static/description/assets/modules/1.png differ diff --git a/import_lots/static/description/assets/modules/111.png b/import_lots/static/description/assets/modules/111.png new file mode 100644 index 000000000..4a9e2bd5d Binary files /dev/null and b/import_lots/static/description/assets/modules/111.png differ diff --git a/import_lots/static/description/assets/modules/2.jpg b/import_lots/static/description/assets/modules/2.jpg new file mode 100644 index 000000000..a1dc39c89 Binary files /dev/null and b/import_lots/static/description/assets/modules/2.jpg differ diff --git a/import_lots/static/description/assets/modules/2.png b/import_lots/static/description/assets/modules/2.png new file mode 100644 index 000000000..773a67300 Binary files /dev/null and b/import_lots/static/description/assets/modules/2.png differ diff --git a/import_lots/static/description/assets/modules/222.png b/import_lots/static/description/assets/modules/222.png new file mode 100644 index 000000000..b03792fc3 Binary files /dev/null and b/import_lots/static/description/assets/modules/222.png differ diff --git a/import_lots/static/description/assets/modules/3.png b/import_lots/static/description/assets/modules/3.png new file mode 100644 index 000000000..2a52f4d41 Binary files /dev/null and b/import_lots/static/description/assets/modules/3.png differ diff --git a/import_lots/static/description/assets/modules/333.png b/import_lots/static/description/assets/modules/333.png new file mode 100644 index 000000000..15b141248 Binary files /dev/null and b/import_lots/static/description/assets/modules/333.png differ diff --git a/import_lots/static/description/assets/modules/4.jpg b/import_lots/static/description/assets/modules/4.jpg new file mode 100644 index 000000000..ed175b076 Binary files /dev/null and b/import_lots/static/description/assets/modules/4.jpg differ diff --git a/import_lots/static/description/assets/modules/4.png b/import_lots/static/description/assets/modules/4.png new file mode 100644 index 000000000..923a3beea Binary files /dev/null and b/import_lots/static/description/assets/modules/4.png differ diff --git a/import_lots/static/description/assets/modules/444.png b/import_lots/static/description/assets/modules/444.png new file mode 100644 index 000000000..c61ac9571 Binary files /dev/null and b/import_lots/static/description/assets/modules/444.png differ diff --git a/import_lots/static/description/assets/modules/5.png b/import_lots/static/description/assets/modules/5.png new file mode 100644 index 000000000..dacb9817d Binary files /dev/null and b/import_lots/static/description/assets/modules/5.png differ diff --git a/import_lots/static/description/assets/modules/555.png b/import_lots/static/description/assets/modules/555.png new file mode 100644 index 000000000..2a722d66e Binary files /dev/null and b/import_lots/static/description/assets/modules/555.png differ diff --git a/import_lots/static/description/assets/modules/6.png b/import_lots/static/description/assets/modules/6.png new file mode 100644 index 000000000..be55ec3ed Binary files /dev/null and b/import_lots/static/description/assets/modules/6.png differ diff --git a/import_lots/static/description/assets/modules/666.png b/import_lots/static/description/assets/modules/666.png new file mode 100644 index 000000000..3391446ba Binary files /dev/null and b/import_lots/static/description/assets/modules/666.png differ diff --git a/import_lots/static/description/assets/modules/banner.jpg b/import_lots/static/description/assets/modules/banner.jpg new file mode 100644 index 000000000..67c7f7062 Binary files /dev/null and b/import_lots/static/description/assets/modules/banner.jpg differ diff --git a/import_lots/static/description/assets/modules/banner.png b/import_lots/static/description/assets/modules/banner.png new file mode 100644 index 000000000..e339ff769 Binary files /dev/null and b/import_lots/static/description/assets/modules/banner.png differ diff --git a/import_lots/static/description/assets/modules/budget_image.png b/import_lots/static/description/assets/modules/budget_image.png new file mode 100755 index 000000000..b50130c7d Binary files /dev/null and b/import_lots/static/description/assets/modules/budget_image.png differ diff --git a/import_lots/static/description/assets/modules/credit_image.png b/import_lots/static/description/assets/modules/credit_image.png new file mode 100755 index 000000000..3ad04ecfd Binary files /dev/null and b/import_lots/static/description/assets/modules/credit_image.png differ diff --git a/import_lots/static/description/assets/modules/crm.png b/import_lots/static/description/assets/modules/crm.png new file mode 100644 index 000000000..25ed3e0b6 Binary files /dev/null and b/import_lots/static/description/assets/modules/crm.png differ diff --git a/import_lots/static/description/assets/modules/employee.png b/import_lots/static/description/assets/modules/employee.png new file mode 100644 index 000000000..c0aa245ce Binary files /dev/null and b/import_lots/static/description/assets/modules/employee.png differ diff --git a/import_lots/static/description/assets/modules/employee_image.png b/import_lots/static/description/assets/modules/employee_image.png new file mode 100755 index 000000000..30ad58232 Binary files /dev/null and b/import_lots/static/description/assets/modules/employee_image.png differ diff --git a/import_lots/static/description/assets/modules/export_image.png b/import_lots/static/description/assets/modules/export_image.png new file mode 100755 index 000000000..492980ad0 Binary files /dev/null and b/import_lots/static/description/assets/modules/export_image.png differ diff --git a/import_lots/static/description/assets/modules/gantt_image.png b/import_lots/static/description/assets/modules/gantt_image.png new file mode 100755 index 000000000..1ae7cfe3b Binary files /dev/null and b/import_lots/static/description/assets/modules/gantt_image.png differ diff --git a/import_lots/static/description/assets/modules/hr.png b/import_lots/static/description/assets/modules/hr.png new file mode 100644 index 000000000..ed11bd818 Binary files /dev/null and b/import_lots/static/description/assets/modules/hr.png differ diff --git a/import_lots/static/description/assets/modules/l1.png b/import_lots/static/description/assets/modules/l1.png new file mode 100644 index 000000000..a7484c979 Binary files /dev/null and b/import_lots/static/description/assets/modules/l1.png differ diff --git a/import_lots/static/description/assets/modules/l2.png b/import_lots/static/description/assets/modules/l2.png new file mode 100644 index 000000000..7bf38faa3 Binary files /dev/null and b/import_lots/static/description/assets/modules/l2.png differ diff --git a/import_lots/static/description/assets/modules/l3.png b/import_lots/static/description/assets/modules/l3.png new file mode 100644 index 000000000..02cfead1f Binary files /dev/null and b/import_lots/static/description/assets/modules/l3.png differ diff --git a/import_lots/static/description/assets/modules/l4.png b/import_lots/static/description/assets/modules/l4.png new file mode 100644 index 000000000..d5e3446d3 Binary files /dev/null and b/import_lots/static/description/assets/modules/l4.png differ diff --git a/import_lots/static/description/assets/modules/l5.png b/import_lots/static/description/assets/modules/l5.png new file mode 100644 index 000000000..dae81f450 Binary files /dev/null and b/import_lots/static/description/assets/modules/l5.png differ diff --git a/import_lots/static/description/assets/modules/l6.png b/import_lots/static/description/assets/modules/l6.png new file mode 100644 index 000000000..f7e31c1e0 Binary files /dev/null and b/import_lots/static/description/assets/modules/l6.png differ diff --git a/import_lots/static/description/assets/modules/quotation_image.png b/import_lots/static/description/assets/modules/quotation_image.png new file mode 100755 index 000000000..499b1a72f Binary files /dev/null and b/import_lots/static/description/assets/modules/quotation_image.png differ diff --git a/import_lots/static/description/assets/modules/sales.png b/import_lots/static/description/assets/modules/sales.png new file mode 100644 index 000000000..8658f1826 Binary files /dev/null and b/import_lots/static/description/assets/modules/sales.png differ diff --git a/import_lots/static/description/assets/modules/sm01.png b/import_lots/static/description/assets/modules/sm01.png new file mode 100644 index 000000000..9de1176ad Binary files /dev/null and b/import_lots/static/description/assets/modules/sm01.png differ diff --git a/import_lots/static/description/assets/modules/sm02.jpg b/import_lots/static/description/assets/modules/sm02.jpg new file mode 100644 index 000000000..22cfedd70 Binary files /dev/null and b/import_lots/static/description/assets/modules/sm02.jpg differ diff --git a/import_lots/static/description/assets/modules/sm03.png b/import_lots/static/description/assets/modules/sm03.png new file mode 100644 index 000000000..cca5c5845 Binary files /dev/null and b/import_lots/static/description/assets/modules/sm03.png differ diff --git a/import_lots/static/description/assets/modules/sm04.png b/import_lots/static/description/assets/modules/sm04.png new file mode 100644 index 000000000..42c89de23 Binary files /dev/null and b/import_lots/static/description/assets/modules/sm04.png differ diff --git a/import_lots/static/description/assets/modules/sm05.jpg b/import_lots/static/description/assets/modules/sm05.jpg new file mode 100644 index 000000000..9a9c416e0 Binary files /dev/null and b/import_lots/static/description/assets/modules/sm05.jpg differ diff --git a/import_lots/static/description/assets/screenshots/1.png b/import_lots/static/description/assets/screenshots/1.png new file mode 100644 index 000000000..4c7297929 Binary files /dev/null and b/import_lots/static/description/assets/screenshots/1.png differ diff --git a/import_lots/static/description/assets/screenshots/10.png b/import_lots/static/description/assets/screenshots/10.png new file mode 100644 index 000000000..94fa0008a Binary files /dev/null and b/import_lots/static/description/assets/screenshots/10.png differ diff --git a/import_lots/static/description/assets/screenshots/11.png b/import_lots/static/description/assets/screenshots/11.png new file mode 100644 index 000000000..8785aff08 Binary files /dev/null and b/import_lots/static/description/assets/screenshots/11.png differ diff --git a/import_lots/static/description/assets/screenshots/12.png b/import_lots/static/description/assets/screenshots/12.png new file mode 100644 index 000000000..a390a1566 Binary files /dev/null and b/import_lots/static/description/assets/screenshots/12.png differ diff --git a/import_lots/static/description/assets/screenshots/13.png b/import_lots/static/description/assets/screenshots/13.png new file mode 100644 index 000000000..8f0b32880 Binary files /dev/null and b/import_lots/static/description/assets/screenshots/13.png differ diff --git a/import_lots/static/description/assets/screenshots/14.png b/import_lots/static/description/assets/screenshots/14.png new file mode 100644 index 000000000..149949203 Binary files /dev/null and b/import_lots/static/description/assets/screenshots/14.png differ diff --git a/import_lots/static/description/assets/screenshots/2.png b/import_lots/static/description/assets/screenshots/2.png new file mode 100644 index 000000000..dcbdd6a11 Binary files /dev/null and b/import_lots/static/description/assets/screenshots/2.png differ diff --git a/import_lots/static/description/assets/screenshots/3.png b/import_lots/static/description/assets/screenshots/3.png new file mode 100644 index 000000000..156321f73 Binary files /dev/null and b/import_lots/static/description/assets/screenshots/3.png differ diff --git a/import_lots/static/description/assets/screenshots/4.png b/import_lots/static/description/assets/screenshots/4.png new file mode 100644 index 000000000..00f06be08 Binary files /dev/null and b/import_lots/static/description/assets/screenshots/4.png differ diff --git a/import_lots/static/description/assets/screenshots/5.png b/import_lots/static/description/assets/screenshots/5.png new file mode 100644 index 000000000..64d88826a Binary files /dev/null and b/import_lots/static/description/assets/screenshots/5.png differ diff --git a/import_lots/static/description/assets/screenshots/6.png b/import_lots/static/description/assets/screenshots/6.png new file mode 100644 index 000000000..869086ec6 Binary files /dev/null and b/import_lots/static/description/assets/screenshots/6.png differ diff --git a/import_lots/static/description/assets/screenshots/7.png b/import_lots/static/description/assets/screenshots/7.png new file mode 100644 index 000000000..c8cfefbfc Binary files /dev/null and b/import_lots/static/description/assets/screenshots/7.png differ diff --git a/import_lots/static/description/assets/screenshots/8.png b/import_lots/static/description/assets/screenshots/8.png new file mode 100644 index 000000000..7a3fb5e89 Binary files /dev/null and b/import_lots/static/description/assets/screenshots/8.png differ diff --git a/import_lots/static/description/assets/screenshots/9.png b/import_lots/static/description/assets/screenshots/9.png new file mode 100644 index 000000000..160b6a99a Binary files /dev/null and b/import_lots/static/description/assets/screenshots/9.png differ diff --git a/import_lots/static/description/assets/screenshots/hero.gif b/import_lots/static/description/assets/screenshots/hero.gif new file mode 100644 index 000000000..aa6ae8910 Binary files /dev/null and b/import_lots/static/description/assets/screenshots/hero.gif differ diff --git a/import_lots/static/description/banner.png b/import_lots/static/description/banner.png new file mode 100644 index 000000000..3b781b863 Binary files /dev/null and b/import_lots/static/description/banner.png differ diff --git a/import_lots/static/description/icon.png b/import_lots/static/description/icon.png new file mode 100644 index 000000000..f9ca2fdd1 Binary files /dev/null and b/import_lots/static/description/icon.png differ diff --git a/import_lots/static/description/index.html b/import_lots/static/description/index.html new file mode 100755 index 000000000..3328db2b9 --- /dev/null +++ b/import_lots/static/description/index.html @@ -0,0 +1,730 @@ +
+
+
+
+ +
+
+
+ Community +
+
+ Enterprise +
+
+
+
+
+ +
+
+
+

+ Import Lot from Excel

+

+ Module Allows to Import Lots in Picking-Receipt and Transfer + from Excel File. +

+ +
+
+ + + +
+
+

+ Overview +

+
+ +
+

+ + By automating the import of lots, this module eliminates the + need for manual entry, reducing the risk of errors and improving + overall productivity. Users can quickly import lots in bulk from + vendors during incoming shipments and for internal transfer + processes, saving valuable time and streamlining operations. + With bulk import capabilities tailored specifically for lots, + users can efficiently manage inventory without the hassle of + manual data entry. This allows them to focus on more critical + tasks, confident that lot management is handled efficiently. By + reducing the time spent on manual data entry and ensuring + accuracy in lot tracking, businesses can improve their overall + efficiency and productivity in warehouse management. +

+
+

+
+
+
+
+ + Import Lots From Excel Sheet. +
+
+
+
+ + Total Quantity Validation. +
+
+
+
+ + Same Lot Name Validation. +
+
+
+
+ + Supports Community and Enterprise. +
+
+
+
+
+ + +
+
+

+ Screenshots +

+
+
+

+ Enable 'Lots & Serial Numbers'.

+

+ Enable lots option under inventory from res_config_settings. +

+ +
+ +
+

+ Change Product Tracking.

+

+ Choose/Create a product with tracking by lots. +

+ +
+ +
+

+ Create a Picking.

+

+ Create a new picking for the corresponding product with the operation type set to 'Receipt'. +

+ +
+ +
+

+ Click on The Button to Add Lots.

+ +
+ +
+

+ Click on The Button 'Import Lots from Sheet'.

+ +
+ +
+

+ Click on 'Download Sample File' to Download a Sample Excel Sheet.

+ +
+ +
+

+ Downloaded Sample File.

+

+ User can edit/refer the sample sheet to import the lot(Use the same headers). +

+ +
+ +
+

+ Upload an Excel Sheet.

+ + +
+
+

+ Click on 'Import' to Import Lots.

+ + + +
+
+

+ Validation for used Lots

+ +
+
+

+ Import Validation

+ +
+
+ +
+
+

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?

+
+
+
+ + +
+ +
+ + +
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+
+
+ + +
+ \ No newline at end of file diff --git a/import_lots/static/description/v15-hero.gif b/import_lots/static/description/v15-hero.gif new file mode 100644 index 000000000..aa6ae8910 Binary files /dev/null and b/import_lots/static/description/v15-hero.gif differ diff --git a/import_lots/static/src/import_lots.js b/import_lots/static/src/import_lots.js new file mode 100644 index 000000000..8d7546f8a --- /dev/null +++ b/import_lots/static/src/import_lots.js @@ -0,0 +1,40 @@ +/** @odoo-module **/ +import { Dialog } from '@web/core/dialog/dialog'; +import { useService } from "@web/core/utils/hooks"; +import { registry } from "@web/core/registry"; +import { Component, useRef, xml, onMounted } from "@odoo/owl"; +import { GenerateDialog } from "@stock/widgets/generate_serial"; +import { patch } from "@web/core/utils/patch"; + + +class ImportLots extends Component { + static template = xml``; + setup(){ + this.action = useService("action"); + this.orm = useService("orm"); + } + get isVisible() { + return this.props.record.data.state !== 'done'; + } + openDialog(ev){ + this.action.doAction({ + type: 'ir.actions.act_window', + name: 'Import Lots', + res_model: 'lot.attachment', + view_mode: 'form', + views: [ + [false, 'form'] + ], + target: 'new', + context:{ + default_product_id: this.props.record.data.product_id[0], + default_demanded_quantity: this.props.record.data.product_uom_qty, + default_picking_id: this.props.record.data.picking_id[0], + default_move_id: this.props.record.data.move_line_ids._config.context.default_move_id + } + }) + } +} +registry.category("view_widgets").add("import_lot", {component: ImportLots}); + + diff --git a/import_lots/views/stock_move_views.xml b/import_lots/views/stock_move_views.xml new file mode 100644 index 000000000..699cf8d8d --- /dev/null +++ b/import_lots/views/stock_move_views.xml @@ -0,0 +1,14 @@ + + + + + stock.move.view.form.inherit.import.lot + stock.move + + + +