diff --git a/sale_purchase_automated/README.rst b/sale_purchase_automated/README.rst new file mode 100644 index 000000000..821f81488 --- /dev/null +++ b/sale_purchase_automated/README.rst @@ -0,0 +1,38 @@ +Automate Sale And Purchase Orders +================================= +This module provides an option to automate the sale and purchase order. + +Configuration +============= +* No additional configurations needed + +Company +------- +* `Cybrosys Techno Solutions `__ + +Credits +------- +* Developers: Nimisha Murali@cybrosys + V14 Minhaj T @cybrosys + +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_automated/__init__.py b/sale_purchase_automated/__init__.py new file mode 100644 index 000000000..5f5816dfc --- /dev/null +++ b/sale_purchase_automated/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2020-TODAY Cybrosys Technologies(). +# Author: Nimisha Muralidhar (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.import models diff --git a/sale_purchase_automated/__manifest__.py b/sale_purchase_automated/__manifest__.py new file mode 100644 index 000000000..cd030b4e4 --- /dev/null +++ b/sale_purchase_automated/__manifest__.py @@ -0,0 +1,44 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2020-TODAY Cybrosys Technologies(). +# Author: Nimisha Muralidhar (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 . +# +############################################################################# +{ + 'name': 'Automate Sale And Purchase Orders', + 'version': '14.0.1.0.0', + 'category': 'Extra Tools', + 'summary': 'Automate the sale and purchase orders flow', + 'description': 'Automate sale and purchase orders flow', + 'author': 'Cybrosys Techno Solutions', + 'company': 'Cybrosys Techno Solutions', + 'maintainer': 'Cybrosys Techno Solutions', + 'images': ['static/description/banner.png'], + 'website': 'https://www.cybrosys.com', + 'depends': ['base', 'purchase', 'sale_management'], + 'data': [ + 'views/res_conf_settings_views.xml', + 'views/purchase_order_views.xml', + 'views/sales_order_views.xml' + ], + 'license': 'AGPL-3', + 'installable': True, + 'auto_install': False, + 'application': False, + +} diff --git a/sale_purchase_automated/doc/RELEASE_NOTES.md b/sale_purchase_automated/doc/RELEASE_NOTES.md new file mode 100644 index 000000000..1b9b5b9a5 --- /dev/null +++ b/sale_purchase_automated/doc/RELEASE_NOTES.md @@ -0,0 +1,9 @@ +## Module + +#### 13.10.2020 +#### Version 14.0.1.0.0 +#### ADD +Initial commit for Automate Sale And Purchase Orders + + + diff --git a/sale_purchase_automated/models/__init__.py b/sale_purchase_automated/models/__init__.py new file mode 100644 index 000000000..0d39cc944 --- /dev/null +++ b/sale_purchase_automated/models/__init__.py @@ -0,0 +1,26 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2020-TODAY Cybrosys Technologies(). +# Author: Nimisha Muralidhar (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.import res_conf_settings +from.import purchase +from.import sales_order + diff --git a/sale_purchase_automated/models/purchase.py b/sale_purchase_automated/models/purchase.py new file mode 100644 index 000000000..54e1e09c6 --- /dev/null +++ b/sale_purchase_automated/models/purchase.py @@ -0,0 +1,51 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2020-TODAY Cybrosys Technologies(). +# Author: Nimisha Muralidhar (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 + + +class PurchaseOrder(models.Model): + _inherit = 'purchase.order' + + automate_print_bills = fields.Boolean('Create Bills', help="Create bills with purchase orders") + + @api.model + def create(self, vals): + """ + Super the method create to confirm RFQ. + """ + res = super(PurchaseOrder, self).create(vals) + automate_purchase = self.env['ir.config_parameter'].sudo().get_param('automate_purchase') + automate_print_bills = self.env['ir.config_parameter'].sudo().get_param('automate_print_bills') + if automate_purchase != False: + res.button_confirm() + if automate_print_bills != False: + res.automate_print_bills = True + return res + else: + return res + + def action_print_bill(self): + """ + Method to print bill. + """ + data = self.invoice_ids + return self.env.ref('account.account_invoices').report_action(data) diff --git a/sale_purchase_automated/models/res_conf_settings.py b/sale_purchase_automated/models/res_conf_settings.py new file mode 100644 index 000000000..c964f7b4b --- /dev/null +++ b/sale_purchase_automated/models/res_conf_settings.py @@ -0,0 +1,59 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2020-TODAY Cybrosys Technologies(). +# Author: Nimisha Muralidhar (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 api, fields, models, _ + + +class ResConfigSettings(models.TransientModel): + _inherit = 'res.config.settings' + + automate_purchase = fields.Boolean('Confirm RFQ', default=False, help="Automate confirmation for RFQ") + automate_print_bills = fields.Boolean('Print Bills', default=False, help="Print bills of corresponding purchase order") + automate_sale = fields.Boolean('Confirm Quotation', default=False, help="Automate confirmation for quotation") + automate_invoice = fields.Boolean('Create Invoice', default=False, help="Create invoices for sale order") + automate_validate_voice = fields.Boolean('Validate Invoice', default=False, help="Validate Invoices") + automate_print_invoices = fields.Boolean('Print Invoices', default=False, help="Print invoices of corresponding sales order") + + + @api.model + def get_values(self): + """get values from the fields""" + res = super(ResConfigSettings, self).get_values() + res.update( + automate_purchase=self.env['ir.config_parameter'].sudo().get_param('automate_purchase'), + automate_print_bills=self.env['ir.config_parameter'].sudo().get_param('automate_print_bills'), + automate_print_invoices=self.env['ir.config_parameter'].sudo().get_param('automate_print_invoices'), + automate_sale=self.env['ir.config_parameter'].sudo().get_param('automate_sale'), + automate_invoice=self.env['ir.config_parameter'].sudo().get_param('automate_invoice'), + automate_validate_voice=self.env['ir.config_parameter'].sudo().get_param('automate_validate_voice'), + ) + return res + + def set_values(self): + """Set values in the fields""" + super(ResConfigSettings, self).set_values() + self.env['ir.config_parameter'].sudo().set_param('automate_purchase', self.automate_purchase) + self.env['ir.config_parameter'].sudo().set_param('automate_print_bills', self.automate_print_bills) + self.env['ir.config_parameter'].sudo().set_param('automate_print_invoices', self.automate_print_invoices) + self.env['ir.config_parameter'].sudo().set_param('automate_sale', self.automate_sale) + self.env['ir.config_parameter'].sudo().set_param('automate_invoice', self.automate_invoice) + self.env['ir.config_parameter'].sudo().set_param('automate_validate_voice', self.automate_validate_voice) \ No newline at end of file diff --git a/sale_purchase_automated/models/sales_order.py b/sale_purchase_automated/models/sales_order.py new file mode 100644 index 000000000..4473111ee --- /dev/null +++ b/sale_purchase_automated/models/sales_order.py @@ -0,0 +1,55 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2020-TODAY Cybrosys Technologies(). +# Author: Nimisha Muralidhar (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 + + +class SaleOrder(models.Model): + _inherit = 'sale.order' + + automate_print_invoices = fields.Boolean('Print Invoices', help="Print invoices for corresponding purchase orders") + + @api.model_create_multi + def create(self, vals_list): + """ + Super the method create to confirm quotation,create and validate invoice. + """ + res = super(SaleOrder, self).create(vals_list) + automate_purchase = self.env['ir.config_parameter'].sudo().get_param('automate_sale') + automate_invoice = self.env['ir.config_parameter'].sudo().get_param('automate_invoice') + automate_print_invoices = self.env['ir.config_parameter'].sudo().get_param('automate_print_invoices') + automate_validate_voice = self.env['ir.config_parameter'].sudo().get_param('automate_validate_voice') + if automate_print_invoices != False: + res.automate_print_invoices = True + if automate_purchase != False: + res.action_confirm() + if automate_invoice != False: + res._create_invoices() + if automate_validate_voice != False: + res.invoice_ids.action_post() + return res + + def action_print_invoice(self): + """ + Method to print invoice. + """ + data = self.invoice_ids + return self.env.ref('account.account_invoices').report_action(data) diff --git a/sale_purchase_automated/static/description/banner.png b/sale_purchase_automated/static/description/banner.png new file mode 100644 index 000000000..f6cd0f0af Binary files /dev/null and b/sale_purchase_automated/static/description/banner.png differ diff --git a/sale_purchase_automated/static/description/icon.png b/sale_purchase_automated/static/description/icon.png new file mode 100644 index 000000000..4ebfa7be8 Binary files /dev/null and b/sale_purchase_automated/static/description/icon.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po.gif b/sale_purchase_automated/static/description/images/automate_so_po.gif new file mode 100644 index 000000000..417912d59 Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po.gif differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_1.png b/sale_purchase_automated/static/description/images/automate_so_po_1.png new file mode 100644 index 000000000..b12faa992 Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_1.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_10.png b/sale_purchase_automated/static/description/images/automate_so_po_10.png new file mode 100644 index 000000000..8a2f1894a Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_10.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_11.png b/sale_purchase_automated/static/description/images/automate_so_po_11.png new file mode 100644 index 000000000..aefea81f4 Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_11.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_12.png b/sale_purchase_automated/static/description/images/automate_so_po_12.png new file mode 100644 index 000000000..1d0622bb0 Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_12.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_13.png b/sale_purchase_automated/static/description/images/automate_so_po_13.png new file mode 100644 index 000000000..f37014f57 Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_13.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_14.png b/sale_purchase_automated/static/description/images/automate_so_po_14.png new file mode 100644 index 000000000..c72537177 Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_14.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_2.png b/sale_purchase_automated/static/description/images/automate_so_po_2.png new file mode 100644 index 000000000..f2c1c0f2b Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_2.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_3.png b/sale_purchase_automated/static/description/images/automate_so_po_3.png new file mode 100644 index 000000000..8d9773ef7 Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_3.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_4.png b/sale_purchase_automated/static/description/images/automate_so_po_4.png new file mode 100644 index 000000000..1cf6cccc2 Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_4.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_5.png b/sale_purchase_automated/static/description/images/automate_so_po_5.png new file mode 100644 index 000000000..fed061fb4 Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_5.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_6.png b/sale_purchase_automated/static/description/images/automate_so_po_6.png new file mode 100644 index 000000000..8f10b0ada Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_6.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_7.png b/sale_purchase_automated/static/description/images/automate_so_po_7.png new file mode 100644 index 000000000..425f4734c Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_7.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_8.png b/sale_purchase_automated/static/description/images/automate_so_po_8.png new file mode 100644 index 000000000..5588da8a7 Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_8.png differ diff --git a/sale_purchase_automated/static/description/images/automate_so_po_9.png b/sale_purchase_automated/static/description/images/automate_so_po_9.png new file mode 100644 index 000000000..a6ad46371 Binary files /dev/null and b/sale_purchase_automated/static/description/images/automate_so_po_9.png differ diff --git a/sale_purchase_automated/static/description/images/banner_barcode_scanning.jpeg b/sale_purchase_automated/static/description/images/banner_barcode_scanning.jpeg new file mode 100644 index 000000000..529143e4e Binary files /dev/null and b/sale_purchase_automated/static/description/images/banner_barcode_scanning.jpeg differ diff --git a/sale_purchase_automated/static/description/images/banner_currency_total.png b/sale_purchase_automated/static/description/images/banner_currency_total.png new file mode 100644 index 000000000..6153ed719 Binary files /dev/null and b/sale_purchase_automated/static/description/images/banner_currency_total.png differ diff --git a/sale_purchase_automated/static/description/images/banner_customer_sequence.jpeg b/sale_purchase_automated/static/description/images/banner_customer_sequence.jpeg new file mode 100644 index 000000000..7451342d6 Binary files /dev/null and b/sale_purchase_automated/static/description/images/banner_customer_sequence.jpeg differ diff --git a/sale_purchase_automated/static/description/images/banner_previous_rates.jpeg b/sale_purchase_automated/static/description/images/banner_previous_rates.jpeg new file mode 100644 index 000000000..e10c28799 Binary files /dev/null and b/sale_purchase_automated/static/description/images/banner_previous_rates.jpeg differ diff --git a/sale_purchase_automated/static/description/images/banner_product_branding.png b/sale_purchase_automated/static/description/images/banner_product_branding.png new file mode 100644 index 000000000..aa12beabb Binary files /dev/null and b/sale_purchase_automated/static/description/images/banner_product_branding.png differ diff --git a/sale_purchase_automated/static/description/images/banner_product_expiry.jpeg b/sale_purchase_automated/static/description/images/banner_product_expiry.jpeg new file mode 100644 index 000000000..84a872d44 Binary files /dev/null and b/sale_purchase_automated/static/description/images/banner_product_expiry.jpeg differ diff --git a/sale_purchase_automated/static/description/images/button_orders.png b/sale_purchase_automated/static/description/images/button_orders.png new file mode 100644 index 000000000..1db050118 Binary files /dev/null and b/sale_purchase_automated/static/description/images/button_orders.png differ diff --git a/sale_purchase_automated/static/description/images/checked.png b/sale_purchase_automated/static/description/images/checked.png new file mode 100644 index 000000000..578cedb80 Binary files /dev/null and b/sale_purchase_automated/static/description/images/checked.png differ diff --git a/sale_purchase_automated/static/description/images/cybrosys.png b/sale_purchase_automated/static/description/images/cybrosys.png new file mode 100644 index 000000000..d76b5bafb Binary files /dev/null and b/sale_purchase_automated/static/description/images/cybrosys.png differ diff --git a/sale_purchase_automated/static/description/index.html b/sale_purchase_automated/static/description/index.html new file mode 100644 index 000000000..38169bd41 --- /dev/null +++ b/sale_purchase_automated/static/description/index.html @@ -0,0 +1,385 @@ +
cybrosys-logo
+
+
+
+

Automate Sale And Purchase Orders

+

Automate the sale and purchase orders flow

+
+

Key Highlights

+
    +
  • Automatic actions to confirm quotation and RFQ
  • +
+
    +
  • Action to create, validate and print invoice
  • +
+
    +
  • Action to print bills
  • +
+ +
+
+
+
+
+
+
+ +
+
+ +

Overview

+
+

+ This module provides an option to automate the sale and purchase order. One can automate the actions to confirm the quotation, create, validate and print invoices. Automatic actions are also available to confirm RFQ and print bills. +

+
+
+ +

Automate Sale And Purchase Orders

+
+
    +
  • + Automatic actions for sale and purchase. +
  • + +
  • + Enable automated actions in sale/purchase settings. +
  • +
  • + An option to create confirmed RFQ and Quotation +
  • +
  • + Create, validate and print invoices +
  • +
  • + An option to print bill from purchase order. +
  • +
+
+ +
+
+

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 +
+
+
+
+
+
+
+
+
+ +
+ + + + + + + +
+
+
+ diff --git a/sale_purchase_automated/views/purchase_order_views.xml b/sale_purchase_automated/views/purchase_order_views.xml new file mode 100644 index 000000000..16fd96204 --- /dev/null +++ b/sale_purchase_automated/views/purchase_order_views.xml @@ -0,0 +1,14 @@ + + + + purchase.order.form.inherit + purchase.order + + + + +