mirror of
https://github.com/bringout/oca-ocb-pos.git
synced 2026-04-25 07:22:02 +02:00
Initial commit: Pos packages
This commit is contained in:
commit
95dfb9edb0
1301 changed files with 264148 additions and 0 deletions
|
|
@ -0,0 +1,36 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from odoo import fields, models
|
||||
|
||||
class PosOrderLine(models.Model):
|
||||
_inherit = 'pos.order.line'
|
||||
|
||||
is_reward_line = fields.Boolean(
|
||||
help="Whether this line is part of a reward or not.")
|
||||
reward_id = fields.Many2one(
|
||||
'loyalty.reward', "Reward", ondelete='restrict',
|
||||
help="The reward associated with this line.")
|
||||
coupon_id = fields.Many2one(
|
||||
'loyalty.card', "Coupon", ondelete='restrict',
|
||||
help="The coupon used to claim that reward.")
|
||||
reward_identifier_code = fields.Char(help="""
|
||||
Technical field used to link multiple reward lines from the same reward together.
|
||||
""")
|
||||
points_cost = fields.Float(help="How many point this reward cost on the coupon.")
|
||||
|
||||
def _order_line_fields(self, line, session_id=None):
|
||||
res = super()._order_line_fields(line, session_id)
|
||||
# coupon_id may be negative in case of new coupons, they will be added after validating the order.
|
||||
if 'coupon_id' in res[2] and res[2]['coupon_id'] < 1:
|
||||
res[2].pop('coupon_id')
|
||||
return res
|
||||
|
||||
def _is_not_sellable_line(self):
|
||||
return super().is_not_sellable_line() or self.reward_id
|
||||
|
||||
def _export_for_ui(self, orderline):
|
||||
result = super()._export_for_ui(orderline)
|
||||
result['is_reward_line'] = orderline.is_reward_line
|
||||
result['reward_id'] = orderline.reward_id.id
|
||||
return result
|
||||
Loading…
Add table
Add a link
Reference in a new issue