diff --git a/cancel_landed_cost_odoo/README.rst b/cancel_landed_cost_odoo/README.rst new file mode 100755 index 000000000..a4a3cc3ba --- /dev/null +++ b/cancel_landed_cost_odoo/README.rst @@ -0,0 +1,46 @@ +.. image:: https://img.shields.io/badge/license-AGPL--3-blue.svg + :target: https://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 + +Cancel Landed Cost +================== +This module helps to cancel Landed Costs and allows you to cancel multiple Landed Costs from the tree view. There are three ways in which you can cancel the Landed Costs. + +Configuration +============= +* No additional configurations needed + +Company +------- +* `Cybrosys Techno Solutions `__ + +License +------- +Affero General Public License v3.0 (AGPL v3) +(https://www.gnu.org/licenses/agpl-3.0-standalone.html) + +Credits +------- +Developer: Aysha Shalin (V15), 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/cancel_landed_cost_odoo/__init__.py b/cancel_landed_cost_odoo/__init__.py new file mode 100644 index 000000000..5b1283021 --- /dev/null +++ b/cancel_landed_cost_odoo/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Aysha Shalin (odoo@cybrosys.info) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from . import models diff --git a/cancel_landed_cost_odoo/__manifest__.py b/cancel_landed_cost_odoo/__manifest__.py new file mode 100644 index 000000000..14520e818 --- /dev/null +++ b/cancel_landed_cost_odoo/__manifest__.py @@ -0,0 +1,47 @@ +# -*- coding: utf-8 -*- +################################################################################ +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies(). +# Author: Anfas Faisal K (odoo@cybrosys.info) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +################################################################################ +{ + 'name': "Cancel Landed Cost", + 'version': "15.0.1.0.0", + 'category': 'Purchases,Accounting,Warehouse', + 'summary': 'This module helps to cancel landed costs', + 'description': 'This module helps to cancel Landed Costs and allows you ' + 'to cancel multiple Landed Costs from the tree view. There ' + 'are three ways in which you can cancel the Landed Costs-' + 'Cancel Only, Cancel and Reset to Draft,Cancel and Delete', + 'author': 'Cybrosys Techno Solutions', + 'company': 'Cybrosys Techno Solutions', + 'maintainer': 'Cybrosys Techno Solutions', + 'website': 'https://www.cybrosys.com', + 'depends': ['account', 'purchase', 'stock_landed_costs'], + 'data': [ + 'security/cancel_landed_cost_odoo_groups.xml', + 'data/stock_landed_cost_data.xml', + 'views/stock_landed_cost_views.xml', + 'views/res_config_settings_views.xml', + ], + 'images': ['static/description/banner.png'], + 'license': 'AGPL-3', + 'installable': True, + 'auto_install': False, + 'application': False, +} diff --git a/cancel_landed_cost_odoo/data/stock_landed_cost_data.xml b/cancel_landed_cost_odoo/data/stock_landed_cost_data.xml new file mode 100644 index 000000000..a13da6a81 --- /dev/null +++ b/cancel_landed_cost_odoo/data/stock_landed_cost_data.xml @@ -0,0 +1,38 @@ + + + + + Cancel + + + + list,form + code + action = records.action_landed_cost_cancel() + + + + Cancel and Reset Draft + + + + list,form + code + action = records.action_landed_cost_reset_and_cancel() + + + + + Cancel and Delete + + + + list,form + code + action = records.action_landed_cost_cancel_and_delete() + + + diff --git a/cancel_landed_cost_odoo/doc/RELEASE_NOTES.md b/cancel_landed_cost_odoo/doc/RELEASE_NOTES.md new file mode 100644 index 000000000..64ad5b612 --- /dev/null +++ b/cancel_landed_cost_odoo/doc/RELEASE_NOTES.md @@ -0,0 +1,6 @@ +## Module + +#### 04.07.2024 +#### Version 15.0.1.0.0 +##### ADD +- Initial commit for Cancel Landed Cost diff --git a/cancel_landed_cost_odoo/models/__init__.py b/cancel_landed_cost_odoo/models/__init__.py new file mode 100644 index 000000000..e62261d2f --- /dev/null +++ b/cancel_landed_cost_odoo/models/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Aysha Shalin (odoo@cybrosys.info) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from . import res_config_settings +from . import stock_landed_cost diff --git a/cancel_landed_cost_odoo/models/res_config_settings.py b/cancel_landed_cost_odoo/models/res_config_settings.py new file mode 100644 index 000000000..18161e3bc --- /dev/null +++ b/cancel_landed_cost_odoo/models/res_config_settings.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Aysha Shalin (odoo@cybrosys.info) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from odoo import fields, models + + +class ResConfigSettings(models.TransientModel): + """ Model for managing the configuration settings for canceling landed + costs. """ + _inherit = "res.config.settings" + + land_cost_cancel_modes = fields.Selection([ + ('cancel', 'Cancel'), + ('cancel_draft', 'Cancel and Reset to Draft'), + ('cancel_delete', 'Cancel and Delete'), + ], string='Operation Type', default='cancel', + help="Select the operation to perform when canceling a landed cost.", + config_parameter='cancel_landed_cost_odoo.land_cost_cancel_modes') diff --git a/cancel_landed_cost_odoo/models/stock_landed_cost.py b/cancel_landed_cost_odoo/models/stock_landed_cost.py new file mode 100644 index 000000000..af3831534 --- /dev/null +++ b/cancel_landed_cost_odoo/models/stock_landed_cost.py @@ -0,0 +1,231 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Aysha Shalin (odoo@cybrosys.info) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from odoo import fields, models + + +class StockLandedCost(models.Model): + """ Inherits 'stock.landed.cost' model to add additional functionality + related to cancelling and resetting landed cost records. + + Methods: + action_landed_cost_cancel: Cancels the landed cost record by deleting + its associated accounting entries, stock valuation, and changes state + to 'cancelled. + + action_landed_cost_reset_and_cancel: Resets the landed cost record by + deleting its associated accounting entries and stock valuation. + It changes the state back to 'draft'. + + action_landed_cost_cancel_and_delete: Deletes the landed cost record by + deleting its associated accounting entries and stock valuation. It also + deletes the Landed cost record. + + action_landed_cost_cancel_form: Cancels the landed cost record and + deletes its associated accounting entries and stock valuation. + It also creates two entries to revert back to the original cost price, + which are also deleted in the process. + """ + _inherit = 'stock.landed.cost' + + is_cancel = fields.Boolean(string='Cancel', default=False, + help='If the user clicks the "Cancel" button' + 'once, it will hide the button and make' + 'it invisible.') + + def action_landed_cost_cancel(self): + """ Cancels the landed cost record by deleting its associated + accounting entries, stock valuation, and changes state to 'cancelled'. + + Additionally, it reverts the original cost price by creating two + entries, which are also deleted in the process. + """ + for rec in self: + for line in rec.valuation_adjustment_lines.filtered( + lambda line: line.move_id): + product = line.move_id.product_id + if product.cost_method == 'average': + original_price = product.standard_price + new_price = product.standard_price - line.additional_landed_cost + product.write({'standard_price': new_price}) + stock_valuation_layer = self.env['stock.valuation.layer'] \ + .search([('product_id', '=', product.id), + ('description', '=', f'Product value manually ' + f'modified (from {original_price} to {new_price})')], + limit=1) + if stock_valuation_layer: + stock_valuation_layer.account_move_id.button_draft() + stock_valuation_layer.account_move_id.sudo().unlink() + stock_valuation_layer.sudo().unlink() + if rec.account_move_id: + account_id = rec.account_move_id + account_move_ids = account_id.line_ids + if account_move_ids: + account_id.sudo().write( + {'state': 'draft', 'name': 'Delete Sequence Number'}) + account_move_ids.sudo().unlink() + account_id.sudo().unlink() + if rec.valuation_adjustment_lines: + rec.valuation_adjustment_lines.unlink() + if rec.stock_valuation_layer_ids: + rec.stock_valuation_layer_ids.sudo().unlink() + rec.write({'state': 'cancel'}) + + def action_landed_cost_reset_and_cancel(self): + """ Resets the landed cost record by deleting its associated accounting + entries and stock valuation. It changes the state back to 'draft'. + + Additionally, it reverts the original cost price by creating two + entries, which are also deleted in the process. + """ + for rec in self: + for line in rec.valuation_adjustment_lines.filtered( + lambda line: line.move_id): + product = line.move_id.product_id + if product.cost_method == 'average': + original_price = product.standard_price + new_price = product.standard_price - line.additional_landed_cost + product.write({'standard_price': new_price}) + stock_valuation_layer = self.env['stock.valuation.layer'] \ + .search([('product_id', '=', product.id), + ('description', '=', f'Product value manually ' + f'modified (from {original_price} to {new_price})')], + limit=1) + if stock_valuation_layer: + stock_valuation_layer.account_move_id.button_draft() + stock_valuation_layer.account_move_id.sudo().unlink() + stock_valuation_layer.sudo().unlink() + if rec.account_move_id: + account_id = rec.account_move_id + account_move_ids = account_id.line_ids + if account_move_ids: + account_id.sudo().write( + {'state': 'draft', 'name': 'Delete Sequence Number'}) + account_move_ids.sudo().unlink() + account_id.sudo().unlink() + if rec.valuation_adjustment_lines: + rec.valuation_adjustment_lines.unlink() + if rec.stock_valuation_layer_ids: + rec.sudo().stock_valuation_layer_ids.unlink() + rec.write({'state': 'draft'}) + + def action_landed_cost_cancel_and_delete(self): + """ Deletes the landed cost record by deleting its associated accounting + entries and stock valuation. It also deletes the Landed cost record. + + Additionally, it reverts the original cost price by creating two + entries, which are also deleted in the process. + """ + for rec in self: + for line in rec.valuation_adjustment_lines.filtered( + lambda line: line.move_id): + product = line.move_id.product_id + if product.cost_method == 'average': + original_price = product.standard_price + new_price = product.standard_price - line.additional_landed_cost + product.write({'standard_price': new_price}) + stock_valuation_layer = self.env['stock.valuation.layer'] \ + .search([('product_id', '=', product.id), + ('description', '=', f'Product value manually ' + f'modified (from {original_price} to {new_price})')], + limit=1) + if stock_valuation_layer: + stock_valuation_layer.account_move_id.button_draft() + stock_valuation_layer.account_move_id.sudo().unlink() + stock_valuation_layer.sudo().unlink() + if rec.account_move_id: + account_id = rec.account_move_id + account_move_ids = account_id.line_ids + if account_move_ids: + account_id.sudo().write( + {'state': 'draft', 'name': 'Delete Sequence Number'}) + account_move_ids.sudo().unlink() + account_id.sudo().unlink() + if rec.valuation_adjustment_lines: + rec.valuation_adjustment_lines.unlink() + if rec.stock_valuation_layer_ids: + rec.sudo().stock_valuation_layer_ids.unlink() + rec.write({'state': 'cancel'}) + rec.unlink() + + def action_landed_cost_cancel_form(self): + """ Cancels the landed cost record and deletes its associated + accounting entries and stock valuation. It also creates two entries + to revert back to the original cost price, which are also deleted in + the process. + + The specific action performed depends on the value of the + 'cancel_landed_cost_odoo.land_cost_cancel_modes' + configuration parameter: + - 'cancel': Changes the landed cost state to 'cancel' and sets + the 'is_cancel' flag to True. + - 'cancel_draft': Changes the landed cost state to 'draft' + and sets the 'is_cancel' flag to False. + - 'cancel_delete': Deletes the landed cost record and returns an + action to open the Landed Cost tree view. + """ + for rec in self: + for line in rec.valuation_adjustment_lines.filtered( + lambda line: line.move_id): + product = line.move_id.product_id + if product.cost_method == 'average': + original_price = product.standard_price + new_price = product.standard_price - line.additional_landed_cost + product.write({'standard_price': new_price}) + stock_valuation_layer = self.env['stock.valuation.layer'] \ + .search([('product_id', '=', product.id), + ('description', '=', f'Product value manually ' + f'modified (from {original_price} to {new_price})')], + limit=1) + if stock_valuation_layer: + stock_valuation_layer.account_move_id.button_draft() + stock_valuation_layer.account_move_id.sudo().unlink() + stock_valuation_layer.sudo().unlink() + if self.account_move_id: + account_id = self.account_move_id + account_move_ids = account_id.line_ids + if account_move_ids: + account_id.sudo().write( + {'state': 'draft', 'name': 'Delete Sequence Number'}) + account_move_ids.sudo().unlink() + account_id.sudo().unlink() + if self.valuation_adjustment_lines: + self.valuation_adjustment_lines.unlink() + if self.stock_valuation_layer_ids: + self.sudo().stock_valuation_layer_ids.unlink() + landed_mode = self.env['ir.config_parameter'].sudo().get_param( + 'cancel_landed_cost_odoo.land_cost_cancel_modes') + if landed_mode == 'cancel': + self.write({'state': 'cancel'}) + self.is_cancel = True + if landed_mode == 'cancel_draft': + self.write({'state': 'draft'}) + self.is_cancel = False + if landed_mode == 'cancel_delete': + self.write({'state': 'cancel'}) + self.unlink() + return { + 'name': 'Landed Cost', + 'type': 'ir.actions.act_window', + 'res_model': 'stock.landed.cost', + 'view_mode': 'tree,form', + 'target': 'current' + } diff --git a/cancel_landed_cost_odoo/security/cancel_landed_cost_odoo_groups.xml b/cancel_landed_cost_odoo/security/cancel_landed_cost_odoo_groups.xml new file mode 100644 index 000000000..860a6c63b --- /dev/null +++ b/cancel_landed_cost_odoo/security/cancel_landed_cost_odoo_groups.xml @@ -0,0 +1,8 @@ + + + + + Landed Cost Cancel Features + + + diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/check.png b/cancel_landed_cost_odoo/static/description/assets/icons/check.png new file mode 100644 index 000000000..c8e85f51d Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/check.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/chevron.png b/cancel_landed_cost_odoo/static/description/assets/icons/chevron.png new file mode 100644 index 000000000..2089293d6 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/chevron.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/cogs.png b/cancel_landed_cost_odoo/static/description/assets/icons/cogs.png new file mode 100644 index 000000000..95d0bad62 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/cogs.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/consultation.png b/cancel_landed_cost_odoo/static/description/assets/icons/consultation.png new file mode 100644 index 000000000..8319d4baa Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/consultation.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/ecom-black.png b/cancel_landed_cost_odoo/static/description/assets/icons/ecom-black.png new file mode 100644 index 000000000..a9385ff13 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/ecom-black.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/education-black.png b/cancel_landed_cost_odoo/static/description/assets/icons/education-black.png new file mode 100644 index 000000000..3eb09b27b Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/education-black.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/hotel-black.png b/cancel_landed_cost_odoo/static/description/assets/icons/hotel-black.png new file mode 100644 index 000000000..130f613be Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/hotel-black.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/license.png b/cancel_landed_cost_odoo/static/description/assets/icons/license.png new file mode 100644 index 000000000..a5869797e Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/license.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/lifebuoy.png b/cancel_landed_cost_odoo/static/description/assets/icons/lifebuoy.png new file mode 100644 index 000000000..658d56ccc Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/lifebuoy.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/manufacturing-black.png b/cancel_landed_cost_odoo/static/description/assets/icons/manufacturing-black.png new file mode 100644 index 000000000..697eb0e9f Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/manufacturing-black.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/pos-black.png b/cancel_landed_cost_odoo/static/description/assets/icons/pos-black.png new file mode 100644 index 000000000..97c0f90c1 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/pos-black.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/puzzle.png b/cancel_landed_cost_odoo/static/description/assets/icons/puzzle.png new file mode 100644 index 000000000..65cf854e7 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/puzzle.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/restaurant-black.png b/cancel_landed_cost_odoo/static/description/assets/icons/restaurant-black.png new file mode 100644 index 000000000..4a35eb939 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/restaurant-black.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/service-black.png b/cancel_landed_cost_odoo/static/description/assets/icons/service-black.png new file mode 100644 index 000000000..301ab51cb Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/service-black.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/trading-black.png b/cancel_landed_cost_odoo/static/description/assets/icons/trading-black.png new file mode 100644 index 000000000..9398ba2f1 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/trading-black.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/training.png b/cancel_landed_cost_odoo/static/description/assets/icons/training.png new file mode 100644 index 000000000..884ca024d Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/training.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/update.png b/cancel_landed_cost_odoo/static/description/assets/icons/update.png new file mode 100644 index 000000000..ecbc5a01a Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/update.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/user.png b/cancel_landed_cost_odoo/static/description/assets/icons/user.png new file mode 100644 index 000000000..6ffb23d9f Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/user.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/icons/wrench.png b/cancel_landed_cost_odoo/static/description/assets/icons/wrench.png new file mode 100644 index 000000000..6c04dea0f Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/icons/wrench.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/categories.png b/cancel_landed_cost_odoo/static/description/assets/misc/categories.png new file mode 100644 index 000000000..bedf1e0b1 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/categories.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/check-box.png b/cancel_landed_cost_odoo/static/description/assets/misc/check-box.png new file mode 100644 index 000000000..42caf24b9 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/check-box.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/compass.png b/cancel_landed_cost_odoo/static/description/assets/misc/compass.png new file mode 100644 index 000000000..d5fed8faa Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/compass.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/corporate.png b/cancel_landed_cost_odoo/static/description/assets/misc/corporate.png new file mode 100644 index 000000000..2eb13edbf Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/corporate.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/customer-support.png b/cancel_landed_cost_odoo/static/description/assets/misc/customer-support.png new file mode 100644 index 000000000..79efc72ed Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/customer-support.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/cybrosys-logo.png b/cancel_landed_cost_odoo/static/description/assets/misc/cybrosys-logo.png new file mode 100644 index 000000000..cc3cc0ccf Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/cybrosys-logo.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/features.png b/cancel_landed_cost_odoo/static/description/assets/misc/features.png new file mode 100644 index 000000000..b41769f77 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/features.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/logo.png b/cancel_landed_cost_odoo/static/description/assets/misc/logo.png new file mode 100644 index 000000000..478462d3e Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/logo.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/pictures.png b/cancel_landed_cost_odoo/static/description/assets/misc/pictures.png new file mode 100644 index 000000000..56d255fe9 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/pictures.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/pie-chart.png b/cancel_landed_cost_odoo/static/description/assets/misc/pie-chart.png new file mode 100644 index 000000000..426e05244 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/pie-chart.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/right-arrow.png b/cancel_landed_cost_odoo/static/description/assets/misc/right-arrow.png new file mode 100644 index 000000000..730984a06 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/right-arrow.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/star.png b/cancel_landed_cost_odoo/static/description/assets/misc/star.png new file mode 100644 index 000000000..2eb9ab29f Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/star.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/support.png b/cancel_landed_cost_odoo/static/description/assets/misc/support.png new file mode 100644 index 000000000..4f18b8b82 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/support.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/misc/whatsapp.png b/cancel_landed_cost_odoo/static/description/assets/misc/whatsapp.png new file mode 100644 index 000000000..d513a5356 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/misc/whatsapp.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/modules/advance_cash_flow_statements.png b/cancel_landed_cost_odoo/static/description/assets/modules/advance_cash_flow_statements.png new file mode 100644 index 000000000..8e96a077d Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/modules/advance_cash_flow_statements.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/modules/automatic_invoice_and_post.png b/cancel_landed_cost_odoo/static/description/assets/modules/automatic_invoice_and_post.png new file mode 100644 index 000000000..3042804ad Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/modules/automatic_invoice_and_post.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/modules/invoice_format_editor.png b/cancel_landed_cost_odoo/static/description/assets/modules/invoice_format_editor.png new file mode 100644 index 000000000..99da8f434 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/modules/invoice_format_editor.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/modules/invoice_merging.png b/cancel_landed_cost_odoo/static/description/assets/modules/invoice_merging.png new file mode 100644 index 000000000..61b312b49 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/modules/invoice_merging.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/modules/invoice_multi_approval.png b/cancel_landed_cost_odoo/static/description/assets/modules/invoice_multi_approval.png new file mode 100644 index 000000000..54691ce70 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/modules/invoice_multi_approval.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/modules/thermal_invoice_report.png b/cancel_landed_cost_odoo/static/description/assets/modules/thermal_invoice_report.png new file mode 100644 index 000000000..c9d4feeed Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/modules/thermal_invoice_report.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/1.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/1.png new file mode 100644 index 000000000..c210f71f3 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/1.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/10.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/10.png new file mode 100644 index 000000000..e288ce3ce Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/10.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/11.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/11.png new file mode 100644 index 000000000..a703d4526 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/11.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/12.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/12.png new file mode 100644 index 000000000..569836ef1 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/12.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/13.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/13.png new file mode 100644 index 000000000..274dd7487 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/13.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/14.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/14.png new file mode 100644 index 000000000..cd887db4e Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/14.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/15.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/15.png new file mode 100644 index 000000000..233a682cc Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/15.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/16.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/16.png new file mode 100644 index 000000000..d39cfd4bf Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/16.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/17.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/17.png new file mode 100644 index 000000000..54a2e6f35 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/17.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/18.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/18.png new file mode 100644 index 000000000..c8b50633b Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/18.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/19.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/19.png new file mode 100644 index 000000000..ae112b45e Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/19.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/2.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/2.png new file mode 100644 index 000000000..d42c99eb6 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/2.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/20.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/20.png new file mode 100644 index 000000000..261b8ec77 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/20.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/21.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/21.png new file mode 100644 index 000000000..905c404f0 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/21.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/22.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/22.png new file mode 100644 index 000000000..807bc054f Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/22.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/3.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/3.png new file mode 100644 index 000000000..9a0f43050 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/3.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/4.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/4.png new file mode 100644 index 000000000..acbd6839c Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/4.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/5.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/5.png new file mode 100644 index 000000000..a9cfabcd1 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/5.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/6.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/6.png new file mode 100644 index 000000000..2086a8655 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/6.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/7.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/7.png new file mode 100644 index 000000000..dc9704f2b Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/7.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/8.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/8.png new file mode 100644 index 000000000..4dbb21394 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/8.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/9.png b/cancel_landed_cost_odoo/static/description/assets/screenshots/9.png new file mode 100644 index 000000000..8b23faedf Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/9.png differ diff --git a/cancel_landed_cost_odoo/static/description/assets/screenshots/hero.gif b/cancel_landed_cost_odoo/static/description/assets/screenshots/hero.gif new file mode 100644 index 000000000..38835f774 Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/assets/screenshots/hero.gif differ diff --git a/cancel_landed_cost_odoo/static/description/banner.png b/cancel_landed_cost_odoo/static/description/banner.png new file mode 100644 index 000000000..9fcf121ba Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/banner.png differ diff --git a/cancel_landed_cost_odoo/static/description/icon.png b/cancel_landed_cost_odoo/static/description/icon.png new file mode 100644 index 000000000..a3875d84f Binary files /dev/null and b/cancel_landed_cost_odoo/static/description/icon.png differ diff --git a/cancel_landed_cost_odoo/static/description/index.html b/cancel_landed_cost_odoo/static/description/index.html new file mode 100644 index 000000000..ceea85914 --- /dev/null +++ b/cancel_landed_cost_odoo/static/description/index.html @@ -0,0 +1,817 @@ +
+ +
+ +
+
+ Community +
+
+ Enterprise +
+
+ Odoo.sh +
+
+
+ +
+
+
+ +

+ Cancel Landed Cost +

+

+ This Module Allows to Cancel Multiple Landed Costs from the Tree View And Provides Multiple ways in which you can Cancel the Landed Costs. +

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

+ Explore This + Module

+
+ + + + +
+
+ +
+

+ Overview +

+
+
+
+ This module helps to cancel Landed Costs and allows you to cancel + multiple Landed Costs from the tree view. There are three ways in which + you can cancel the Landed Costs. +
    +
  • + 1) Cancel Only: When you Cancel the Landed cost then the landed + cost is cancelled and the state is changed to Cancelled. +
  • +
  • + 2) Cancel and Reset to Draft: When you cancel landed costs, + First Landed Costs is Cancelled and then Reset to the Draft + state. +
  • +
  • + 3) Cancel and Delete: When you Cancel the Landed costs then + First Landed Cost is Cancelled and then Landed Cost will be + deleted. +
  • +
+
+
+ + + +
+
+ +
+

+ Features +

+
+
+
+
+ + This module helps to cancel Landed Costs and allows you to cancel multiple Landed Costs from the tree view. + There are three ways in which you can cancel the Landed Costs. + +
+
+ + Deleting landed costs entirely can be helpful in cases of error or irrelevance. +
+
+ + Resetting landed costs to draft status enables changes to be made and resubmission for review. + +
+
+ + Canceling landed costs with journal entries ensures accurate accounting record-keeping. +
+
+ + These features help businesses streamline inventory and expense management. +
+
+ + Accurate tracking of landed costs can improve inventory management. +
+
+
+ + + +
+
+ +
+

+ Screenshots +

+
+ +
+
+
+

+ Enable the "Landed Cost Cancel Features" to Cancel Landed Costs. +

+ +
+ +
+

+ To Cancel the Landed Costs, Select your Preferred Cancellation Method for the Landed Cost Option, and save the Changes. +

+ +
+
+

+ Landed Cost Creation(Odoo Standard). +

+ +
+ +
+

+ Stock Valuation Of Product when Landed Cost is Created. +

+ +
+ +
+

+ The Journal Entry Of the Landed Cost(Odoo Standard). +

+ +
+ +
+

+ Press the "CANCEL" Button to Cancel Landed Cost. +

+ +
+ +
+

+ When you Cancel the Landed Cost, it is Cancelled and the State is + changed to "CANCELLED" and Valuation Adjustments Lines are Deleted. +

+ +
+ +
+

+ Corresponding Stock Valuation is Deleted from the Records. +

+ +
+ +
+

+ Corresponding Journal Entries are also Deleted. +

+ +
+ +
+

+ If you need to Cancel the Landed Costs and Reset to the Draft State, + Enable "Cancel and Reset to Draft". +

+ +
+ +
+

+ Press The "CANCEL" Button to Cancel Landed Costs". + +

+
+ +
+

+ When you Cancel the Landed Costs, the Landed Cost will be Reset and the + State will change back to "DRAFT". +

+ +
+ +
+

+ If you need to Cancel & Delete the Landed Costs then, + Choose "Cancel and Delete" Option. +

+ +
+ +
+

+ Press the "CANCEL" Button to Cancel Landed Costs. +

+ +
+
+

+ After "CANCEL" the Corresponding Landed Cost will be Deleted. +

+ +
+
+

+ We can Cancel Multiple Landed Costs from the Tree View. +

+ +
+ +
+

+ Select the Landed Cost you need to Cancel and click + "Cancel" Button. +

+ +
+ +
+

+ All Selected Landed Costs are Cancelled. +

+ +
+
+

+ Select the Landed Cost you need To Cancel&Reset and + click "Cancel and Reset Draft" Button. +

+ +
+ +
+

+ All Selected Landed Costs Changed to Draft State. +

+ +
+ +
+

+ Select the Landed Costs you need to Cancel&Delete and + Click "Cancel and Delete" Button. +

+ +
+ +
+

+ All Landed Costs Will Be Deleted After Cancelled. +

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

+ Related + Products +

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

+ Our Services +

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

+ Our + Industries +

+
+ +
+
+
+
+ +
+ Trading +
+

+ Easily procure + and + sell your products

+
+
+ +
+
+ +
+ POS +
+

+ Easy + configuration + and convivial experience

+
+
+ +
+
+ +
+ Education +
+

+ A platform for + educational management

+
+
+ +
+
+ +
+ Manufacturing +
+

+ Plan, track and + schedule your operations

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

+ Mobile + friendly, + awe-inspiring product pages

+
+
+ +
+
+ +
+ Service Management +
+

+ Keep track of + services and invoice

+
+
+ +
+
+ +
+ Restaurant +
+

+ Run your bar or + restaurant methodically

+
+
+ +
+
+ +
+ Hotel Management +
+

+ An + all-inclusive + hotel management application

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

+ Support +

+
+
+
+
+
+
+ +
+
+

Need Help?

+

Got questions or need + help? Get in touch.

+ +

+ odoo@cybrosys.com

+
+
+
+
+
+
+
+ +
+
+

WhatsApp

+

Say hi to us on + WhatsApp!

+ +

+ +91 86068 + 27707

+
+
+
+
+
+
+
+ +
+
+
+ + + + \ No newline at end of file diff --git a/cancel_landed_cost_odoo/views/res_config_settings_views.xml b/cancel_landed_cost_odoo/views/res_config_settings_views.xml new file mode 100644 index 000000000..915054776 --- /dev/null +++ b/cancel_landed_cost_odoo/views/res_config_settings_views.xml @@ -0,0 +1,35 @@ + + + + + res.config.settings.view.form.inherit.cancel.landed.cost.odoo + res.config.settings + + + +

+ Landed Cost Cancel Configuration +

+
+
+
+
+ Operation type: +
+ Options to Cancel Landed Cost +
+
+
+ +
+
+
+
+
+
+
+
+
+
diff --git a/cancel_landed_cost_odoo/views/stock_landed_cost_views.xml b/cancel_landed_cost_odoo/views/stock_landed_cost_views.xml new file mode 100644 index 000000000..12a7d9600 --- /dev/null +++ b/cancel_landed_cost_odoo/views/stock_landed_cost_views.xml @@ -0,0 +1,22 @@ + + + + + stock.landed.cost.view.form.inherit.cancel.landed.cost.odoo + stock.landed.cost + + + +