summaryrefslogtreecommitdiff
path: root/addons/account
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2018-11-16 19:30:20 +0100
committerChristophe Simonis <chs@odoo.com>2018-11-16 19:30:20 +0100
commit6faad524cf5e4db02855cb213277c40aee14c42a (patch)
tree383c984dc1461a03481baa9fbdce8c156ca97e2e /addons/account
parent3657dc77c2ddb4275f07d1271b93e7f25e09913a (diff)
parentbc744a1da46efda6f1eb5c341f2fa5df30c9c7ad (diff)
[MERGE] forward port branch 12.0 up to bc744a1da46
Diffstat (limited to 'addons/account')
-rw-r--r--addons/account/models/account_move.py4
-rw-r--r--addons/account/report/account_aged_partner_balance.py20
-rw-r--r--addons/account/security/ir.model.access.csv2
-rw-r--r--addons/account/static/src/js/reconciliation/reconciliation_model.js5
-rw-r--r--addons/account/wizard/account_report_common.py2
5 files changed, 17 insertions, 16 deletions
diff --git a/addons/account/models/account_move.py b/addons/account/models/account_move.py
index dc4c37f54db..9e94cc389e8 100644
--- a/addons/account/models/account_move.py
+++ b/addons/account/models/account_move.py
@@ -167,8 +167,8 @@ class AccountMove(models.Model):
return line_ids.filtered(lambda x: tax in x.tax_ids)
def _get_tax_account(tax, amount):
- if tax.tax_exigibility == 'on_payment' and tax.cash_basis_account:
- return tax.cash_basis_account
+ if tax.tax_exigibility == 'on_payment' and tax.cash_basis_account_id:
+ return tax.cash_basis_account_id
if tax.type_tax_use == 'purchase':
return tax.refund_account_id if amount < 0 else tax.account_id
return tax.refund_account_id if amount >= 0 else tax.account_id
diff --git a/addons/account/report/account_aged_partner_balance.py b/addons/account/report/account_aged_partner_balance.py
index 948cebf5c23..b89ec6bcb13 100644
--- a/addons/account/report/account_aged_partner_balance.py
+++ b/addons/account/report/account_aged_partner_balance.py
@@ -46,7 +46,9 @@ class ReportAgedPartnerBalance(models.AbstractModel):
total = []
partner_clause = ''
cr = self.env.cr
- company_ids = self.env.context.get('company_ids', (self.env.user.company_id.id,))
+ user_company = self.env.user.company_id
+ user_currency = user_company.currency_id
+ company_ids = self._context.get('company_ids') or [user_company.id]
move_state = ['draft', 'posted']
if target_move == 'posted':
move_state = ['posted']
@@ -128,15 +130,15 @@ class ReportAgedPartnerBalance(models.AbstractModel):
partner_id = line.partner_id.id or False
if partner_id not in partners_amount:
partners_amount[partner_id] = 0.0
- line_amount = line.balance
- if line.balance == 0:
+ line_amount = line.company_id.currency_id._convert(line.balance, user_currency, line.company_id, date_from)
+ if user_currency.is_zero(line_amount):
continue
for partial_line in line.matched_debit_ids:
if partial_line.max_date <= date_from:
- line_amount += partial_line.amount
+ line_amount += partial_line.company_id.currency_id._convert(partial_line.amount, user_currency, partial_line.currency_id, date_from)
for partial_line in line.matched_credit_ids:
if partial_line.max_date <= date_from:
- line_amount -= partial_line.amount
+ line_amount -= partial_line.company_id.currency_id._convert(partial_line.amount, user_currency, partial_line.currency_id, date_from)
if not self.env.user.company_id.currency_id.is_zero(line_amount):
partners_amount[partner_id] += line_amount
@@ -166,15 +168,15 @@ class ReportAgedPartnerBalance(models.AbstractModel):
partner_id = line.partner_id.id or False
if partner_id not in undue_amounts:
undue_amounts[partner_id] = 0.0
- line_amount = line.balance
- if line.balance == 0:
+ line_amount = line.company_id.currency_id._convert(line.balance, user_currency, line.company_id, date_from)
+ if user_currency.is_zero(line_amount):
continue
for partial_line in line.matched_debit_ids:
if partial_line.max_date <= date_from:
- line_amount += partial_line.amount
+ line_amount += partial_line.company_id.currency_id._convert(partial_line.amount, user_currency, partial_line.currency_id, date_from)
for partial_line in line.matched_credit_ids:
if partial_line.max_date <= date_from:
- line_amount -= partial_line.amount
+ line_amount -= partial_line.company_id.currency_id._convert(partial_line.amount, user_currency, partial_line.currency_id, date_from)
if not self.env.user.company_id.currency_id.is_zero(line_amount):
undue_amounts[partner_id] += line_amount
lines[partner_id].append({
diff --git a/addons/account/security/ir.model.access.csv b/addons/account/security/ir.model.access.csv
index 52ac52ad108..ef09176438b 100644
--- a/addons/account/security/ir.model.access.csv
+++ b/addons/account/security/ir.model.access.csv
@@ -39,8 +39,6 @@ access_account_journal_invoice,account.journal invoice,model_account_journal,acc
access_account_invoice_group_invoice,account.invoice group invoice,model_account_invoice,account.group_account_invoice,1,1,1,1
access_res_currency_account_manager,res.currency account manager,base.model_res_currency,group_account_manager,1,1,1,1
access_res_currency_rate_account_manager,res.currency.rate account manager,base.model_res_currency_rate,group_account_manager,1,1,1,1
-access_account_invoice_user,account.invoice user,model_account_invoice,base.group_user,1,0,0,0
-access_account_invoice_line_user,account.invoice.line user,model_account_invoice_line,base.group_user,1,0,0,0
access_account_invoice_portal,account.invoice.portal,account.model_account_invoice,base.group_portal,1,0,0,0
access_account_invoice_line_portal,account.invoice.line.portal,account.model_account_invoice_line,base.group_portal,1,0,0,0
access_account_payment_term_partner_manager,account.payment.term partner manager,model_account_payment_term,base.group_user,1,0,0,0
diff --git a/addons/account/static/src/js/reconciliation/reconciliation_model.js b/addons/account/static/src/js/reconciliation/reconciliation_model.js
index b9504bd6ee6..3c9174546cf 100644
--- a/addons/account/static/src/js/reconciliation/reconciliation_model.js
+++ b/addons/account/static/src/js/reconciliation/reconciliation_model.js
@@ -1262,8 +1262,9 @@ var ManualModel = StatementModel.extend({
});
var domainReconcile = [];
- if (context && context.company_ids) {
- domainReconcile.push(['company_id', 'in', context.company_ids]);
+ var company_ids = context && context.company_ids || [session.company_id]
+ if (company_ids) {
+ domainReconcile.push(['company_id', 'in', company_ids]);
}
var def_reconcileModel = this._rpc({
model: 'account.reconcile.model',
diff --git a/addons/account/wizard/account_report_common.py b/addons/account/wizard/account_report_common.py
index 6b47f2a7e8e..f5e5814c814 100644
--- a/addons/account/wizard/account_report_common.py
+++ b/addons/account/wizard/account_report_common.py
@@ -45,4 +45,4 @@ class AccountCommonReport(models.TransientModel):
data['form'] = self.read(['date_from', 'date_to', 'journal_ids', 'target_move', 'company_id'])[0]
used_context = self._build_contexts(data)
data['form']['used_context'] = dict(used_context, lang=self.env.context.get('lang') or 'en_US')
- return self._print_report(data)
+ return self.with_context(discard_logo_check=True)._print_report(data)