account_bank_statement.py 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. # -*- coding: utf-8 -*-
  2. from openerp import models, fields, tools, api
  3. class AccountBankStatement(models.Model):
  4. _inherit = 'account.bank.statement'
  5. @api.model
  6. def _default_type_statement(self):
  7. typeStatement = self.env['account.bank.statement.type'].search([('is_default', '=', True)],limit=1)
  8. return typeStatement.id if (typeStatement) else ''
  9. type_statement = fields.Many2one('account.bank.statement.type', string='Tipo de Caja', ondelete='restrict')
  10. _defaults = {
  11. 'type_statement': _default_type_statement,
  12. }
  13. @api.model
  14. def update_statement_type_defualt(self):
  15. type = self.env['account.bank.statement.type'].search([('is_default', '=', True)],limit=1)
  16. statement = self.env['account.bank.statement'].search([('type_statement', '=', False)])
  17. if (not statement):
  18. return False
  19. for statementUpdate in statement:
  20. statementUpdate.write({
  21. 'type_statement': type.id
  22. })
  23. # @api.model
  24. # def get_statement_point_of_sale(self, id):
  25. # accountStatement = self.env['account.bank.statement'].browse(id)
  26. # decimal_precision = self.env['decimal.precision'].precision_get('Account')
  27. # if (not accountStatement):
  28. # return False
  29. #
  30. # statementPointOfSale = self._get_statement_point_of_sale(accountStatement)
  31. # if (not statementPointOfSale):
  32. # return False
  33. #
  34. # statementLine = []
  35. #
  36. # for line in statementPointOfSale:
  37. # lineStatement = self.env['account.bank.statement.line'].search([('name', '=', line['name'])])
  38. # if (not lineStatement):
  39. # amount = line['amount']
  40. #
  41. # statementLine.append([0, False, {
  42. # 'name': line['name'],
  43. # 'ref' : 'Responsable/'+line['userName'],
  44. # 'amount': round(float(amount), decimal_precision),
  45. # 'journal_id': accountStatement.journal_id.id,
  46. # 'account_id': accountStatement.journal_id.internal_account_id.id,
  47. # 'statement_id': accountStatement.id,
  48. # 'date': line['date'],
  49. # }])
  50. #
  51. # line = []
  52. #
  53. # if (not statementLine):
  54. # return False
  55. #
  56. # line = accountStatement.write({'line_ids': statementLine})
  57. # if (not line):
  58. # return False
  59. #
  60. # return len(statementLine)
  61. #
  62. # '''
  63. # Get Account Bank Statement Point of Sale
  64. # '''
  65. # def _get_statement_point_of_sale(self, statement):
  66. # statementPoint = self.env['account.bank.statement'].search([
  67. # ('date','=',statement.date),
  68. # ('journal_id.id', '=',statement.journal_id.id),
  69. # ('period_id.id', '=', statement.period_id.id),
  70. # ('type_statement', '=', 'normal'),
  71. # ('state', '=', 'confirm')], order='id')
  72. # pointSatatement = []
  73. #
  74. # for statementP in statementPoint:
  75. # amount = 0.0
  76. # for line in statementP.line_ids:
  77. # amount += line.amount
  78. #
  79. # if (statementP.balance_start > 0):
  80. # amount += statementP.balance_start
  81. #
  82. # if (amount != 0):
  83. # pointSatatement.append({
  84. # 'name': statementP.name,
  85. # 'date': statementP.date,
  86. # 'journalId': statementP.journal_id.id,
  87. # 'periodId': statementP.period_id.id,
  88. # 'userId': statementP.user_id.id,
  89. # 'userName': statementP.user_id.name,
  90. # # 'posSessionId': statementP.pos_session_id.id,
  91. # # 'posSessionName': statementP.pos_session_id.name,
  92. # 'amount': amount
  93. # })
  94. #
  95. # return pointSatatement