changeset 702bf7fc4e03 in modules/sale:default
details: https://hg.tryton.org/modules/sale?cmd=changeset;node=702bf7fc4e03
description:
Remove global variables used for field definitions
They give the false idea that they can be extended or reused which is
not the
case.
issue8967
review252851012
diffstat:
sale.py | 38 +++++++++++++++++---------------------
1 files changed, 17 insertions(+), 21 deletions(-)
diffs (76 lines):
diff -r 0257ec68a234 -r 702bf7fc4e03 sale.py
--- a/sale.py Mon Jan 13 23:54:01 2020 +0100
+++ b/sale.py Sat Jan 25 20:18:49 2020 +0100
@@ -22,24 +22,6 @@
from .exceptions import (
SaleValidationError, SaleQuotationError, PartyLocationError)
-__all__ = ['Sale', 'SaleIgnoredInvoice', 'SaleRecreatedInvoice',
- 'SaleLine', 'SaleLineTax', 'SaleLineIgnoredMove',
- 'SaleLineRecreatedMove', 'SaleReport', 'OpenCustomer',
- 'HandleShipmentExceptionAsk', 'HandleShipmentException',
- 'HandleInvoiceExceptionAsk', 'HandleInvoiceException',
- 'ReturnSaleStart', 'ReturnSale', 'ModifyHeader',
- 'get_shipments_returns', 'search_shipments_returns']
-
-_ZERO = Decimal(0)
-STATES = [
- ('draft', 'Draft'),
- ('quotation', 'Quotation'),
- ('confirmed', 'Confirmed'),
- ('processing', 'Processing'),
- ('done', 'Done'),
- ('cancel', 'Canceled'),
- ]
-
def get_shipments_returns(model_name):
"Computes the returns or shipments"
@@ -91,7 +73,14 @@
'readonly': Eval('state') != 'draft',
},
depends=['state'])
- state = fields.Selection(STATES, 'State', readonly=True, required=True)
+ state = fields.Selection([
+ ('draft', "Draft"),
+ ('quotation', "Quotation"),
+ ('confirmed', "Confirmed"),
+ ('processing', "Processing"),
+ ('done', "Done"),
+ ('cancel', "Canceled"),
+ ], "State", readonly=True, required=True)
sale_date = fields.Date('Sale Date',
states={
'readonly': ~Eval('state').in_(['draft', 'quotation']),
@@ -472,7 +461,7 @@
else:
untaxed_amount[sale.id] = sum(
(line.amount for line in sale.lines
- if line.type == 'line'), _ZERO)
+ if line.type == 'line'), Decimal(0))
if compute_taxes:
tax_amount[sale.id] = sale.get_tax_amount()
total_amount[sale.id] = (
@@ -1075,7 +1064,8 @@
},
depends=['type']),
'on_change_with_shipping_date')
- sale_state = fields.Function(fields.Selection(STATES, 'Sale State'),
+ sale_state = fields.Function(
+ fields.Selection('get_sale_states', "Sale State"),
'on_change_with_sale_state')
@classmethod
@@ -1300,6 +1290,12 @@
shipping_date = max(shipping_date, Date.today())
return shipping_date
+ @classmethod
+ def get_sale_states(cls):
+ pool = Pool()
+ Sale = pool.get('sale.sale')
+ return Sale.fields_get(['state'])['state']['selection']
+
@fields.depends('sale', '_parent_sale.state')
def on_change_with_sale_state(self, name=None):
if self.sale: