Fix
This commit is contained in:
parent
b93d5cc1f0
commit
dbdde63905
22
sale.py
22
sale.py
|
@ -170,12 +170,14 @@ class Sale(metaclass=PoolMeta):
|
||||||
return res
|
return res
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def _set_line(cls, val):
|
def _set_line(cls, val, context):
|
||||||
del val['id']
|
del val['id']
|
||||||
Product = Pool().get('product.product')
|
Product = Pool().get('product.product')
|
||||||
val['type'] = 'line'
|
val['type'] = 'line'
|
||||||
product = Product(val['product'])
|
product = Product(val['product'])
|
||||||
unit_price = product.template.list_price
|
with Transaction().set_context(context):
|
||||||
|
unit_price = product.list_price
|
||||||
|
# unit_price = product.template.list_price
|
||||||
unit_price = unit_price.quantize(Decimal(str(10.0 ** -4)))
|
unit_price = unit_price.quantize(Decimal(str(10.0 ** -4)))
|
||||||
val['unit_price'] = unit_price
|
val['unit_price'] = unit_price
|
||||||
val['base_price'] = unit_price
|
val['base_price'] = unit_price
|
||||||
|
@ -207,6 +209,9 @@ class Sale(metaclass=PoolMeta):
|
||||||
User = Pool().get('res.user')
|
User = Pool().get('res.user')
|
||||||
context = Transaction().context
|
context = Transaction().context
|
||||||
today = date.today()
|
today = date.today()
|
||||||
|
user_id = context.get('user')
|
||||||
|
user = User(user_id)
|
||||||
|
|
||||||
action = 'create'
|
action = 'create'
|
||||||
if args['id'] > 0:
|
if args['id'] > 0:
|
||||||
action = 'edit'
|
action = 'edit'
|
||||||
|
@ -215,27 +220,29 @@ class Sale(metaclass=PoolMeta):
|
||||||
if context.get('shop'):
|
if context.get('shop'):
|
||||||
shop = Shop(context['shop'])
|
shop = Shop(context['shop'])
|
||||||
else:
|
else:
|
||||||
user_id = context.get('user')
|
|
||||||
user = User(user_id)
|
|
||||||
shop = user.shop
|
shop = user.shop
|
||||||
|
context['price_list'] = shop.price_list
|
||||||
for v in args['lines']:
|
for v in args['lines']:
|
||||||
cls._set_line(v)
|
cls._set_line(v, context)
|
||||||
|
|
||||||
party = shop.party
|
party = shop.party
|
||||||
to_create = {
|
to_create = {
|
||||||
'shop': shop.id,
|
'shop': shop.id,
|
||||||
'party': party.id,
|
'party': party.id,
|
||||||
'invoice_type':'P',
|
'invoice_type':'P',
|
||||||
'table_assigned': args['table_assigned']['id'],
|
'table_assigned': args['table_assigned']['id'] if args.get('table_asigned') else None,
|
||||||
'shipment_address': party.addresses[0].id,
|
'shipment_address': party.addresses[0].id,
|
||||||
'invoice_address': party.addresses[0].id,
|
'invoice_address': party.addresses[0].id,
|
||||||
'company': shop.company.id,
|
'company': shop.company.id,
|
||||||
'sale_date': today,
|
'sale_date': today,
|
||||||
'shipment_date': today,
|
'shipment_date': today,
|
||||||
|
'kind': 'to_table',
|
||||||
'price_list': shop.price_list,
|
'price_list': shop.price_list,
|
||||||
'payment_term': shop.payment_term.id,
|
'payment_term': shop.payment_term.id,
|
||||||
'state': 'draft',
|
'state': 'draft',
|
||||||
|
'salesman': user.employee.id if user.employee else None,
|
||||||
'order_status': 'commanded',
|
'order_status': 'commanded',
|
||||||
|
'sale_device': user.sale_device.id,
|
||||||
'lines': [('create', args['lines'])],
|
'lines': [('create', args['lines'])],
|
||||||
}
|
}
|
||||||
if args.get('description'):
|
if args.get('description'):
|
||||||
|
@ -255,7 +262,8 @@ class Sale(metaclass=PoolMeta):
|
||||||
for v in args['lines']:
|
for v in args['lines']:
|
||||||
line_id = v.get('id')
|
line_id = v.get('id')
|
||||||
if line_id < 0:
|
if line_id < 0:
|
||||||
to_add.append(cls._set_line(v))
|
context['price_list'] = sale.shop.price_list
|
||||||
|
to_add.append(cls._set_line(v, context))
|
||||||
try:
|
try:
|
||||||
if to_add:
|
if to_add:
|
||||||
to_write['lines'] = [('create', to_add)]
|
to_write['lines'] = [('create', to_add)]
|
||||||
|
|
Loading…
Reference in New Issue