diff --git a/progress_billing/README.rst b/progress_billing/README.rst new file mode 100644 index 000000000..b6a844f26 --- /dev/null +++ b/progress_billing/README.rst @@ -0,0 +1,48 @@ +.. image:: https://img.shields.io/badge/license-LGPL--3-green.svg + :target: https://www.gnu.org/licenses/lgpl-3.0-standalone.html + :alt: License: LGPL-3 + +Customer Progress Billing +========================= +This module enables your accounting users to generate progress billing, +which can be exported as a PDF document. They can then share this billing with +customers for project-related invoicing. + +Configuration +============= +- No additional configuration required + +Company +------- +* `Cybrosys Techno Solutions `__ + +License +------- +General Public License, Version 3 (LGPL v3). +(https://www.gnu.org/licenses/lgpl-3.0-standalone.html) + +Credits +------- +* Developer: + (V17) Jumana Haseen + Contact : odoo@cybrosys.com + +Contacts +-------- +* Mail Contact : odoo@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 https://www.cybrosys.com + +Further information +=================== +HTML Description: ``__ diff --git a/progress_billing/__init__.py b/progress_billing/__init__.py new file mode 100644 index 000000000..241fb9d31 --- /dev/null +++ b/progress_billing/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Jumana Haseen (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 models diff --git a/progress_billing/__manifest__.py b/progress_billing/__manifest__.py new file mode 100644 index 000000000..dc601ef81 --- /dev/null +++ b/progress_billing/__manifest__.py @@ -0,0 +1,46 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Jumana Haseen (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': "Customer Progress Billing", + 'version': '17.0.1.0.0', + 'category': 'Accounting', + 'summary': """ Customer Invoice as Progress Billing for Project Odoo """, + 'description': """ This module enables your accounting users to generate + progress billing, which can be exported as a PDF document. They can then + share this billing with customers for project-related invoicing. """, + 'author': 'Cybrosys Techno Solutions', + 'company': 'Cybrosys Techno Solutions', + 'maintainer': 'Cybrosys Techno Solutions', + 'website': "https://www.cybrosys.com", + 'depends': ['account', 'account_accountant'], + 'data': [ + 'reports/progress_billing_reports.xml', + 'reports/progress_billing_report_templates.xml', + 'views/analytic_account_views.xml', + 'views/account_move_views.xml', + ], + 'images': ['static/description/banner.png'], + 'license': 'LGPL-3', + 'installable': True, + 'auto_install': False, + 'application': False, +} diff --git a/progress_billing/doc/RELEASE_NOTES.md b/progress_billing/doc/RELEASE_NOTES.md new file mode 100644 index 000000000..f5676e7e2 --- /dev/null +++ b/progress_billing/doc/RELEASE_NOTES.md @@ -0,0 +1,7 @@ +## Module + +#### 30.01.2024 +#### Version 17.0.1.0.0 +#### ADD + +- Initial commit for Customer Progress Billing diff --git a/progress_billing/models/__init__.py b/progress_billing/models/__init__.py new file mode 100644 index 000000000..e388941f8 --- /dev/null +++ b/progress_billing/models/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Jumana Haseen (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 analytic_account +from . import account_move diff --git a/progress_billing/models/account_move.py b/progress_billing/models/account_move.py new file mode 100644 index 000000000..343d5669b --- /dev/null +++ b/progress_billing/models/account_move.py @@ -0,0 +1,150 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Jumana Haseen (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 api, fields, models + + +class AccountMove(models.Model): + """ + A class that inherits the currently existing model account.move + """ + _inherit = 'account.move' + + progress_bill_title = fields.Char(string='Progress Billing Title', + help='Give a title for the progress ' + 'billing') + project_id = fields.Many2one('account.analytic.account', string='Project', + copy=False, + help='Corresponding analytic account ' + 'for the invoice.') + total_progress_billing = fields.Float(string="Total Progress Billing", + related='project_id.total_progress_billing', + copy=False, store=True, + help='Total Progress Billing of the ' + 'corresponding analytic account.') + invoice_to_date = fields.Float(string="Invoice To Date", + compute='_compute_invoice_to_date', + copy=False, + store=True, + help='The amount invoiced for the analytic ' + 'account till this invoice.') + remaining_progress_billing = fields.Float( + string="Remaining Progress Billing", + compute='_compute_remaining_progress_billing', + copy=False, store=True, + help='The remaining amount to invoice for the analytic account') + previously_invoice = fields.Float(string="Previously Invoiced", + compute='_compute_previously_invoiced', + copy=False, + store=True, + help='How much amount previously ' + 'invoiced.') + previously_invoice_due = fields.Float(string="Previously Invoiced Due", + compute='_compute_previously_invoiced', + copy=False, store=True, + help='How much amount due previously ' + 'invoiced.') + current_invoice = fields.Float(string="Current Invoiced", + compute='_compute_current_invoiced', + copy=False, + store=True, + help='Currently how much amount invoiced.') + less_paid_amount = fields.Float(string="Less Paid Amount", + compute='_compute_less_paid_amount', + copy=False, + store=True, + help='The total amount residual') + total_due = fields.Float(string="Total Due", compute='_compute_total_due', + copy=False, store=True, help='The total due.') + + @api.depends('project_id', 'amount_total') + def _compute_invoice_to_date(self): + """ + Computes invoice to date depending on project_id and amount_total + """ + for rec in self: + rec.invoice_to_date = 0 + if rec.project_id: + invoice = self.search( + ['|', ('state', 'in', ['posted']), ('payment_state', 'in', ['paid']), + ('move_type', '=', 'out_invoice'), + ('partner_id', '=', rec.partner_id.id), + ('project_id', '=', rec.project_id.id)]) + for val in invoice: + rec.invoice_to_date = rec.invoice_to_date + val.amount_total + + @api.depends('total_progress_billing', 'invoice_to_date') + def _compute_remaining_progress_billing(self): + """ + Computes remaining_progress_billing depending on + total_progress_billing and invoice_to_date + """ + for rec in self: + rec.remaining_progress_billing = rec.total_progress_billing - rec.invoice_to_date + + @api.depends('project_id', 'amount_total', 'amount_residual') + def _compute_previously_invoiced(self): + """ + Computes previously_invoice and previously_invoice_due depending + on project_id, amount_total and amount_residual + """ + for rec in self: + rec.previously_invoice = 0 + rec.previously_invoice_due = 0 + if rec.project_id: + invoice = self.search(['|', ('state', 'in', ['posted']), + ('payment_state', 'in', ['paid']), + ('move_type', '=', 'out_invoice'), + ('partner_id', '=', rec.partner_id.id), + ('project_id', '=', rec.project_id.id)]) + if len(invoice) == 1: + rec.previously_invoice = 0 + if len(invoice) > 1: + rec.previously_invoice = 0 + for val in invoice: + if val.id != rec.id: + rec.previously_invoice += val.amount_total + rec.previously_invoice_due += val.amount_residual + + @api.depends('amount_total') + def _compute_current_invoiced(self): + """ + Computes current_invoice depending on amount_total + """ + for rec in self: + rec.current_invoice = rec.amount_total + + @api.depends('amount_residual') + def _compute_less_paid_amount(self): + """ + Computes less_paid_amount depending on amount_residual + """ + for rec in self: + rec.less_paid_amount = rec.amount_residual + + @api.depends('less_paid_amount', 'previously_invoice', 'current_invoice') + def _compute_total_due(self): + """ + Computes total_due depending on less_paid_amount, + previously_invoice and current_invoice + """ + for rec in self: + rec.total_due = rec.previously_invoice_due + rec.less_paid_amount diff --git a/progress_billing/models/analytic_account.py b/progress_billing/models/analytic_account.py new file mode 100644 index 000000000..4a9180d02 --- /dev/null +++ b/progress_billing/models/analytic_account.py @@ -0,0 +1,34 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Jumana Haseen (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 AccountAnalyticAccount(models.Model): + """ + A class that inherits the currently existing model account.analytic.account + """ + _inherit = 'account.analytic.account' + + total_progress_billing = fields.Float(string='Total Progress Billing', + copy=False, + help='Set the total progress billing' + ' for the analytic account.') diff --git a/progress_billing/reports/progress_billing_report_templates.xml b/progress_billing/reports/progress_billing_report_templates.xml new file mode 100644 index 000000000..d58ba33fd --- /dev/null +++ b/progress_billing/reports/progress_billing_report_templates.xml @@ -0,0 +1,128 @@ + + + + + diff --git a/progress_billing/reports/progress_billing_reports.xml b/progress_billing/reports/progress_billing_reports.xml new file mode 100644 index 000000000..d050dff77 --- /dev/null +++ b/progress_billing/reports/progress_billing_reports.xml @@ -0,0 +1,13 @@ + + + + + Progess Billing PDF Report + account.move + qweb-pdf + progress_billing.report_progress_billing + progress_billing.report_progress_billing + + report + + diff --git a/progress_billing/static/description/assets/icons/capture (1).png b/progress_billing/static/description/assets/icons/capture (1).png new file mode 100644 index 000000000..8824deafc Binary files /dev/null and b/progress_billing/static/description/assets/icons/capture (1).png differ diff --git a/progress_billing/static/description/assets/icons/check.png b/progress_billing/static/description/assets/icons/check.png new file mode 100644 index 000000000..c8e85f51d Binary files /dev/null and b/progress_billing/static/description/assets/icons/check.png differ diff --git a/progress_billing/static/description/assets/icons/chevron.png b/progress_billing/static/description/assets/icons/chevron.png new file mode 100644 index 000000000..2089293d6 Binary files /dev/null and b/progress_billing/static/description/assets/icons/chevron.png differ diff --git a/progress_billing/static/description/assets/icons/cogs.png b/progress_billing/static/description/assets/icons/cogs.png new file mode 100644 index 000000000..95d0bad62 Binary files /dev/null and b/progress_billing/static/description/assets/icons/cogs.png differ diff --git a/progress_billing/static/description/assets/icons/consultation.png b/progress_billing/static/description/assets/icons/consultation.png new file mode 100644 index 000000000..8319d4baa Binary files /dev/null and b/progress_billing/static/description/assets/icons/consultation.png differ diff --git a/progress_billing/static/description/assets/icons/ecom-black.png b/progress_billing/static/description/assets/icons/ecom-black.png new file mode 100644 index 000000000..a9385ff13 Binary files /dev/null and b/progress_billing/static/description/assets/icons/ecom-black.png differ diff --git a/progress_billing/static/description/assets/icons/education-black.png b/progress_billing/static/description/assets/icons/education-black.png new file mode 100644 index 000000000..3eb09b27b Binary files /dev/null and b/progress_billing/static/description/assets/icons/education-black.png differ diff --git a/progress_billing/static/description/assets/icons/hotel-black.png b/progress_billing/static/description/assets/icons/hotel-black.png new file mode 100644 index 000000000..130f613be Binary files /dev/null and b/progress_billing/static/description/assets/icons/hotel-black.png differ diff --git a/progress_billing/static/description/assets/icons/img.png b/progress_billing/static/description/assets/icons/img.png new file mode 100644 index 000000000..70197f477 Binary files /dev/null and b/progress_billing/static/description/assets/icons/img.png differ diff --git a/progress_billing/static/description/assets/icons/license.png b/progress_billing/static/description/assets/icons/license.png new file mode 100644 index 000000000..a5869797e Binary files /dev/null and b/progress_billing/static/description/assets/icons/license.png differ diff --git a/progress_billing/static/description/assets/icons/lifebuoy.png b/progress_billing/static/description/assets/icons/lifebuoy.png new file mode 100644 index 000000000..658d56ccc Binary files /dev/null and b/progress_billing/static/description/assets/icons/lifebuoy.png differ diff --git a/progress_billing/static/description/assets/icons/manufacturing-black.png b/progress_billing/static/description/assets/icons/manufacturing-black.png new file mode 100644 index 000000000..697eb0e9f Binary files /dev/null and b/progress_billing/static/description/assets/icons/manufacturing-black.png differ diff --git a/progress_billing/static/description/assets/icons/photo-capture.png b/progress_billing/static/description/assets/icons/photo-capture.png new file mode 100644 index 000000000..06c111758 Binary files /dev/null and b/progress_billing/static/description/assets/icons/photo-capture.png differ diff --git a/progress_billing/static/description/assets/icons/pos-black.png b/progress_billing/static/description/assets/icons/pos-black.png new file mode 100644 index 000000000..97c0f90c1 Binary files /dev/null and b/progress_billing/static/description/assets/icons/pos-black.png differ diff --git a/progress_billing/static/description/assets/icons/puzzle.png b/progress_billing/static/description/assets/icons/puzzle.png new file mode 100644 index 000000000..65cf854e7 Binary files /dev/null and b/progress_billing/static/description/assets/icons/puzzle.png differ diff --git a/progress_billing/static/description/assets/icons/restaurant-black.png b/progress_billing/static/description/assets/icons/restaurant-black.png new file mode 100644 index 000000000..4a35eb939 Binary files /dev/null and b/progress_billing/static/description/assets/icons/restaurant-black.png differ diff --git a/progress_billing/static/description/assets/icons/service-black.png b/progress_billing/static/description/assets/icons/service-black.png new file mode 100644 index 000000000..301ab51cb Binary files /dev/null and b/progress_billing/static/description/assets/icons/service-black.png differ diff --git a/progress_billing/static/description/assets/icons/trading-black.png b/progress_billing/static/description/assets/icons/trading-black.png new file mode 100644 index 000000000..9398ba2f1 Binary files /dev/null and b/progress_billing/static/description/assets/icons/trading-black.png differ diff --git a/progress_billing/static/description/assets/icons/training.png b/progress_billing/static/description/assets/icons/training.png new file mode 100644 index 000000000..884ca024d Binary files /dev/null and b/progress_billing/static/description/assets/icons/training.png differ diff --git a/progress_billing/static/description/assets/icons/update.png b/progress_billing/static/description/assets/icons/update.png new file mode 100644 index 000000000..ecbc5a01a Binary files /dev/null and b/progress_billing/static/description/assets/icons/update.png differ diff --git a/progress_billing/static/description/assets/icons/user.png b/progress_billing/static/description/assets/icons/user.png new file mode 100644 index 000000000..6ffb23d9f Binary files /dev/null and b/progress_billing/static/description/assets/icons/user.png differ diff --git a/progress_billing/static/description/assets/icons/wrench.png b/progress_billing/static/description/assets/icons/wrench.png new file mode 100644 index 000000000..6c04dea0f Binary files /dev/null and b/progress_billing/static/description/assets/icons/wrench.png differ diff --git a/progress_billing/static/description/assets/misc/Cybrosys R.png b/progress_billing/static/description/assets/misc/Cybrosys R.png new file mode 100644 index 000000000..da4058087 Binary files /dev/null and b/progress_billing/static/description/assets/misc/Cybrosys R.png differ diff --git a/progress_billing/static/description/assets/misc/email.svg b/progress_billing/static/description/assets/misc/email.svg new file mode 100644 index 000000000..15291cdc3 --- /dev/null +++ b/progress_billing/static/description/assets/misc/email.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/progress_billing/static/description/assets/misc/phone.svg b/progress_billing/static/description/assets/misc/phone.svg new file mode 100644 index 000000000..b7bd7f251 --- /dev/null +++ b/progress_billing/static/description/assets/misc/phone.svg @@ -0,0 +1,3 @@ + + + diff --git a/progress_billing/static/description/assets/misc/star (1) 2.svg b/progress_billing/static/description/assets/misc/star (1) 2.svg new file mode 100644 index 000000000..5ae9f507a --- /dev/null +++ b/progress_billing/static/description/assets/misc/star (1) 2.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/progress_billing/static/description/assets/misc/support (1) 1.svg b/progress_billing/static/description/assets/misc/support (1) 1.svg new file mode 100644 index 000000000..7d37a8f30 --- /dev/null +++ b/progress_billing/static/description/assets/misc/support (1) 1.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/progress_billing/static/description/assets/misc/support-email.svg b/progress_billing/static/description/assets/misc/support-email.svg new file mode 100644 index 000000000..eb70370d6 --- /dev/null +++ b/progress_billing/static/description/assets/misc/support-email.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/progress_billing/static/description/assets/misc/tick-mark.svg b/progress_billing/static/description/assets/misc/tick-mark.svg new file mode 100644 index 000000000..2dbb40187 --- /dev/null +++ b/progress_billing/static/description/assets/misc/tick-mark.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/progress_billing/static/description/assets/misc/whatsapp 1.svg b/progress_billing/static/description/assets/misc/whatsapp 1.svg new file mode 100644 index 000000000..0bfaf8fc6 --- /dev/null +++ b/progress_billing/static/description/assets/misc/whatsapp 1.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/progress_billing/static/description/assets/misc/whatsapp.svg b/progress_billing/static/description/assets/misc/whatsapp.svg new file mode 100644 index 000000000..b618aea1d --- /dev/null +++ b/progress_billing/static/description/assets/misc/whatsapp.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/progress_billing/static/description/assets/modules/1.png b/progress_billing/static/description/assets/modules/1.png new file mode 100644 index 000000000..5cf4125fe Binary files /dev/null and b/progress_billing/static/description/assets/modules/1.png differ diff --git a/progress_billing/static/description/assets/modules/2.png b/progress_billing/static/description/assets/modules/2.png new file mode 100644 index 000000000..fa92e38c6 Binary files /dev/null and b/progress_billing/static/description/assets/modules/2.png differ diff --git a/progress_billing/static/description/assets/modules/3.png b/progress_billing/static/description/assets/modules/3.png new file mode 100644 index 000000000..1d6c1b6c0 Binary files /dev/null and b/progress_billing/static/description/assets/modules/3.png differ diff --git a/progress_billing/static/description/assets/modules/4.png b/progress_billing/static/description/assets/modules/4.png new file mode 100644 index 000000000..1bba09005 Binary files /dev/null and b/progress_billing/static/description/assets/modules/4.png differ diff --git a/progress_billing/static/description/assets/modules/5.png b/progress_billing/static/description/assets/modules/5.png new file mode 100644 index 000000000..9cfe2309b Binary files /dev/null and b/progress_billing/static/description/assets/modules/5.png differ diff --git a/progress_billing/static/description/assets/modules/6.png b/progress_billing/static/description/assets/modules/6.png new file mode 100644 index 000000000..c068f4057 Binary files /dev/null and b/progress_billing/static/description/assets/modules/6.png differ diff --git a/progress_billing/static/description/assets/screenshots/1.png b/progress_billing/static/description/assets/screenshots/1.png new file mode 100644 index 000000000..34586bcc8 Binary files /dev/null and b/progress_billing/static/description/assets/screenshots/1.png differ diff --git a/progress_billing/static/description/assets/screenshots/2.png b/progress_billing/static/description/assets/screenshots/2.png new file mode 100644 index 000000000..33eb9dcc0 Binary files /dev/null and b/progress_billing/static/description/assets/screenshots/2.png differ diff --git a/progress_billing/static/description/assets/screenshots/3.png b/progress_billing/static/description/assets/screenshots/3.png new file mode 100644 index 000000000..b666a880a Binary files /dev/null and b/progress_billing/static/description/assets/screenshots/3.png differ diff --git a/progress_billing/static/description/assets/screenshots/4.png b/progress_billing/static/description/assets/screenshots/4.png new file mode 100644 index 000000000..fcc82a69f Binary files /dev/null and b/progress_billing/static/description/assets/screenshots/4.png differ diff --git a/progress_billing/static/description/assets/screenshots/5.png b/progress_billing/static/description/assets/screenshots/5.png new file mode 100644 index 000000000..cfbbe713e Binary files /dev/null and b/progress_billing/static/description/assets/screenshots/5.png differ diff --git a/progress_billing/static/description/assets/screenshots/6.png b/progress_billing/static/description/assets/screenshots/6.png new file mode 100644 index 000000000..0d0b57231 Binary files /dev/null and b/progress_billing/static/description/assets/screenshots/6.png differ diff --git a/progress_billing/static/description/assets/screenshots/7.png b/progress_billing/static/description/assets/screenshots/7.png new file mode 100644 index 000000000..fe3384b9b Binary files /dev/null and b/progress_billing/static/description/assets/screenshots/7.png differ diff --git a/progress_billing/static/description/assets/screenshots/8.png b/progress_billing/static/description/assets/screenshots/8.png new file mode 100644 index 000000000..e9a9fdbfa Binary files /dev/null and b/progress_billing/static/description/assets/screenshots/8.png differ diff --git a/progress_billing/static/description/assets/screenshots/9.png b/progress_billing/static/description/assets/screenshots/9.png new file mode 100644 index 000000000..f9d5adaa2 Binary files /dev/null and b/progress_billing/static/description/assets/screenshots/9.png differ diff --git a/progress_billing/static/description/assets/screenshots/hero.gif b/progress_billing/static/description/assets/screenshots/hero.gif new file mode 100644 index 000000000..10bdb8662 Binary files /dev/null and b/progress_billing/static/description/assets/screenshots/hero.gif differ diff --git a/progress_billing/static/description/banner.png b/progress_billing/static/description/banner.png new file mode 100644 index 000000000..8c78050f4 Binary files /dev/null and b/progress_billing/static/description/banner.png differ diff --git a/progress_billing/static/description/icon.png b/progress_billing/static/description/icon.png new file mode 100644 index 000000000..93e3be2df Binary files /dev/null and b/progress_billing/static/description/icon.png differ diff --git a/progress_billing/static/description/index.html b/progress_billing/static/description/index.html new file mode 100644 index 000000000..f9a76230b --- /dev/null +++ b/progress_billing/static/description/index.html @@ -0,0 +1,791 @@ + + + + + + Odoo App 3 Index + + + + + + + + +
+
+
+
+
+ +
+
+
+ Community +
+
+ Enterprise +
+
+ Odoo.sh +
+
+
+
+
+
+

+ Customer Progress Billing

+

+ Customer Invoice as Progress Billing for Project. +

+
+ +
+
+
+
+
+

+ Key Highlights +

+
+
+
+
+
+ +
+
+

+ Set Total Progress Billing Amount on the + analytic account.

+
+
+
+
+
+
+ +
+
+

+ System adds a progress billing title on the + customer invoice.

+
+
+
+
+
+
+ +
+
+

+ Print progress billing pdf reports.

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

+ Analytic Accounts Menu

+
+
+
+
+
+
+ +
+
+

+ Analytic Accounts Form View.

+

+ You can set Total Progress Billing field on + Analytic Account Form.

+
+
+
+
+
+
+ +
+
+

+ Invoices Menu

+
+
+
+
+
+
+ +
+
+

+ Customer Invoice with Progress Billing + Details and selected Project.

+
+
+
+
+
+
+ +
+
+

+ Progress Billing PDF Report on Customer + Invoice Form.

+
+
+
+
+
+
+ +
+
+

+ PDF Report.

+
+
+
+
+
+
+ +
+
+

+ Customer Invoice with Progress Billing + Details with next invoice created.

+
+
+
+
+
+
+ +
+
+

+ Customer Invoice with Progress Billing + Details with Previously invoiced amount and + Previously invoiced due amount for those + unpaid invoices can be noted.

+
+
+
+
+
+
+ +
+
+

+ PDF Report with all Progress billing + information and current invoice + details.

+
+
+
+
+
+
+
    +
  • + Available in + Odoo 17.0 Community and Enterprise. +
  • +
  • + Customer + Progress Billing +
      +
    • This module enables your accounting + users to generate progress billing, + which can be exported as a PDF document. + They can then share this billing with + customers for project-related invoicing. +
    • +
    +
  • +
+
+
+
+
+
+
Version + 17.0.1.0.0|Released on:30th January 2024 +
+

+ Initial Commit for Customer Progress Billing +

+
+
+
+
+
+
+
+

+ Related Products

+
+
+ +
+
+

+ Our Services

+
+
+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Customization

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Implementation

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Support

+
+
+
+
+
+
+ service-icon +
+
+

Hire + Odoo Developer

+
+
+
+
+ +
+
+ service-icon +
+
+

Odoo + Integration

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Migration

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Consultancy

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Implementation

+
+
+
+
+
+
+ service-icon +
+
+

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 + 99456767686 +
+
+
+
+
+
+
+
+
+ + + + + + diff --git a/progress_billing/views/account_move_views.xml b/progress_billing/views/account_move_views.xml new file mode 100644 index 000000000..de615c18f --- /dev/null +++ b/progress_billing/views/account_move_views.xml @@ -0,0 +1,42 @@ + + + + + account.move.view.form.inherit.progress.billing + account.move + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/progress_billing/views/analytic_account_views.xml b/progress_billing/views/analytic_account_views.xml new file mode 100644 index 000000000..6789dbaf4 --- /dev/null +++ b/progress_billing/views/analytic_account_views.xml @@ -0,0 +1,14 @@ + + + + + account.analytic.account.view.form.inherit.progress.billing + + account.analytic.account + + + + + + +