GoodERP
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

48 lines
1.9KB

  1. # Copyright 2016 上海开阖软件有限公司 (http://www.osbzr.com)
  2. # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
  3. from odoo import fields, models, api
  4. class CostLine(models.Model):
  5. _name = 'cost.line'
  6. _description = "采购销售费用"
  7. @api.depends('amount', 'tax_rate')
  8. def _compute_tax(self):
  9. """
  10. 计算字段根据 amount 和 tax_rate 是否变化进行判定tax 是否需要重新计算
  11. :return:
  12. """
  13. for s in self:
  14. s.tax = s.amount * s.tax_rate * 0.01
  15. s.subtotal = s.amount * (100 + s.tax_rate) * 0.01
  16. partner_id = fields.Many2one('partner', '供应商', ondelete='restrict',
  17. required=True,
  18. help='采购/销售费用对应的业务伙伴')
  19. category_id = fields.Many2one('core.category', '类别',
  20. required=True,
  21. ondelete='restrict',
  22. help='分类:其他支出')
  23. amount = fields.Float('金额',
  24. required=True,
  25. digits='Amount',
  26. help='采购/销售费用金额')
  27. tax_rate = fields.Float(
  28. '税率(%)',
  29. default=lambda self: self.env.user.company_id.import_tax_rate,
  30. help='默认值取公司进项税率')
  31. tax = fields.Float('税额',
  32. digits='Amount',
  33. compute=_compute_tax,
  34. help='采购/销售费用税额')
  35. subtotal = fields.Float('价税合计', digits='Amount', compute=_compute_tax, help='采购/销售费用税额')
  36. note = fields.Char('备注',
  37. help='该采购/销售费用添加的一些标识信息')
  38. company_id = fields.Many2one(
  39. 'res.company',
  40. string='公司',
  41. change_default=True,
  42. default=lambda self: self.env.company)
上海开阖软件有限公司 沪ICP备12045867号-1