|
@@ -620,8 +620,40 @@ class AccountBankStatementUtility(models.Model):
|
|
|
@api.model
|
|
|
def account_bank_statement_open_cashbox(self, id):
|
|
|
statement = self._get_statement_transfer(id)
|
|
|
+
|
|
|
+ cashBoxConfirm = self._get_cashbox_statement_confirm(statement)
|
|
|
+ for casBox in cashBoxConfirm:
|
|
|
+ name = "SALDO ANTERIOR /"+str(casBox.statement_id.name)
|
|
|
+ lineTransfer = self._create_statement_line_transfer(statement, name, abs(casBox.amount_next_open), '')
|
|
|
+ if (not lineTransfer):
|
|
|
+ return {
|
|
|
+ 'state': False,
|
|
|
+ 'message': "Error al registrar el saldo anterior."
|
|
|
+ }
|
|
|
+
|
|
|
+ confirmCasBox = self.env['cashbox.statement.confirm'].browse(casBox.id)
|
|
|
+ values = {
|
|
|
+ 'statement_open': statement.id,
|
|
|
+ 'state_avaliable': False
|
|
|
+ }
|
|
|
+
|
|
|
+ confirmCasBox = self._writer_cashbox_statement_confirm(confirmCasBox,values)
|
|
|
+
|
|
|
+
|
|
|
return statement.button_open()
|
|
|
|
|
|
+ '''
|
|
|
+ get cashbox.statement.confirm
|
|
|
+ '''
|
|
|
+ def _get_cashbox_statement_confirm(self, statement):
|
|
|
+ return self.env['cashbox.statement.confirm'].search([('statement_id.type_statement.id', '=', statement.type_statement.id),('user_statement', '=', statement.user_id.id),('journal_id', '=', statement.journal_id.id), ('state_avaliable', '=', True)])
|
|
|
+
|
|
|
+ '''
|
|
|
+ writer casbox statement confirm
|
|
|
+ '''
|
|
|
+ def _writer_cashbox_statement_confirm(self, casbox, values):
|
|
|
+ return casbox.write(values)
|
|
|
+
|
|
|
'''
|
|
|
method Open CashBox
|
|
|
'''
|
|
@@ -673,6 +705,8 @@ class AccountBankStatementUtility(models.Model):
|
|
|
def account_bank_statement_confirm(self, values):
|
|
|
|
|
|
date_server = self.get_server_datetime()
|
|
|
+
|
|
|
+ user = self.env.user
|
|
|
|
|
|
bankStatement = self._get_statement_transfer(values['statementId'])
|
|
|
if (not bankStatement):
|
|
@@ -695,6 +729,7 @@ class AccountBankStatementUtility(models.Model):
|
|
|
lineBalance = self._create_statement_line_transfer(bankStatement, name, amount, values['refBalance'])
|
|
|
|
|
|
|
|
|
+ cash_box_transfer = []
|
|
|
if (values['transfer']):
|
|
|
statementTransfer = self._get_statement_transfer(values['statementTransfer'])
|
|
|
if (not statementTransfer):
|
|
@@ -743,8 +778,10 @@ class AccountBankStatementUtility(models.Model):
|
|
|
cashboxConfirm = {
|
|
|
'name': "CIERRE DE CAJA /"+str(bankStatement.name),
|
|
|
'date': date_server,
|
|
|
+ 'ref': values['refBalance'],
|
|
|
'statement_id': bankStatement.id,
|
|
|
'user_statement': bankStatement.user_id.id,
|
|
|
+ 'user_confirm': user.id,
|
|
|
'journal_id' : bankStatement.journal_id.id,
|
|
|
'amount_statement': amountStatement,
|
|
|
'amount_real': values['amountReal'],
|
|
@@ -752,6 +789,8 @@ class AccountBankStatementUtility(models.Model):
|
|
|
'amount_difference': abs(lineBalance.amount) if (lineBalance) else 0.0,
|
|
|
'line_next_open': lineNextOpen.id if(lineNextOpen) else '',
|
|
|
'amount_next_open': abs(lineNextOpen.amount) if(lineNextOpen) else 0.0,
|
|
|
+ 'state_avaliable': True if(lineNextOpen) else False,
|
|
|
+ 'casbox_transfer_id': cash_box_transfer.id if (cash_box_transfer) else ''
|
|
|
}
|
|
|
|
|
|
statementConfirm = self._create_cashbox_statement_confirm(cashboxConfirm)
|