| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376 |
- import xml.etree.ElementTree as ET
- from typing import Union
- from fastapi import FastAPI
- import os
- import json
- import uuid
- import re
- from fastapi.middleware.cors import CORSMiddleware
- from pydantic import BaseModel
- import pandas as pd
- from numpy import float64, int64
- def chaifen(result, zhuanye):
- clde = result['clde']
- if zhuanye == 10:
- pbf = pd.read_csv("de/tj/JD_PeiBiF.csv")
- clk = pd.read_csv("de/tj/JD_CaiLiaoK.csv")
- elif zhuanye == 20:
- pbf = pd.read_csv("de/sz/JD_PeiBiF.csv")
- clk = pd.read_csv("de/sz/JD_CaiLiaoK.csv")
- elif zhuanye == 30:
- pbf = pd.read_csv("de/az/JD_PeiBiF.csv")
- clk = pd.read_csv("de/az/JD_CaiLiaoK.csv")
- elif zhuanye == 40:
- pbf = pd.read_csv("de/yl/JD_PeiBiF.csv")
- clk = pd.read_csv("de/yl/JD_CaiLiaoK.csv")
- elif zhuanye == 50:
- pbf = pd.read_csv("de/xstj/JD_PeiBiF.csv")
- clk = pd.read_csv("de/xstj/JD_CaiLiaoK.csv")
- else:
- pbf = pd.read_csv("de/xsaz/JD_PeiBiF.csv")
- clk = pd.read_csv("de/xsaz/JD_CaiLiaoK.csv")
- for entry in clde:
- filtered = pbf[pbf["PBBH"]==entry['CLBH']]
- if len(filtered) > 0:
- entry["children"] = []
- ids = filtered['RcjID'].tolist()
- cls = clk[clk['RcjID'].isin(ids)]
- joined = pd.merge(filtered, cls, on='RcjID')
- for row in joined.itertuples():
- CLBH = row.CLBH
- CLMC = row.CLMC
- JLDW = row.JLDW
- YSJG = row.YSJG
- SL = float(row.SL) * float(entry['SL'])
- HJ = float(row.HJ) * float(entry['SL'])
- entry['children'].append({'CLBH': CLBH,
- 'CLMC': CLMC,
- 'JLDW': JLDW,
- 'YSJG': YSJG,
- 'SL': SL,
- 'HJ': HJ
- })
-
- print(result)
- return result
- def getQingdanTuijian(bh, bt, bm):
- result = []
- try:
- all = pd.read_csv("QingDanAllInOne.csv")
- bm_ = int(bm) // 1000
- hit = all[all["qdbh"] == str(bm_)]
- for i in range(len(hit)):
- result.append({'ID': hit.iloc[i]["index"].item(), '定额编号': hit.iloc[i]["debh"], '工程量名称': hit.iloc[i]["gclmc"], '工作内容': hit.iloc[i]["work"]})
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- finally:
- return result
- def getQdmx(root, bh, bt):
- result = []
- #result = [["序号", "清单编码", "名称", "项目特征", "计算规则", "单位", "数量", "综合单价", "合价", "人工费", "主材费", "设备费", "辅材费", "材料费", "机械费", "管理费", "利润" , "暂估价", "综合人工工日", "备注" ]]
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == bh:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Qdxm':
- Fywj= child
- break
- container = None
- for child in Fywj:
- ##child is mx
-
- if child.tag == "QdBt":
- if child.attrib["Mc"] == bt:
- count = 0
- for grandchild in child:
- count = count + 1
- if count > 0:
-
- container = child
- break
-
-
- if container == None:
- container = Fywj
-
-
- for child in container:
-
- #result = [["序号", "清单编码", "名称", "项目特征", "计算规则", "单位", "数量", "综合单价", "合价", "人工费", "主材费",
- # "设备费", "辅材费", "材料费", "机械费", "管理费", "利润" , "暂估价", "综合人工工日", "备注" ]]
- result.append({
- "操作" : "",
- "序号": child.attrib["Xh"], "清单编码" : child.attrib["Qdbm"], "名称" : child.attrib["Mc"],"项目特征" : child.attrib["Xmtz"],
- "计算规则" : child.attrib["Jsgz"],
- "单位" : child.attrib["Dw"],
- "数量": child.attrib["Sl"],
- "综合单价" : child.attrib["Zhdj"],
- "合价" : child.attrib["Zhhj"],
- "人工费": child.attrib["Rgf"],
- "主材费" : child.attrib["Zcf"],
- "设备费": child.attrib["Sbf"],
- "辅材费": child.attrib["Fcf"],
- "材料费" : child.attrib["Clf"],
- "机械费" : child.attrib["Jxf"],
- "管理费": child.attrib["Glf"],
- "利润": child.attrib["Lr"],
- "暂估价" : child.attrib["Zgj"],
- "综合人工工日" : child.attrib["Zgr"],
- "备注" : child.attrib["Bz"]}
- )
- for child_zj in child:
- if child_zj.tag == "Qdxdezj":
- for child_mx in child_zj:
- if child_mx.tag == "QdxdezjMx":
- key = str(uuid.uuid4())
- child_mx.set("key", key)
- print("set key")
- print(key)
- print(child_mx)
- parent = result[-1]
- if "__children" in parent:
- parent["__children"].append({
- "key": key,
- "操作" : "",
- "序号": None, "清单编码" : child_mx.attrib["Debm"], "名称" : child_mx.attrib["Mc"],"项目特征" : None,
- "计算规则" : None,
- "单位" : child_mx.attrib["Dw"],
- "数量": child_mx.attrib["DwQdSl"],
- "综合单价" : child_mx.attrib["Dj"],
- "合价" : child_mx.attrib["Hj"],
- "人工费": child_mx.attrib["Rgf"],
- "主材费" : child_mx.attrib["Zcf"],
- "设备费": child_mx.attrib["Sbf"],
- "辅材费": child_mx.attrib["Fcf"],
- "材料费" : child_mx.attrib["Clf"],
- "机械费" : child_mx.attrib["Jxf"],
- "管理费": child_mx.attrib["Glf"],
- "利润": child_mx.attrib["Lr"],
- "暂估价" : None,
- "综合人工工日" : None,
- "备注" : None}
- )
- else:
- parent["__children"] = [{
- "key": key,
- "操作" : "",
- "序号": None, "清单编码" : child_mx.attrib["Debm"], "名称" : child_mx.attrib["Mc"],"项目特征" : None,
- "计算规则" : None,
- "单位" : child_mx.attrib["Dw"],
- "数量": child_mx.attrib["DwQdSl"],
- "综合单价" : child_mx.attrib["Dj"],
- "合价" : child_mx.attrib["Hj"],
- "人工费": child_mx.attrib["Rgf"],
- "主材费" : child_mx.attrib["Zcf"],
- "设备费": child_mx.attrib["Sbf"],
- "辅材费": child_mx.attrib["Fcf"],
- "材料费" : child_mx.attrib["Clf"],
- "机械费" : child_mx.attrib["Jxf"],
- "管理费": child_mx.attrib["Glf"],
- "利润": child_mx.attrib["Lr"],
- "暂估价" : None,
- "综合人工工日" : None,
- "备注" : None}]
- return result
- def getQdmx_default(root, bh, bt):
- result = []
- #result = [["序号", "清单编码", "名称", "项目特征", "计算规则", "单位", "数量", "综合单价", "合价", "人工费", "主材费", "设备费", "辅材费", "材料费", "机械费", "管理费", "利润" , "暂估价", "综合人工工日", "备注" ]]
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == bh:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Qdxm':
- Fywj= child
- break
- container = None
- for child in Fywj:
- ##child is mx
-
- if child.tag == "Qdmx":
- #result = [["序号", "清单编码", "名称", "项目特征", "计算规则", "单位", "数量", "综合单价", "合价", "人工费", "主材费",
- # "设备费", "辅材费", "材料费", "机械费", "管理费", "利润" , "暂估价", "综合人工工日", "备注" ]]
- result.append({
- "操作" : "",
- "序号": child.attrib["Xh"], "清单编码" : child.attrib["Qdbm"], "名称" : child.attrib["Mc"],"项目特征" : child.attrib["Xmtz"],
- "计算规则" : child.attrib["Jsgz"],
- "单位" : child.attrib["Dw"],
- "数量": child.attrib["Sl"],
- "综合单价" : child.attrib["Zhdj"],
- "合价" : child.attrib["Zhhj"],
- "人工费": child.attrib["Rgf"],
- "主材费" : child.attrib["Zcf"],
- "设备费": child.attrib["Sbf"],
- "辅材费": child.attrib["Fcf"],
- "材料费" : child.attrib["Clf"],
- "机械费" : child.attrib["Jxf"],
- "管理费": child.attrib["Glf"],
- "利润": child.attrib["Lr"],
- "暂估价" : child.attrib["Zgj"],
- "综合人工工日" : child.attrib["Zgr"],
- "备注" : child.attrib["Bz"]}
- )
- for child_zj in child:
- if child_zj.tag == "Qdxdezj":
- for child_mx in child_zj:
- if child_mx.tag == "QdxdezjMx":
- key = str(uuid.uuid4())
- child_mx.set("key", key)
- print("set key")
- print(key)
- print(child_mx)
- parent = result[-1]
- if "__children" in parent:
- parent["__children"].append({
- "key": key,
- "操作" : "",
- "序号": None, "清单编码" : child_mx.attrib["Debm"], "名称" : child_mx.attrib["Mc"],"项目特征" : None,
- "计算规则" : None,
- "单位" : child_mx.attrib["Dw"],
- "数量": child_mx.attrib["DwQdSl"],
- "综合单价" : child_mx.attrib["Dj"],
- "合价" : child_mx.attrib["Hj"],
- "人工费": child_mx.attrib["Rgf"],
- "主材费" : child_mx.attrib["Zcf"],
- "设备费": child_mx.attrib["Sbf"],
- "辅材费": child_mx.attrib["Fcf"],
- "材料费" : child_mx.attrib["Clf"],
- "机械费" : child_mx.attrib["Jxf"],
- "管理费": child_mx.attrib["Glf"],
- "利润": child_mx.attrib["Lr"],
- "暂估价" : None,
- "综合人工工日" : None,
- "备注" : None}
- )
- else:
- parent["__children"] = [{
- "key": key,
- "操作" : "",
- "序号": None, "清单编码" : child_mx.attrib["Debm"], "名称" : child_mx.attrib["Mc"],"项目特征" : None,
- "计算规则" : None,
- "单位" : child_mx.attrib["Dw"],
- "数量": child_mx.attrib["DwQdSl"],
- "综合单价" : child_mx.attrib["Dj"],
- "合价" : child_mx.attrib["Hj"],
- "人工费": child_mx.attrib["Rgf"],
- "主材费" : child_mx.attrib["Zcf"],
- "设备费": child_mx.attrib["Sbf"],
- "辅材费": child_mx.attrib["Fcf"],
- "材料费" : child_mx.attrib["Clf"],
- "机械费" : child_mx.attrib["Jxf"],
- "管理费": child_mx.attrib["Glf"],
- "利润": child_mx.attrib["Lr"],
- "暂估价" : None,
- "综合人工工日" : None,
- "备注" : None}]
- return result
- def getQdxm_addition(root, id):
- result = []
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Qdxm':
- Fywj= child
- break
-
- for child in Fywj:
- ##child is mx
- if child.tag == "QdBt":
- count = 0
- for grandchild in child:
- count = count + 1
- if count > 0:
- result.append({'Bz': child.attrib["Bz"], 'Je': child.attrib['Je'], 'Mc': child.attrib['Mc'], 'Xh': child.attrib['Xh'], 'Zgj': child.attrib['Zgj']})
-
- return result
- def getQdxm(root, id):###qdxm下面既有qdmx,也有qdbt,qdbt可能为空
- result = []
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Qdxm':
- Fywj= child
- break
-
- for child in Fywj:
- ##child is mx
- if child.tag == 'Qdmx':
- if 'Default' in result:
- pass
- else:
- result.append('Default')
- if child.tag == "QdBt":
- count = 0
- for grandchild in child:
- count = count + 1
- if count > 0:
- result.append(child.attrib["Mc"])
-
- return result
- def getZjcs(root, id):
- result = []
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Csxm':
- Fywj= child
- break
- Zjcs_parent = None
- for child in Fywj:
- if child.tag == 'ZjCs':
- Zjcs_parent = child
- break
-
- for child in Zjcs_parent:
- ##child is mx {
- result.append({
- "序号" : child.attrib["Xh"], "清单编码": child.attrib["Bm"], "名称" : child.attrib["Mc"],
- "计算基数" : child.attrib["Js"],
- "计算基础" : child.attrib["Jsjc"], "费率" : child.attrib["Fl"],
- "金额" : child.attrib["Je"], "项目类别" : child.attrib["Xmlb"]})
- __children = []
- for grandchild in child:
- __children.append({
- "序号" : None, "清单编码": None, "名称" : grandchild.attrib["Mc"],
- "计算基数" : grandchild.attrib["Js"],
- "计算基础" : grandchild.attrib["Jsjc"], "费率" : grandchild.attrib["Fl"],
- "金额" : grandchild.attrib["Je"], "项目类别" : grandchild.attrib["Xmlb"]})
- if len(__children) > 0:
- result[-1]["__children"] = __children
- return result
- def getZcbfwf(root, id):
- result = []
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Zcbfwf':
- Fywj= child
- break
- for child in Fywj:
- result.append(
- {'序号': child.attrib["Xh"],
- "名称" : child.attrib["Mc"], "项目价值" : child.attrib["Xmjz"], "服务内容" :child.attrib["Fwnr"], "计算基础" :child.attrib["Jsjc"],
- "费率" :child.attrib["Fl"], "金额" :child.attrib["Je"]}
- )
- return result
- def getRcjhz(root, id):
- result = [[ "ID", "编码", "名称", "规格型号", "单位", "数量", "单价", "合价", "产地",
- "供应厂商", "人材机类别", "主要材料标志", "主材标志", "设备标志", "甲供标志", "暂估价标志"]]
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Rcjhz':
- Fywj= child
- break
- for child in Fywj:
- result.append(
- [
- child.attrib["RcjId"], child.attrib["RcjBm"], child.attrib["Mc"], child.attrib["Ggxh"],
- child.attrib["Dw"], child.attrib["Sl"], child.attrib["Dj"], child.attrib["Hj"],
- child.attrib["Cd"], child.attrib["Gycs"], child.attrib["Rcjlb"],
- child.attrib["Zyclbz"], child.attrib["Zcbz"], child.attrib["Sbbz"], child.attrib["Jgbz"],
- child.attrib["Zgjbz"]]
- )
- return result
- def getFbrgycl(root, id):
- result = []
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Fbrgycl':
- Fywj= child
- break
- for child in Fywj:
- result.append(
- {'序号': child.attrib["Xh"],
- 'ID': child.attrib["RcjId"], '材料编号': child.attrib["Clbh"], '名称': child.attrib["Mc"], '规格型号': child.attrib["Ggxh"],
- '单位': child.attrib["Dw"], '数量': child.attrib["Sl"], '单价': child.attrib["Dj"], '合价': child.attrib["Hj"], '交货方式': child.attrib["Jhfs"],
- '送达地点': child.attrib["Sddd"], '备注': child.attrib["Bz"]}
- )
- return result
- def getJrg(root, id):
- result = []
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Jrg':
- Fywj= child
- break
- for child in Fywj:
- result.append(
- {'序号': child.attrib["Xh"],
- '名称': child.attrib["Mc"], '金额': child.attrib["Je"], '类别': child.attrib["Lb"]}
- )
- return result
- def getZlje(root, id):
- result = []
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Zlje':
- Fywj= child
- break
- for child in Fywj:
- result.append(
- {'序号': child.attrib["Xh"],
- '名称': child.attrib["Mc"], '单位': child.attrib["Dw"], '暂定金额': child.attrib["Zdje"], '备注': child.attrib["Bz"]}
- )
- return result
- def getZygczgj(root, id):
- result = []
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Zygczg':
- Fywj= child
- break
- for child in Fywj:
- result.append(
- {'序号': child.attrib["Xh"],
- '名称': child.attrib["Mc"], '工程内容': child.attrib["Gcnr"], '金额': child.attrib["Je"], '备注': child.attrib["Bz"]}
- )
- return result
- def getQtxm(root, id):
- result = []
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Qtxm':
- Fywj= child
- break
- for child in Fywj:
- ##child is mx
- xh = child.attrib["Xh"]
- if "." in xh:
- count = 0
- for entry in xh:
- if entry == ".":
- count = count + 1
- if count == 1:
- parent = result[-1]
- if "__children" in parent:
- children = parent["__children"]
- children.append(
- {"序号":xh, "名称": child.attrib["Mc"],
- "金额": child.attrib["Je"], "项目类别" : child.attrib["Xmlb"], "备注" : child.attrib["Bz"]}
- )
- else:
- parent["__children"] = [
- {"序号":xh, "名称": child.attrib["Mc"],
- "金额": child.attrib["Je"], "项目类别" : child.attrib["Xmlb"], "备注" : child.attrib["Bz"]}]
-
- else:
- result.append(
- {"序号":xh, "名称": child.attrib["Mc"],
- "金额": child.attrib["Je"], "项目类别" : child.attrib["Xmlb"], "备注" : child.attrib["Bz"]}
- )
- return result
- def getGfsj(root, id):
- result = []
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Gfsj':
- Fywj= child
- break
- for child in Fywj:
- ##child is mx
- xh = child.attrib["Xh"]
- if "." in xh:
- count = 0
- for entry in xh:
- if entry == ".":
- count = count + 1
- if count == 1:
- parent = result[-1]
- if "__children" in parent:
- children = parent["__children"]
- children.append({"序号":xh, "名称": child.attrib["Mc"], "取费基数": child.attrib["Qfjs"], "计算基础": child.attrib["Jsjc"], "费率": child.attrib['Fl'], "金额": child.attrib["Je"], "类别" : child.attrib["Fyxlb"]})
- else:
- parent["__children"] = [{"序号":xh, "名称": child.attrib["Mc"], "取费基数": child.attrib["Qfjs"], "计算基础": child.attrib["Jsjc"], "费率": child.attrib['Fl'], "金额": child.attrib["Je"], "类别" : child.attrib["Fyxlb"]}]
- elif count == 2:
- parent = result[-1]
- if "__children" in parent:
- parent = parent["__children"][-1]
- print(parent)
- if "__children" in parent:
- children = parent["__children"]
- children.append({"序号":xh, "名称": child.attrib["Mc"], "取费基数": child.attrib["Qfjs"], "计算基础": child.attrib["Jsjc"], "费率": child.attrib['Fl'], "金额": child.attrib["Je"], "类别" : child.attrib["Fyxlb"]})
-
- else:
- parent["__children"] = [{"序号":xh, "名称": child.attrib["Mc"], "取费基数": child.attrib["Qfjs"], "计算基础": child.attrib["Jsjc"], "费率": child.attrib['Fl'], "金额": child.attrib["Je"], "类别" : child.attrib["Fyxlb"]}]
-
- else:
- ###["序号", "名称", "取费基数", "计算基础", "金额", "类别"]);
- result.append({"序号":xh, "名称": child.attrib["Mc"], "取费基数": child.attrib["Qfjs"], "计算基础": child.attrib["Jsjc"], "费率": child.attrib['Fl'], "金额": child.attrib["Je"], "类别" : child.attrib["Fyxlb"]})
- return result
- def getBjhz(root, id):
- print(root)
- print(id)
- result = []
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- print(item)
- Fywj = None
- for child in item:
- if child.tag == 'Fywj':
- Fywj= child
- break
- for child in Fywj:
- ##child is mx
- xh = child.attrib["Xh"]
- if "." in xh:
- count = 0
- for entry in xh:
- if entry == ".":
- count = count + 1
- if count == 1:
- parent = result[-1]
- if "__children" in parent:
- children = parent["__children"]
- children.append({"序号":xh, "名称": child.attrib["Mc"], "金额": child.attrib["Je"], "暂估价" : child.attrib["Zgj"], "类别" : child.attrib["Fyxlb"]})
- else:
- parent["__children"] = [{"序号":xh, "名称": child.attrib["Mc"], "金额": child.attrib["Je"], "暂估价" : child.attrib["Zgj"], "类别" : child.attrib["Fyxlb"]}]
- elif count == 2:
- parent = result[-1]
- if "__children" in parent:
- parent = parent["__children"][-1]
- print(parent)
- if "__children" in parent:
- children = parent["__children"]
- children.append({"序号":xh, "名称": child.attrib["Mc"], "金额": child.attrib["Je"], "暂估价" : child.attrib["Zgj"], "类别" : child.attrib["Fyxlb"]})
-
- else:
- parent["__children"] = [{"序号":xh, "名称": child.attrib["Mc"], "金额": child.attrib["Je"], "暂估价" : child.attrib["Zgj"], "类别" : child.attrib["Fyxlb"]}]
-
- else:
- ###"序号", "名称", "金额", "暂估价", "类别"]
- result.append({"序号":xh, "名称": child.attrib["Mc"], "金额": child.attrib["Je"],
- "暂估价" : child.attrib["Zgj"], "类别" : child.attrib["Fyxlb"]})
- return result
- def processDes(dataframe, from_, end, level):
- result = []
- for i in range(from_, end):
- item = dataframe.iloc[i]
- fbcch = str(item['fbcch'])
- if fbcch == str(level):
- entry = {"id": str(item["ID"]),"key": str(item["ID"]), "value": str(item["ID"]), "label": str(item["zjbt"]), "title": str(item["zjbt"])}
- next = i + 1
- while next < end and str(dataframe.iloc[next]["fbcch"]) != str(level):
- next = next + 1
- entry["children"] = processDes(dataframe, i + 1, next, level + 1)
- result.append(entry)
- return result
- def processPbs(dataframe, from_, end, level):
- result = []
- for i in range(from_, end):
- item = dataframe.iloc[i]
- 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["pblbh"]}
- next = i + 1
- while next < end and str(dataframe.iloc[next]["fbcch"]) != str(level):
- next = next + 1
- entry["children"] = processPbs(dataframe, i + 1, next, level + 1)
- result.append(entry)
- return result
- def processJxs(dataframe, from_, end, level):
- result = []
- for i in range(from_, end):
- item = dataframe.iloc[i]
- 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["jxlbh"]}
- next = i + 1
- while next < end and str(dataframe.iloc[next]["fbcch"]) != str(level):
- next = next + 1
- entry["children"] = processJxs(dataframe, i + 1, next, level + 1)
- result.append(entry)
- return result
- def processCls(dataframe, from_, end, level):
- result = []
- for i in range(from_, end):
- item = dataframe.iloc[i]
- 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)
- next = i + 1
- while next < end and str(dataframe.iloc[next]["fbcch"]) != str(level):
- next = next + 1
- entry["children"] = processCls(dataframe, i + 1, next, level + 1)
- result.append(entry)
- return result
- def getCankao():
- tree = ET.parse('de/DeData_Fl.xml')
- root = tree.getroot()
- JSFF = None
- CsFl = None
- result = []
- for child in root:
- if child.tag == "JJFF":
- for grandchild in child:
- if grandchild.tag == 'JSFF':
- JSFF = grandchild
- for child in JSFF:
- if child.attrib['Markup'] == '1':
- for grandchild in child:
- if grandchild.tag == 'CsFl':
- CsFl = grandchild
- for child in CsFl:
- result.append({'工程类型': child.attrib['Gclx'], '名称': child.attrib['Mc'], '计算基础': child.attrib['Jsjc'],
- '参考费率': child.attrib['CkFl'], '地区': child.attrib['Dq'], '备注': child.attrib['Bz']})
- return result
- def getDes(value):
- if value == 10:
- shu = pd.read_csv("de/tj/JD_DingEShu.csv")
- elif value == 20:
- shu = pd.read_csv("de/sz/JD_DingEShu.csv")
- elif value == 30:
- shu = pd.read_csv("de/az/JD_DingEShu.csv")
- elif value == 40:
- shu = pd.read_csv("de/yl/JD_DingEShu.csv")
- elif value == 50:
- shu = pd.read_csv("de/xstj/JD_DingEShu.csv")
- else:
- shu = pd.read_csv("de/xsaz/JD_DingEShu.csv")
- length = len(shu)
- return processDes(shu, 1, length, 2)
- def getPbs(value):
- if value == 10:
- shu = pd.read_csv("de/tj/JD_PeiBiFLB.csv")
- elif value == 20:
- shu = pd.read_csv("de/tj/JD_PeiBiFLB.csv")
- elif value == 30:
- shu = pd.read_csv("de/tj/JD_PeiBiFLB.csv")
- else:
- return []
- length = len(shu)
- return processPbs(shu, 0, length, 1)
- def getJxs(value):
- if value == 10:
- shu = pd.read_csv("de/tj/JD_JiXieFLB.csv")
- elif value == 20:
- shu = pd.read_csv("de/tj/JD_JiXieFLB.csv")
- elif value == 30:
- shu = pd.read_csv("de/tj/JD_JiXieFLB.csv")
- else:
- return []
- length = len(shu)
- return processJxs(shu, 0, length, 1)
- def getCls(value):
- if value == 10:
- shu = pd.read_csv("de/tj/JD_CaiLiaoFLB.csv")
- elif value == 20:
- shu = pd.read_csv("de/sz/JD_CaiLiaoFLB.csv")
- elif value == 30:
- shu = pd.read_csv("de/az/JD_CaiLiaoFLB.csv")
- elif value == 40:
- shu = pd.read_csv("de/yl/JD_CaiLiaoFLB.csv")
- elif value == 50:
- shu = pd.read_csv("de/xstj/JD_CaiLiaoFLB.csv")
- elif value == 60:
- shu = pd.read_csv("de/xsaz/JD_CaiLiaoFLB.csv")
- else:
- return []
- length = len(shu)
- return processCls(shu, 0, length, 1)
- def read_singledexilie_azfy(debh):
- id = "None"
- if "-F1" in debh:
- id = "2076"
- elif "-F2" in debh:
- id = "2077"
- elif "-F3" in debh:
- id = "2078"
- elif "-F4" in debh:
- id = "2079"
- elif "-F5" in debh:
- if '4-F5' in debh:
- id = "2081"
- elif '5-F5' in debh:
- id = '2082'
- elif '7-F5' in debh:
- id = '2083'
- elif '9-F5' in debh:
- id = '2084'
- elif '10-F5' in debh:
- id = '2085'
- elif '11-F5' in debh:
- id = '2086'
- elif "-F6" in debh:
- id = "2087"
- r_debh = debh.split("!")[0]
- if len(debh.split("!")) == 1:
- return json.dumps({
- "reverse": id,
- "rgde": [],
- "jxde": [],
- "clde": [],
- "actual_zhuanye": 30,
- "bz_selected": {"BZBH": {}},
- "bz_selected2": {"BZBH": {}}
- }, ensure_ascii=False)
- gclmc = debh.split("!")[1]
-
- return json.dumps({
- "reverse": id,
- "DEBH": {"111": r_debh},
- "GCLMC": {"111": gclmc},
- "DW": {"111": '项'},
- "rgde": [],
- "jxde": [],
- "clde": [],
- "actual_zhuanye": 30,
- "bz_selected": {"BZBH": {}},
- "bz_selected2": {"BZBH": {}}
- }, ensure_ascii=False)
- def getDeXilie_azfy(value, id):
- if int(id) == 2075 or int(id) == 2080:
- return "{\"Unnamed: 0\":{},\"id\":{},\"DEBH\":{},\"GCLMC\":{},\"GCLSJDJ\":{},\"DW\":{},\"DeId\":{}}"
- if int(id) == 2076:
- data = {'DW': ['项', '项', '项', '项', '项', '项', '项', '项', "项", "项", "项", "项", "项", "项", "项", "项"],
- 'DEBH': ['2-F1', '2-F1', '3-F1', '3-F1', '4-F1',
- '5-F1', '6-F1', '7-F1', '8-F1', '9-F1', '10-F1', '11-F1', '11-F1', '11-F1', '11-F1', '11-F1'],
- "GCLMC": ["第二册第1-5章(定额2-1~2-390)", "第二册第6章(定额2-391~2-9999)", "第三册静置设备制作(定额3-1~3-615)",
- "第三册除静置设备制作以外(定额3-616~3-9999)", "第四册",
- "第五册", "第六册", "第七册", "第八册", "第九册", "第十册",
- "第十一册刷油工程(定额11-51~11-329)",
- "第十一册防腐蚀工程(定额11-330~11-1689)", "第十一册绝热工程(定额11-1690~11-2327)", "第十一册除锈工程(定额11-1~11-50)刷油工程", "第十一册除锈工程(定额11-1~11-50)防腐蚀工程"],
- "GCLSJDJ": ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"]}
- df = pd.DataFrame(data)
- return df.to_json(force_ascii=False)
- if int(id) == 2077:
- data = {'DW': ['项', '项', '项', '项', '项', '项', '项', '项','项','项',
- '项','项','项','项','项','项','项','项','项','项',
- '项','项','项',
- '项','项', "项",'项','项','项','项', "项",'项', "项"],
- 'DEBH': ['1-F2', '1-F2','1-F2','1-F2','1-F2','1-F2','1-F2','1-F2','1-F2','1-F2','1-F2','1-F2',
- '4-F2', '5-F2', '5-F2', '5-F2','6-F2',
- '7-F2', '9-F2','9-F2','9-F2','9-F2', '10-F2','10-F2','10-F2','10-F2',
- '11-F2','11-F2','11-F2','11-F2', '11-F2','11-F2','11-F2' ],
- "GCLMC": ["第一册第1-6章(定额1-1~1-571)10-15m",
- "第一册第1-6章(定额1-1~1-571)15-20m",
- "第一册第1-6章(定额1-1~1-571)20-25m",
- "第一册第1-6章(定额1-1~1-571)25-30m",
- "第一册第1-6章(定额1-1~1-571)30-40m",
- "第一册第1-6章(定额1-1~1-571)40m以上",
- "第一册第8-14章(定额1-672~1-9999)10-15m",
- "第一册第8-14章(定额1-672~1-9999)15-20m",
- "第一册第8-14章(定额1-672~1-9999)20-25m",
- "第一册第8-14章(定额1-672~1-9999)25-30m",
- "第一册第8-14章(定额1-672~1-9999)30-40m",
- "第一册第8-14章(定额1-672~1-9999)40m以上",
- "第四册",
- "第五册5m以上到10m以内",
- "第五册10-20m",
- "第五册20m以上",
- "第六册", "第七册",
- "第九册5m以上到8m以内",
- "第九册8-12m",
- "第九册12-16m",
- "第九册16-20m",
- "第十册3.6-8m以内",
- "第十册8-12m以内",
- "第十册12-16m以内",
- "第十册16-20m",
- "第十一册6-20m",
- "第十一册20-30m",
- "第十一册30-40m",
- "第十一册40-50m",
- "第十一册50-60m",
- "第十一册60-70m",
- "第十一册80m以上",
- ],
- "GCLSJDJ": ["0", "0", '0', '0',"0", "0", "0", "0", "0", "0",
- "0", "0", '0', '0',"0", "0", "0", "0", "0", "0",
- "0","0", "0",
- "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"]}
- df = pd.DataFrame(data)
- return df.to_json(force_ascii=False)
- if int(id) == 2078:
- data = {'DW': ['项', '项', '项', '项', '项', '项', '项', '项', "项", "项", "项"],
- 'DEBH': ['1-F4', '1-F4', '2-F4', '3-F4', '4-F4',
- '5-F4', '6-F4', '7-F4', '8-F4', '9-F4', '11-F4'],
- "GCLMC": ["第一册第1-6章", "第一册第8-14章", "第二册",
- "第三册", "第四册",
- "第五册", "第六册", "第七册", "第八册", "第九册",
- "第十一册", ],
-
- "GCLSJDJ": ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"]}
- df = pd.DataFrame(data)
- return df.to_json(force_ascii=False)
- if int(id) == 2079:
- data = {'DW': ['项', '项', '项', '项', '项', '项', '项', '项', "项", "项", "项"],
- 'DEBH': ['1-F5', '1-F5', '2-F5', '3-F5', '4-F5',
- '5-F5', '6-F5', '7-F5', '8-F5', '9-F5', '11-F5'],
- "GCLMC": ["第一册第1-6章", "第一册第8-14章", "第二册",
- "第三册", "第四册",
- "第五册", "第六册", "第七册", "第八册", "第九册",
- "第十一册", ],
-
- "GCLSJDJ": ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"]}
- df = pd.DataFrame(data)
- return df.to_json(force_ascii=False)
- if int(id) == 2081:
- data = {'DW': ['项', '项', '项', '项', '项', '项', '项', '项', "项", "项",
- "项", '项', '项', '项', '项', "项", "项", "项"],
- 'DEBH': ['4-F3', '4-F3','4-F3', '4-F3','4-F3', '4-F3','4-F3', '4-F3',
- '4-F3', '4-F3','4-F3', '4-F3','4-F3', '4-F3','4-F3', '4-F3','4-F3', '4-F3'],
- "GCLMC": ["9层或30m以内",
- "12层或40m以内",
- "15层或50m以内",
- "18层或60m以内",
- "21层或70m以内",
- "24层或80m以内",
- "27层或90m以内",
- "30层或100m以内",
- "33层或110m以内",
- "36层或120m以内",
- "40层或130m以内",
- "42层或140m以内",
- "45层或150m以内",
- "48层或160m以内",
- "51层或170m以内",
- "54层或180m以内",
- "57层或190m以内",
- "60层或200m以内",
- ],
-
- "GCLSJDJ": ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
- "0", "0", "0", "0", "0", "0", "0", "0"]}
- df = pd.DataFrame(data)
- return df.to_json(force_ascii=False)
- if int(id) == 2082:
- data = {'DW': ['项', '项', '项', '项', '项', '项', '项', '项', "项", "项",
- "项", '项', '项', '项', '项', "项", "项", "项"],
- 'DEBH': ['5-F3', '5-F3','5-F3', '5-F3','5-F3', '5-F3','5-F3', '5-F3',
- '5-F3', '5-F3','5-F3', '5-F3','5-F3', '5-F3','5-F3', '5-F3','5-F3', '5-F3'],
- "GCLMC": ["9层或30m以内",
- "12层或40m以内",
- "15层或50m以内",
- "18层或60m以内",
- "21层或70m以内",
- "24层或80m以内",
- "27层或90m以内",
- "30层或100m以内",
- "33层或110m以内",
- "36层或120m以内",
- "40层或130m以内",
- "42层或140m以内",
- "45层或150m以内",
- "48层或160m以内",
- "51层或170m以内",
- "54层或180m以内",
- "57层或190m以内",
- "60层或200m以内",
- ],
-
- "GCLSJDJ": ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
- "0", "0", "0", "0", "0", "0", "0", "0"]}
- df = pd.DataFrame(data)
- return df.to_json(force_ascii=False)
- if int(id) == 2083:
- data = {'DW': ['项', '项', '项', '项', '项', '项', '项', '项', "项", "项",
- "项", '项', '项', '项', '项', "项", "项", "项"],
- 'DEBH': ['7-F3', '7-F3','7-F3', '7-F3','7-F3', '7-F3','7-F3', '7-F3',
- '7-F3', '7-F3','7-F3', '7-F3','7-F3', '7-F3','7-F3', '7-F3','7-F3', '7-F3'],
- "GCLMC": ["9层或30m以内",
- "12层或40m以内",
- "15层或50m以内",
- "18层或60m以内",
- "21层或70m以内",
- "24层或80m以内",
- "27层或90m以内",
- "30层或100m以内",
- "33层或110m以内",
- "36层或120m以内",
- "40层或130m以内",
- "42层或140m以内",
- "45层或150m以内",
- "48层或160m以内",
- "51层或170m以内",
- "54层或180m以内",
- "57层或190m以内",
- "60层或200m以内",
- ],
-
- "GCLSJDJ": ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
- "0", "0", "0", "0", "0", "0", "0", "0"]}
- df = pd.DataFrame(data)
- return df.to_json(force_ascii=False)
- if int(id) == 2084:
- data = {'DW': ['项', '项', '项', '项', '项', '项', '项', '项', "项", "项",
- "项", '项', '项', '项', '项', "项", "项", "项"],
- 'DEBH': ['9-F3', '9-F3','9-F3', '9-F3','9-F3', '9-F3','9-F3', '9-F3',
- '9-F3', '9-F3','9-F3', '9-F3','9-F3', '9-F3','9-F3', '9-F3','9-F3', '9-F3'],
- "GCLMC": ["9层或30m以内",
- "12层或40m以内",
- "15层或50m以内",
- "18层或60m以内",
- "21层或70m以内",
- "24层或80m以内",
- "27层或90m以内",
- "30层或100m以内",
- "33层或110m以内",
- "36层或120m以内",
- "40层或130m以内",
- "42层或140m以内",
- "45层或150m以内",
- "48层或160m以内",
- "51层或170m以内",
- "54层或180m以内",
- "57层或190m以内",
- "60层或200m以内",
- ],
-
- "GCLSJDJ": ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
- "0", "0", "0", "0", "0", "0", "0", "0"]}
- df = pd.DataFrame(data)
- return df.to_json(force_ascii=False)
- if int(id) == 2085:
- data = {'DW': ['项', '项', '项', '项', '项', '项', '项', '项', "项", "项",
- "项", '项', '项', '项', '项', "项", "项", "项"],
- 'DEBH': ['10-F3', '10-F3','10-F3', '10-F3','10-F3', '10-F3','10-F3', '10-F3',
- '10-F3', '10-F3','10-F3', '10-F3','10-F3', '10-F3','10-F3', '10-F3','10-F3', '10-F3'],
- "GCLMC": ["9层或30m以内",
- "12层或40m以内",
- "15层或50m以内",
- "18层或60m以内",
- "21层或70m以内",
- "24层或80m以内",
- "27层或90m以内",
- "30层或100m以内",
- "33层或110m以内",
- "36层或120m以内",
- "40层或130m以内",
- "42层或140m以内",
- "45层或150m以内",
- "48层或160m以内",
- "51层或170m以内",
- "54层或180m以内",
- "57层或190m以内",
- "60层或200m以内",
- ],
-
- "GCLSJDJ": ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
- "0", "0", "0", "0", "0", "0", "0", "0"]}
- df = pd.DataFrame(data)
- return df.to_json(force_ascii=False)
- if int(id) == 2086:
- data = {'DW': ['项', '项', '项', '项', '项', '项', '项', '项', "项", "项",
- '项', '项', '项', '项', '项', '项', '项', '项', "项", "项",
- '项', '项', '项', '项', '项', '项', '项', '项', "项", "项",
- '项', '项', '项', '项', '项', '项', '项', '项', "项", "项",
- '项', '项', '项', '项', '项', '项', '项', '项', "项", "项",
- '项', '项', '项', '项', '项', '项', '项', '项', "项", "项",
- '项', '项', '项', '项', '项', '项', '项', '项', "项", "项",
- "项", '项'],
- 'DEBH': ['11-F3', '11-F3',
- '11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3',
- '11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3',
- '11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3',
- '11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3',
- '11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3',
- '11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3',
- '11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3','11-F3', '11-F3',
- ],
- "GCLMC": [
- "(按通风空调工程)9层或30m以内",
- "(按通风空调工程)12层或40m以内",
- "(按通风空调工程)15层或50m以内",
- "(按通风空调工程)18层或60m以内",
- "(按通风空调工程)21层或70m以内",
- "(按通风空调工程)24层或80m以内",
- "(按通风空调工程)27层或90m以内",
- "(按通风空调工程)30层或100m以内",
- "(按通风空调工程)33层或110m以内",
- "(按通风空调工程)36层或120m以内",
- "(按通风空调工程)40层或130m以内",
- "(按通风空调工程)42层或140m以内",
- "(按通风空调工程)45层或150m以内",
- "(按通风空调工程)48层或160m以内",
- "(按通风空调工程)51层或170m以内",
- "(按通风空调工程)54层或180m以内",
- "(按通风空调工程)57层或190m以内",
- "(按通风空调工程)60层或200m以内",
- ############################
- "(按消防工程)9层或30m以内",
- "(按消防工程)12层或40m以内",
- "(按消防工程)15层或50m以内",
- "(按消防工程)18层或60m以内",
- "(按消防工程)21层或70m以内",
- "(按消防工程)24层或80m以内",
- "(按消防工程)27层或90m以内",
- "(按消防工程)30层或100m以内",
- "(按消防工程)33层或110m以内",
- "(按消防工程)36层或120m以内",
- "(按消防工程)40层或130m以内",
- "(按消防工程)42层或140m以内",
- "(按消防工程)45层或150m以内",
- "(按消防工程)48层或160m以内",
- "(按消防工程)51层或170m以内",
- "(按消防工程)54层或180m以内",
- "(按消防工程)57层或190m以内",
- "(按消防工程)60层或200m以内",
- ############################
- "(按给排水、采暖工程)9层或30m以内",
- "(按给排水、采暖工程)12层或40m以内",
- "(按给排水、采暖工程)15层或50m以内",
- "(按给排水、采暖工程)18层或60m以内",
- "(按给排水、采暖工程)21层或70m以内",
- "(按给排水、采暖工程)24层或80m以内",
- "(按给排水、采暖工程)27层或90m以内",
- "(按给排水、采暖工程)30层或100m以内",
- "(按给排水、采暖工程)33层或110m以内",
- "(按给排水、采暖工程)36层或120m以内",
- "(按给排水、采暖工程)40层或130m以内",
- "(按给排水、采暖工程)42层或140m以内",
- "(按给排水、采暖工程)45层或150m以内",
- "(按给排水、采暖工程)48层或160m以内",
- "(按给排水、采暖工程)51层或170m以内",
- "(按给排水、采暖工程)54层或180m以内",
- "(按给排水、采暖工程)57层或190m以内",
- "(按给排水、采暖工程)60层或200m以内",
- ############################
- "(按电气工程)9层或30m以内",
- "(按电气工程)12层或40m以内",
- "(按电气工程)15层或50m以内",
- "(按电气工程)18层或60m以内",
- "(按电气工程)21层或70m以内",
- "(按电气工程)24层或80m以内",
- "(按电气工程)27层或90m以内",
- "(按电气工程)30层或100m以内",
- "(按电气工程)33层或110m以内",
- "(按电气工程)36层或120m以内",
- "(按电气工程)40层或130m以内",
- "(按电气工程)42层或140m以内",
- "(按电气工程)45层或150m以内",
- "(按电气工程)48层或160m以内",
- "(按电气工程)51层或170m以内",
- "(按电气工程)54层或180m以内",
- "(按电气工程)57层或190m以内",
- "(按电气工程)60层或200m以内",
- ],
-
- "GCLSJDJ": ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
- "0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
- "0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
- "0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
- "0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
- "0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
- "0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
- "0", "0" ]}
- df = pd.DataFrame(data)
- return df.to_json(force_ascii=False)
- if int(id) == 2087:
- data = {'DW': ['项', '项', '项', '项', '项', '项', '项', '项', "项"],
- 'DEBH': ['1-F6', '3-F6', '4-F6', '7-F6', '8-F6',
- '10-F6', '10-F6', '10-F6', '11-F6'],
- "GCLMC": ["第一册 站内工艺系统",
- "第三册 站内工艺系统", "第四册 站内工艺系统",
- "第七册", "第八册 站内工艺系统",
- "第十册供暖器具安装", "第十册空调水工程管道安装", "第十册空调水工程管道附件", "第十一册 站内工艺系统" ],
-
- "GCLSJDJ": ["0", "0", "0", "0", "0", "0", "0", "0", "0"]}
- df = pd.DataFrame(data)
- return df.to_json(force_ascii=False)
- def getDeXilie(value, id):
- print(type(id))
- if value == 10:
- shu = pd.read_csv("de/tj/JD_DingEShu.csv")
- elif value == 20:
- shu = pd.read_csv("de/sz/JD_DingEShu.csv")
- elif value == 30:
- shu = pd.read_csv("de/az/JD_DingEShu.csv")
- elif value == 40:
- shu = pd.read_csv("de/yl/JD_DingEShu.csv")
- elif value == 50:
- shu = pd.read_csv("de/xstj/JD_DingEShu.csv")
- else:
- shu = pd.read_csv("de/xsaz/JD_DingEShu.csv")
- hit = shu[shu["ID"]==int(id)]
- print(hit)
- if len(hit) == 0:
- return []
- hit0 = hit.iloc[0]
- index = str(hit0['zjh'])
- print("index=" + index)
- if value == 10:
- gj = pd.read_csv("de/tj/JD_DanWeiGJ.csv")
- filtered = gj[gj["YSDELBH"]==int(index)]
- elif value == 20:
- gj = pd.read_csv("de/sz/JD_DanWeiGJ.csv")
- filtered = gj[gj["YSDELBH"]==(index)]
- elif value == 30:
- gj = pd.read_csv("de/az/JD_DanWeiGJ.csv")
- filtered = gj[gj["YSDELBH"]==(index)]
- elif value == 40:
- gj = pd.read_csv("de/yl/JD_DanWeiGJ.csv")
- filtered = gj[gj["YSDELBH"]==int(index)]
- elif value == 50:
- gj = pd.read_csv("de/xstj/JD_DanWeiGJ.csv")
- filtered = gj[gj["YSDELBH"]==int(index)]
- else:
- gj = pd.read_csv("de/xsaz/JD_DanWeiGJ.csv")
- filtered = gj[gj["YSDELBH"]==int(index)]
- filtered = filtered.drop(['BH1', 'BH2', "GCLCLF", "GCLCLF1", "GCLGG", "GCLGLF", "GCLJJ", "GCLJXF", "GCLLR", "GCLRGF", "GCLRGR", "GCPBHJ", "GLFFL", "LRFL", "PBBH", "PBBHM", "PBDJ", "PBSL", "THMC", "THSL", "dejb", "is_lock", "mcxz", "qfbz", "sptfl"], axis=1)
- return filtered.to_json(force_ascii=False)
- def getQufei(name):
- if name == "0":
- gj = pd.read_csv("de/tj/JD_PeiBi.csv")
- return gj.to_json(force_ascii=False)
- shu = pd.read_csv("de/tj/JD_PeiBiFLB.csv")
- hit = shu[shu["ID"]==int(name)]
- print(hit)
- if len(hit) == 0:
- return []
- hit0 = hit.iloc[0]
- index = str(hit0['pblbh'])
- index_list = index.split(";")
- gj = pd.read_csv("de/tj/JD_PeiBi.csv")
- filtered = gj[gj["PBBH"].str.startswith(tuple(index_list))]
- return filtered.to_json(force_ascii=False)
- def getPbxl(name, zhuanye):
- if name == "0":
- if zhuanye == 10:
- gj = pd.read_csv("de/tj/JD_PeiBi.csv")
- elif zhuanye == 20:
- gj = pd.read_csv("de/tj/JD_PeiBi.csv")
- elif zhuanye == 30:
- gj = pd.read_csv("de/tj/JD_PeiBi.csv")
- elif zhuanye == 40:
- gj = pd.read_csv("de/yl/JD_PeiBi.csv")
- elif zhuanye == 50:
- gj = pd.read_csv("de/xstj/JD_PeiBi.csv")
- elif zhuanye == 60:
- gj = pd.read_csv("de/xsaz/JD_PeiBi.csv")
- return gj.to_json(force_ascii=False)
- shu = pd.read_csv("de/tj/JD_PeiBiFLB.csv")
- hit = shu[shu["ID"]==int(name)]
- print(hit)
- if len(hit) == 0:
- return []
- hit0 = hit.iloc[0]
- index = str(hit0['pblbh'])
- index_list = index.split(";")
- gj = pd.read_csv("de/tj/JD_PeiBi.csv")
- filtered = gj[gj["PBBH"].str.startswith(tuple(index_list))]
- return filtered.to_json(force_ascii=False)
- def getJxxl(name, zhuanye):
- if name == "0":
- if zhuanye == 10:
- gj = pd.read_csv("de/tj/JD_JiXieK.csv")
- elif zhuanye == 20:
- gj = pd.read_csv("de/tj/JD_JiXieK.csv")
- elif zhuanye == 30:
- gj = pd.read_csv("de/tj/JD_JiXieK.csv")
- elif zhuanye == 40:
- gj = pd.read_csv("de/yl/JD_JiXieK.csv")
- elif zhuanye == 50:
- gj = pd.read_csv("de/xstj/JD_JiXieK.csv")
- elif zhuanye == 60:
- gj = pd.read_csv("de/xsaz/JD_JiXieK.csv")
- return gj.to_json(force_ascii=False)
- shu = pd.read_csv("de/tj/JD_JiXieFLB.csv")
- hit = shu[shu["ID"]==int(name)]
- print(hit)
- if len(hit) == 0:
- return []
- hit0 = hit.iloc[0]
- index = str(hit0['jxlbh'])
- index_list = index.split(";")
- gj = pd.read_csv("de/tj/JD_JiXieK.csv")
- filtered = gj[gj["jxbh"].str.startswith(tuple(index_list))]
- return filtered.to_json(force_ascii=False)
- def getClxl(name, zhuanye):
- if name == "0":
- if zhuanye == 10:
- gj = pd.read_csv("de/tj/JD_CaiLiaoK.csv")
- elif zhuanye == 20:
- gj = pd.read_csv("de/sz/JD_CaiLiaoK.csv")
- elif zhuanye == 30:
- gj = pd.read_csv("de/az/JD_CaiLiaoK.csv")
- elif zhuanye == 40:
- gj = pd.read_csv("de/yl/JD_CaiLiaoK.csv")
- elif zhuanye == 50:
- gj = pd.read_csv("de/xstj/JD_CaiLiaoK.csv")
- elif zhuanye == 60:
- gj = pd.read_csv("de/xsaz/JD_CaiLiaoK.csv")
- return gj.to_json(force_ascii=False)
- if zhuanye == 10:
- shu = pd.read_csv("de/tj/JD_CaiLiaoFLB.csv")
- if zhuanye == 20:
- shu = pd.read_csv("de/sz/JD_CaiLiaoFLB.csv")
- if zhuanye == 30:
- shu = pd.read_csv("de/az/JD_CaiLiaoFLB.csv")
- if zhuanye == 40:
- shu = pd.read_csv("de/yl/JD_CaiLiaoFLB.csv", dtype={'cllbh': str})
- if zhuanye == 50:
- shu = pd.read_csv("de/xstj/JD_CaiLiaoFLB.csv", dtype={'cllbh': str})
- if zhuanye == 60:
- shu = pd.read_csv("de/xsaz/JD_CaiLiaoFLB.csv", dtype={'cllbh': str})
- hit = shu[shu["ID"]==int(name)]
- print(hit)
- if len(hit) == 0:
- return []
- hit0 = hit.iloc[0]
- index = str(hit0['cllbh'])
- index_list = index.split(";")
- if zhuanye == 10:
- gj = pd.read_csv("de/tj/JD_CaiLiaoK.csv")
- if zhuanye == 20:
- gj = pd.read_csv("de/sz/JD_CaiLiaoK.csv")
- if zhuanye == 30:
- gj = pd.read_csv("de/az/JD_CaiLiaoK.csv")
- if zhuanye == 40:
- gj = pd.read_csv("de/yl/JD_CaiLiaoK.csv")
- if zhuanye == 50:
- gj = pd.read_csv("de/xstj/JD_CaiLiaoK.csv")
- if zhuanye == 60:
- gj = pd.read_csv("de/xsaz/JD_CaiLiaoK.csv")
- ##print(index_list)
- ##print(gj)
- filtered = gj[gj["CLBH"].str.startswith(tuple(index_list))]
- return filtered.to_json(force_ascii=False)
- def getSingleDeXilie(zhuanye, debh):
- if zhuanye == 10:
- A1, A2, A3, A4, A5, A6, A7 = getSingleDeXilie_tj(debh)
- if A1:
- return A1, A2, A3, A4, A5, A6, A7, 10
- else:
- A1, A2, A3, A4, A5, A6, A7 = getSingleDeXilie_sz(debh)
- return A1, A2, A3, A4,A5, A6, A7, 20
- elif zhuanye == 20:##shizheng
- A1, A2, A3, A4, A5, A6, A7 = getSingleDeXilie_sz(debh)
- if A1:
- return A1, A2, A3, A4, A5, A6, A7, 20
- else:
- A1, A2, A3, A4, A5, A6, A7 = getSingleDeXilie_tj(debh)
- if A1:
- return A1, A2, A3, A4, A5, A6, A7, 10
- else:
- A1, A2, A3, A4, A5, A6, A7 = getSingleDeXilie_az(debh)
- return A1, A2, A3, A4, A5, A6, A7, 30
- elif zhuanye == 30:##anzhuang
- A1, A2, A3, A4, A5, A6, A7 = getSingleDeXilie_az(debh)
- return A1, A2, A3, A4, A5, A6, A7, 30
- elif zhuanye == 40:##yuanlin
- A1, A2, A3, A4, A5, A6, A7 = getSingleDeXilie_yl(debh)
- return A1, A2, A3, A4, A5, A6, A7, 40
- elif zhuanye == 50: ## xiushan tujian
- A1, A2, A3, A4, A5, A6, A7 = getSingleDeXilie_xstj(debh)
- if A1:
- return A1, A2, A3, A4, A5, A6, A7, 50
- else:
- A1, A2, A3, A4, A5, A6, A7 = getSingleDeXilie_tj(debh)
- return A1, A2, A3, A4,A5, A6, A7, 10
- else:
- A1, A2, A3, A4, A5, A6, A7 = getSingleDeXilie_xsaz(debh)
- if A1:
- return A1, A2, A3, A4, A5, A6, A7, 60
- else:
- A1, A2, A3, A4, A5, A6, A7 = getSingleDeXilie_az(debh)
- return A1, A2, A3, A4,A5, A6, A7, 30
- def getSingleDeXilie_xsaz(debh):
- id = None
- bz_selected = []
- bz_selected2 = []
- if "附注" in debh:
- position = debh.find("附注")
- debh = debh[:position]
- if "*" in debh:
- position = debh.find("*")
- debh = debh[:position]
- if debh.endswith("换"):
- debh = debh[:-1]
- if "[" in debh:
- position = debh.find("[")
- debh = debh[:position-1]
- gj = pd.read_csv("de/xsaz/JD_DanWeiGJ.csv")
- filtered = gj[gj["DEBH"]==debh]
- ##print(filtered)
- if len(filtered) > 0:
- index = (filtered.iloc[0]["YSDELBH"])
- shu = pd.read_csv("de/xsaz/JD_DingEShu.csv")
- hit = shu[shu["zjh"]==index]
- if len(hit) > 0:
- id = hit.iloc[0]["ID"]
- beizhu = str(filtered.iloc[0]["BZBH"])
- if 'nan' in beizhu:
- pass
- else:
- beizhus = beizhu.split(";")
- ##print(beizhus)
- bzfile = pd.read_csv("de/xsaz/JD_BeiZhuZK.csv")
- bzfile2 = pd.read_csv("de/xsaz/JD_BeiZhuFK.csv", dtype=str)
- bz_selected = bzfile[bzfile["BZBH"].isin(beizhus)]
- bz_selected2 = bzfile2[bzfile2["BZBH"].isin(beizhus)]
- else:
- return None, None, None, None, None, None, None
- ####rengong
- rgde = []
- rg = pd.read_csv("de/xsaz/JD_GuJiaRG.csv")
- filtered1 = rg[rg["DEBH"]==debh]
- for i in range(len(filtered1)):
- rgde_ = {}
- gr = filtered1.iloc[i]["RGR"]##gongri
- gf = filtered1.iloc[i]["RGF"]##gongfei
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/xsaz/JD_CaiLiaoK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if len(filtered2) > 0:
- CLBH = filtered2.iloc[0]["CLBH"]
- CLMC = filtered2.iloc[0]["CLMC"]
- JLDW = filtered2.iloc[0]["JLDW"]
- YSJG = filtered2.iloc[0]["YSJG"]
- rgde_["CLBH"] = CLBH
- rgde_["CLMC"] = CLMC
- rgde_["JLDW"] = JLDW
- rgde_["YSJG"] = YSJG.item()
- rgde_["gr"] = gr.item()
- rgde_["gf"] = gf.item()
- rgde.append(rgde_)
- ##print(rgde)
- ####jixie
- jxde = []
- jx = pd.read_csv("de/xsaz/JD_GuJiaJX.csv")
- filtered1 = jx[jx["DEBH"]==debh]
- for i in range(len(filtered1)):
- jxde_ = {}
- sl = filtered1.iloc[i]["SL"]##shuliang
- hj = filtered1.iloc[i]["HJ"]##hejia
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/xsaz/JD_JiXieK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if len(filtered2) > 0:
- jxbh = filtered2.iloc[0]["jxbh"]
- jxmc = filtered2.iloc[0]["jxmc"]
- DW = filtered2.iloc[0]["DW"]
- tbdj = filtered2.iloc[0]["tbdj"]
- jxde_["jxbh"] = jxbh
- jxde_["jxmc"] = jxmc
- jxde_["DW"] = DW
- jxde_["tbdj"] = tbdj.item()
- jxde_["sl"] = sl.item()
- jxde_["hj"] = hj.item()
- jxde.append(jxde_)
- ####cailiao
- clde = []
- cl = pd.read_csv("de/xsaz/JD_GuJiaCL.csv")
- filtered1 = cl[cl["DEBH"]==debh]
- for i in range(len(filtered1)):
- clde_ = {}
- SL = filtered1.iloc[i]["SL"]##shuliang
- HJ = filtered1.iloc[i]["HJ"]##hejia
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/xsaz/JD_CaiLiaoK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if 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_["CLMC"] = CLMC
- clde_["JLDW"] = JLDW
- clde_["YSJG"] = YSJG.item()
- 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_)
- 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
- def getSingleDeXilie_xstj(debh):
- id = None
- bz_selected = []
- bz_selected2 = []
- if "附注" in debh:
- position = debh.find("附注")
- debh = debh[:position]
- if "*" in debh:
- position = debh.find("*")
- debh = debh[:position]
- if debh.endswith("换"):
- debh = debh[:-1]
- if "[" in debh:
- position = debh.find("[")
- debh = debh[:position-1]
- gj = pd.read_csv("de/xstj/JD_DanWeiGJ.csv")
- filtered = gj[gj["DEBH"]==debh]
- ##print(filtered)
- if len(filtered) > 0:
- index = (filtered.iloc[0]["YSDELBH"])
- shu = pd.read_csv("de/xstj/JD_DingEShu.csv")
- hit = shu[shu["zjh"]==index]
- if len(hit) > 0:
- id = hit.iloc[0]["ID"]
- beizhu = str(filtered.iloc[0]["BZBH"])
- if 'nan' in beizhu:
- pass
- else:
- beizhus = beizhu.split(";")
- ##print(beizhus)
- bzfile = pd.read_csv("de/xstj/JD_BeiZhuZK.csv")
- bzfile2 = pd.read_csv("de/xstj/JD_BeiZhuFK.csv", dtype=str)
- bz_selected = bzfile[bzfile["BZBH"].isin(beizhus)]
- bz_selected2 = bzfile2[bzfile2["BZBH"].isin(beizhus)]
- else:
- return None, None, None, None, None, None, None
- ####rengong
- rgde = []
- rg = pd.read_csv("de/xstj/JD_GuJiaRG.csv")
- filtered1 = rg[rg["DEBH"]==debh]
- for i in range(len(filtered1)):
- rgde_ = {}
- gr = filtered1.iloc[i]["RGR"]##gongri
- gf = filtered1.iloc[i]["RGF"]##gongfei
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/xstj/JD_CaiLiaoK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if len(filtered2) > 0:
- CLBH = filtered2.iloc[0]["CLBH"]
- CLMC = filtered2.iloc[0]["CLMC"]
- JLDW = filtered2.iloc[0]["JLDW"]
- YSJG = filtered2.iloc[0]["YSJG"]
- rgde_["CLBH"] = CLBH
- rgde_["CLMC"] = CLMC
- rgde_["JLDW"] = JLDW
- rgde_["YSJG"] = YSJG.item()
- rgde_["gr"] = gr.item()
- rgde_["gf"] = gf.item()
- rgde.append(rgde_)
- ##print(rgde)
- ####jixie
- jxde = []
- jx = pd.read_csv("de/xstj/JD_GuJiaJX.csv")
- filtered1 = jx[jx["DEBH"]==debh]
- for i in range(len(filtered1)):
- jxde_ = {}
- sl = filtered1.iloc[i]["SL"]##shuliang
- hj = filtered1.iloc[i]["HJ"]##hejia
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/xstj/JD_JiXieK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if len(filtered2) > 0:
- jxbh = filtered2.iloc[0]["jxbh"]
- jxmc = filtered2.iloc[0]["jxmc"]
- DW = filtered2.iloc[0]["DW"]
- tbdj = filtered2.iloc[0]["tbdj"]
- jxde_["jxbh"] = jxbh
- jxde_["jxmc"] = jxmc
- jxde_["DW"] = DW
- jxde_["tbdj"] = tbdj.item()
- jxde_["sl"] = sl.item()
- jxde_["hj"] = hj.item()
- jxde.append(jxde_)
- ####cailiao
- clde = []
- cl = pd.read_csv("de/xstj/JD_GuJiaCL.csv")
- filtered1 = cl[cl["DEBH"]==debh]
- for i in range(len(filtered1)):
- clde_ = {}
- SL = filtered1.iloc[i]["SL"]##shuliang
- HJ = filtered1.iloc[i]["HJ"]##hejia
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/xstj/JD_CaiLiaoK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if 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_["CLMC"] = CLMC
- clde_["JLDW"] = JLDW
- clde_["YSJG"] = YSJG.item()
- 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_)
- 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
- def getSingleDeXilie_yl(debh):
- id = None
- bz_selected = []
- bz_selected2 = []
- if "附注" in debh:
- position = debh.find("附注")
- debh = debh[:position]
- if "*" in debh:
- position = debh.find("*")
- debh = debh[:position]
- if debh.endswith("换"):
- debh = debh[:-1]
- if "[" in debh:
- position = debh.find("[")
- debh = debh[:position-1]
- gj = pd.read_csv("de/yl/JD_DanWeiGJ.csv")
- filtered = gj[gj["DEBH"]==debh]
- ##print(filtered)
- if len(filtered) > 0:
- index = (filtered.iloc[0]["YSDELBH"])
- shu = pd.read_csv("de/yl/JD_DingEShu.csv")
- hit = shu[shu["zjh"]==index]
- if len(hit) > 0:
- id = hit.iloc[0]["ID"]
- beizhu = str(filtered.iloc[0]["BZBH"])
- if 'nan' in beizhu:
- pass
- else:
- beizhus = beizhu.split(";")
- ##print(beizhus)
- bzfile = pd.read_csv("de/yl/JD_BeiZhuZK.csv")
- bzfile2 = pd.read_csv("de/yl/JD_BeiZhuFK.csv", dtype=str)
- bz_selected = bzfile[bzfile["BZBH"].isin(beizhus)]
- bz_selected2 = bzfile2[bzfile2["BZBH"].isin(beizhus)]
- else:
- return None, None, None, None, None, None, None
- ####rengong
- rgde = []
- rg = pd.read_csv("de/yl/JD_GuJiaRG.csv")
- filtered1 = rg[rg["DEBH"]==debh]
- for i in range(len(filtered1)):
- rgde_ = {}
- gr = filtered1.iloc[i]["RGR"]##gongri
- gf = filtered1.iloc[i]["RGF"]##gongfei
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/yl/JD_CaiLiaoK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if len(filtered2) > 0:
- CLBH = filtered2.iloc[0]["CLBH"]
- CLMC = filtered2.iloc[0]["CLMC"]
- JLDW = filtered2.iloc[0]["JLDW"]
- YSJG = filtered2.iloc[0]["YSJG"]
- rgde_["CLBH"] = CLBH
- rgde_["CLMC"] = CLMC
- rgde_["JLDW"] = JLDW
- rgde_["YSJG"] = YSJG.item()
- rgde_["gr"] = gr.item()
- rgde_["gf"] = gf.item()
- rgde.append(rgde_)
- ##print(rgde)
- ####jixie
- jxde = []
- jx = pd.read_csv("de/yl/JD_GuJiaJX.csv")
- filtered1 = jx[jx["DEBH"]==debh]
- for i in range(len(filtered1)):
- jxde_ = {}
- sl = filtered1.iloc[i]["SL"]##shuliang
- hj = filtered1.iloc[i]["HJ"]##hejia
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/yl/JD_JiXieK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if len(filtered2) > 0:
- jxbh = filtered2.iloc[0]["jxbh"]
- jxmc = filtered2.iloc[0]["jxmc"]
- DW = filtered2.iloc[0]["DW"]
- tbdj = filtered2.iloc[0]["tbdj"]
- jxde_["jxbh"] = jxbh
- jxde_["jxmc"] = jxmc
- jxde_["DW"] = DW
- jxde_["tbdj"] = tbdj.item()
- jxde_["sl"] = sl.item()
- jxde_["hj"] = hj.item()
- jxde.append(jxde_)
- ####cailiao
- clde = []
- cl = pd.read_csv("de/yl/JD_GuJiaCL.csv")
- filtered1 = cl[cl["DEBH"]==debh]
- for i in range(len(filtered1)):
- clde_ = {}
- SL = filtered1.iloc[i]["SL"]##shuliang
- HJ = filtered1.iloc[i]["HJ"]##hejia
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/yl/JD_CaiLiaoK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if 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_["CLMC"] = CLMC
- clde_["JLDW"] = JLDW
- clde_["YSJG"] = YSJG.item()
- clde_["SL"] = SL.item()
- clde_["HJ"] = HJ.item()
- clde.append(clde_)
- else:
- detail = pd.read_csv("de/yl/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_)
- 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
- def getSingleDeXilie_az(debh):
- id = None
- bz_selected = []
- bz_selected2 = []
- if "附注" in debh:
- position = debh.find("附注")
- debh = debh[:position]
- if "*" in debh:
- position = debh.find("*")
- debh = debh[:position]
- if debh.endswith("换"):
- debh = debh[:-1]
- if "[" in debh:
- position = debh.find("[")
- debh = debh[:position-1]
- gj = pd.read_csv("de/az/JD_DanWeiGJ.csv")
- filtered = gj[gj["DEBH"]==debh]
- ##print(filtered)
- if len(filtered) > 0:
- index = (filtered.iloc[0]["YSDELBH"])
- shu = pd.read_csv("de/az/JD_DingEShu.csv")
- hit = shu[shu["zjh"]==index]
- if len(hit) > 0:
- id = hit.iloc[0]["ID"]
- beizhu = str(filtered.iloc[0]["BZBH"])
- if 'nan' in beizhu:
- pass
- else:
- beizhus = beizhu.split(";")
- ##print(beizhus)
- bzfile = pd.read_csv("de/az/JD_BeiZhuZK.csv")
- bzfile2 = pd.read_csv("de/az/JD_BeiZhuFK.csv", dtype=str)
- bz_selected = bzfile[bzfile["BZBH"].isin(beizhus)]
- bz_selected2 = bzfile2[bzfile2["BZBH"].isin(beizhus)]
- else:
- return None, None, None, None, None, None, None
- ####rengong
- rgde = []
- rg = pd.read_csv("de/az/JD_GuJiaRG.csv")
- filtered1 = rg[rg["DEBH"]==debh]
- for i in range(len(filtered1)):
- rgde_ = {}
- gr = filtered1.iloc[i]["RGR"]##gongri
- gf = filtered1.iloc[i]["RGF"]##gongfei
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/az/JD_CaiLiaoK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if len(filtered2) > 0:
- CLBH = filtered2.iloc[0]["CLBH"]
- CLMC = filtered2.iloc[0]["CLMC"]
- JLDW = filtered2.iloc[0]["JLDW"]
- YSJG = filtered2.iloc[0]["YSJG"]
- rgde_["CLBH"] = CLBH.item() if type(CLBH) == int64 else CLBH
- rgde_["CLMC"] = CLMC
- rgde_["JLDW"] = JLDW
- rgde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG
- rgde_["gr"] = gr.item() if type(gr) == float64 else gr
- rgde_["gf"] = gf.item() if type(gf) == float64 else gf
- rgde.append(rgde_)
- ##print(rgde)
- ####jixie
- jxde = []
- jx = pd.read_csv("de/az/JD_GuJiaJX.csv")
- filtered1 = jx[jx["DEBH"]==debh]
- for i in range(len(filtered1)):
- jxde_ = {}
- sl = filtered1.iloc[i]["SL"]##shuliang
- hj = filtered1.iloc[i]["HJ"]##hejia
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/az/JD_JiXieK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if len(filtered2) > 0:
- jxbh = filtered2.iloc[0]["jxbh"]
- jxmc = filtered2.iloc[0]["jxmc"]
- DW = filtered2.iloc[0]["DW"]
- tbdj = filtered2.iloc[0]["tbdj"]
- jxde_["jxbh"] = jxbh
- jxde_["jxmc"] = jxmc
- jxde_["DW"] = DW
- jxde_["tbdj"] = tbdj.item() if type(tbdj) == float64 else tbdj
- jxde_["sl"] = sl.item() if type(sl) == float64 else sl
- jxde_["hj"] = hj.item() if type(hj) == float64 else hj
- jxde.append(jxde_)
- ####cailiao
- clde = []
- cl = pd.read_csv("de/az/JD_GuJiaCL.csv")
- filtered1 = cl[cl["DEBH"]==debh]
- for i in range(len(filtered1)):
- clde_ = {}
- SL = filtered1.iloc[i]["SL"]##shuliang
- HJ = filtered1.iloc[i]["HJ"]##hejia
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/az/JD_CaiLiaoK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if 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.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/az/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() 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)
- ##print(filtered)
- 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
- def getSingleDeXilie_sz(debh):
- id = None
- bz_selected = []
- bz_selected2 = []
- if "附注" in debh:
- position = debh.find("附注")
- debh = debh[:position]
- if "*" in debh:
- position = debh.find("*")
- debh = debh[:position]
- if debh.endswith("换"):
- debh = debh[:-1]
- if "[" in debh:
- position = debh.find("[")
- debh = debh[:position-1]
- gj = pd.read_csv("de/sz/JD_DanWeiGJ.csv")
- filtered = gj[gj["DEBH"]==debh]
- ##print(filtered)
- if len(filtered) > 0:
- index = (filtered.iloc[0]["YSDELBH"])
- shu = pd.read_csv("de/sz/JD_DingEShu.csv")
- hit = shu[shu["zjh"]==index]
- if len(hit) > 0:
- id = hit.iloc[0]["ID"]
- beizhu = str(filtered.iloc[0]["BZBH"])
- if 'nan' in beizhu:
- pass
- else:
- beizhus = beizhu.split(";")
- ##print(beizhus)
- bzfile = pd.read_csv("de/sz/JD_BeiZhuZK.csv")
- bzfile2 = pd.read_csv("de/sz/JD_BeiZhuFK.csv", dtype=str)
- bz_selected = bzfile[bzfile["BZBH"].isin(beizhus)]
- bz_selected2 = bzfile2[bzfile2["BZBH"].isin(beizhus)]
- else:
- return None, None, None, None, None, None, None
- ####rengong
- rgde = []
- rg = pd.read_csv("de/sz/JD_GuJiaRG.csv")
- filtered1 = rg[rg["DEBH"]==debh]
- for i in range(len(filtered1)):
- rgde_ = {}
- gr = filtered1.iloc[i]["RGR"]##gongri
- gf = filtered1.iloc[i]["RGF"]##gongfei
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/sz/JD_CaiLiaoK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if len(filtered2) > 0:
- CLBH = filtered2.iloc[0]["CLBH"]
- CLMC = filtered2.iloc[0]["CLMC"]
- JLDW = filtered2.iloc[0]["JLDW"]
- YSJG = filtered2.iloc[0]["YSJG"]
- rgde_["CLBH"] = CLBH
- rgde_["CLMC"] = CLMC
- rgde_["JLDW"] = JLDW
- rgde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG
- rgde_["gr"] = gr.item() if type(gr) == float64 else gr
- rgde_["gf"] = gf.item() if type(gf) == float64 else gf
- rgde.append(rgde_)
- ##print(rgde)
- ####jixie
- jxde = []
- jx = pd.read_csv("de/sz/JD_GuJiaJX.csv")
- filtered1 = jx[jx["DEBH"]==debh]
- for i in range(len(filtered1)):
- jxde_ = {}
- sl = filtered1.iloc[i]["SL"]##shuliang
- hj = filtered1.iloc[i]["HJ"]##hejia
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/sz/JD_JiXieK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if len(filtered2) > 0:
- jxbh = filtered2.iloc[0]["jxbh"]
- jxmc = filtered2.iloc[0]["jxmc"]
- DW = filtered2.iloc[0]["DW"]
- tbdj = filtered2.iloc[0]["tbdj"]
- jxde_["jxbh"] = jxbh
- jxde_["jxmc"] = jxmc
- jxde_["DW"] = DW
- jxde_["tbdj"] = tbdj.item() if type(tbdj) == float64 else tbdj
- jxde_["sl"] = sl.item() if type(sl) == float64 else sl
- jxde_["hj"] = hj.item() if type(hj) == float64 else hj
- jxde.append(jxde_)
- ####cailiao
- clde = []
- cl = pd.read_csv("de/sz/JD_GuJiaCL.csv")
- filtered1 = cl[cl["DEBH"]==debh]
- for i in range(len(filtered1)):
- clde_ = {}
- SL = filtered1.iloc[i]["SL"]##shuliang
- HJ = filtered1.iloc[i]["HJ"]##hejia
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/sz/JD_CaiLiaoK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if 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_["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_)
- 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
-
-
- def getSingleDeXilie_tj(debh):
- id = None
- bz_selected = []
- bz_selected2 = []
-
- if "附注" in debh:
- position = debh.find("附注")
- debh = debh[:position]
- if "*" in debh:
- position = debh.find("*")
- debh = debh[:position]
- if debh.endswith("换"):
- debh = debh[:-1]
- if "[" in debh:
- position = debh.find("[")
- debh = debh[:position-1]
- gj = pd.read_csv("de/tj/JD_DanWeiGJ.csv")
- filtered = gj[gj["DEBH"]==debh]
- ##print(filtered)
- if len(filtered) > 0:
- index = int(filtered.iloc[0]["YSDELBH"])
- shu = pd.read_csv("de/tj/JD_DingEShu.csv")
- hit = shu[shu["zjh"]==index]
- if len(hit) > 0:
- id = hit.iloc[0]["ID"]
- beizhu = str(filtered.iloc[0]["BZBH"])
- if 'nan' in beizhu:
- pass
- else:
- beizhus = beizhu.split(";")
- ##print(beizhus)
- bzfile = pd.read_csv("de/tj/JD_BeiZhuZK.csv")
- bzfile2 = pd.read_csv("de/tj/JD_BeiZhuFK.csv", dtype=str)
- bz_selected = bzfile[bzfile["BZBH"].isin(beizhus)]
- bz_selected2 = bzfile2[bzfile2["BZBH"].isin(beizhus)]
- else:
- return None, None, None, None, None, None, None
- ####rengong
- rgde = []
- rg = pd.read_csv("de/tj/JD_GuJiaRG.csv")
- filtered1 = rg[rg["DEBH"]==debh]
- for i in range(len(filtered1)):
- rgde_ = {}
- gr = filtered1.iloc[i]["RGR"]##gongri
- gf = filtered1.iloc[i]["RGF"]##gongfei
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/tj/JD_CaiLiaoK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if len(filtered2) > 0:
- CLBH = filtered2.iloc[0]["CLBH"]
- CLMC = filtered2.iloc[0]["CLMC"]
- JLDW = filtered2.iloc[0]["JLDW"]
- YSJG = filtered2.iloc[0]["YSJG"]
- rgde_["CLBH"] = CLBH
- rgde_["CLMC"] = CLMC
- rgde_["JLDW"] = JLDW
- rgde_["YSJG"] = YSJG.item() if type(YSJG) == float64 else YSJG
- rgde_["gr"] = gr.item() if type(gr) == float64 else gr
- rgde_["gf"] = gf.item() if type(gf) == float64 else gf
- rgde.append(rgde_)
- ##print(rgde)
- ####jixie
- jxde = []
- jx = pd.read_csv("de/tj/JD_GuJiaJX.csv")
- filtered1 = jx[jx["DEBH"]==debh]
- for i in range(len(filtered1)):
- jxde_ = {}
- sl = filtered1.iloc[i]["SL"]##shuliang
- hj = filtered1.iloc[i]["HJ"]##hejia
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/tj/JD_JiXieK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if len(filtered2) > 0:
- jxbh = filtered2.iloc[0]["jxbh"]
- jxmc = filtered2.iloc[0]["jxmc"]
- DW = filtered2.iloc[0]["DW"]
- tbdj = filtered2.iloc[0]["tbdj"]
- jxde_["jxbh"] = jxbh
- jxde_["jxmc"] = jxmc
- jxde_["DW"] = DW
- jxde_["tbdj"] = tbdj.item() if type(tbdj) == float64 else tbdj
- jxde_["sl"] = sl.item() if type(sl) == float64 else sl
- jxde_["hj"] = hj.item() if type(hj) == float64 else hj
- jxde.append(jxde_)
- ####cailiao
- clde = []
- cl = pd.read_csv("de/tj/JD_GuJiaCL.csv")
- filtered1 = cl[cl["DEBH"]==debh]
- for i in range(len(filtered1)):
- clde_ = {}
- SL = filtered1.iloc[i]["SL"]##shuliang
- HJ = filtered1.iloc[i]["HJ"]##hejia
- rcjID = filtered1.iloc[i]["RcjID"]
- detail = pd.read_csv("de/tj/JD_CaiLiaoK.csv")
- filtered2 = detail[detail["RcjID"]==rcjID]
- if 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_["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/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_)
- 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
- def getDwgc(root, id, Zylb):
- result = []
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- id = id + "Zylb" + Zylb
- for child in item:
- if child.tag == "Fywj":
- result.append({"id": id + "bao jia hui zong", "label": "报价汇总表"})
- elif child.tag == "Gfsj":
- result.append({"id": id + "gui fei shui jin", "label": "规费税金"})
- elif child.tag == "Qdxm":
- result.append({"id": id + "qing dan xiang mu", "label": "清单项目"})
- elif child.tag == "Csxm":
- result.append({"id": id + "cuo shi xiang mu", "label": "措施项目"})
- elif child.tag == "Qtxm":
- result.append({"id": id +"qi ta xiang mu", "label": "其他项目"})
- elif child.tag == "Zlje":
- result.append({"id": id +"zan lie jin e", "label": "暂列金额"})
- elif child.tag == "Clzg":
- result.append({"id": id +"cai liao zan gu jia", "label": "材料暂估价"})
- elif child.tag == "Zygczg":
- result.append({"id": id + "zhuan ye gong cheng zan gu jia", "label": "专业工程暂估价"})
- elif child.tag == "Jrg":
- result.append({"id": id + "ji ri gong", "label": "计日工"})
- elif child.tag == "Zcbfwf":
- result.append({"id": id + "zong cheng bao fu wu fei", "label": "总承包服务费"})
- elif child.tag == "Zjxmjdkzffj":
- result.append({"id": id + "zong jia xiang mu jin du kuan zhi fu fen jie", "label": "总价项目进度款支付分解"})
- elif child.tag == "Fbrgycl":
- result.append({"id": id + "fa bao ren gong ying cai liao", "label": "发包人供应材料"})
- elif child.tag == "Cbrgycl":
- result.append({"id": id + "cheng bao ren gong ying cai liao", "label": "承包人供应材料"})
- elif child.tag == "Rcjhz":
- result.append({"id": id + "ren cai ji hui zong", "label": "人材机汇总"})
- else:
- print(child.tag)
- print("WARNING####################################################################")
- return result
- def getDjcs(root, id):
- result = []
- #result.append(["ming cheng", "jin e", "zan gu jia", "anquan wenming fei", "guifei"])
- item = None
- for child in root:
-
- if child.tag == "Dxgcxx":
- for child1 in child:
- Dwgcbh = child1.attrib["Dwgcbh"]
- if Dwgcbh == id:
- item = child1
- break
- ##result.append([child.attrib["Dxgcmc"], child.attrib["Je"], child.attrib["Zgj"], child.attrib["Aqwmf"], child.attrib["Gf"]])
- Fywj = None
- for child in item:
- if child.tag == 'Csxm':
- Fywj= child
- break
- Djcs_parent = None
- for child in Fywj:
- if child.tag == 'DjCs':
- Djcs_parent = child
- break
-
- for child in Djcs_parent:
- ##child is mx {
- result.append({
- "序号": child.attrib["Xh"], "清单编码": child.attrib["Bm"], "名称" : child.attrib["Mc"],
- "项目特征" : child.attrib["Xmtz"],
- "计算规则" : child.attrib["Jsgz"], "单位" : child.attrib["Dw"], "数量" : child.attrib["Sl"],
- "综合单价" : child.attrib["Zhdj"], "合价" : child.attrib["Zhhj"], "人工费" : child.attrib["Rgf"],
- "主材费" : child.attrib["Zcf"],
- "设备费" : child.attrib["Sbf"], "辅材费" : child.attrib["Fcf"], "材料费" : child.attrib["Clf"],
- "机械费" : child.attrib["Jxf"], "管理费" : child.attrib["Glf"], "利润" : child.attrib["Lr"],
- "暂估价" : child.attrib["Zgj"], "综合人工工日" : child.attrib["Zgr"] })
- __children = []
- zj_parent = None
- for grandchild in child:
- if grandchild.tag == "Csxdezj":
- zj_parent = grandchild
-
- if zj_parent:
- for entry in zj_parent:
- key = str(uuid.uuid4())
- entry.set("key", key)
- __children.append({
- "key": key,
- "序号": None, "清单编码": entry.attrib["Debm"], "名称" : entry.attrib["Mc"],
- "项目特征" : None,
- "计算规则" : None, "单位" : entry.attrib["Dw"], "数量" : entry.attrib["DwQdSl"],
- "综合单价" : entry.attrib["Dj"], "合价" : entry.attrib["Hj"], "人工费" : entry.attrib["Rgf"],
- "主材费" : entry.attrib["Zcf"],
- "设备费" : entry.attrib["Sbf"], "辅材费" : entry.attrib["Fcf"], "材料费" : entry.attrib["Clf"],
- "机械费" : entry.attrib["Jxf"], "管理费" : entry.attrib["Glf"], "利润" : entry.attrib["Lr"],
- "暂估价" : None, "综合人工工日" : None })
- if len(__children) > 0:
- result[-1]["__children"] = __children
- return result
|