Skip to content

Commit

Permalink
Merge a3b6db4 into 7adf99a
Browse files Browse the repository at this point in the history
  • Loading branch information
OpenCode committed Dec 5, 2019
2 parents 7adf99a + a3b6db4 commit 026f9ed
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 33 deletions.
10 changes: 8 additions & 2 deletions l10n_it_central_journal/views/report_account_central_journal.xml
Original file line number Diff line number Diff line change
Expand Up @@ -116,8 +116,14 @@
</td>
<!-- Name -->
<td class="left_without_line">
<div style="page-break-inside: avoid"
t-esc="line.name"/>
<t t-if="line.account_id.user_type_id.type in ['receivable', 'payable']">
<div style="page-break-inside: avoid"
t-esc="line.partner_id.name" />
</t>
<t t-else="">
<div style="page-break-inside: avoid"
t-esc="line.name" />
</t>
</td>
<!-- Debit -->
<td class="right_without_line">
Expand Down
65 changes: 34 additions & 31 deletions l10n_it_central_journal/wizard/print_giornale.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
from odoo import models, fields, api, _
from odoo.exceptions import Warning as UserError
from datetime import timedelta
from odoo.tools.misc import flatten


class WizardGiornale(models.TransientModel):
Expand Down Expand Up @@ -85,21 +86,33 @@ def on_change_daterange(self):
if self.last_def_date_print == self.daterange.date_end:
self.date_move_line_from_view = self.last_def_date_print

def print_giornale(self):
def get_line_ids(self):
wizard = self
if wizard.target_move == 'all':
target_type = ['posted', 'draft']
else:
target_type = [wizard.target_move]
move_line_obj = self.env['account.move.line']
move_line_ids = move_line_obj.search([
('date', '>=', wizard.date_move_line_from),
('date', '<=', wizard.date_move_line_to),
('journal_id', 'in', [j.id for j in wizard.journal_ids]),
('move_id.state', 'in', target_type)
], order='date, move_id asc')
if not move_line_ids:
raise UserError(_('No documents found in the current selection'))
sql = """
SELECT aml.id FROM account_move_line aml
LEFT JOIN account_move am ON (am.id = aml.move_id)
WHERE
aml.date >= %(date_from)s
AND aml.date <= %(date_to)s
AND am.state in %(target_type)s
ORDER BY am.date, am.name
"""
params = {
'date_from': wizard.date_move_line_from,
'date_to': wizard.date_move_line_to,
'target_type': tuple(target_type)
}
self.env.cr.execute(sql, params)
res = self.env.cr.fetchall()
move_line_ids = flatten(res)
return move_line_ids

def _prepare_datas_form(self):
wizard = self
datas_form = {}
datas_form['date_move_line_from'] = wizard.date_move_line_from
datas_form['last_def_date_print'] = wizard.last_def_date_print
Expand All @@ -109,10 +122,17 @@ def print_giornale(self):
datas_form['progressive_credit'] = wizard.progressive_credit
datas_form['start_row'] = wizard.start_row
datas_form['daterange'] = wizard.daterange.id
return datas_form

def print_giornale(self):
move_line_ids = self.get_line_ids()
if not move_line_ids:
raise UserError(_('No documents found in the current selection'))
datas_form = self._prepare_datas_form()
datas_form['print_state'] = 'draft'
datas_form['year_footer'] = wizard.year_footer
datas = {
'ids': move_line_ids.ids,
'ids': move_line_ids,
'model': 'account.move',
'form': datas_form}
return self.env.ref(
Expand All @@ -126,32 +146,15 @@ def print_giornale_final(self):
wizard.date_move_line_from <= wizard.last_def_date_print:
raise UserError(_('Date already printed'))
else:
if wizard.target_move == 'all':
target_type = ['posted', 'draft']
else:
target_type = [wizard.target_move]
move_line_obj = self.env['account.move.line']
move_line_ids = move_line_obj.search([
('date', '>=', wizard.date_move_line_from),
('date', '<=', wizard.date_move_line_to),
('move_id.state', 'in', target_type)
], order='date, move_id asc')
move_line_ids = self.get_line_ids()
if not move_line_ids:
raise UserError(
_('No documents found in the current selection'))
datas_form = {}
datas_form['date_move_line_from'] = wizard.date_move_line_from
datas_form['last_def_date_print'] = wizard.last_def_date_print
datas_form['date_move_line_to'] = wizard.date_move_line_to
datas_form['fiscal_page_base'] = wizard.fiscal_page_base
datas_form['progressive_debit'] = wizard.progressive_debit2
datas_form['progressive_credit'] = wizard.progressive_credit
datas_form['daterange'] = wizard.daterange.id
datas_form['start_row'] = wizard.start_row
datas_form = self._prepare_datas_form()
datas_form['print_state'] = 'def'
datas_form['year_footer'] = wizard.year_footer
datas = {
'ids': move_line_ids.ids,
'ids': move_line_ids,
'model': 'account.move',
'form': datas_form
}
Expand Down

0 comments on commit 026f9ed

Please sign in to comment.