Browse Source

Initial Commit

pull/15/head
SHEREEF PT 8 years ago
parent
commit
2e3ccdacfc
  1. 12
      invoice_payment_receipt/README.rst
  2. 23
      invoice_payment_receipt/__init__.py
  3. 43
      invoice_payment_receipt/__manifest__.py
  4. 23
      invoice_payment_receipt/models/__init__.py
  5. 82
      invoice_payment_receipt/models/account_receipt_parser.py
  6. BIN
      invoice_payment_receipt/static/description/banner.jpg
  7. BIN
      invoice_payment_receipt/static/description/customer_invoice_form_view.png
  8. BIN
      invoice_payment_receipt/static/description/customer_receipt.png
  9. BIN
      invoice_payment_receipt/static/description/cybro_logo.png
  10. BIN
      invoice_payment_receipt/static/description/icon.png
  11. 103
      invoice_payment_receipt/static/description/index.html
  12. BIN
      invoice_payment_receipt/static/description/receipt_print_customer.png
  13. BIN
      invoice_payment_receipt/static/description/vendor_invoice_form.png
  14. BIN
      invoice_payment_receipt/static/description/vendor_print_button.png
  15. BIN
      invoice_payment_receipt/static/description/vendor_receipt.png
  16. 22
      invoice_payment_receipt/views/account_payment_print.xml
  17. 82
      invoice_payment_receipt/views/receipt_print_template.xml

12
invoice_payment_receipt/README.rst

@ -0,0 +1,12 @@
Account Payment Receipt
=======================
This module will print payment receipts with paid details
Credits
=======
Cybrosys Techno Solutions
Author
------
* Cybrosys Techno Solutions<http://www.cybrosys.com>

23
invoice_payment_receipt/__init__.py

@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
# Author: Niyas Raphy(<http://www.cybrosys.com>)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# 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
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import models

43
invoice_payment_receipt/__manifest__.py

@ -0,0 +1,43 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
# Author: Niyas Raphy(<http://www.cybrosys.com>)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# 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
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
{
'name': 'Account Payment Receipt',
'summary': """Payment Receipt With Paid Details""",
'version': '1.0',
'description': """""",
'author': 'Cybrosys Techno Solutions',
'company': 'Cybrosys Techno Solutions',
'website': 'http://www.cybrosys.com',
'category': 'Reporting',
'depends': ['base', 'account'],
'license': 'AGPL-3',
'data': [
'views/receipt_print_template.xml',
'views/account_payment_print.xml',
],
'demo': [],
'images': ['static/description/banner.jpg'],
'installable': True,
'auto_install': False,
}

23
invoice_payment_receipt/models/__init__.py

@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
# Author: Niyas Raphy(<http://www.cybrosys.com>)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# 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
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import account_receipt_parser

82
invoice_payment_receipt/models/account_receipt_parser.py

@ -0,0 +1,82 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>).
# Author: Niyas Raphy(<http://www.cybrosys.com>)
# you can modify it under the terms of the GNU LESSER
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3.
#
# It is forbidden to publish, distribute, sublicense, or sell copies
# of the Software or modified copies of the Software.
#
# 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
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from odoo.report import report_sxw
from odoo.osv import osv
from odoo import api
from odoo.http import request
import json
class AccountReceiptParser(report_sxw.rml_parse):
def __init__(self, cr, uid, name, context=None):
super(AccountReceiptParser, self).__init__(cr, uid, name, context=context)
self.localcontext.update({
'get_details': self.get_details,
'get_details_invoice': self.get_details_invoice,
})
self.context = context
@api.multi
def get_details_invoice(self, doc):
lines = []
acc_inv = request.env['account.invoice']
acc_inv_rec = acc_inv.search([('number', '=', doc.number)])
total_amount = acc_inv_rec.amount_total
if acc_inv_rec.state == 'draft':
balance_amount = total_amount
else:
balance_amount = acc_inv_rec.residual
paid = total_amount - balance_amount
vals = {
'total_amount': total_amount,
'balance_amount': balance_amount,
'paid': paid,
}
lines.append(vals)
return lines
@api.multi
def get_details(self, doc):
lines = []
acc_inv = request.env['account.invoice']
acc_inv_rec = acc_inv.search([('number', '=', doc.number)])
d = json.loads(acc_inv_rec.payments_widget)
for payment in d['content']:
vals = {
'memo': payment['name'],
'amount': payment['amount'],
'method': payment['journal_name'],
'date': payment['date'],
}
lines.append(vals)
return lines
class PrintReport(osv.AbstractModel):
_name = 'report.invoice_payment_receipt.report_payment'
_inherit = 'report.abstract_report'
_template = 'invoice_payment_receipt.report_payment'
_wrapped_report_class = AccountReceiptParser

BIN
invoice_payment_receipt/static/description/banner.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

BIN
invoice_payment_receipt/static/description/customer_invoice_form_view.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
invoice_payment_receipt/static/description/customer_receipt.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

BIN
invoice_payment_receipt/static/description/cybro_logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

BIN
invoice_payment_receipt/static/description/icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

103
invoice_payment_receipt/static/description/index.html

@ -0,0 +1,103 @@
<section class="oe_container">
<div class="oe_row">
<h2 class="oe_slogan">Payment Receipt Report</h2>
<h3 class="oe_slogan">Customer Receipts & Vendor Payment Report</h3>
<h4 class="oe_slogan">Cybrosys Techno Solutions, www.cybrosys.com</h4>
</div>
</section>
<section>
<div class="row oe_row oe_spaced">
<div class="col-md-12">
&#9728; Generate Customer invoice receipt with payment details.<br>
&#9728; Generate Vendor receipt with payment details.<br>
</div>
</div>
<div class="oe_row">
<h2 class="oe_slogan">Customer Invoice</h2>
<h4 class="oe_slogan">Customer Invoice Form View</h4>
<div class="oe_span12">
<p class='oe_mt32'>
<br>
</p>
<div class="oe_row_img oe_centered">
<img class="oe_picture oe_screenshot" src="customer_invoice_form_view.png">
</div>
</div>
</div>
<div class="oe_row oe_spaced">
<h4 class="oe_slogan">Customer Receipt Print</h4>
<div class="oe_span12">
<p class='oe_mt32'>
<br>
</p>
<div class="oe_row_img oe_centered">
<img class="oe_picture oe_screenshot" src="receipt_print_customer.png">
</div>
</div>
</div>
<div class="oe_row oe_spaced">
<h4 class="oe_slogan">Customer Receipt Report</h4>
<div class="oe_span12">
<p class='oe_mt32'>
<br>
</p>
<div class="oe_row_img oe_centered">
<img class="oe_picture oe_screenshot" src="customer_receipt.png">
</div>
</div>
</div>
</section>
<section>
<div class="oe_row oe_spaced">
<h2 class="oe_slogan">Vendor Bill</h2>
<h4 class="oe_slogan">Vendor Bill Form View</h4>
<div class="oe_span12">
<p class='oe_mt32'>
<br>
</p>
<div class="oe_row_img oe_centered">
<img class="oe_picture oe_screenshot" src="vendor_invoice_form.png">
</div>
</div>
</div>
<div class="oe_row oe_spaced">
<h4 class="oe_slogan">Vendor Receipt Print</h4>
<div class="oe_span12">
<p class='oe_mt32'>
<br>
</p>
<div class="oe_row_img oe_centered">
<img class="oe_picture oe_screenshot" src="vendor_print_button.png">
</div>
</div>
</div>
<div class="oe_row oe_spaced">
<h4 class="oe_slogan">Vendor Receipt Report</h4>
<div class="oe_span12">
<p class='oe_mt32'>
<br>
</p>
<div class="oe_row_img oe_centered">
<img class="oe_picture oe_screenshot" src="vendor_receipt.png">
</div>
</div>
</div>
</section>
<section class="oe_container oe_dark">
<h3 class="oe_slogan">Need Any Help?</h3>
<div class="oe_slogan">
<a class="btn btn-primary btn-lg mt8"
style="color: #FFFFFF !important;" href="http://www.cybrosys.com"><i
class="fa fa-envelope"></i> Email </a> <a
class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;"
href="http://www.cybrosys.com/contact/"><i
class="fa fa-phone"></i> Contact Us </a> <a
class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;"
href="http://www.cybrosys.com/odoo-customization-and-installation/"><i
class="fa fa-check-square"></i> Request Customization </a>
</div>
<img src="cybro_logo.png" style="width: 190px; margin-bottom: 20px;" class="center-block">
</section>

BIN
invoice_payment_receipt/static/description/receipt_print_customer.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

BIN
invoice_payment_receipt/static/description/vendor_invoice_form.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

BIN
invoice_payment_receipt/static/description/vendor_print_button.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
invoice_payment_receipt/static/description/vendor_receipt.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

22
invoice_payment_receipt/views/account_payment_print.xml

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<report
id="report_payment_receipt"
string="Payment Receipt"
model="account.invoice"
report_type="qweb-pdf"
file="invoice_payment_receipt.report_payment"
name="invoice_payment_receipt.report_payment"
/>
<template id="report_payment">
<t t-call="report.html_container">
<t t-foreach="docs" t-as="doc">
<t t-call="invoice_payment_receipt.report_payment_print" t-lang="doc.partner_id.lang"/>
</t>
</t>
</template>
</data>
</odoo>

82
invoice_payment_receipt/views/receipt_print_template.xml

@ -0,0 +1,82 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="report_payment_print">
<t t-call="report.html_container">
<t t-set="doc" t-value="doc.with_context({'lang':doc.partner_id.lang})" />
<t t-call="report.internal_layout">
<div class="page" >
<t t-call="report.external_layout">
<div class="header" style="text-align:center;"><h1><strong>Payment Receipt</strong></h1></div>
<div class="row mt32 mb32" style="text-align:center;">
</div>
<div class="row mt32 mb32" >
<div class="col-xs-12" style="text-align:left;">
<span style="float:left;"><strong>Partner:</strong><span t-field="doc.partner_id.name"/></span>
<span style="float:left; padding-left:50px;"><strong>Invoice Date:</strong><span t-field="doc.date_invoice"/></span>
<span style="float:left; padding-left:50px;"><strong>Due Date:</strong><span t-field="doc.date_due"/></span>
</div>
</div>
<table class="table table-condensed">
<thead>
<tr >
<th style="background-color:#9b9da0 !important;">INVOICE TOTAL</th>
<th style="background-color:#9b9da0 !important;">PAID</th>
<th style="background-color:#9b9da0 !important;">DUE</th>
</tr>
</thead>
<tbody>
<t t-set="paid_amount" t-value='1'></t>
<t t-foreach="get_details_invoice(doc)" t-as="rec">
<tr>
<td><span t-att-style="style" t-esc="rec['total_amount']"/></td>
<t t-set="paid_amount" t-value="rec['paid']"/>
<td><span t-att-style="style" t-esc="rec['paid']"/> </td>
<td><span t-att-style="style" t-esc="rec['balance_amount']"/></td>
</tr>
</t>
</tbody>
</table>
<t t-if="paid_amount != 0">
<div class="row mt32 mb32" style="text-align:center;">
<div class="col-xs-12">
<h3><strong>Payment Details</strong></h3>
</div>
</div>
<t t-if="doc.amount_total != doc.residual">
<table class="table table-condensed">
<thead>
<tr >
<th style="background-color:#9b9da0 !important;">MEMO</th>
<th style="background-color:#9b9da0 !important;">PAYMENT DATE</th>
<th style="background-color:#9b9da0 !important;">METHOD</th>
<th style="background-color:#9b9da0 !important;">AMOUNT</th>
</tr>
</thead>
<tbody>
<t t-foreach="get_details(doc)" t-as="b">
<tr>
<td>
<span t-att-style="style" t-esc="b['memo']"/>
</td>
<td>
<span t-att-style="style" t-esc="b['date']"/>
</td>
<td>
<span t-att-style="style" t-esc="b['method']"/>
</td>
<td>
<span t-att-style="style" t-esc="b['amount']"/>
</td>
</tr>
</t>
</tbody>
</table>
</t>
</t>
</t>
</div>
</t>
</t>
</template>
</odoo>
Loading…
Cancel
Save