diff --git a/sale_purchase_previous_product_cost/README.rst b/sale_purchase_previous_product_cost/README.rst new file mode 100644 index 000000000..ee4554cd0 --- /dev/null +++ b/sale_purchase_previous_product_cost/README.rst @@ -0,0 +1,46 @@ +Previous Sale/Purchase Product Rates V14 +======================================== +This module enables a view to see all previous sale/purchase product rates of selected customer. + + +Configuration +============= +* No additional configurations needed + +Company +------- +* `Cybrosys Techno Solutions `__ + +Credits +------- +* Developers: Nilamr Shereef V10 @cybrosys, odoo@cybrosys.com + Niyas Raphy V11 @cybrosys, odoo@cybrosys.com + Vinaya S B V12 odoo@cybrosys.com + Mehjabin Farsana P V13 @cybrosys,odoo@cybrosys.com + Minhaj T V14 @cybrosys,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/sale_purchase_previous_product_cost/__init__.py b/sale_purchase_previous_product_cost/__init__.py new file mode 100644 index 000000000..1a2cfbd50 --- /dev/null +++ b/sale_purchase_previous_product_cost/__init__.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +################################################################################### +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2018-TODAY Cybrosys Technologies ().# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################### + +from . import models diff --git a/sale_purchase_previous_product_cost/__manifest__.py b/sale_purchase_previous_product_cost/__manifest__.py new file mode 100644 index 000000000..c80ba762a --- /dev/null +++ b/sale_purchase_previous_product_cost/__manifest__.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- +################################################################################### +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2018-TODAY Cybrosys Technologies ().# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################### + +{ + "name": "Previous Sale/Purchase Product Rates", + 'version': '14.0.1.0.0', + "summary": """Provide Product's Previous Sale & Purchase Price History for Partner.""", + "description": """Provide product's previous prices in product master.""", + "category": "Sales", + 'author': 'Cybrosys Techno Solutions', + 'website': "https://www.cybrosys.com", + 'company': 'Cybrosys Techno Solutions', + "depends": ['sale', 'sale_management', 'purchase'], + "data": ['views/sale_order_view.xml'], + 'images': ['static/description/banner.png'], + 'license': 'AGPL-3', + 'installable': True, + 'auto_install': False, + 'application': False, +} diff --git a/sale_purchase_previous_product_cost/doc/RELEASE_NOTES.md b/sale_purchase_previous_product_cost/doc/RELEASE_NOTES.md new file mode 100644 index 000000000..3dfdcc94c --- /dev/null +++ b/sale_purchase_previous_product_cost/doc/RELEASE_NOTES.md @@ -0,0 +1,9 @@ +## Module + +#### 13.10.2020 +#### Version 14.0.1.0.0 +#### ADD +Initial Commit Previous Sale/Purchase Product Rates + + + diff --git a/sale_purchase_previous_product_cost/models/__init__.py b/sale_purchase_previous_product_cost/models/__init__.py new file mode 100644 index 000000000..29e51a52e --- /dev/null +++ b/sale_purchase_previous_product_cost/models/__init__.py @@ -0,0 +1,3 @@ +# -*- encoding: utf-8 -*- + +from . import sale_order diff --git a/sale_purchase_previous_product_cost/models/sale_order.py b/sale_purchase_previous_product_cost/models/sale_order.py new file mode 100644 index 000000000..fa1bf8aed --- /dev/null +++ b/sale_purchase_previous_product_cost/models/sale_order.py @@ -0,0 +1,97 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2019-TODAY Cybrosys Technologies(). +# Author: Nilamr Shereef(odoo@cybrosys.com) +# +# 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 models, api, fields +from odoo.exceptions import UserError + + +class SaleOrderLine(models.Model): + _inherit = 'sale.order.line' + + sale_date = fields.Datetime(comodel_name='sale.order', string='Sale Date', + related='order_id.date_order', store=True) + + +class PurchaseOrderLine(models.Model): + _inherit = 'purchase.order.line' + + @api.onchange('product_id') + def set_partner(self): + for each in self: + if each.product_id: + each.product_id.write({'order_partner_id': each.order_id.partner_id.id}) + + purchase_date = fields.Datetime(comodel_name='purchase.order', string='Purchase Date', + related='order_id.date_order', store=True) + + +class ProductTemplate(models.Model): + _inherit = "product.product" + + order_partner_id = fields.Many2one('res.partner', string="Partner") + + def action_sale_product_prices(self): + rel_view_id = self.env.ref( + 'sale_purchase_previous_product_cost.last_sale_product_prices_view') + if self.order_partner_id.id: + sale_lines = self.env['sale.order.line'].search([('product_id', '=', self.id), + ('order_partner_id', '=', self.order_partner_id.id)], + order='create_date DESC').mapped('id') + else: + sale_lines = self.env['sale.order.line'].search([('product_id', '=', self.id)], + order='create_date DESC').mapped('id') + if not sale_lines: + raise UserError("No sales history found.!") + else: + return { + 'domain': [('id', 'in', sale_lines)], + 'views': [(rel_view_id.id, 'tree')], + 'name': 'Sales History', + 'res_model': 'sale.order.line', + 'view_id': False, + 'type': 'ir.actions.act_window', + } + + def action_purchase_product_prices(self): + rel_view_id = self.env.ref( + 'sale_purchase_previous_product_cost.last_sale_product_purchase_prices_view') + if self.order_partner_id.id: + purchase_lines = self.env['purchase.order.line'].search([('product_id', '=', self.id), + ('partner_id', '=', self.order_partner_id.id)], + order='create_date DESC').mapped('id') + else: + purchase_lines = self.env['purchase.order.line'].search([('product_id', '=', self.id)], + order='create_date DESC').mapped('id') + if not purchase_lines: + raise UserError("No purchase history found.!") + else: + return { + 'domain': [('id', 'in', purchase_lines)], + 'views': [(rel_view_id.id, 'tree')], + 'name': 'Purchase History', + 'res_model': 'purchase.order.line', + 'view_id': False, + 'type': 'ir.actions.act_window', + } + + + + diff --git a/sale_purchase_previous_product_cost/static/description/banner.png b/sale_purchase_previous_product_cost/static/description/banner.png new file mode 100644 index 000000000..ffb622db0 Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/banner.png differ diff --git a/sale_purchase_previous_product_cost/static/description/icon.png b/sale_purchase_previous_product_cost/static/description/icon.png new file mode 100644 index 000000000..7d3772d6b Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/icon.png differ diff --git a/sale_purchase_previous_product_cost/static/description/images/banner_lifeline_for_task.jpeg b/sale_purchase_previous_product_cost/static/description/images/banner_lifeline_for_task.jpeg new file mode 100644 index 000000000..4a467ea22 Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/banner_lifeline_for_task.jpeg differ diff --git a/sale_purchase_previous_product_cost/static/description/images/banner_project_report_xls_pdf.png b/sale_purchase_previous_product_cost/static/description/images/banner_project_report_xls_pdf.png new file mode 100644 index 000000000..3c430a7eb Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/banner_project_report_xls_pdf.png differ diff --git a/sale_purchase_previous_product_cost/static/description/images/banner_project_status_report.png b/sale_purchase_previous_product_cost/static/description/images/banner_project_status_report.png new file mode 100644 index 000000000..d1b689710 Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/banner_project_status_report.png differ diff --git a/sale_purchase_previous_product_cost/static/description/images/banner_subtask.jpeg b/sale_purchase_previous_product_cost/static/description/images/banner_subtask.jpeg new file mode 100644 index 000000000..f2b224110 Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/banner_subtask.jpeg differ diff --git a/sale_purchase_previous_product_cost/static/description/images/banner_task_deadline_reminder.jpeg b/sale_purchase_previous_product_cost/static/description/images/banner_task_deadline_reminder.jpeg new file mode 100644 index 000000000..998679818 Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/banner_task_deadline_reminder.jpeg differ diff --git a/sale_purchase_previous_product_cost/static/description/images/banner_task_statusbar.jpeg b/sale_purchase_previous_product_cost/static/description/images/banner_task_statusbar.jpeg new file mode 100644 index 000000000..2c57cbb7b Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/banner_task_statusbar.jpeg differ diff --git a/sale_purchase_previous_product_cost/static/description/images/checked.png b/sale_purchase_previous_product_cost/static/description/images/checked.png new file mode 100644 index 000000000..578cedb80 Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/checked.png differ diff --git a/sale_purchase_previous_product_cost/static/description/images/cybrosys.png b/sale_purchase_previous_product_cost/static/description/images/cybrosys.png new file mode 100644 index 000000000..d76b5bafb Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/cybrosys.png differ diff --git a/sale_purchase_previous_product_cost/static/description/images/po.png b/sale_purchase_previous_product_cost/static/description/images/po.png new file mode 100644 index 000000000..44d60c08a Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/po.png differ diff --git a/sale_purchase_previous_product_cost/static/description/images/po1.png b/sale_purchase_previous_product_cost/static/description/images/po1.png new file mode 100644 index 000000000..5d2ed1b9f Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/po1.png differ diff --git a/sale_purchase_previous_product_cost/static/description/images/po_order.png b/sale_purchase_previous_product_cost/static/description/images/po_order.png new file mode 100644 index 000000000..69da5fcd7 Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/po_order.png differ diff --git a/sale_purchase_previous_product_cost/static/description/images/prev_pur1.png b/sale_purchase_previous_product_cost/static/description/images/prev_pur1.png new file mode 100644 index 000000000..db4cedf5f Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/prev_pur1.png differ diff --git a/sale_purchase_previous_product_cost/static/description/images/prev_sale_rate.png b/sale_purchase_previous_product_cost/static/description/images/prev_sale_rate.png new file mode 100644 index 000000000..1a4119f2f Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/prev_sale_rate.png differ diff --git a/sale_purchase_previous_product_cost/static/description/images/product form.png b/sale_purchase_previous_product_cost/static/description/images/product form.png new file mode 100644 index 000000000..248f761d9 Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/product form.png differ diff --git a/sale_purchase_previous_product_cost/static/description/images/so.png b/sale_purchase_previous_product_cost/static/description/images/so.png new file mode 100644 index 000000000..51c429152 Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/so.png differ diff --git a/sale_purchase_previous_product_cost/static/description/images/so_order.png b/sale_purchase_previous_product_cost/static/description/images/so_order.png new file mode 100644 index 000000000..8f2c2d10b Binary files /dev/null and b/sale_purchase_previous_product_cost/static/description/images/so_order.png differ diff --git a/sale_purchase_previous_product_cost/static/description/index.html b/sale_purchase_previous_product_cost/static/description/index.html new file mode 100644 index 000000000..1d8b7ccf1 --- /dev/null +++ b/sale_purchase_previous_product_cost/static/description/index.html @@ -0,0 +1,321 @@ +
cybrosys-logo
+
+
+
+

Previous Sale/Purchase Product Rates

+

Provide Product's Previous Sale & Purchase Price History

+
+

Key Highlights

+
    +
  • Previous sale price history
  • +
  • Previous purchase price history
  • +
  • Provide product's previous prices in product page
  • + +
+
+ +
+
+
+ +
+
+
+
+ +
+
+ +

Overview

+
+

+ This module enables a view to see all previous sale/purchase product rates of selected customer. It will help you to manage your orders according to these price history. You can see these option from sale/purchase form.

+
+
+ +

Task DeadLine Reminder

+
+
    +
  • + Previous sale price history +
  • + +
  • + Previous purchase price history +
  • + +
  • + Provide product's previous prices in product page +
  • +
+
+ +
+
+

Screenshots

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

Suggested Products

+
+ +
+
+

Our Service

+
+ +
+
+
+

Our Industries

+
+ +
+
+
+ +
+
+

Trading

+

Easily procure and sell your products.

+
+
+
+
+ +
+
+

Manufacturing

+

Plan, track and schedule your operations.

+
+
+
+
+ +
+
+

Restaurant

+

Run your bar or restaurant methodical.

+
+
+
+
+ +
+
+

POS

+

Easy configuring and convivial selling.

+
+
+
+
+ +
+
+

E-commerce & Website

+

Mobile friendly, awe-inspiring product pages.

+
+
+
+
+ +
+
+

Hotel Management

+

An all-inclusive hotel management application.

+
+
+
+
+ +
+
+

Education

+

A Collaborative platform for educational management.

+
+
+
+
+ +
+
+

Service Management

+

Keep track of services and invoice accordingly.

+
+
+
+
+
+ +
+
+
+

Need Any Help?

+
+

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.

+
+

Email us

+

odoo@cybrosys.com / info@cybrosys.com

+
+
+

Contact Us

+ www.cybrosys.com +
+
+
+
+
+
+
+
+
+ +
+ + + + + + + +
+
+
+ \ No newline at end of file diff --git a/sale_purchase_previous_product_cost/views/sale_order_view.xml b/sale_purchase_previous_product_cost/views/sale_order_view.xml new file mode 100644 index 000000000..13fedd82f --- /dev/null +++ b/sale_purchase_previous_product_cost/views/sale_order_view.xml @@ -0,0 +1,66 @@ + + + + + last.product.prices.view + sale.order.line + + + + + + + + + + + + + + + + last.product.purchase_prices.view + purchase.order.line + + + + + + + + + + + + + + + + product_extended.product.form.view + product.product + 3 + + + + + + + + + + + +