fix: 光子综合查询对小数和None的处理

This commit is contained in:
caoqianming 2025-04-09 15:30:17 +08:00
parent 3b78c4e993
commit 91a499c00b
1 changed files with 13 additions and 12 deletions

View File

@ -120,11 +120,12 @@ def get_alldata_with_batch(batch: str):
if item.mio.do_user:
data["七车间入库_仓库执行人"].append(item.mio.mio_user)
for field in mioitem_count_fields:
if getattr(item, field) > 0 or field in ["count", "count_notok"]:
f_v = getattr(item, field)
if f_v is not None and (f_v > 0 or field in ["count", "count_notok"]):
if f'七车间入库_{field}' not in data:
data[f'七车间入库_{field}'] = int(getattr(item, field))
data[f'七车间入库_{field}'] = f_v
else:
data[f'七车间入库_{field}'] += int(getattr(item, field))
data[f'七车间入库_{field}'] += f_v
data["七车间入库_合格率"] = round((data["七车间入库_count"] - data["七车间入库_count_notok"]) * 100/ data["七车间入库_count"], 1)
data["七车间入库_日期"] = list(set(data["七车间入库_日期"]))
data["七车间入库_日期"] = ";".join([item.strftime("%Y-%m-%d") for item in data["七车间入库_日期"]])
@ -152,11 +153,11 @@ def get_alldata_with_batch(batch: str):
if item.test_user:
data["十车间入库_抽检人"].append(item.test_user)
for field in mioitem_count_fields:
if getattr(item, field) > 0 or field in ["count", "count_notok", "count_sampling"]:
if getattr(item, field) is not None and (getattr(item, field) > 0 or field in ["count", "count_notok", "count_sampling"]):
if f'十车间入库_{field}' not in data:
data[f'十车间入库_{field}'] = int(getattr(item, field))
data[f'十车间入库_{field}'] = getattr(item, field)
else:
data[f'十车间入库_{field}'] += int(getattr(item, field))
data[f'十车间入库_{field}'] += getattr(item, field)
data["十车间入库_抽检人"] = list(set(data["十车间入库_抽检人"]))
data["十车间入库_抽检人"] = ";".join([item.name for item in data["十车间入库_抽检人"]])
if data["十车间入库_count_sampling"] > 0:
@ -187,11 +188,11 @@ def get_alldata_with_batch(batch: str):
if item.handle_user:
data["管料退火_操作人"].append(item.handle_user)
for field in mlog_count_fields:
if getattr(item, field) > 0 or field in ["count", "count_notok"]:
if getattr(item, field) is not None and (getattr(item, field) > 0 or field in ["count", "count_notok"]):
if f'管料退火_{field}' not in data:
data[f'管料退火_{field}'] = int(getattr(item, field))
data[f'管料退火_{field}'] = getattr(item, field)
else:
data[f'管料退火_{field}'] += int(getattr(item, field))
data[f'管料退火_{field}'] += getattr(item, field)
data["管料退火_日期"] = list(set(data["管料退火_日期"]))
data["管料退火_日期"] = ";".join([item.strftime("%Y-%m-%d") for item in data["管料退火_日期"]])
data["管料退火_操作人"] = list(set(data["管料退火_操作人"]))
@ -218,11 +219,11 @@ def get_alldata_with_batch(batch: str):
if item.mio.mio_user:
data["六车间领料_车间执行人"].append(item.mio.mio_user)
for field in mioitem_count_fields:
if getattr(item, field) > 0:
if getattr(item, field) is not None and getattr(item, field) > 0:
if f'六车间领料_{field}' not in data:
data[f'六车间领料_{field}'] = int(getattr(item, field))
data[f'六车间领料_{field}'] = getattr(item, field)
else:
data[f'六车间领料_{field}'] += int(getattr(item, field))
data[f'六车间领料_{field}'] += getattr(item, field)
data["六车间领料_日期"] = list(set(data["六车间领料_日期"]))
data["六车间领料_日期"] = ";".join([item.strftime("%Y-%m-%d") for item in data["六车间领料_日期"]])
data["六车间领料_仓库执行人"] = list(set(data["六车间领料_仓库执行人"]))