浏览代码

添加:“水稳编号”

张世豪 1 月之前
父节点
当前提交
116c102cfd
共有 2 个文件被更改,包括 10 次插入5 次删除
  1. 8 5
      index.py
  2. 2 0
      report.py

+ 8 - 5
index.py

@@ -281,7 +281,7 @@ def checkData(fileUrl):
         type = getOption()
         global checkType
         checkType = type
-        data = pd.read_excel(fileUrl,converters={'原样品编号': str})
+        data = pd.read_excel(fileUrl,converters={'原样品编号': str, '水稳编号' : str})
         if type == 'OVER_LINE':
             show_error('试用已结束,使用更多请点击下方获取申请码按钮联系管理员!')
         elif type == 'HUNDRED_DATA' or type == 'ALL':
@@ -303,7 +303,7 @@ def checkData(fileUrl):
                 # print('simpleData',simpleData)
                 simpleData = simpleData.replace('未检测', np.nan)
                 # simpleData.iloc[:, 3:] = simpleData.iloc[:, 3:].apply(pd.to_numeric,errors='ignore')
-                strList = ['原样品编号','样品编号','地理位置','土壤类型','母质','土地利用类型','土壤质地']
+                strList = ['原样品编号','样品编号','地理位置','土壤类型','母质','土地利用类型','土壤质地','水稳编号']
                 for i in simpleData.columns:
                     if i not in strList:
                         simpleData[i] = pd.to_numeric(simpleData[i], errors='coerce')
@@ -355,7 +355,8 @@ def checkData(fileUrl):
                     '0.2-0.02mm颗粒含量%': simpleData['0.2~0.02mm颗粒含量'],
                     '0.02-0.002mm颗粒含量%': simpleData['0.02~0.002mm颗粒含量'],
                     '0.002mm以下颗粒含量%': simpleData['0.002mm以下颗粒含量'],
-                    '加和%': plusData
+                    '加和%': plusData,
+                    '水稳编号': simpleData['水稳编号']
                 })
                 # 调用审核函数 得到审核结果
                 table_1_res = pb.soil_bulk_density(resData)
@@ -378,6 +379,7 @@ def checkData(fileUrl):
                 table_1_index['土地利用类型'] = resData['土地利用类型']
                 table_1_index['指标'] = table_1_res['异常指标']
                 table_1_index['原因'] = table_1_res['审核结果']
+                table_1_index['水稳编号'] = resData['水稳编号']
                 # 这里数据直接使用即可(土壤质地填报)todo
                 #del resData['土壤质地(判断)']
                 #resData.insert(loc=6, column='土壤质地(判断)', value=table_1_res['土壤质地(判断)'])
@@ -759,7 +761,7 @@ def open_file():
                      '有效硼', '有效钼', '碳酸钙', '总汞', '总砷', '总铅', '总镉', '总铬', '总镍', '土壤容重1(g/cm³)',
                      '土壤容重2(g/cm³)',
                      '土壤容重3(g/cm³)', '土壤容重4(g/cm³)', '土壤容重平均值(g/cm³)', '水稳>5mm(%)', '水稳3mm~5mm(%)',
-                     '水稳2mm~3mm(%)', '水稳1mm~2mm(%)', '水稳0.5mm~1mm(%)', '水稳0.25mm~0.5mm(%)',
+                     '水稳编号','水稳2mm~3mm(%)', '水稳1mm~2mm(%)', '水稳0.5mm~1mm(%)', '水稳0.25mm~0.5mm(%)',
                      '水稳性大团聚体总和(%)']
         # 也可以增加文件内容判断 格式不正确 提示错误 这里验证表头
         errList = []
@@ -1718,7 +1720,7 @@ def dealData(data):
     simpleData = simpleData.replace('未检测', np.nan)
     simpleData = simpleData.replace('', np.nan)
     # simpleData.iloc[:, 3:] = simpleData.iloc[:, 3:].apply(pd.to_numeric, errors='ignore')
-    strList = ['原样品编号', '样品编号', '地理位置', '土壤类型', '母质', '土地利用类型', '土壤质地']
+    strList = ['原样品编号', '样品编号', '地理位置', '土壤类型', '母质', '土地利用类型', '土壤质地','水稳编号']
     for i in simpleData.columns:
         if i not in strList:
             simpleData[i] = pd.to_numeric(simpleData[i], errors='coerce')
@@ -1739,6 +1741,7 @@ def makeNormalWord(url):
         '序号': indexArr,
         '原样品编号': table_1_index['原样品编号'],
         '样品编号': table_1_index['样品编号'],
+        '水稳编号': table_1_index['水稳编号'],
         '土地利用类型': table_1_index['土地利用类型'],
         '指标': table_1_index['指标'] + table_3_index['指标'] + table_5_index['指标'] + table_8_index['指标'] + table_10_index['指标'] + table_12_index['指标'] + table_14_index['指标'] + table_15_index['指标'],
         '原因': table_1_index['原因'] + table_3_index['原因'] + table_5_index['原因'] + table_8_index['原因'] + table_10_index['原因'] + table_12_index['原因'] + table_14_index['原因'] + table_15_index['原因'],

+ 2 - 0
report.py

@@ -303,6 +303,8 @@ def getNum(data, url):
 def getFrequencyInformation(data, url):
     if '数据审核结果' in data.columns:
         del data['数据审核结果']
+    if '水稳编号' in data.columns:
+        del data['水稳编号']
     #统计样品数量 计算最大值 最小值 中位数 平均值 标准差
     needData = data.iloc[:, 7:]
     if '土壤质地' in needData.columns: