diff --git a/apps/wpm/services_2.py b/apps/wpm/services_2.py index 0831037e..fba8b134 100644 --- a/apps/wpm/services_2.py +++ b/apps/wpm/services_2.py @@ -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["六车间领料_仓库执行人"]))