diff --git a/apps/enm/serializers.py b/apps/enm/serializers.py index 1bcfa42e..d9ac1818 100644 --- a/apps/enm/serializers.py +++ b/apps/enm/serializers.py @@ -29,11 +29,12 @@ class MpointSerializer(CustomModelSerializer): ratio_ = 0 mgroupIds = [] for i in attrs['mgroups_allocate']: - ratio_ = ratio_ + i['ratio'] - if i['mgroup'] in mgroupIds: - raise ParseError('分配集错误') - mgroupIds.append(i['mgroup']) - i['mgroup_name'] = Mgroup.objects.get(id=i['mgroup']).name + if i['mgroup']: + ratio_ = ratio_ + i['ratio'] + if i['mgroup'] in mgroupIds: + raise ParseError('分配集错误') + mgroupIds.append(i['mgroup']) + i['mgroup_name'] = Mgroup.objects.get(id=i['mgroup']).name if attrs['mgroups_allocate'] and round(ratio_, 3) != 1.0: raise ParseError('比例合计错误') return attrs