Xiaopeng Zhang před 5 měsíci
rodič
revize
30b4f3b8c2
4 změnil soubory, kde provedl 349 přidání a 7015 odebrání
  1. 5 1
      README
  2. 6 4
      loadmongo.py
  3. 33 6944
      saveDE.ipynb
  4. 305 66
      subdir/service.py

+ 5 - 1
README

@@ -56,4 +56,8 @@ JD_PeiBiF 表很有用,它可以用来找一个材料的组成。
 
 安装生产同时 F4
 有害环境F5
-高层建筑F3
+高层建筑F3
+
+
+
+db.collection.createIndex({'DEBH': 'text'})

+ 6 - 4
loadmongo.py

@@ -35,13 +35,15 @@ def handle_jx(jx):
     result["hj"] = jx["hj"]
     return result
 
-for post in collection.find({"zhuanye": "市政"}):
-   
+for post in collection.find({"zhuanye": "修缮工程土建"}):
     
-    myquery = { "zhuanye": "市政",
+
+    print(post['DEBH'])
+    
+    myquery = { "zhuanye": "修缮工程土建",
                 "DEBH": post["DEBH"]
                 }
-    A1, A2, rg, jx, cl, bz_, A3 = service.getSingleDeXilie_sz(post["DEBH"])
+    A1, A2, rg, jx, cl, bz_, A3 = service.getSingleDeXilie_xstj(post["DEBH"])
     if bz_:
         bz = json.loads(bz_)
         mongo_bz = []

Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 33 - 6944
saveDE.ipynb


+ 305 - 66
subdir/service.py

@@ -801,7 +801,7 @@ def processCls(dataframe, from_, end, level):
         fbcch = str(item['fbcch'])
         if fbcch == str(level):
             entry = {"id": str(item["ID"]),"key": str(item["ID"]), "value": str(item["ID"]), "label": str(item["flmc"]),"title": str(item["flmc"]), "data": item["cllbh"].item() if type(item["cllbh"]) == int64 else item["cllbh"]}
-            print(entry)
+            ##print(entry)
             next = i + 1
             while next < end and str(dataframe.iloc[next]["fbcch"]) != str(level):
                 next = next + 1
@@ -1599,7 +1599,9 @@ def getSingleDeXilie_xsaz(debh):
         rcjID = filtered1.iloc[i]["RcjID"]
         detail = pd.read_csv("de/xsaz/JD_CaiLiaoK.csv")
         filtered2 = detail[detail["RcjID"]==rcjID]
-        if len(filtered2) > 0:
+        detail_ = pd.read_csv("de/xsaz/JD_PeiBi.csv")
+        filtered2_ = detail_[detail_["RcjID"]==rcjID]
+        if len(filtered2) > 0 and len(filtered2_) == 0:
             CLBH = filtered2.iloc[0]["CLBH"]
             CLMC = filtered2.iloc[0]["CLMC"]
             JLDW = filtered2.iloc[0]["JLDW"]
@@ -1611,21 +1613,80 @@ def getSingleDeXilie_xsaz(debh):
             clde_["SL"] = SL.item()
             clde_["HJ"] = HJ.item()
             clde.append(clde_)
-        else:
-            detail = pd.read_csv("de/xsaz/JD_PeiBi.csv")
-            filtered2 = detail[detail["RcjID"]==rcjID]
-            if len(filtered2) > 0:
-                CLBH = filtered2.iloc[0]["PBBH"]
-                CLMC = filtered2.iloc[0]["PBMC"]
-                JLDW = filtered2.iloc[0]["DW"]
-                YSJG = filtered2.iloc[0]["PBDJ"]
-                clde_["CLBH"] = CLBH.item()
-                clde_["CLMC"] = CLMC
-                clde_["JLDW"] = JLDW
-                clde_["YSJG"] = YSJG.item()
-                clde_["SL"] = SL.item()
-                clde_["HJ"] = HJ.item()
-                clde.append(clde_)
+        elif len(filtered2) == 0 and len(filtered2_) > 0:
+            
+            
+            CLBH = filtered2_.iloc[0]["PBBH"]
+            CLMC = filtered2_.iloc[0]["PBMC"]
+            JLDW = filtered2_.iloc[0]["DW"]
+            YSJG = filtered2_.iloc[0]["PBDJ"]
+            clde_["CLBH"] = CLBH.item()
+            clde_["CLMC"] = CLMC
+            clde_["JLDW"] = JLDW
+            clde_["YSJG"] = YSJG.item()
+            clde_["SL"] = SL.item()
+            clde_["HJ"] = HJ.item()
+            clde.append(clde_)
+        elif len(filtered2) > 0 and len(filtered2_) > 0:
+            YSJG = filtered2.iloc[0]["YSJG"]
+            YSJG_ = filtered2_.iloc[0]["PBDJ"]
+            if float(HJ) < 0.00001:
+                if float(YSJG) < 0.00001:
+                    CLBH = filtered2.iloc[0]["CLBH"]
+                    CLMC = filtered2.iloc[0]["CLMC"]
+                    JLDW = filtered2.iloc[0]["JLDW"]
+                    YSJG = filtered2.iloc[0]["YSJG"]
+                    clde_["CLBH"] = CLBH
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item()
+                    clde_["SL"] = SL.item()
+                    clde_["HJ"] = HJ.item()
+                    clde.append(clde_)
+                elif float(YSJG_) < 0.00001:
+                    CLBH = filtered2_.iloc[0]["PBBH"]
+                    CLMC = filtered2_.iloc[0]["PBMC"]
+                    JLDW = filtered2_.iloc[0]["DW"]
+                    YSJG = filtered2_.iloc[0]["PBDJ"]
+                    clde_["CLBH"] = CLBH.item()
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item()
+                    clde_["SL"] = SL.item()
+                    clde_["HJ"] = HJ.item()
+                    clde.append(clde_)
+            else:
+
+                ratio = float(YSJG) / (float(HJ) / float(SL))
+                ratio_ = float(YSJG_) / (float(HJ) / float(SL))
+                if abs(ratio - 1) < abs(ratio_ -1):
+                    CLBH = filtered2.iloc[0]["CLBH"]
+                    CLMC = filtered2.iloc[0]["CLMC"]
+                    JLDW = filtered2.iloc[0]["JLDW"]
+                    YSJG = filtered2.iloc[0]["YSJG"]
+                    clde_["CLBH"] = CLBH
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item()
+                    clde_["SL"] = SL.item()
+                    clde_["HJ"] = HJ.item()
+                    clde.append(clde_)
+                else:
+                    CLBH = filtered2_.iloc[0]["PBBH"]
+                    CLMC = filtered2_.iloc[0]["PBMC"]
+                    JLDW = filtered2_.iloc[0]["DW"]
+                    YSJG = filtered2_.iloc[0]["PBDJ"]
+                    clde_["CLBH"] = CLBH.item()
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item()
+                    clde_["SL"] = SL.item()
+                    clde_["HJ"] = HJ.item()
+                    clde.append(clde_)
+
+
+
+
     filtered = filtered.drop(['BH1', 'BH2', "GCLCLF", "GCLCLF1", "GCLGG", "GCLGLF", "GCLJJ", "GCLJXF", "GCLLR", "GCLRGF", "GCLRGR", "GCLSJDJ", "GCPBHJ",  "GLFFL", "LRFL", "PBBH", "PBBHM", "PBDJ", "PBSL", "THMC", "THSL", "dejb", "is_lock",  "mcxz", "qfbz",  "sptfl"], axis=1)
     return filtered.to_json(force_ascii=False), id, rgde, jxde, clde, bz_selected.to_json(force_ascii=False) if len(bz_selected) > 0 else None, bz_selected2.to_json(force_ascii=False) if len(bz_selected2) > 0 else None
 
@@ -1727,7 +1788,9 @@ def getSingleDeXilie_xstj(debh):
         rcjID = filtered1.iloc[i]["RcjID"]
         detail = pd.read_csv("de/xstj/JD_CaiLiaoK.csv")
         filtered2 = detail[detail["RcjID"]==rcjID]
-        if len(filtered2) > 0:
+        detail_ = pd.read_csv("de/xstj/JD_PeiBi.csv")
+        filtered2_ = detail_[detail_["RcjID"]==rcjID]
+        if len(filtered2) > 0 and len(filtered2_) == 0:
             CLBH = filtered2.iloc[0]["CLBH"]
             CLMC = filtered2.iloc[0]["CLMC"]
             JLDW = filtered2.iloc[0]["JLDW"]
@@ -1739,21 +1802,80 @@ def getSingleDeXilie_xstj(debh):
             clde_["SL"] = SL.item()
             clde_["HJ"] = HJ.item()
             clde.append(clde_)
-        else:
-            detail = pd.read_csv("de/xstj/JD_PeiBi.csv")
-            filtered2 = detail[detail["RcjID"]==rcjID]
-            if len(filtered2) > 0:
-                CLBH = filtered2.iloc[0]["PBBH"]
-                CLMC = filtered2.iloc[0]["PBMC"]
-                JLDW = filtered2.iloc[0]["DW"]
-                YSJG = filtered2.iloc[0]["PBDJ"]
-                clde_["CLBH"] = CLBH.item()
-                clde_["CLMC"] = CLMC
-                clde_["JLDW"] = JLDW
-                clde_["YSJG"] = YSJG.item()
-                clde_["SL"] = SL.item()
-                clde_["HJ"] = HJ.item()
-                clde.append(clde_)
+        elif len(filtered2) == 0 and len(filtered2_) > 0:
+            
+            
+            CLBH = filtered2_.iloc[0]["PBBH"]
+            CLMC = filtered2_.iloc[0]["PBMC"]
+            JLDW = filtered2_.iloc[0]["DW"]
+            YSJG = filtered2_.iloc[0]["PBDJ"]
+            clde_["CLBH"] = CLBH.item()
+            clde_["CLMC"] = CLMC
+            clde_["JLDW"] = JLDW
+            clde_["YSJG"] = YSJG.item()
+            clde_["SL"] = SL.item()
+            clde_["HJ"] = HJ.item()
+            clde.append(clde_)
+        elif len(filtered2) > 0 and len(filtered2_) > 0:
+            YSJG = filtered2.iloc[0]["YSJG"]
+            YSJG_ = filtered2_.iloc[0]["PBDJ"]
+            if float(HJ) < 0.00001:
+                if float(YSJG) < 0.00001:
+                    CLBH = filtered2.iloc[0]["CLBH"]
+                    CLMC = filtered2.iloc[0]["CLMC"]
+                    JLDW = filtered2.iloc[0]["JLDW"]
+                    YSJG = filtered2.iloc[0]["YSJG"]
+                    clde_["CLBH"] = CLBH
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item()
+                    clde_["SL"] = SL.item()
+                    clde_["HJ"] = HJ.item()
+                    clde.append(clde_)
+                elif float(YSJG_) < 0.00001:
+                    CLBH = filtered2_.iloc[0]["PBBH"]
+                    CLMC = filtered2_.iloc[0]["PBMC"]
+                    JLDW = filtered2_.iloc[0]["DW"]
+                    YSJG = filtered2_.iloc[0]["PBDJ"]
+                    clde_["CLBH"] = CLBH.item()
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item()
+                    clde_["SL"] = SL.item()
+                    clde_["HJ"] = HJ.item()
+                    clde.append(clde_)
+            else:
+                
+
+                ratio = float(YSJG) / (float(HJ) / float(SL))
+                ratio_ = float(YSJG_) / (float(HJ) / float(SL))
+                if abs(ratio - 1) < abs(ratio_ -1):
+                    CLBH = filtered2.iloc[0]["CLBH"]
+                    CLMC = filtered2.iloc[0]["CLMC"]
+                    JLDW = filtered2.iloc[0]["JLDW"]
+                    YSJG = filtered2.iloc[0]["YSJG"]
+                    clde_["CLBH"] = CLBH
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item()
+                    clde_["SL"] = SL.item()
+                    clde_["HJ"] = HJ.item()
+                    clde.append(clde_)
+                else:
+                    CLBH = filtered2_.iloc[0]["PBBH"]
+                    CLMC = filtered2_.iloc[0]["PBMC"]
+                    JLDW = filtered2_.iloc[0]["DW"]
+                    YSJG = filtered2_.iloc[0]["PBDJ"]
+                    clde_["CLBH"] = CLBH.item()
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item()
+                    clde_["SL"] = SL.item()
+                    clde_["HJ"] = HJ.item()
+                    clde.append(clde_)
+
+
+
     filtered = filtered.drop(['BH1', 'BH2', "GCLCLF", "GCLCLF1", "GCLGG", "GCLGLF", "GCLJJ", "GCLJXF", "GCLLR", "GCLRGF", "GCLRGR", "GCLSJDJ", "GCPBHJ",  "GLFFL", "LRFL", "PBBH", "PBBHM", "PBDJ", "PBSL", "THMC", "THSL", "dejb", "is_lock",  "mcxz", "qfbz",  "sptfl"], axis=1)
     return filtered.to_json(force_ascii=False), id, rgde, jxde, clde, bz_selected.to_json(force_ascii=False) if len(bz_selected) > 0 else None, bz_selected2.to_json(force_ascii=False) if len(bz_selected2) > 0 else None
 
@@ -2105,33 +2227,91 @@ def getSingleDeXilie_sz(debh):
         rcjID = filtered1.iloc[i]["RcjID"]
         detail = pd.read_csv("de/sz/JD_CaiLiaoK.csv")
         filtered2 = detail[detail["RcjID"]==rcjID]
-        if len(filtered2) > 0:
+        detail_ = pd.read_csv("de/sz/JD_PeiBi.csv")
+        filtered2_ = detail_[detail_["RcjID"]==rcjID]
+        if len(filtered2) > 0 and len(filtered2_) == 0:
             CLBH = filtered2.iloc[0]["CLBH"]
             CLMC = filtered2.iloc[0]["CLMC"]
             JLDW = filtered2.iloc[0]["JLDW"]
             YSJG = filtered2.iloc[0]["YSJG"]
-            clde_["CLBH"] = CLBH
+            clde_["CLBH"] = CLBH.item() if type(CLBH) == int64 else CLBH
             clde_["CLMC"] = CLMC
             clde_["JLDW"] = JLDW
             clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG
             clde_["SL"] = SL.item() if type(SL) == float64 else SL
             clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
             clde.append(clde_)
-        else:
-            detail = pd.read_csv("de/sz/JD_PeiBi.csv")
-            filtered2 = detail[detail["RcjID"]==rcjID]
-            if len(filtered2) > 0:
-                CLBH = filtered2.iloc[0]["PBBH"]
-                CLMC = filtered2.iloc[0]["PBMC"]
-                JLDW = filtered2.iloc[0]["DW"]
-                YSJG = filtered2.iloc[0]["PBDJ"]
-                clde_["CLBH"] = CLBH
-                clde_["CLMC"] = CLMC
-                clde_["JLDW"] = JLDW
-                clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG 
-                clde_["SL"] = SL.item() if type(SL) == float64 else SL
-                clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
-                clde.append(clde_)
+        elif len(filtered2) == 0 and len(filtered2_) > 0:
+            CLBH = filtered2_.iloc[0]["PBBH"]
+            CLMC = filtered2_.iloc[0]["PBMC"]
+            JLDW = filtered2_.iloc[0]["DW"]
+            YSJG = filtered2_.iloc[0]["PBDJ"]
+            clde_["CLBH"] = CLBH.item() if type(CLBH) == int64 else CLBH
+            clde_["CLMC"] = CLMC
+            clde_["JLDW"] = JLDW
+            clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG 
+            clde_["SL"] = SL.item() if type(SL) == float64 else SL
+            clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
+            clde.append(clde_)
+        elif len(filtered2) > 0 and len(filtered2_) > 0:
+            YSJG = filtered2.iloc[0]["YSJG"]
+            YSJG_ = filtered2_.iloc[0]["PBDJ"]
+            print(debh)
+            if float(HJ) < 0.00001:
+                if float(YSJG) < 0.00001:
+                    CLBH = filtered2.iloc[0]["CLBH"]
+                    CLMC = filtered2.iloc[0]["CLMC"]
+                    JLDW = filtered2.iloc[0]["JLDW"]
+                    YSJG = filtered2.iloc[0]["YSJG"]
+                    clde_["CLBH"] = CLBH.item() if type(CLBH) == int64 else CLBH
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG
+                    clde_["SL"] = SL.item() if type(SL) == float64 else SL
+                    clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
+                    clde.append(clde_)
+                elif float(YSJG_) < 0.00001:
+                    CLBH = filtered2_.iloc[0]["PBBH"]
+                    CLMC = filtered2_.iloc[0]["PBMC"]
+                    JLDW = filtered2_.iloc[0]["DW"]
+                    YSJG = filtered2_.iloc[0]["PBDJ"]
+                    clde_["CLBH"] = CLBH.item() if type(CLBH) == int64 else CLBH
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG 
+                    clde_["SL"] = SL.item() if type(SL) == float64 else SL
+                    clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
+                    clde.append(clde_)
+            else:
+
+                ratio = float(YSJG) / (float(HJ) / float(SL))
+                ratio_ = float(YSJG_) / (float(HJ) / float(SL))
+                if abs(ratio - 1) < abs(ratio_ - 1):
+                    CLBH = filtered2.iloc[0]["CLBH"]
+                    CLMC = filtered2.iloc[0]["CLMC"]
+                    JLDW = filtered2.iloc[0]["JLDW"]
+                    YSJG = filtered2.iloc[0]["YSJG"]
+                    clde_["CLBH"] = CLBH.item() if type(CLBH) == int64 else CLBH
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG
+                    clde_["SL"] = SL.item() if type(SL) == float64 else SL
+                    clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
+                    clde.append(clde_)
+                else:
+                    CLBH = filtered2_.iloc[0]["PBBH"]
+                    CLMC = filtered2_.iloc[0]["PBMC"]
+                    JLDW = filtered2_.iloc[0]["DW"]
+                    YSJG = filtered2_.iloc[0]["PBDJ"]
+                    clde_["CLBH"] = CLBH.item() if type(CLBH) == int64 else CLBH
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG 
+                    clde_["SL"] = SL.item() if type(SL) == float64 else SL
+                    clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
+                    clde.append(clde_)
+
+
     filtered = filtered.drop(['BH1', 'BH2', "GCLCLF", "GCLCLF1", "GCLGG", "GCLGLF", "GCLJJ", "GCLJXF", "GCLLR", "GCLRGF", "GCLRGR", "GCLSJDJ", "GCPBHJ",  "GLFFL", "LRFL", "PBBH", "PBBHM", "PBDJ", "PBSL", "THMC", "THSL", "dejb", "is_lock",  "mcxz", "qfbz",  "sptfl"], axis=1)
     return filtered.to_json(force_ascii=False), id, rgde, jxde, clde, bz_selected.to_json(force_ascii=False) if len(bz_selected) > 0 else None, bz_selected2.to_json(force_ascii=False) if len(bz_selected2) > 0 else None
         
@@ -2232,7 +2412,9 @@ def getSingleDeXilie_tj(debh):
         rcjID = filtered1.iloc[i]["RcjID"]
         detail = pd.read_csv("de/tj/JD_CaiLiaoK.csv")
         filtered2 = detail[detail["RcjID"]==rcjID]
-        if len(filtered2) > 0:
+        detail_ = pd.read_csv("de/tj/JD_PeiBi.csv")
+        filtered2_ = detail_[detail_["RcjID"]==rcjID]
+        if len(filtered2) > 0 and len(filtered2_) == 0:
             CLBH = filtered2.iloc[0]["CLBH"]
             CLMC = filtered2.iloc[0]["CLMC"]
             JLDW = filtered2.iloc[0]["JLDW"]
@@ -2244,21 +2426,78 @@ def getSingleDeXilie_tj(debh):
             clde_["SL"] = SL.item() if type(SL) == float64 else SL
             clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
             clde.append(clde_)
-        else:
-            detail = pd.read_csv("de/tj/JD_PeiBi.csv")
-            filtered2 = detail[detail["RcjID"]==rcjID]
-            if len(filtered2) > 0:
-                CLBH = filtered2.iloc[0]["PBBH"]
-                CLMC = filtered2.iloc[0]["PBMC"]
-                JLDW = filtered2.iloc[0]["DW"]
-                YSJG = filtered2.iloc[0]["PBDJ"]
-                clde_["CLBH"] = CLBH
-                clde_["CLMC"] = CLMC
-                clde_["JLDW"] = JLDW
-                clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG
-                clde_["SL"] = SL.item() if type(SL) == float64 else SL
-                clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
-                clde.append(clde_)
+        elif len(filtered2) == 0 and len(filtered2_) > 0:
+            CLBH = filtered2_.iloc[0]["PBBH"]
+            CLMC = filtered2_.iloc[0]["PBMC"]
+            JLDW = filtered2_.iloc[0]["DW"]
+            YSJG = filtered2_.iloc[0]["PBDJ"]
+            clde_["CLBH"] = CLBH
+            clde_["CLMC"] = CLMC
+            clde_["JLDW"] = JLDW
+            clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG
+            clde_["SL"] = SL.item() if type(SL) == float64 else SL
+            clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
+            clde.append(clde_)
+        elif len(filtered2) > 0 and len(filtered2_) > 0:
+            YSJG = filtered2.iloc[0]["YSJG"]
+            YSJG_ = filtered2_.iloc[0]["PBDJ"]
+            if float(HJ) < 0.00001:
+                if float(YSJG) < 0.00001:
+                    CLBH = filtered2.iloc[0]["CLBH"]
+                    CLMC = filtered2.iloc[0]["CLMC"]
+                    JLDW = filtered2.iloc[0]["JLDW"]
+                    YSJG = filtered2.iloc[0]["YSJG"]
+                    clde_["CLBH"] = CLBH
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG
+                    clde_["SL"] = SL.item() if type(SL) == float64 else SL
+                    clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
+                    clde.append(clde_)
+                elif float(YSJG_) < 0.00001:
+                    CLBH = filtered2_.iloc[0]["PBBH"]
+                    CLMC = filtered2_.iloc[0]["PBMC"]
+                    JLDW = filtered2_.iloc[0]["DW"]
+                    YSJG = filtered2_.iloc[0]["PBDJ"]
+                    clde_["CLBH"] = CLBH
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG
+                    clde_["SL"] = SL.item() if type(SL) == float64 else SL
+                    clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
+                    clde.append(clde_)
+            else:
+
+                ratio = float(YSJG) / (float(HJ) / float(SL))
+                ratio_ = float(YSJG_) / (float(HJ) / float(SL))
+                if abs(ratio - 1) < abs(ratio_ - 1):
+                    CLBH = filtered2.iloc[0]["CLBH"]
+                    CLMC = filtered2.iloc[0]["CLMC"]
+                    JLDW = filtered2.iloc[0]["JLDW"]
+                    YSJG = filtered2.iloc[0]["YSJG"]
+                    clde_["CLBH"] = CLBH
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG
+                    clde_["SL"] = SL.item() if type(SL) == float64 else SL
+                    clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
+                    clde.append(clde_)
+                else:
+                    CLBH = filtered2_.iloc[0]["PBBH"]
+                    CLMC = filtered2_.iloc[0]["PBMC"]
+                    JLDW = filtered2_.iloc[0]["DW"]
+                    YSJG = filtered2_.iloc[0]["PBDJ"]
+                    clde_["CLBH"] = CLBH
+                    clde_["CLMC"] = CLMC
+                    clde_["JLDW"] = JLDW
+                    clde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG
+                    clde_["SL"] = SL.item() if type(SL) == float64 else SL
+                    clde_["HJ"] = HJ.item() if type(HJ) == float64 else HJ
+                    clde.append(clde_)
+
+
+
+
     filtered = filtered.drop(['BH1', 'BH2', "GCLCLF", "GCLCLF1", "GCLGG", "GCLGLF", "GCLJJ", "GCLJXF", "GCLLR", "GCLRGF", "GCLRGR", "GCLSJDJ", "GCPBHJ", "GLFFL", "LRFL", "PBBH", "PBBHM", "PBDJ", "PBSL", "THMC", "THSL", "dejb", "is_lock",  "mcxz", "qfbz",  "sptfl"], axis=1)
     return filtered.to_json(force_ascii=False), id, rgde, jxde, clde, bz_selected.to_json(force_ascii=False) if len(bz_selected) > 0 else None, bz_selected2.to_json(force_ascii=False) if len(bz_selected2) > 0 else None
 

Některé soubory nejsou zobrazeny, neboť je v těchto rozdílových datech změněno mnoho souborů