Get the residual_amount also for sales in state 'draft' and 'quotation'.
#038295
This commit is contained in:
parent
5aa91616f6
commit
4793f48b33
12
sale.py
12
sale.py
|
@ -127,9 +127,8 @@ class Sale(metaclass=PoolMeta):
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def get_residual_amount(cls, sales, name):
|
def get_residual_amount(cls, sales, name):
|
||||||
return {s.id: s.total_amount - s.paid_amount if s.state in (
|
return {s.id: s.total_amount - s.paid_amount if s.state != 'cancel'
|
||||||
'confirmed', 'processing', 'done') else
|
else Decimal(0) for s in sales}
|
||||||
Decimal(0) for s in sales}
|
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def search_residual_amount(cls, name, clause):
|
def search_residual_amount(cls, name, clause):
|
||||||
|
@ -149,7 +148,12 @@ class Sale(metaclass=PoolMeta):
|
||||||
).select(
|
).select(
|
||||||
sale.id,
|
sale.id,
|
||||||
where=((sale.total_amount_cache != None) &
|
where=((sale.total_amount_cache != None) &
|
||||||
(sale.state.in_(['confirmed', 'processing', 'done']))),
|
(sale.state.in_([
|
||||||
|
'draft',
|
||||||
|
'quotation',
|
||||||
|
'confirmed',
|
||||||
|
'processing',
|
||||||
|
'done']))),
|
||||||
group_by=(sale.id),
|
group_by=(sale.id),
|
||||||
having=(
|
having=(
|
||||||
(Sum(Coalesce(payline.amount, 0)) < sale.total_amount_cache)
|
(Sum(Coalesce(payline.amount, 0)) < sale.total_amount_cache)
|
||||||
|
|
Loading…
Reference in New Issue