aboutsummaryrefslogtreecommitdiffstats
path: root/97suifangqa/apps/indicator/models.py
diff options
context:
space:
mode:
Diffstat (limited to '97suifangqa/apps/indicator/models.py')
-rw-r--r--97suifangqa/apps/indicator/models.py26
1 files changed, 14 insertions, 12 deletions
diff --git a/97suifangqa/apps/indicator/models.py b/97suifangqa/apps/indicator/models.py
index 78860ce..4d95db0 100644
--- a/97suifangqa/apps/indicator/models.py
+++ b/97suifangqa/apps/indicator/models.py
@@ -320,6 +320,20 @@ class IndicatorRecord(models.Model): # {{{
#raise ValueError(u'date="%s" 该日期已经存在记录' % self.date)
print u'date="%s" 该日期已经存在记录' % self.date
return False
+ # check unit
+ sind = self.indicator
+ if sind.dataType in [sind.FLOAT_TYPE, sind.RANGE_TYPE,
+ sind.FLOAT_RANGE_TYPE]:
+ # unit required
+ ind_units = sind.get_unit(type="all")
+ if not self.unit:
+ #raise ValueError(u'未填写单位')
+ print u'未填写单位'
+ return False
+ elif self.unit not in ind_units:
+ #raise ValueError(u'所选单位与该指标不符')
+ print u'所选单位与该指标不符'
+ return False
# check dataType
if self.indicator.dataType == self.indicator.INTEGER_TYPE:
# 整数型
@@ -332,10 +346,6 @@ class IndicatorRecord(models.Model): # {{{
return False
elif self.indicator.dataType == self.indicator.FLOAT_TYPE:
# 浮点型
- if not self.unit:
- #raise ValueError(u'未填写单位')
- print u'未填写单位'
- return False
try:
value = float(self.value)
return True
@@ -345,10 +355,6 @@ class IndicatorRecord(models.Model): # {{{
return False
elif self.indicator.dataType == self.indicator.RANGE_TYPE:
# 范围型
- if not self.unit:
- #raise ValueError(u'未填写单位')
- print u'未填写单位'
- return False
if (self.val_max is None) or (self.val_min is None):
#raise ValueError(u'val_max 或 val_min 未填写')
print u'val_max 或 val_min 未填写'
@@ -360,10 +366,6 @@ class IndicatorRecord(models.Model): # {{{
return True
elif self.indicator.dataType == self.indicator.FLOAT_RANGE_TYPE:
# 定值/范围型 (浮点定值优先)
- if not self.unit:
- #raise ValueError(u'未填写单位')
- print u'未填写单位'
- return False
if self.value:
# 定值
try: