Browse Source

remise en banque

master
raynald 3 years ago
parent
commit
08749777a2
15 changed files with 303 additions and 34 deletions
  1. +2
    -1
      __manifest__.py
  2. +1
    -1
      models/__init__.py
  3. +65
    -0
      models/bank_deposit.py
  4. +3
    -0
      models/donation.py
  5. +2
    -16
      models/payment_batch.py
  6. +3
    -3
      report/report.xml
  7. +126
    -0
      report/report_bank_deposit.xml
  8. +2
    -0
      security/ir.model.access.csv
  9. +66
    -5
      views/bank_deposit.xml
  10. +16
    -0
      views/donation.xml
  11. +2
    -2
      views/partner.xml
  12. +4
    -1
      views/payment_batch.xml
  13. +8
    -0
      views/recurring_donation.xml
  14. +2
    -5
      views/settings.xml
  15. +1
    -0
      wizard/create_bank_deposit_wizard.py

+ 2
- 1
__manifest__.py View File

@ -32,6 +32,7 @@
'views/email.xml', 'views/email.xml',
'views/phone.xml', 'views/phone.xml',
'views/partner.xml', 'views/partner.xml',
'views/donation.xml',
'views/recurring_donation.xml', 'views/recurring_donation.xml',
'data/recurring_donation_configuration.xml', 'data/recurring_donation_configuration.xml',
'data/data.xml', 'data/data.xml',
@ -56,7 +57,7 @@
'report/report_donation_recurring.xml', 'report/report_donation_recurring.xml',
'report/report.xml', 'report/report.xml',
'report/report_donationthanks.xml', 'report/report_donationthanks.xml',
#'report/report_bank_deposit.xml',
'report/report_bank_deposit.xml',
'views/donation_tax_receipt.xml', 'views/donation_tax_receipt.xml',
'views/donation_thanks_template.xml', 'views/donation_thanks_template.xml',
'views/laposte_ref.xml', 'views/laposte_ref.xml',


+ 1
- 1
models/__init__.py View File

@ -27,4 +27,4 @@ from . import partner_import
#from . import res_partner_bank #from . import res_partner_bank
from .import donation_print_email_history from .import donation_print_email_history
from .import bank_deposit from .import bank_deposit
from .import accounting_deposit
from .import accounting_deposit

+ 65
- 0
models/bank_deposit.py View File

@ -15,10 +15,75 @@ class opendons_bank_deposit(models.Model):
ondelete="cascade", ondelete="cascade",
default=lambda self: self.env.company, default=lambda self: self.env.company,
) )
manual_mode_payment_id=fields.Many2one(
"account.payment.mode",
string="manual mode payment",
compute="_compute_manual_mode_payment"
)
payment_batch_ids = fields.One2many( payment_batch_ids = fields.One2many(
'opendons_payment_batch', 'opendons_payment_batch',
'bankdeposit_id', 'bankdeposit_id',
string='Payment batchs', string='Payment batchs',
readonly=True readonly=True
) )
@api.model
def _default_currency(self):
company = self.env['res.company']._company_default_get(
'donation.donation')
return company.currency_id
currency_id = fields.Many2one(
'res.currency',
string='Currency',
required=True,
states={'done': [('readonly', True)]},
track_visibility='onchange',
ondelete='restrict',
default=_default_currency
)
donation_count=fields.Integer('donation count',compute='_compute_donation_count')
total_amount=fields.Integer('total amount',compute='_compute_total_amount')
# template_bankdeposit_id=fields.Many2one('opendons.template_bankdeposit', 'bank deposit template')
# html_content=fields.Html('html content',compute='_html_content_rf')
# html_content_print=fields.Html('html content print')
def _compute_donation_count(self):
i=0
for p in self.payment_batch_ids:
for d in p.donation_ids:
for ld in d.line_ids:
i=i+1
self.donation_count=i-1
def _compute_total_amount(self):
i=0
for p in self.payment_batch_ids:
for d in p.donation_ids:
for ld in d.line_ids:
i=i+ld.amount
self.total_amount=i
def _compute_manual_mode_payment(self):
manual_method_payment=self.env['account.payment.method'].search([('code','=','manual')],limit=1)
if manual_method_payment:
m=self.env['account.payment.mode'].search([('payment_method_id','=',int(manual_method_payment.id))],limit=1)
if m:
self.manual_mode_payment_id=m.id
def action_print_bankdeposit(self):
self.ensure_one()
return self.env.ref("opendons.report_bankdeposits").report_action(self)
class opendons_bank_deposit_template(models.Model):
_name = 'opendons.bankdeposit.template'
_description = 'manage bank deposit template'
name=fields.Char('name')
description=fields.Text('description')
active=fields.Boolean('active')
html_page_header=fields.Html('Html page header')
html_page_section=fields.Html('Html page section')
html_page_footer=fields.Html('Html page footer')

+ 3
- 0
models/donation.py View File

@ -85,6 +85,9 @@ class DonationDonation(models.Model):
ondelete='set null' ondelete='set null'
) )
bank_deposit_date=fields.Datetime('Bank deposit date', related='payment_batch_id.bank_deposit_date')
accounting_deposit_date=fields.Datetime('Accounting deposit date' , related='payment_batch_id.accountingdeposit_date')
year_donation_date=fields.Integer('Year donation date',compute='_compute_year_donation_date',store=True) year_donation_date=fields.Integer('Year donation date',compute='_compute_year_donation_date',store=True)
print_email_history_ids=fields.One2many( print_email_history_ids=fields.One2many(
'opendons.donation.print_email_history', 'opendons.donation.print_email_history',


+ 2
- 16
models/payment_batch.py View File

@ -66,7 +66,7 @@ class opendons_payment_batch(models.Model):
string='donation', string='donation',
track_visibility='onchange') track_visibility='onchange')
deposited_in_bank=fields.Boolean('deposited in bank')
bank_deposit_date=fields.Datetime(related='bankdeposit_id.create_date') bank_deposit_date=fields.Datetime(related='bankdeposit_id.create_date')
accounting_deposit_date=fields.Datetime(related='accountingdeposit_id.create_date') accounting_deposit_date=fields.Datetime(related='accountingdeposit_id.create_date')
@ -247,21 +247,7 @@ class opendons_payment_batch(models.Model):
vals['qrcode']=self.payment_input vals['qrcode']=self.payment_input
self.env['opendons.payment_batch_qrcode'].create(vals) self.env['opendons.payment_batch_qrcode'].create(vals)
# else:
# view_id = self.env.ref('donation.donation_form').id
# context = self._context.copy()
# return {
# 'name':'donation.form',
# 'view_type':'form',
# 'view_mode':'tree',
# 'views' : [(view_id,'form')],
# 'res_model':'donation.donation',
# 'view_id':view_id,
# 'type':'ir.actions.act_window',
# 'res_id':self.id,
# 'target':'new',
# 'context':context,
# }


+ 3
- 3
report/report.xml View File

@ -43,17 +43,17 @@
<field name="binding_type">report</field> <field name="binding_type">report</field>
</record> </record>
<!-- <record id="report_bank_deposit" model="ir.actions.report">
<record id="report_bankdeposits" model="ir.actions.report">
<field name="name">Bank deposit report</field> <field name="name">Bank deposit report</field>
<field name="model">opendons.bankdeposit</field> <field name="model">opendons.bankdeposit</field>
<field name="report_type">qweb-pdf</field> <field name="report_type">qweb-pdf</field>
<field name="report_name">opendons.report_bankdeposit</field> <field name="report_name">opendons.report_bankdeposit</field>
<field name="report_file">opendons.report_bankdeposit</field> <field name="report_file">opendons.report_bankdeposit</field>
<field name="print_report_name" <field name="print_report_name"
>'Remise_en_banque-'+(object.number or '').replace('/','')+'.pdf'</field>
>'Remise_en_banque.pdf'</field>
<field name="binding_model_id" ref="model_opendons_bankdeposit" /> <field name="binding_model_id" ref="model_opendons_bankdeposit" />
<field name="attachment_use" eval="True" /> <field name="attachment_use" eval="True" />
<field name="binding_type">report</field> <field name="binding_type">report</field>
</record> -->
</record>
</odoo> </odoo>

+ 126
- 0
report/report_bank_deposit.xml View File

@ -0,0 +1,126 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<template id="report_bankdeposit">
<t t-call="web.html_container">
<t t-foreach="docs" t-as="doc">
<t t-call="web.internal_layout">
<br></br>
<br></br>
<br></br>
<h1>BORDEREAU DE REMISE EN BANQUE</h1>
<br></br>
<span>édité le : </span><span t-esc="context_timestamp(datetime.datetime.now()).strftime('%Y-%m-%d %H:%M')"/> par <span t-esc="request.env.user.name"/>
<br></br>
<br></br>
<table>
<tr>
<td>
<tr><td><b><span>Entité : </span></b></td><td><span t-esc="doc.company_id.name"/></td></tr>
<tr><td><b><span>Banque : </span></b></td><td><span t-esc="doc.manual_mode_payment_id.fixed_journal_id.bank_id.display_name"/></td></tr>
<tr><td><b><span>Compte : </span></b></td><td><span t-esc="doc.manual_mode_payment_id.fixed_journal_id.bank_account_id.acc_number"/></td></tr>
</td>
<td>
</td>
</tr>
</table>
<br></br>
<br></br>
<table class="table table-sm o_main_table">
<thead>
<tr>
<th class="text-left"><span>N° Bordereau</span></th>
<th class="text-left"><span>Nombre</span></th>
<th class="text-left"><span>Montant</span></th>
<th class="text-left"><span>Mode</span></th>
<th class="text-left"><span>Auteur</span></th>
</tr>
</thead>
<tbody class="bankdeposit_tbody">
<tr>
<td><span t-esc="doc.id"/></td>
<td><span t-esc="doc.donation_count"/></td>
<td><span t-esc="doc.total_amount" t-options='{"widget": "monetary", "display_currency": doc.currency_id}'/></td>
<td><span></span></td>
<td><span t-esc="request.env.user.name"/></td>
</tr>
</tbody>
</table>
<t t-foreach="doc.payment_batch_ids" t-as="p">
<table class="table table-sm o_main_table">
<thead>
<tr>
<th class="text-left"><span>Id contact</span></th>
<th class="text-left"><span>Identification</span></th>
<th class="text-left"><span>Montant</span></th>
</tr>
</thead>
<tbody class="bankdeposit_tbody">
<t t-foreach="p.donation_ids" t-as="d">
<t t-foreach="d.line_ids" t-as="l">
<tr>
<td><span t-esc="d.partner_id.donor_id"/></td>
<td><span t-esc="d.partner_id.name+' '+d.partner_id.firstname"/></td>
<td><span t-esc="l.amount" t-options='{"widget": "monetary", "display_currency": l.currency_id}'/></td>
</tr>
</t>
</t>
</tbody>
</table>
</t>
</t>
</t>
</t>
</template>
<!-- <template id="report_bank_deposit">
<t t-call="web.internal_layout">
<t t-foreach="docs" t-as="o">
<div class="header">
<div class="row">
Header
</div>
</div>
<div class="article">
<div class="page">
<div class="row justify-content-end">
Report Body
</div>
</div>
</div>
<div class="footer" style="font-size:12px;">
Footer
</div>
</t>
</t>
</template> -->
<!-- <template id="report_bank_deposit">
<t t-call="web.html_container">
<t t-foreach="docs" t-as="doc">
<t
t-call="opendons.report_bankdeposit_document"
t-lang="doc.partner_id.lang"
/>
</t>
</t>
</template> -->
</odoo>

+ 2
- 0
security/ir.model.access.csv View File

@ -33,6 +33,7 @@ access_opendons_duplicate_partner,opendons_duplicate_partner,model_opendons_dupl
access_opendons_template_rf,opendons_template_rf,model_opendons_template_rf,donation.group_donation_manager,1,1,1,1 access_opendons_template_rf,opendons_template_rf,model_opendons_template_rf,donation.group_donation_manager,1,1,1,1
access_opendons_type_template_rf,opendons_type_template_rf,model_opendons_type_template_rf,donation.group_donation_manager,1,1,1,1
access_opendons_donation_thanks_type_template,opendons_donation_thanks_type_template,model_opendons_type_donation_thanks_template,donation.group_donation_manager,1,1,1,1 access_opendons_donation_thanks_type_template,opendons_donation_thanks_type_template,model_opendons_type_donation_thanks_template,donation.group_donation_manager,1,1,1,1
@ -56,4 +57,5 @@ access_opendons_create_bank_deposit_wizard,opendons_create_bank_deposit_wizard,m
access_opendons_create_accounting_deposit_wizard,opendons_create_accounting_deposit_wizard,model_opendons_createaccountingdeposit,donation.group_donation_manager,1,1,1,1 access_opendons_create_accounting_deposit_wizard,opendons_create_accounting_deposit_wizard,model_opendons_createaccountingdeposit,donation.group_donation_manager,1,1,1,1
access_opendons_bank_deposit,opendons_bank_deposit,model_opendons_bankdeposit,donation.group_donation_manager,1,1,1,1 access_opendons_bank_deposit,opendons_bank_deposit,model_opendons_bankdeposit,donation.group_donation_manager,1,1,1,1
access_opendons_bank_deposit_template,opendons_bank_deposit_template,model_opendons_bankdeposit_template,donation.group_donation_manager,1,1,1,1
access_opendons_accounting_deposit,opendons_accounting_deposit,model_opendons_accountingdeposit,donation.group_donation_manager,1,1,1,1 access_opendons_accounting_deposit,opendons_accounting_deposit,model_opendons_accountingdeposit,donation.group_donation_manager,1,1,1,1

+ 66
- 5
views/bank_deposit.xml View File

@ -21,10 +21,10 @@
<field name="model">opendons.bankdeposit</field> <field name="model">opendons.bankdeposit</field>
<field name="arch" type="xml"> <field name="arch" type="xml">
<header> <header>
<button name="action_print_bankdeposit" type="object" string="Print bank deposit"/>
</header> </header>
<sheet>
<form string="bank_deposit_form"> <form string="bank_deposit_form">
<sheet>
<group name="bank_deposit"> <group name="bank_deposit">
<field name="create_date"/> <field name="create_date"/>
<field name="create_uid"/> <field name="create_uid"/>
@ -38,9 +38,10 @@
</tree> </tree>
</field> </field>
</group> </group>
</sheet>
</form> </form>
</sheet>
</field> </field>
</record> </record>
@ -54,8 +55,68 @@
</record> </record>
<menuitem id="bank_deposit_menu" action="bank_deposit_action"
parent="payment_batch_top_menu" sequence="20"/>
<record model="ir.ui.view" id="opendons.template_bankdeposit_form" >
<field name="name">opendons_template_bankdeposit Form</field>
<field name="model">opendons.bankdeposit.template</field>
<field name="arch" type="xml">
<form>
<sheet>
<group name="main">
<field name="name"/>
<field name="description"/>
<field name="active"/>
<field name="html_page_header"/>
<field name="html_page_section"/>
<field name="html_page_footer"/>
</group>
</sheet>
</form>
</field>
</record>
<record model="ir.ui.view" id="opendons.template_bankdeposit_list" >
<field name="name">opendons_template_bankdeposit List</field>
<field name="model">opendons.bankdeposit.template</field>
<field name="arch" type="xml">
<tree>
<field name="name"/>
<field name="active"/>
<field name="description"/>
</tree>
</field>
</record>
<record model="ir.actions.act_window" id="template_bankdeposit_action">
<field name="name">Bank deposit templates </field>
<field name="res_model">opendons.bankdeposit.template</field>
<field name="view_mode">tree,form</field>
</record>
<menuitem id="bank_deposit_menu" parent="payment_batch_top_menu" action="bank_deposit_action" sequence="20"/>
<menuitem
id="opendons_template_bankdeposit"
action="template_bankdeposit_action"
parent="bank_deposit_menu"
sequence="30"
/>
<menuitem
id="opendons_bankdeposit"
action="bank_deposit_action"
parent="bank_deposit_menu"
sequence="30"
/>
</data> </data>
</odoo> </odoo>

+ 16
- 0
views/donation.xml View File

@ -0,0 +1,16 @@
<odoo>
<record id="view_opendons_donation_tree" model="ir.ui.view">
<field name="name">opendons.donation.tree</field>
<field name="model">donation.donation</field>
<field name="inherit_id" ref="donation.donation_tree" />
<field name="arch" type="xml">
<xpath expr="//field[@name='donation_date']" position="after">
<field name="bank_deposit_date"/>
<field name="accounting_deposit_date"/>
</xpath>
</field>
</record>
</odoo>

+ 2
- 2
views/partner.xml View File

@ -195,9 +195,9 @@
</xpath> </xpath>
<xpath expr="//button[@name='294']" position="replace">
<!-- <xpath expr="//button[@name='294']" position="replace">
</xpath>
</xpath> -->
<xpath expr="//button[@name='action_view_partner_invoices']" position="replace"> <xpath expr="//button[@name='action_view_partner_invoices']" position="replace">
</xpath> </xpath>


+ 4
- 1
views/payment_batch.xml View File

@ -8,7 +8,7 @@
<field name="arch" type="xml"> <field name="arch" type="xml">
<tree> <tree>
<field name="id"/> <field name="id"/>
<field name="state"/>
<field name="state" widget="badge" decoration-success="state == 'deposited_in_accounting'" decoration-warning="state == 'deposited_in_bank'" decoration-info="state == 'draft'" decoration-danger="state == 'validated'"/>
<field name="create_date"/> <field name="create_date"/>
<field name="create_uid"/> <field name="create_uid"/>
<!-- <field name="bank_deposit_date" string="bank deposit date" widget="badge" decoration-info="bank_deposit_date"/> <!-- <field name="bank_deposit_date" string="bank deposit date" widget="badge" decoration-info="bank_deposit_date"/>
@ -31,6 +31,7 @@
class="oe_highlight" states="draft"/> class="oe_highlight" states="draft"/>
<button type="object" name="validated2draft" <button type="object" name="validated2draft"
string="Back to Draft" states="validated"/> string="Back to Draft" states="validated"/>
<field name="state" widget="statusbar" <field name="state" widget="statusbar"
statusbar_visible="draft,validated,deposited_in_bank,deposited_in_accounting"/> statusbar_visible="draft,validated,deposited_in_bank,deposited_in_accounting"/>
@ -40,6 +41,8 @@
<field name="create_date"/> <field name="create_date"/>
<field name="create_uid"/> <field name="create_uid"/>
<field string='bank deposit date' name='bank_deposit_date' attrs="{'invisible':[('state','!=','deposited_in_bank')]}"/>
<field string='account deposit date' name='accounting_deposit_date' attrs="{'invisible':[('state','!=','deposited_in_accounting')]}"/>
<field name="payment_mode_id"/> <field name="payment_mode_id"/>
<field name="input_mode"/> <field name="input_mode"/>
<field name="assignment"/> <field name="assignment"/>


+ 8
- 0
views/recurring_donation.xml View File

@ -249,4 +249,12 @@
<menuitem id="recurring_donation_configuration_menu" parent="recurring_donation_top_menu" <menuitem id="recurring_donation_configuration_menu" parent="recurring_donation_top_menu"
sequence="16" name="Configuration"/> sequence="16" name="Configuration"/>
<menuitem id="menu_recurring_donation_configuration"
action="action_recurring_payment_config"
parent="recurring_donation_configuration_menu"
sequence="30"/>
</odoo> </odoo>

+ 2
- 5
views/settings.xml View File

@ -55,8 +55,5 @@
<field name="context">{'module':'opendons'}</field> <field name="context">{'module':'opendons'}</field>
</record> </record>
<menuitem id="menu_recurring_donation_configuration"
action="action_recurring_payment_config"
parent="recurring_donation_configuration_menu"
sequence="30"/>
</odoo>
</odoo>

+ 1
- 0
wizard/create_bank_deposit_wizard.py View File

@ -27,6 +27,7 @@ class CreateBankDeposit(models.TransientModel):
#add bank deposit to payment #add bank deposit to payment
p.bankdeposit_id=bd.id p.bankdeposit_id=bd.id
p.state='deposited_in_bank' p.state='deposited_in_bank'
p.bank_deposit_date=bd.create_date
# #creation de l'opération sans les segments # #creation de l'opération sans les segments


Loading…
Cancel
Save