models.py 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. # -*- coding: utf-8 -*-
  2. from openerp import models, fields, api
  3. class AccountInvoice(models.Model):
  4. _inherit = 'account.invoice'
  5. ############################################################
  6. # ACCOUNT INVOICE
  7. ############################################################
  8. @api.model
  9. def getAccountInvoiceDental(self,domain):
  10. AccountInvoice = self.env['account.invoice'].search(domain)
  11. decimal_precision = self.env['decimal.precision'].precision_get('Account')
  12. values = []
  13. for invoice in AccountInvoice:
  14. values.append({
  15. 'id': invoice.id,
  16. 'type': invoice.type,
  17. 'state': invoice.state,
  18. 'number': invoice.number,
  19. 'journal_id': [
  20. invoice.journal_id.id,
  21. invoice.journal_id.name
  22. ],
  23. 'invoice_currency': [
  24. invoice.currency_id.id,
  25. invoice.currency_id.name,
  26. invoice.currency_id.rate
  27. ],
  28. 'company_currency': [
  29. invoice.company_id.currency_id.id,
  30. invoice.company_id.currency_id.name,
  31. invoice.company_id.currency_id.rate
  32. ],
  33. 'date_invoice': invoice.date_invoice,
  34. 'partner_id': [
  35. invoice.partner_id.id,
  36. invoice.partner_id.name,
  37. invoice.partner_id.ruc,
  38. invoice.partner_id.email,
  39. invoice.partner_id.mobile,
  40. ],
  41. 'supplier_invoice_number': invoice.supplier_invoice_number,
  42. 'user_id': [
  43. invoice.user_id.id,
  44. invoice.user_id.name
  45. ],
  46. 'period_id': [
  47. invoice.period_id.id,
  48. invoice.period_id.name
  49. ],
  50. 'date_due': invoice.date_due,
  51. 'origin': invoice.origin,
  52. 'contado': invoice.contado,
  53. 'credito': invoice.credito,
  54. 'name': invoice.name,
  55. 'supplier_invoice_number': invoice.supplier_invoice_number,
  56. 'reference': invoice.reference,
  57. 'amount_untaxed': invoice.amount_untaxed,
  58. 'residual': invoice.residual,
  59. 'is_anticipo': invoice.is_anticipo,
  60. 'amount_tax': invoice.amount_tax,
  61. 'amount_total': invoice.amount_total,
  62. 'amount_untaxed_currency': invoice.amount_untaxed * (invoice.company_id.currency_id.rate / invoice.currency_id.rate),
  63. 'residual_currency': invoice.residual * (invoice.company_id.currency_id.rate / invoice.currency_id.rate),
  64. 'amount_tax_currency': invoice.amount_tax * (invoice.company_id.currency_id.rate / invoice.currency_id.rate),
  65. 'amount_total_currency': invoice.amount_total * (invoice.company_id.currency_id.rate / invoice.currency_id.rate),
  66. 'comment' : invoice.comment,
  67. })
  68. return values
  69. class AccountInvoiceLine(models.Model):
  70. _inherit = 'account.invoice.line'
  71. ############################################################
  72. # ACCOUNT INVOICE LINE
  73. ############################################################
  74. @api.model
  75. def getAccountInvoiceLineDental(self,domain):
  76. AccountInvoiceLine = self.env['account.invoice.line'].search(domain)
  77. decimal_precision = self.env['decimal.precision'].precision_get('Account')
  78. values = []
  79. for line in AccountInvoiceLine:
  80. values.append({
  81. 'id': line.id,
  82. 'name' : line.name,
  83. 'invoice_id':line.invoice_id.id,
  84. 'journal_id' : line.invoice_id.journal_id.id,
  85. 'product_id': {
  86. 'id' : line.product_id.id,
  87. 'name' : line.product_id.name,
  88. 'standard_price' : line.product_id.standard_price,
  89. 'default_code' : line.product_id.default_code,
  90. 'product_brand_id' : line.product_id.product_brand_id.name,
  91. 'ean13' : line.product_id.ean13,
  92. 'categ_id' : line.product_id.categ_id.name,
  93. 'qty_available' : line.product_id.qty_available,
  94. },
  95. 'quantity' : line.quantity,
  96. 'price_unit' : line.price_unit,
  97. })
  98. return values
  99. class AccountVoucher(models.Model):
  100. _inherit = 'account.voucher'
  101. ############################################################
  102. # ACCONT VOUCHER
  103. ############################################################
  104. @api.model
  105. def getAccountVoucherDental(self,domain):
  106. AccountVoucher = self.env['account.voucher'].search(domain)
  107. values = []
  108. for voucher in AccountVoucher:
  109. values.append({
  110. 'id': voucher.id,
  111. 'number':voucher.number,
  112. 'journal_id': voucher.journal_id.id,
  113. 'amount': voucher.amount,
  114. 'reference' : voucher.reference,
  115. })
  116. return values