|
@@ -196,7 +196,42 @@ class AccountVoucher(models.Model):
|
|
|
'state': 'paid'
|
|
|
})
|
|
|
|
|
|
+
|
|
|
+ # Step 10: Save bank statement
|
|
|
+ bank_statement_lines = [[0, False, {
|
|
|
+ 'name': account_voucher.reference,
|
|
|
+ 'amount': account_voucher.amount,
|
|
|
+ 'partner_id': account_voucher.partner_id.id,
|
|
|
+ 'voucher_id': account_voucher.id,
|
|
|
+ 'journal_id': account_voucher.journal_id.id,
|
|
|
+ 'account_id': account_voucher.account_id.id,
|
|
|
+ 'journal_entry_id': account_voucher.move_id.id,
|
|
|
+ 'currency_id': account_voucher.currency_id.id,
|
|
|
+ 'ref': 'POS'
|
|
|
+ }]]
|
|
|
+
|
|
|
+ account_bank_statement = self.env['account.bank.statement'].search([('journal_id', '=', account_voucher.journal_id.id), ('date', '=', date_now)])
|
|
|
+
|
|
|
+ account_bank_statement_values = {
|
|
|
+ 'date': date_now,
|
|
|
+ 'user_id': self.env.user.id,
|
|
|
+ 'journal_id': account_voucher.journal_id.id,
|
|
|
+ 'period_id': account_voucher.period_id.id,
|
|
|
+ 'line_ids': bank_statement_lines,
|
|
|
+ 'state': 'open'
|
|
|
+ }
|
|
|
+
|
|
|
+ if account_bank_statement:
|
|
|
+ if len(account_bank_statement) == 1:
|
|
|
+ account_bank_statement.write(account_bank_statement_values)
|
|
|
+ else:
|
|
|
+ account_bank_statement[len(account_bank_statement) - 1].write(account_bank_statement_values)
|
|
|
+ else:
|
|
|
+ account_bank_statement.create(account_bank_statement_values)
|
|
|
+
|
|
|
+ # Step 11: Return values
|
|
|
return {
|
|
|
'action_id': self.env['ir.actions.report.xml'].search([('report_name', '=', 'account.report_invoice')]).id,
|
|
|
'invoice_id': invoice.id
|
|
|
- }
|
|
|
+ }
|
|
|
+
|