|
|
@@ -0,0 +1,635 @@
|
|
|
+def check_id(data):
|
|
|
+ return 1, data
|
|
|
+
|
|
|
+
|
|
|
+def jiao_yan_xiang_mu(data):
|
|
|
+ return 1, data
|
|
|
+
|
|
|
+# 经度 113.7869444 113.7536111
|
|
|
+def jing_du(data):
|
|
|
+ if data:
|
|
|
+ if 113.7869444 > data > 113.7536111:
|
|
|
+ return 1, data
|
|
|
+ else:
|
|
|
+ return 2, data
|
|
|
+ else:
|
|
|
+ return 2, data
|
|
|
+
|
|
|
+
|
|
|
+# 纬度 35.0458333 35.0125
|
|
|
+def weidu_du(data):
|
|
|
+ if data:
|
|
|
+ if 35.0458333 > data > 35.0125:
|
|
|
+ return 1, data
|
|
|
+ else:
|
|
|
+ return 2, data
|
|
|
+ else:
|
|
|
+ return 2, data
|
|
|
+# 固件版本号
|
|
|
+def gu_jian_ban_ben(data):
|
|
|
+ if data[0] == data[1]:
|
|
|
+ return 1, data[0]
|
|
|
+ else:
|
|
|
+ return 2, f"设备{data[0]},输入{data[1]}"
|
|
|
+
|
|
|
+# 电压 合格条件(绿色):\n11~15
|
|
|
+def dian_ya(data):
|
|
|
+ if data:
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 11.0 < min_num and max_num < 15.0:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# 信号 合格条件(绿色):\n>14
|
|
|
+def xin_hao(data):
|
|
|
+ if data:
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 14.0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+# sim卡信息 大于等于180天单元格显示绿色\n2、小于180天大于等于30天单元格显示黄色、\n3、小于30天单元格显示为红色
|
|
|
+def sim(data):
|
|
|
+ if 180 <= data:
|
|
|
+ return 1, f"有效期剩余{data}天"
|
|
|
+ elif 30 <= data < 180:
|
|
|
+ return 3, f"有效期剩余{data}天"
|
|
|
+ elif data < 30:
|
|
|
+ return 2, f"有效期剩余{data}天"
|
|
|
+
|
|
|
+def wei_zhi(data):
|
|
|
+ if data == "河南省新乡市原阳县":
|
|
|
+ return 1, data
|
|
|
+ else:
|
|
|
+ return 2, data
|
|
|
+
|
|
|
+
|
|
|
+# 上传数据条数 合格条件(绿色):\n1、大于7条\n2、两条数据时间间隔小于20分钟的出现频次2次以内、两条数据间隔大于40分钟出现频率2次以内
|
|
|
+def shu_ju_tiao_shu(data):
|
|
|
+ if data:
|
|
|
+ if len(data) > 7:
|
|
|
+ # 计算数据间隔
|
|
|
+ interval = []
|
|
|
+ for k in range(len(data) - 1):
|
|
|
+ interval.append(data[k+1] - data[k])
|
|
|
+ lte_20 = []
|
|
|
+ gte_40 = []
|
|
|
+ for i in interval:
|
|
|
+ if i < 120:
|
|
|
+ lte_20.append(i)
|
|
|
+ if i > 240:
|
|
|
+ gte_40.append(i)
|
|
|
+ if len(lte_20) < 2 and len(gte_40) < 2:
|
|
|
+ return 1, f"数据量:{len(data)},间隔<20分钟:{len(lte_20)},间隔>40分钟:{len(gte_40)}"
|
|
|
+ else:
|
|
|
+ return 2, f"数据量:{len(data)},间隔<20分钟:{len(lte_20)},间隔>40分钟:{len(gte_40)}"
|
|
|
+ else:
|
|
|
+ return 2, f"数据量:{len(data)}"
|
|
|
+ else:
|
|
|
+ return 2, "无数据"
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+# "风速": "合格条件(绿色):\n1、0<示值<10\n2、有1条合格 即可",
|
|
|
+def feng_su(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num and max_num < 10:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "风向": "合格条件(绿色):\n1、0<示值<360\n2、有1条合格即可"
|
|
|
+def feng_xiang(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num and max_num < 360:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+# "降雨量累计": "合格条件(绿色):\n1、0<示值\n2、00:00示值归零\n3、有1条合格即可"
|
|
|
+def jiang_yu(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0.1 < min_num :
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+# "土壤含水率": "合格条件(绿色):\n1、0<示值<=100\n2、有1条合格即可
|
|
|
+def tu_rang_han_shui(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num and max_num <= 100:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "土壤温度": "合格条件(绿色):\n1.≠0且在-5~35°C之间\n2、有1条合格即可"
|
|
|
+def tu_rang_wen_du(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if -5 < min_num and max_num < 35:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+# "盐分": "合格条件(绿色):\n1、0<示值<1000#2、有1条合格即可",
|
|
|
+def yan_fen(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num and max_num < 1000:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+# "电导率": "合格条件(绿色):\n1、0<示值\n2、有1条合格即"
|
|
|
+def dian_dao_lv(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+# "氮": "合格条件(绿色):\n1、0<示值\n2、有1条合格即可",
|
|
|
+def dan(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num :
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+# "磷": "合格条件(绿色):\n1、0<示值且不能为负值\n2、有1条合格即可",
|
|
|
+def lin(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "光合有效辐射": "合格条件(绿色):\n1、0<示值且不能为负值\n2、有1条合格即可",
|
|
|
+def guang_he_fu_she(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "日照时数": "合格条件(绿色):\n1、0.1≤示值\n2、有1条合格即可",
|
|
|
+def ri_zhao(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0.1 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "PM2.5": "合格条件(绿色):\n1、0<示值且不能为负值\n2、有1条合格即可",
|
|
|
+def pm25(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "PM10": "合格条件(绿色):\n1、0<示值\n2、有1条合格即可",
|
|
|
+def pm10(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "负氧离子": "合格条件(绿色):\n1、0<示值<1000\n2、有1条合格即可",
|
|
|
+def fu_li_zi(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num and max_num < 1000:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+# "总辐射": "合格条件(绿色):\n1、0<示值\n2、有1条合格即可",
|
|
|
+def zong_fu_she(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "二氧化碳": "合格条件(绿色):\n1、400<示值<1500\n2、有1条合格即可",
|
|
|
+def er_yang_hua_tan(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 400 < min_num and max_num < 1500:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "蒸发量": "合格条件(绿色):\n1、0<示值\n2、有1条合格即可",
|
|
|
+def zheng_fa(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "土壤PH": "合格条件(绿色):\n1、6~8\n2、有1条合格即可",
|
|
|
+def tu_rang_ph(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 6 < min_num and max_num < 8:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+# "钾": "合格条件(绿色):\n1、0<示值\n2、有1条合格即可",
|
|
|
+def jia(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "紫外辐射": "合格条件(绿色):\n1、0<示 值\n2、有1条合格即可",
|
|
|
+def zi_wai_fu_she(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "空气温度": "合格条件(绿色):\n1.-10~35°C,但不允许为0°C\n2、有1条合格即可",
|
|
|
+def keong_qi_wen_du(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if -10 < min_num and max_num < 35 and 0.0 not in data:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "空气湿度": "合格条件(绿色):\n1、0<示值<100\n2、有1条合格即可",
|
|
|
+def keong_qi_shi_du(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num and max_num < 100:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "水质pH": "合格条件(绿色):\n1、6≤示值≤8\n2、有1条合格即可",
|
|
|
+def shui_zhi_ph(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 6 < min_num and max_num < 8:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "水位": "合格条件(绿色):\n1、0<示值\n2、有1条合格即可",
|
|
|
+def shui_wei(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "水质电导率": "合格条件(绿色):\n1、0<示值\n2、有1条合格即可",
|
|
|
+def shui_zhi_dao_dian(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+# "气压": "合格条件(绿色):\n1、900<示值<1150\n2、有1条合格即可",
|
|
|
+def qi_ya(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 900 < min_num and max_num < 1150:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "光照度": "合格条件(绿色):\n1、0<示值<200000\n2、有1条合格即可",
|
|
|
+def guang_zhao_du(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num and max_num < 200000:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "硫化氢": "合格条件(绿色):\n1、示值=0\n2、有1条合格即可",
|
|
|
+def liu_hua_qing(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ data = list(set(data))
|
|
|
+ if len(data) == 1 and data[0] == 0:
|
|
|
+ return 1, 0
|
|
|
+ else:
|
|
|
+ return 2, 0
|
|
|
+ else:
|
|
|
+ return 2, 0
|
|
|
+
|
|
|
+
|
|
|
+# "水温": "合格条件(绿色):\n1.0~30°C,但不允许为0°C\n2、 有1条合格即可",
|
|
|
+def shui_wen(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 1.0 < min_num and max_num < 30:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "溶解氧": "合格条件(绿色):\n1、0<示值\n2、有1条合格即可",
|
|
|
+def rong_jie_yang(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+# "浊度": "合格条件(绿色):\n1、0<示值\n2、有1条合格即可",
|
|
|
+def zhuo_du(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+# "氨气": "合格条件(绿色):\n1、示值=0\n2、有1条合格即可",
|
|
|
+def an_qi(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ data = list(set(data))
|
|
|
+ if len(data) == 1 and data[0] == 0:
|
|
|
+ return 1, 0
|
|
|
+ else:
|
|
|
+ return 2, 0
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "氧气": "合格条件(绿色):\n1、0<示值\n2、有1条合格即可",
|
|
|
+def yang_qi(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "PM100": "合格条件(绿色):\n1、0<示值\n2 、有1条合格即可",
|
|
|
+def pm100(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if 0 < min_num:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+
|
|
|
+# "露点温度": "合格条件(绿色):\n1.-10~35°C,但不允许为0°C\n2、有1条合格即可",
|
|
|
+def lou_dian_wen_du(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if -10 < min_num and max_num < 35 and 0.0 not in data:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+# 热通量 上传条数的数据在均在±500内(但不能为0),即判定合格,否则不合格
|
|
|
+def re_tong_liang(data):
|
|
|
+ if data:
|
|
|
+ # 去除字段中 -99.99 数据
|
|
|
+ data = [i for i in data if i != -99.99]
|
|
|
+ min_num = min(data)
|
|
|
+ max_num = max(data)
|
|
|
+ if -500 < min_num and max_num < 500 and 0.0 not in data:
|
|
|
+ return 1, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, f"最小值{min_num},最大值{max_num}"
|
|
|
+ else:
|
|
|
+ return 2, "没有数据"
|
|
|
+
|
|
|
+# 合格数量
|
|
|
+def he_ge_shu(data):
|
|
|
+ return data[0], data[1]
|