InfoDisaster.vue 96 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102
  1. <template>
  2. <!-- 灾情源设置collapseaside-->
  3. <div class="l_Dialog bbb tablebk ">
  4. <!--火灾左侧栏-->
  5. <div class="common-layout" style="margin: 0" v-show="sour.collfire">
  6. <el-aside width="2.125rem" class="L_aside L_aside1 asideg asidegbg leftbgimg1">
  7. <div class="demo-collapse">
  8. <el-collapse v-model="coolactiveName1" accordion @change="handleChangecollapse ">
  9. <el-collapse-item name="1" class="imgneon">
  10. <template #title>
  11. <el-icon class="iconimg Frame3" fit="contain"></el-icon>
  12. 火灾灾害源设置
  13. </template>
  14. <div class="asides_content">
  15. <div class="jc_content tablecolor">
  16. <div class="jc_padding">
  17. <div class="xian btncolor tablefocus">
  18. <el-table
  19. :data="tableDatay"
  20. @row-click="handleDelete($event)"
  21. :header-cell-style="{ background: 'rgba(13, 22, 57, 0)' }"
  22. :highlight-current-row="currentrow"
  23. style="width: 100%"
  24. :max-height="tableHeight"
  25. :row-class-name="tableRowClassName"
  26. >
  27. <template v-slot:empty>
  28. <p>暂无数据</p>
  29. </template>
  30. <el-table-column prop="pname" label="选择巷道" />
  31. <el-table-column prop="site" label="位置" />
  32. <!-- <el-table-column label="操作" >
  33. <template #default="scope">
  34. <el-button
  35. size="small"
  36. type="success"
  37. @click="handledetection(scope.$index, scope.row)"
  38. >查看</el-button
  39. >
  40. </template>
  41. </el-table-column> -->
  42. </el-table>
  43. <div class="asdis_btn">
  44. <div
  45. class="flex_a"
  46. @click="
  47. newtable($event);
  48. sdialog.dianadddialog = true;
  49. "
  50. >
  51. <div class="btns" ><span class="spantext">添加</span></div>
  52. </div>
  53. <div class="flex_a" @click="xiugaitable()">
  54. <div class="btns"><span class="spantext">修改</span></div>
  55. </div>
  56. <div
  57. class="flex_a"
  58. @click="
  59. shanchu('1');
  60. "
  61. >
  62. <div class="btns"><span class="spantext">删除</span></div>
  63. </div>
  64. </div>
  65. </div>
  66. <!--火灾灾害源表 -->
  67. <div
  68. class="xian tablefocus zaiyuanbiao"
  69. style="margin-top: 20px"
  70. v-show="sdialog.isDisasterfire"
  71. >
  72. <div class="header_l header_z headerimg">
  73. <el-image :src="icon" fit="contain"></el-image>
  74. <h4 class="tianjia">灾害源表</h4>
  75. <div class="closeimg" @click="sdialog.isDisasterfire = false">
  76. <el-image :src="closeimg" fit="contain"></el-image>
  77. </div>
  78. </div>
  79. <el-table
  80. :data="tableDatafir"
  81. style="width: 100%"
  82. :row-class-name="tableRowClassName"
  83. :header-cell-style="{ background: 'rgba(13, 22, 57, 0) ' }"
  84. :max-height="tableHeight"
  85. @row-click="handleDelete2($event)"
  86. :highlight-current-row="currentrow1"
  87. >
  88. <template v-slot:empty>
  89. <p>暂无数据</p>
  90. </template>
  91. <el-table-column prop="timeline" label="时间(/s)" />
  92. <el-table-column prop="val1" label="温度(℃)" />
  93. <el-table-column prop="val2" label="二氧化碳(%)" />
  94. <el-table-column prop="val3" label="二氧化硫(ppm)" />
  95. </el-table>
  96. <div class="asdis_btn">
  97. <div
  98. class="flex_a"
  99. @click="
  100. firinit();
  101. sdialog.adddialog = true;
  102. currentrow1=false;
  103. "
  104. >
  105. <div class="btns"><span class="spantext">添加</span></div>
  106. </div>
  107. <div class="flex_a" @click="zaiyuxiugai()">
  108. <div class="btns"><span class="spantext"> 修改</span></div>
  109. </div>
  110. <div
  111. class="flex_a"
  112. @click="
  113. shanchu('2');
  114. //sdialog.dialogsgdelect = true;
  115. "
  116. >
  117. <div class="btns"><span class="spantext">删除</span></div>
  118. </div>
  119. <div class="flex_a">
  120. <div class="btns" @click="sdialog.isDisasterfire = false">
  121. <span class="spantext">确定</span>
  122. </div>
  123. </div>
  124. </div>
  125. </div>
  126. </div>
  127. </div>
  128. </div>
  129. </el-collapse-item>
  130. </el-collapse>
  131. <Fengmen ref='Fengmenref'></Fengmen>
  132. </div>
  133. </el-aside>
  134. </div>
  135. <!-- 突水 -->
  136. <div class="common-layout collapseaside" style="margin: 0" v-show="sour.collwater">
  137. <el-aside width="1.6667rem" class="L_aside L_aside1 asideg asidegbg leftbgimg1">
  138. <div class="demo-collapse">
  139. <!-- 突水 sour.collwater-->
  140. <el-collapse v-model="coolactiveName1" accordion>
  141. <el-collapse-item name="1" class="imgneon">
  142. <template #title>
  143. <el-icon class="iconimg Frame3" fit="contain"></el-icon>
  144. 突水灾害源设置
  145. </template>
  146. <div class="asides_content">
  147. <div class="jc_content tablecolor">
  148. <div class="jc_padding">
  149. <div class="xian btncolor tablefocus">
  150. <el-table
  151. :data="tableDatawat"
  152. style="width: 100%"
  153. :row-class-name="tableRowClassName"
  154. :header-cell-style="{ background: 'rgba(13, 22, 57, 0) ' }"
  155. @row-click="handleDeletewotwr($event)"
  156. :max-height="tableHeight"
  157. :highlight-current-row="currentrow"
  158. >
  159. <template v-slot:empty>
  160. <p>暂无数据</p>
  161. </template>
  162. <el-table-column prop="pname" label="选择巷道" />
  163. <el-table-column prop="site" label="位置" />
  164. <!-- <el-table-column label="操作" >
  165. <template #default="scope">
  166. <el-button
  167. size="small"
  168. type="success"
  169. @click="handledetection2(scope.$index, scope.row)"
  170. >查看</el-button
  171. >
  172. </template>
  173. </el-table-column> -->
  174. </el-table>
  175. <div class="asdis_btn">
  176. <div
  177. class="flex_a"
  178. @click="
  179. newtable($event);
  180. sdialog.dianadddialog = true;
  181. "
  182. >
  183. <div class="btns" :class="{tabactive: isActive === 1}" @click="changeClass(1)"><span class="spantext">添加</span></div>
  184. </div>
  185. <div class="flex_a" @click="xiugaitable()">
  186. <div class="btns" :class="{tabactive: isActive === 2}" @click="changeClass(2)"><span class="spantext">修改</span></div>
  187. </div>
  188. <div
  189. class="flex_a"
  190. @click="
  191. shanchu('1');
  192. "
  193. >
  194. <div class="btns" :class="{tabactive: isActive === 3}" @click="changeClass(3)"><span class="spantext">删除</span></div>
  195. </div>
  196. <!-- <div class="flex_a">
  197. <div class="btns"><span class="spantext">确定</span></div>
  198. </div> -->
  199. </div>
  200. </div>
  201. <!-- 灾害源表 -->
  202. <div
  203. class="xian tablefocus"
  204. style="margin-top: 20px"
  205. v-show="sdialog.disDisasterwter"
  206. >
  207. <div class="header_l header_z headerimg">
  208. <el-image :src="icon" fit="contain"></el-image>
  209. <h4 class="tianjia">灾害源表</h4>
  210. <div class="closeimg" @click="sdialog.disDisasterwter = false">
  211. <el-image :src="closeimg" fit="contain"></el-image>
  212. </div>
  213. </div>
  214. <el-table
  215. :data="tableData4"
  216. style="width: 100%"
  217. :max-height="tableHeight"
  218. :row-class-name="tableRowClassName"
  219. :header-cell-style="{ background: 'rgba(13, 22, 57, 0) ' }"
  220. @row-click="handleDelete3($event)"
  221. :highlight-current-row="currentrow1"
  222. >
  223. <template v-slot:empty>
  224. <p>暂无数据</p>
  225. </template>
  226. <el-table-column prop="timeline" label="时间/s" />
  227. <el-table-column prop="val1" label="突水量(m³/s)" />
  228. </el-table>
  229. <div class="asdis_btn">
  230. <div
  231. class="flex_a"
  232. @click="
  233. firinit();
  234. sdialog.adddwater = true;
  235. "
  236. >
  237. <div class="btns" :class="{tabactive: isActive === 4}" @click="changeClass(4)"><span class="spantext">添加</span></div>
  238. </div>
  239. <div class="flex_a" @click="zaiyuxiugai()">
  240. <div class="btns" :class="{tabactive: isActive === 5}" @click="changeClass(5)"><span class="spantext"> 修改</span></div>
  241. </div>
  242. <div
  243. class="flex_a"
  244. @click="
  245. shanchu('2');
  246. "
  247. >
  248. <div class="btns" :class="{tabactive: isActive === 6}" @click="changeClass(6)"><span class="spantext">删除</span></div>
  249. </div>
  250. <div class="flex_a" @click="sdialog.disDisasterwter = false">
  251. <div class="btns"><span class="spantext">确定</span></div>
  252. </div>
  253. </div>
  254. </div>
  255. </div>
  256. </div>
  257. </div>
  258. </el-collapse-item>
  259. <!-- <el-collapse-item name="2">
  260. <div style="position: relative;">是的
  261. <info-boundary :classradio="classradio" /></div>
  262. </el-collapse-item> -->
  263. </el-collapse>
  264. <!-- 突水灾害源结束-->
  265. <!-- 水泵 -->
  266. <el-collapse v-model="coolactiveName1" >
  267. <el-collapse-item name="2" class="imgneon">
  268. <template #title>
  269. <el-icon class="iconimg Frame3" fit="contain"></el-icon>
  270. 水泵
  271. </template>
  272. <div class="asides_content">
  273. <div class="jc_content tablecolor">
  274. <div class="jc_padding">
  275. <div class="xian btncolor tablefocus">
  276. <el-table
  277. :data="tableDatpump"
  278. style="width: 100%"
  279. :row-class-name="tableRowClassName"
  280. :header-cell-style="{ background: 'rgba(13, 22, 57, 0) ' }"
  281. @row-click="pumpxz($event)"
  282. :max-height="tableHeight"
  283. :highlight-current-row="currentrow"
  284. >
  285. <template v-slot:empty>
  286. <p>暂无数据</p>
  287. </template>
  288. <el-table-column prop="pumpname" label="水泵名称" />
  289. <el-table-column prop="pname" label="选择巷道" />
  290. <el-table-column prop="site" label="位置" />
  291. <el-table-column prop="onoff" label="开启状态">
  292. <template #default="scope">
  293. {{
  294. scope.row.onoff == "0"
  295. ? "否"
  296. : scope.row.onoff == "1"
  297. ? "是"
  298. : "是"
  299. }}
  300. </template>
  301. </el-table-column>
  302. <el-table-column prop="openhig" >
  303. <template v-slot:header>
  304. <span >开起高度</span><br>
  305. <span >(m)</span>
  306. </template>
  307. </el-table-column>
  308. <el-table-column prop="closehig" >
  309. <template v-slot:header>
  310. <span >关闭高度</span><br>
  311. <span >(m)</span>
  312. </template>
  313. </el-table-column>
  314. <!-- <el-table-column prop="site" label="性能曲线数据量" /> -->
  315. <!-- <el-table-column label="操作" >
  316. <template #default="scope">
  317. <el-button
  318. size="small"
  319. type="success"
  320. @click="lookpump(scope.$index, scope.row)"
  321. >查看</el-button
  322. >
  323. </template>
  324. </el-table-column> -->
  325. </el-table>
  326. <div class="asdis_btn">
  327. <div
  328. class="flex_a"
  329. @click=" addpumdfun($event); sdialog.addpump = true; "
  330. >
  331. <div class="btns" :class="{tabactive: isActive === 7}" @click="changeClass(7)"><span class="spantext">添加</span></div>
  332. </div>
  333. <div class="flex_a" @click="pumpxiugai()">
  334. <div class="btns" :class="{tabactive: isActive === 8}" @click="changeClass(8)"><span class="spantext">修改</span></div>
  335. </div>
  336. <div
  337. class="flex_a"
  338. @click="pumpdel()"
  339. >
  340. <div class="btns" :class="{tabactive: isActive === 9}" @click="changeClass(9)"><span class="spantext">删除</span></div>
  341. </div>
  342. <!-- <div class="flex_a">
  343. <div class="btns"><span class="spantext">确定</span></div>
  344. </div> -->
  345. </div>
  346. </div>
  347. <!-- 性能曲线 表 -->
  348. <div
  349. class="xian tablefocus"
  350. style="margin-top: 20px"
  351. v-show="sdialog.linetable"
  352. >
  353. <div class="header_l header_z headerimg">
  354. <el-image :src="icon" fit="contain"></el-image>
  355. <h4 class="tianjia">性能曲线</h4>
  356. <div class="closeimg" @click="sdialog.linetable = false">
  357. <el-image :src="closeimg" fit="contain"></el-image>
  358. </div>
  359. </div>
  360. <el-table
  361. :data="tableline"
  362. style="width: 100%"
  363. :max-height="tableHeight"
  364. :row-class-name="tableRowClassName"
  365. :header-cell-style="{ background: 'rgba(13, 22, 57, 0) ' }"
  366. @row-click="xnlinehande($event)"
  367. :highlight-current-row="currentrow1"
  368. >
  369. <template v-slot:empty>
  370. <p>暂无数据</p>
  371. </template>
  372. <el-table-column prop="hight">
  373. <template v-slot:header>
  374. <span >水位高度</span><br>
  375. <span>(m)</span>
  376. </template>
  377. </el-table-column>
  378. <el-table-column prop="flow" >
  379. <template v-slot:header>
  380. <span >流量</span><br>
  381. <span> (m³/s)</span>
  382. </template>
  383. </el-table-column>
  384. </el-table>
  385. <div class="asdis_btn">
  386. <div
  387. class="flex_a"
  388. @click="clineadd(); sdialog.addline= true;
  389. "
  390. >
  391. <div class="btns" :class="{tabactive: isActive === 4}" @click="changeClass(4)"><span class="spantext">添加</span></div>
  392. </div>
  393. <div class="flex_a" @click="xiugailine()">
  394. <div class="btns" :class="{tabactive: isActive === 5}" @click="changeClass(5)"><span class="spantext"> 修改</span></div>
  395. </div>
  396. <div
  397. class="flex_a"
  398. @click="delline()
  399. "
  400. >
  401. <div class="btns" :class="{tabactive: isActive === 6}" @click="changeClass(6)"><span class="spantext">删除</span></div>
  402. </div>
  403. <div class="flex_a" @click="sdialog.linetable = false">
  404. <div class="btns"><span class="spantext">确定</span></div>
  405. </div>
  406. </div>
  407. </div>
  408. </div>
  409. </div>
  410. </div>
  411. </el-collapse-item>
  412. <!-- <el-collapse-item name="2">
  413. <div style="position: relative;">是的
  414. <info-boundary :classradio="classradio" /></div>
  415. </el-collapse-item> -->
  416. </el-collapse>
  417. <!-- 水泵结束 -->
  418. </div>
  419. </el-aside>
  420. </div>
  421. <!-- 瓦斯爆炸 -->
  422. <div class="common-layout " style="margin: 0" v-show="sour.Gass">
  423. <el-aside width="2.125rem" class="L_aside L_aside1 asideg asidegbg leftbgimg1">
  424. <div class="demo-collapse">
  425. <el-collapse v-model="coolactiveName1" accordion>
  426. <el-collapse-item name="1" class="imgneon">
  427. <template #title>
  428. <el-icon class="iconimg Frame3" fit="contain"></el-icon>
  429. 瓦斯<el-icon class="header-icon"> </el-icon>
  430. </template>
  431. <div class="asides_content">
  432. <div class="jc_content tablecolor">
  433. <div class="jc_padding">
  434. <div class="xian btncolor tablefocus">
  435. <el-table
  436. :data="tableDataws"
  437. style="width: 100%"
  438. :row-class-name="tableRowClassName"
  439. :header-cell-style="{ background: 'rgba(13, 22, 57, 0) ' }"
  440. @row-click="handlews($event)"
  441. max-height="350px"
  442. :highlight-current-row="currentrow"
  443. >
  444. <template v-slot:empty>
  445. <p>暂无数据</p>
  446. </template>
  447. <el-table-column type="index" label="序号" width="100"/>
  448. <el-table-column prop="gfname" label="网格文件" />
  449. <el-table-column prop="bfname" label="边界文件" />
  450. <!-- <el-table-column label="操作" > -->
  451. <!-- <template #default="scope">
  452. <el-button
  453. size="small"
  454. type="success"
  455. @click="handlook(scope.$index, scope.row)"
  456. >查看</el-button
  457. >
  458. </template> -->
  459. <!-- </el-table-column> -->
  460. </el-table>
  461. <div class="asdis_btn">
  462. <div
  463. class="flex_a"
  464. @click="
  465. wanewadd();
  466. "
  467. >
  468. <div class="btns" :class="{tabactive: isActive === 4}" @click="changeClass(4)"><span class="spantext">添加</span></div>
  469. </div>
  470. <div
  471. class="flex_a"
  472. @click="wsdelete()
  473. "
  474. >
  475. <div class="btns" :class="{tabactive: isActive === 6}" @click="changeClass(6)"><span class="spantext">删除</span></div>
  476. </div>
  477. </div>
  478. </div>
  479. <!-- 瓦斯爆炸区域 -->
  480. <div
  481. class="xian tablefocus wstable"
  482. v-show="Gassdialog.blast"
  483. >
  484. <div class="header_l header_z">
  485. <el-image :src="icon" fit="contain"></el-image>
  486. <h4 class="tianjia">瓦斯爆炸区域</h4>
  487. <div class="closeimg" @click="Gassdialog.blast = false">
  488. <el-image :src="closeimg" fit="contain"></el-image>
  489. </div>
  490. </div>
  491. <el-table
  492. :data="gtableData"
  493. style="width:100%"
  494. :max-height="tableHeight"
  495. :row-class-name="tableRowClassName"
  496. :header-cell-style="{ background: 'rgba(13, 22, 57, 0) ' }"
  497. @row-click="handleblastxg($event)"
  498. :highlight-current-row="currentrow1"
  499. >
  500. <template v-slot:empty>
  501. <p>暂无数据</p>
  502. </template>
  503. <el-table-column prop="pname" label="巷道" />
  504. <el-table-column prop="ssite" label="开始位置" />
  505. <el-table-column prop="esite" label="结束位置" />>
  506. </el-table>
  507. <div class="asdis_btn">
  508. <!-- <div class="btnpading"> -->
  509. <div
  510. class="flex_as"
  511. @click="
  512. wsaddblast();
  513. "
  514. >
  515. <div class="btns"><span class="spantext">添加</span></div>
  516. </div>
  517. <div class="flex_as" @click="wsxiugai2()">
  518. <div class="btns"><span class="spantext"> 修改</span></div>
  519. </div>
  520. <div
  521. class="flex_as"
  522. @click="
  523. wsblastdelete();
  524. "
  525. >
  526. <div class="btns"><span class="spantext">删除</span></div>
  527. </div>
  528. <div class="flex_as" @click="sdialog.disDisasterwter = false">
  529. <div class="btns"><span class="spantext" @click="Gassdialog.blast = false" >确定</span></div>
  530. </div>
  531. <!-- </div> -->
  532. </div>
  533. </div>
  534. <!-- 积聚区 -->
  535. <div
  536. class="xian tablefocus wstable"
  537. v-show="Gassdialog.gather"
  538. >
  539. <div class="header_l header_z">
  540. <el-image :src="icon" fit="contain"></el-image>
  541. <h4 class="tianjia">积聚区</h4>
  542. <div class="closeimg" @click="Gassdialog.gather= false">
  543. <el-image :src="closeimg" fit="contain"></el-image>
  544. </div>
  545. </div>
  546. <el-table
  547. :data="gjtableData"
  548. style="width: 100%"
  549. :max-height="tableHeight"
  550. :row-class-name="tableRowClassName"
  551. :header-cell-style="{ background: 'rgba(13, 22, 57, 0) ' }"
  552. @row-click="handlegather($event)"
  553. :highlight-current-row="currentrow2"
  554. >
  555. <template v-slot:empty>
  556. <p>暂无数据</p>
  557. </template>
  558. <el-table-column prop="name" label="区域名" />
  559. <el-table-column
  560. label="类型"
  561. prop="type"
  562. align="center"
  563. width="80px"
  564. >
  565. <template #default="scope">
  566. <span v-if="scope.row.type === '0'">空白区</span>
  567. <span v-else-if="scope.row.type === '1'">积聚区</span>
  568. <span v-else>点火区</span>
  569. </template>
  570. </el-table-column>
  571. <el-table-column prop="gasdensity">
  572. <template v-slot:header>
  573. <span >瓦斯浓度</span><br>
  574. <span >(ppm)</span>
  575. </template>
  576. </el-table-column>
  577. </el-table>
  578. <div class="asdis_btn">
  579. <!-- <div class="btnpading"> -->
  580. <!-- <div
  581. class="flex_as"
  582. @click="
  583. firinit();
  584. sdialog.adddwater = true;
  585. "
  586. >
  587. <div class="btns"><span class="spantext">添加</span></div>
  588. </div> -->
  589. <div class="flex_as" @click="gatheruxiugai()">
  590. <div class="btns"><span class="spantext"> 修改</span></div>
  591. </div>
  592. <!-- <div
  593. class="flex_as"
  594. @click="
  595. shanchu('2');
  596. "
  597. >
  598. <div class="btns"><span class="spantext">删除</span></div>
  599. </div> -->
  600. <div class="flex_as" @click="Gassdialog.gather= false">
  601. <div class="btns"><span class="spantext">确定</span></div>
  602. </div>
  603. <!-- </div> -->
  604. </div>
  605. </div>
  606. </div>
  607. <!-- <div style="height: 200px"></div> -->
  608. </div>
  609. </div>
  610. </el-collapse-item>
  611. </el-collapse>
  612. </div>
  613. </el-aside>
  614. </div>
  615. <!-- 一维瓦斯爆炸 -->
  616. <div class="common-layout" style="margin: 0" v-show="sour.collGass1">
  617. <el-aside width="2.125rem" class="L_aside L_aside1 asideg asidegbg leftbgimg1">
  618. <div class="demo-collapse">
  619. <el-collapse v-model="coolactiveName1" accordion @change="handleChangecollapse ">
  620. <el-collapse-item name="1" class="imgneon">
  621. <template #title>
  622. <el-icon class="iconimg Frame3" fit="contain"></el-icon>
  623. 一维瓦斯灾源
  624. </template>
  625. <div class="asides_content">
  626. <div class="jc_content tablecolor">
  627. <div class="jc_padding">
  628. <div class="xian btncolor tablefocus">
  629. <el-table
  630. :data="yiweitable"
  631. @row-click="yiweihandle($event)"
  632. :header-cell-style="{ background: 'rgba(13, 22, 57, 0)' }"
  633. :highlight-current-row="currentrow"
  634. style="width: 100%"
  635. :max-height="tableHeight"
  636. :row-class-name="tableRowClassName"
  637. >
  638. <template v-slot:empty>
  639. <p>暂无数据</p>
  640. </template>
  641. <el-table-column prop="pname" label="选择巷道" />
  642. <el-table-column prop="ssite" label="开始位置" />
  643. <el-table-column prop="esite" label="结束位置" />
  644. <el-table-column prop="gasdensity" label="瓦斯爆炸区浓度" />
  645. </el-table>
  646. <div class="asdis_btn">
  647. <div
  648. class="flex_a"
  649. @click="
  650. yiweiadd($event);
  651. sdialog.yiweidialog = true;
  652. "
  653. >
  654. <div class="btns" ><span class="spantext">添加</span></div>
  655. </div>
  656. <div class="flex_a" @click="yiweixiugai()">
  657. <div class="btns"><span class="spantext">修改</span></div>
  658. </div>
  659. <div
  660. class="flex_a"
  661. @click="yiweidelete()
  662. "
  663. >
  664. <div class="btns"><span class="spantext">删除</span></div>
  665. </div>
  666. </div>
  667. </div>
  668. </div>
  669. </div>
  670. </div>
  671. </el-collapse-item>
  672. </el-collapse>
  673. <!-- <Fengmen ref='Fengmenref' :aid='aid'></Fengmen> -->
  674. </div>
  675. </el-aside>
  676. </div>
  677. <!-- 一维添加 -->
  678. <el-dialog
  679. v-model="sdialog.yiweidialog"
  680. width="400"
  681. align-center
  682. :modal="false"
  683. :append-to-body="true"
  684. :z-index='1000'
  685. :close-on-click-modal="false"
  686. :fullscreen="false"
  687. :modal-append-to-body="false"
  688. modal-class="summary-dlg"
  689. class="dialog_class bgcolor tianjia"
  690. draggable
  691. @close='closeDialog'
  692. >
  693. <template #header="{ titleId, titleClass }">
  694. <div class="my-header">
  695. <el-image :src="icon" fit="contain"></el-image>
  696. <h4 :id="titleId" :class="titleClass">{{ zhtext }}</h4>
  697. </div>
  698. </template>
  699. <div class="demo-input-suffix firsttitle magintop">
  700. <el-form-item label="巷道名称" :label-width="formLabelWidth6">
  701. <el-input
  702. v-model="selectstr"
  703. disabled
  704. class="w-50 m-2"
  705. placeholder="巷道名称"
  706. />
  707. </el-form-item>
  708. <div class="btn2">
  709. <el-button
  710. type="primary"
  711. @click="
  712. fireclick();
  713. sdialog.dialogVisiblenode = true;
  714. "
  715. >选择巷道</el-button
  716. >
  717. </div>
  718. <div class="btn2" style="padding-left: 10px">
  719. <el-button type="primary" @click="Dclick()">3D巷道选择</el-button>
  720. </div>
  721. </div>
  722. <div class="input">
  723. <el-form-item label="开始位置" :label-width="formLabelWidth6">
  724. <el-input-number
  725. v-model="yiweiobj.ssite"
  726. :min="0"
  727. :max="1"
  728. :precision="2"
  729. :step="0.1"
  730. controls-position="right"
  731. class="w-50 m-2"
  732. placeholder="开始位置"
  733. @change="inputnuberChange"
  734. />
  735. </el-form-item>
  736. </div>
  737. <div class="input">
  738. <el-form-item label="结束位置" :label-width="formLabelWidth6">
  739. <el-input-number
  740. v-model="yiweiobj.esite"
  741. :min="0"
  742. :max="1"
  743. :precision="2"
  744. :step="0.1"
  745. controls-position="right"
  746. class="w-50 m-2"
  747. placeholder="结束位置"
  748. @change="inputnuberChange"
  749. />
  750. </el-form-item>
  751. </div>
  752. <div class="input">
  753. <el-form-item label="瓦斯爆炸区浓度" :label-width="formLabelWidth6">
  754. <el-input-number
  755. v-model="yiweiobj.gasdensity"
  756. :min="0"
  757. :max="1"
  758. :precision="2"
  759. :step="0.1"
  760. controls-position="right"
  761. class="w-50 m-2"
  762. placeholder="浓度"
  763. @change="inputnuberChange"
  764. />
  765. </el-form-item>
  766. </div>
  767. <!-- <el-form-item label="瓦斯爆炸区浓度" :label-width="formLabelWidth6">
  768. <el-input v-model="yiweiobj.gasdensity" maxlength="10" oninput ="value=value.replace(/[^0-9.]/g,'')" class="w-50 m-2" placeholder="请输入" />
  769. </el-form-item> -->
  770. <div class="dialog-footer footer_div l_btn">
  771. <div class="footerbtn flex1">
  772. <div class="borderimg">
  773. <el-button @click="closeDialog(); sdialog.yiweidialog = false">取消</el-button>
  774. </div>
  775. </div>
  776. <div class="footerbtn flex1">
  777. <div class="borderimg">
  778. <el-button
  779. @click="yehandleEdit();
  780. "
  781. >
  782. 确定
  783. </el-button>
  784. </div>
  785. </div>
  786. </div>
  787. </el-dialog>
  788. <!-- 瓦斯的添加-->
  789. <el-dialog
  790. v-model="Gassdialog.wsaddshow"
  791. width="400"
  792. align-center
  793. :modal="false"
  794. :close-on-click-modal="false"
  795. :append-to-body="true"
  796. draggable
  797. :fullscreen="false"
  798. :modal-append-to-body="false"
  799. modal-class="summary-dlg"
  800. @close='closeDialog'
  801. class="dialog_class bgcolor tianjia"
  802. >
  803. <template #header="{ titleId, titleClass }">
  804. <div class="my-header">
  805. <el-image :src="icon" fit="contain"></el-image>
  806. <h4 :id="titleId" :class="titleClass">{{zhtext}}</h4>
  807. </div>
  808. </template>
  809. <div class="demo-input-suffix firsttitle magintop">
  810. <el-form-item label="巷道名称" :label-width="formLabelWidth5">
  811. <el-input
  812. v-model="selectstr"
  813. disabled
  814. class="w-50 m-2"
  815. placeholder="巷道名称"
  816. />
  817. </el-form-item>
  818. <div class="btn2">
  819. <el-button
  820. type="primary"
  821. @click="
  822. fireclick();
  823. sdialog.dialogVisiblenode = true;
  824. "
  825. >选择巷道</el-button
  826. >
  827. </div>
  828. <div class="btn2" style="padding-left: 10px">
  829. <el-button type="primary" @click="Dclick()">3D巷道选择</el-button>
  830. </div>
  831. </div>
  832. <div class="dialog-footer footer_div l_btn">
  833. <div class="footerbtn flex1">
  834. <div class="borderimg">
  835. <el-button @click="closeDialog(); Gassdialog.wsaddshow=false">取消</el-button>
  836. </div>
  837. </div>
  838. <div class="footerbtn flex1">
  839. <div class="borderimg">
  840. <el-button
  841. @click="Gassadd();"
  842. >
  843. 确定
  844. </el-button>
  845. </div>
  846. </div>
  847. </div>
  848. </el-dialog>
  849. <!-- 瓦斯爆炸区域的添加 -->
  850. <el-dialog
  851. v-model="Gassdialog.wsaddarea"
  852. width="400"
  853. align-center
  854. :modal="false"
  855. :close-on-click-modal="false"
  856. :append-to-body="true"
  857. draggable
  858. :fullscreen="false"
  859. :modal-append-to-body="false"
  860. modal-class="summary-dlg"
  861. class="dialog_class bgcolor tianjia"
  862. @close='closeDialog'
  863. >
  864. <template #header="{ titleId, titleClass }">
  865. <div class="my-header">
  866. <el-image :src="icon" fit="contain"></el-image>
  867. <h4 :id="titleId" :class="titleClass">{{zhtext}} </h4>
  868. </div>
  869. </template>
  870. <!-- <div class=" btncolor tablefocus">
  871. </div> -->
  872. <div class="demo-input-suffix firsttitle magintop">
  873. <el-form-item label="巷道名称" :label-width="formLabelWidth5">
  874. <el-input
  875. v-model="selectstr"
  876. disabled
  877. class="w-50 m-2"
  878. placeholder="巷道名称"
  879. />
  880. </el-form-item>
  881. <div class="btn2">
  882. <el-button
  883. type="primary"
  884. @click="
  885. fireclick();
  886. sdialog.dialogVisiblenode = true;
  887. "
  888. >选择巷道</el-button
  889. >
  890. </div>
  891. <div class="btn2" style="padding-left: 10px">
  892. <el-button type="primary" @click="Dclick()">3D巷道选择</el-button>
  893. </div>
  894. </div>
  895. <div class="input">
  896. <el-form-item label="开始位置" :label-width="formLabelWidth5">
  897. <el-input-number
  898. v-model="wasi.ssite"
  899. :min="0"
  900. :max="1"
  901. :step="0.1"
  902. controls-position="right"
  903. class="w-50 m-2"
  904. placeholder="位置"
  905. />
  906. </el-form-item>
  907. <el-form-item label="结束位置" :label-width="formLabelWidth5">
  908. <el-input-number
  909. v-model="wasi.esite"
  910. :min="0"
  911. :max="1"
  912. :step="0.1"
  913. controls-position="right"
  914. class="w-50 m-2"
  915. placeholder="位置"
  916. />
  917. </el-form-item>
  918. </div>
  919. <div class="dialog-footer footer_div l_btn">
  920. <div class="footerbtn flex1">
  921. <div class="borderimg">
  922. <el-button @click="closeDialog();Gassdialog.wsaddarea= false">取消</el-button>
  923. </div>
  924. </div>
  925. <div class="footerbtn flex1">
  926. <div class="borderimg">
  927. <el-button
  928. @click="
  929. wsbalastadd();
  930. "
  931. >
  932. 确定
  933. </el-button>
  934. </div>
  935. </div>
  936. </div>
  937. </el-dialog>
  938. <!-- 积聚的修改 -->
  939. <el-dialog
  940. v-model="Gassdialog.wsaddgather"
  941. width="400"
  942. align-center
  943. :modal="false"
  944. :close-on-click-modal="false"
  945. :append-to-body="true"
  946. draggable
  947. :fullscreen="false"
  948. :modal-append-to-body="false"
  949. modal-class="summary-dlg"
  950. class="dialog_class bgcolor tianjia"
  951. >
  952. <template #header="{ titleId, titleClass }">
  953. <div class="my-header">
  954. <el-image :src="icon" fit="contain"></el-image>
  955. <h4 :id="titleId" :class="titleClass">{{zhtext}} </h4>
  956. </div>
  957. </template>
  958. <el-form-item label="类型" :label-width="formLabelWidth6">
  959. <el-select v-model="wasi.type" placeholder="请选择">
  960. <el-option
  961. v-for="item in wasi.options"
  962. :key="item.id"
  963. :label="item.name"
  964. :value="item.value"
  965. ></el-option>
  966. </el-select>
  967. </el-form-item>
  968. <div class="input">
  969. <el-form-item label="瓦斯浓度(ppm)" :label-width="formLabelWidth6">
  970. <el-input
  971. v-model="wasi.gasdensity"
  972. class="w-50 m-2"
  973. placeholder="请输入"
  974. oninput ="value=value.replace(/[^0-9.]/g,'')"
  975. />
  976. </el-form-item>
  977. </div>
  978. <div class="dialog-footer footer_div l_btn">
  979. <div class="footerbtn flex1">
  980. <div class="borderimg">
  981. <el-button @click="Gassdialog.wsaddgather= false">取消</el-button>
  982. </div>
  983. </div>
  984. <div class="footerbtn flex1">
  985. <div class="borderimg">
  986. <el-button
  987. @click="
  988. wsgatheradd();
  989. "
  990. >
  991. 确定
  992. </el-button>
  993. </div>
  994. </div>
  995. </div>
  996. </el-dialog>
  997. <!-- 突水灾害点源数据的添加 draggable-->
  998. <el-dialog
  999. v-model="sdialog.dianadddialog"
  1000. width="400"
  1001. align-center
  1002. :modal="false"
  1003. :append-to-body="true"
  1004. :z-index='1000'
  1005. :close-on-click-modal="false"
  1006. :fullscreen="false"
  1007. :modal-append-to-body="false"
  1008. modal-class="summary-dlg"
  1009. class="dialog_class bgcolor tianjia"
  1010. draggable
  1011. @close='closeDialog'
  1012. >
  1013. <template #header="{ titleId, titleClass }">
  1014. <div class="my-header">
  1015. <el-image :src="icon" fit="contain"></el-image>
  1016. <h4 :id="titleId" :class="titleClass">{{ zhtext }}</h4>
  1017. </div>
  1018. </template>
  1019. <div class="demo-input-suffix firsttitle magintop">
  1020. <el-form-item label="巷道名称" :label-width="formLabelWidth5">
  1021. <el-input
  1022. v-model="selectstr"
  1023. disabled
  1024. class="w-50 m-2"
  1025. placeholder="巷道名称"
  1026. />
  1027. </el-form-item>
  1028. <div class="btn2">
  1029. <el-button
  1030. type="primary"
  1031. @click="
  1032. fireclick();
  1033. sdialog.dialogVisiblenode = true;
  1034. "
  1035. >选择巷道</el-button
  1036. >
  1037. </div>
  1038. <div class="btn2" style="padding-left: 10px">
  1039. <el-button type="primary" @click="Dclick()">3D巷道选择</el-button>
  1040. </div>
  1041. </div>
  1042. <div class="input">
  1043. <el-form-item label="位置" :label-width="formLabelWidth5">
  1044. <el-input-number
  1045. v-model="source.site"
  1046. :min="0"
  1047. :max="1"
  1048. :precision="2"
  1049. :step="0.1"
  1050. controls-position="right"
  1051. class="w-50 m-2"
  1052. placeholder="位置"
  1053. @change="inputnuberChange"
  1054. />
  1055. </el-form-item>
  1056. </div>
  1057. <div class="dialog-footer footer_div l_btn">
  1058. <div class="footerbtn flex1">
  1059. <div class="borderimg">
  1060. <el-button @click="closeDialog(); sdialog.dianadddialog = false">取消</el-button>
  1061. </div>
  1062. </div>
  1063. <div class="footerbtn flex1">
  1064. <div class="borderimg">
  1065. <el-button
  1066. @click="
  1067. handleEditfire();
  1068. "
  1069. >
  1070. 确定
  1071. </el-button>
  1072. </div>
  1073. </div>
  1074. </div>
  1075. </el-dialog>
  1076. <!-- 水泵的add -->
  1077. <el-dialog
  1078. v-model="sdialog.addpump"
  1079. width="400"
  1080. align-center
  1081. :modal="false"
  1082. :append-to-body="true"
  1083. :z-index='1000'
  1084. :close-on-click-modal="false"
  1085. :fullscreen="false"
  1086. :modal-append-to-body="false"
  1087. modal-class="summary-dlg"
  1088. class="dialog_class bgcolor tianjia"
  1089. draggable
  1090. @close='closeDialog'
  1091. >
  1092. <template #header="{ titleId, titleClass }">
  1093. <div class="my-header">
  1094. <el-image :src="icon" fit="contain"></el-image>
  1095. <h4 :id="titleId" :class="titleClass">{{ zhtext }}</h4>
  1096. </div>
  1097. </template>
  1098. <el-form >
  1099. <el-form-item label="编码" :label-width="formLabelWidth6">
  1100. <el-input v-model="pumpobj.pumpcode" maxlength="10" oninput ="value=value.replace(/[^\w\\/]/ig,'')" class="w-50 m-2" placeholder="请输入" />
  1101. </el-form-item>
  1102. <el-form-item label="水泵名称" :label-width="formLabelWidth6">
  1103. <el-input v-model="pumpobj.pumpname" maxlength="18" oninput ="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,'')" class="w-50 m-2" placeholder="请输入" />
  1104. </el-form-item>
  1105. <div class="demo-input-suffix firsttitle magintop">
  1106. <el-form-item label="巷道名称" :label-width="formLabelWidth6">
  1107. <el-input
  1108. v-model="selectstr"
  1109. disabled
  1110. class="w-50 m-2"
  1111. placeholder="巷道名称"
  1112. />
  1113. </el-form-item>
  1114. <div class="btn2">
  1115. <el-button
  1116. type="primary"
  1117. @click="
  1118. fireclick();
  1119. sdialog.dialogVisiblenode = true;
  1120. "
  1121. >选择巷道</el-button
  1122. >
  1123. </div>
  1124. <div class="btn2" style="padding-left: 10px">
  1125. <el-button type="primary" @click="Dclick()">3D巷道选择</el-button>
  1126. </div>
  1127. </div>
  1128. <div class="input">
  1129. <el-form-item label="位置" :label-width="formLabelWidth6">
  1130. <el-input-number
  1131. v-model="source.site"
  1132. :min="0"
  1133. :max="1"
  1134. :precision="2"
  1135. :step="0.1"
  1136. controls-position="right"
  1137. class="w-50 m-2"
  1138. placeholder="位置"
  1139. @change="inputnuberChange"
  1140. />
  1141. </el-form-item>
  1142. </div>
  1143. <div style="display: flex;" >
  1144. <span class="switchppm">开启状态</span>
  1145. <el-switch
  1146. v-model="pumpobj.onoff"
  1147. inline-prompt
  1148. active-text="是"
  1149. inactive-text="否"
  1150. :active-value="1"
  1151. :inactive-value="0"
  1152. @change="handleSwitchChange"
  1153. />
  1154. </div>
  1155. <el-form-item label="开启高度(m)" :label-width="formLabelWidth6">
  1156. <el-input v-model="pumpobj.openhig" maxlength="10" oninput ="value=value.replace(/[^0-9.]/g,'')" class="w-50 m-2" placeholder="请输入" />
  1157. </el-form-item>
  1158. <el-form-item label="关闭高度(m)" :label-width="formLabelWidth6">
  1159. <el-input v-model="pumpobj.closehig" maxlength="10" oninput ="value=value.replace(/[^0-9.]/g,'')" class="w-50 m-2" placeholder="请输入" />
  1160. </el-form-item>
  1161. </el-form>
  1162. <!-- <el-form-item label="性能曲线数据量" :label-width="formLabelWidth6">
  1163. <el-input v-model.number="pumpobj.timeline" maxlength="10" oninput ="value=value.replace(/[^0-9.]/g,'')" class="w-50 m-2" placeholder="请输入" />
  1164. </el-form-item> -->
  1165. <div class="dialog-footer footer_div l_btn">
  1166. <div class="footerbtn flex1">
  1167. <div class="borderimg">
  1168. <el-button @click="closeDialog(); sdialog.addpump = false">取消</el-button>
  1169. </div>
  1170. </div>
  1171. <div class="footerbtn flex1">
  1172. <div class="borderimg">
  1173. <el-button
  1174. @click="addrequest();
  1175. "
  1176. >
  1177. 确定
  1178. </el-button>
  1179. </div>
  1180. </div>
  1181. </div>
  1182. </el-dialog>
  1183. <!-- 选择巷道 -->
  1184. <el-dialog
  1185. v-model="sdialog.dialogVisiblenode"
  1186. width="50%"
  1187. :append-to-body="true"
  1188. align-center
  1189. class="dialog_class bgcolor tianjia asideg asidegbg leftbgimg"
  1190. >
  1191. <template #header="{ titleId, titleClass }">
  1192. <div class="my-header">
  1193. <el-image :src="icon" fit="contain"></el-image>
  1194. <h4 :id="titleId" :class="titleClass">选择巷道</h4>
  1195. </div>
  1196. </template>
  1197. <div class="demo-input-suffix firsttitle leftbgimg2">
  1198. <div class="guand_1">
  1199. <el-form-item label="巷道选择" :label-width="formLabelWidth5">
  1200. <el-input
  1201. v-model="searchtaggd"
  1202. class="w-50 m-2"
  1203. placeholder="巷道名称"
  1204. />
  1205. </el-form-item>
  1206. <div class="asdis_btn">
  1207. <div class="flex_a">
  1208. <div class="btns" @click="searchgd"><span class="spantext">搜索</span></div>
  1209. </div>
  1210. </div>
  1211. </div>
  1212. <el-table
  1213. :row-class-name="tableRowClassName"
  1214. :max-height="tableHeight"
  1215. ref="multipleTableRef"
  1216. :data="tableData2"
  1217. style="width: 100%"
  1218. @select="projectsSelectionSelect"
  1219. :header-cell-style="{ background: 'rgba(13, 22, 57, 0) ' }"
  1220. >
  1221. <template v-slot:empty>
  1222. <p>暂无数据</p>
  1223. </template>
  1224. <el-table-column type="selection" width="55" />
  1225. <!-- <el-table-column property="snId" label="开始节点" />
  1226. <el-table-column property="enId" label="结束节点" /> -->
  1227. <el-table-column property="id" label="编号" width="70" />
  1228. <el-table-column property="name" label="名称" />
  1229. <el-table-column property="sectionType" label="截面类型" width="120" />
  1230. <el-table-column property="roughCoe" label="粗糙系数" />
  1231. <!-- <el-table-column property="sectionPara1" label="截面参数1" width="90" />
  1232. <el-table-column property="sectionPara2" label="截面参数2" width="90" />
  1233. <el-table-column property="sectionPara3" label="截面参数3" width="90" />
  1234. <el-table-column property="sectionPara4" label="截面参数4" width="90" />
  1235. <el-table-column property="sectionPara5" label="截面参数5" width="90" /> -->
  1236. </el-table>
  1237. <div class="demo-pagination-block" style="margin-top: 20px">
  1238. <el-config-provider :locale="zhCn">
  1239. <el-pagination
  1240. v-model:current-page="currentPage4"
  1241. v-model:page-size="pageSize4"
  1242. small
  1243. background
  1244. layout="prev, total,pager, next, jumpe,"
  1245. :total="parseInt(total)"
  1246. class="mt-4"
  1247. @size-change="handleSizeChange"
  1248. @current-change="handleCurrentChange"
  1249. />
  1250. </el-config-provider>
  1251. </div>
  1252. <div class="dialog-footer footer_div l_btn">
  1253. <div class="footerbtn flex1">
  1254. <div class="borderimg">
  1255. <el-button @click="sdialog.dialogVisiblenode = false">取消</el-button>
  1256. </div>
  1257. </div>
  1258. <div class="footerbtn flex1">
  1259. <div class="borderimg">
  1260. <el-button
  1261. @click="
  1262. queding();
  1263. sdialog.dialogVisiblenode = false;
  1264. "
  1265. >
  1266. 确定
  1267. </el-button>
  1268. </div>
  1269. </div>
  1270. </div>
  1271. </div>
  1272. </el-dialog>
  1273. <!-- 灾害火灾源检测数据的添加-->
  1274. <el-dialog
  1275. v-model="sdialog.adddialog"
  1276. width="400"
  1277. align-center
  1278. :modal="false"
  1279. :append-to-body="true"
  1280. :close-on-click-modal="false"
  1281. draggable
  1282. :fullscreen="false"
  1283. :modal-append-to-body="false"
  1284. modal-class="summary-dlg"
  1285. class="dialog_class bgcolor tianjia"
  1286. >
  1287. <template #header="{ titleId, titleClass }">
  1288. <div class="my-header">
  1289. <el-image :src="icon" fit="contain"></el-image>
  1290. <h4 :id="titleId" :class="titleClass">{{ zhtext }}</h4>
  1291. </div>
  1292. </template>
  1293. <div>
  1294. <el-form>
  1295. <el-form-item label="时间/s" :label-width="formLabelWidth6">
  1296. <el-input
  1297. v-model.Number="Disastersource.timeline"
  1298. class="w-50 m-2"
  1299. placeholder="请输入时间秒"
  1300. maxlength="12"
  1301. step="0.01"
  1302. oninput ="value=value.replace(/[^0-9]/g,'')"
  1303. />
  1304. </el-form-item>
  1305. <el-form-item label="温度(℃)" :label-width="formLabelWidth6">
  1306. <el-input
  1307. v-model.Number="Disastersource.val1"
  1308. class="w-50 m-2"
  1309. placeholder="请输入"
  1310. maxlength="10"
  1311. step="0.01"
  1312. oninput ="value=value.replace(/[^0-9.]/g,'')"
  1313. />
  1314. </el-form-item>
  1315. <el-form-item label="二氧化碳(%)" :label-width="formLabelWidth6">
  1316. <el-input
  1317. v-model="Disastersource.val2"
  1318. class="w-50 m-2"
  1319. placeholder="请输入"
  1320. maxlength="10"
  1321. step="0.01"
  1322. oninput ="value=value.replace(/[^0-9.]/g,'')"
  1323. />
  1324. </el-form-item>
  1325. <el-form-item label="二氧化硫(ppm)" :label-width="formLabelWidth6">
  1326. <el-input
  1327. v-model.Number="Disastersource.val3"
  1328. class="w-50 m-2"
  1329. placeholder="请输入"
  1330. maxlength="10"
  1331. oninput ="value=value.replace(/[^0-9.]/g,'')"
  1332. />
  1333. </el-form-item>
  1334. </el-form>
  1335. </div>
  1336. <div class="dialog-footer footer_div l_btn">
  1337. <div class="footerbtn flex1">
  1338. <div class="borderimg">
  1339. <el-button @click="sdialog.adddialog = false">取消</el-button>
  1340. </div>
  1341. </div>
  1342. <div class="footerbtn flex1">
  1343. <div class="borderimg">
  1344. <el-button
  1345. @click="
  1346. addjiancf();
  1347. sdialog.adddialog = false;
  1348. "
  1349. >
  1350. 确定
  1351. </el-button>
  1352. </div>
  1353. </div>
  1354. </div>
  1355. </el-dialog>
  1356. <!-- 灾害源突水检测数据的添加-->
  1357. <el-dialog
  1358. v-model="sdialog.adddwater"
  1359. :append-to-body="true"
  1360. width="400"
  1361. align-center
  1362. class="dialog_class bgcolor tianjia"
  1363. >
  1364. <template #header="{ titleId, titleClass }">
  1365. <div class="my-header">
  1366. <el-image :src="icon" fit="contain"></el-image>
  1367. <h4 :id="titleId" :class="titleClass">{{ zhtext}}</h4>
  1368. </div>
  1369. </template>
  1370. <div>
  1371. <el-form class="demo-form-inline inputnuber">
  1372. <el-form-item label="时间/s" :label-width="formLabelWidth6">
  1373. <el-input
  1374. :min="0"
  1375. v-model.number="Disastersource.timeline"
  1376. class="w-50 m-2"
  1377. :maxlength="8"
  1378. :precision="0"
  1379. placeholder="请输入时间秒"
  1380. oninput ="value=value.replace(/[^0-9]/g,'')"
  1381. />
  1382. </el-form-item>
  1383. <el-form-item label="突水量(m³/s)" :label-width="formLabelWidth6">
  1384. <el-input
  1385. v-model.number="Disastersource.val1"
  1386. class="w-50 m-2"
  1387. placeholder="请输入"
  1388. :min="0"
  1389. :maxlength="8"
  1390. :precision="0"
  1391. oninput ="value=value.replace(/[^0-9]/g,'')"
  1392. />
  1393. </el-form-item>
  1394. </el-form>
  1395. </div>
  1396. <div class="dialog-footer footer_div l_btn">
  1397. <div class="footerbtn flex1">
  1398. <div class="borderimg">
  1399. <el-button @click="sdialog.adddwater = false">取消</el-button>
  1400. </div>
  1401. </div>
  1402. <div class="footerbtn flex1">
  1403. <div class="borderimg">
  1404. <el-button
  1405. @click="
  1406. addjiancf();
  1407. sdialog.adddwater = false;
  1408. "
  1409. >
  1410. 确定
  1411. </el-button>
  1412. </div>
  1413. </div>
  1414. </div>
  1415. </el-dialog>
  1416. <!--性能曲线的添加 -->
  1417. <el-dialog
  1418. v-model="sdialog.addline"
  1419. :append-to-body="true"
  1420. width="400"
  1421. align-center
  1422. class="dialog_class bgcolor tianjia"
  1423. >
  1424. <template #header="{ titleId, titleClass }">
  1425. <div class="my-header">
  1426. <el-image :src="icon" fit="contain"></el-image>
  1427. <h4 :id="titleId" :class="titleClass">添加</h4>
  1428. </div>
  1429. </template>
  1430. <div>
  1431. <el-form class="demo-form-inline inputnuber">
  1432. <el-form-item label="水位高度(m)" :label-width="formLabelWidth6">
  1433. <el-input v-model="pumpxc.hight" maxlength="10" oninput ="value=value.replace(/[^0-9.]/g,'')" class="w-50 m-2" placeholder="请输入" />
  1434. </el-form-item>
  1435. <el-form-item label="流量(m³/s)" :label-width="formLabelWidth6">
  1436. <el-input v-model="pumpxc.flow" maxlength="10" oninput ="value=value.replace(/[^0-9.]/g,'')" class="w-50 m-2" placeholder="请输入" />
  1437. </el-form-item>
  1438. </el-form>
  1439. </div>
  1440. <div class="dialog-footer footer_div l_btn">
  1441. <div class="footerbtn flex1">
  1442. <div class="borderimg">
  1443. <el-button @click="sdialog.addline = false">取消</el-button>
  1444. </div>
  1445. </div>
  1446. <div class="footerbtn flex1">
  1447. <div class="borderimg">
  1448. <el-button
  1449. @click="xnadd(); "
  1450. >
  1451. 确定
  1452. </el-button>
  1453. </div>
  1454. </div>
  1455. </div>
  1456. </el-dialog>
  1457. <!-- 删除 -->
  1458. <el-dialog
  1459. v-model="sdialog.dialogsgdelect"
  1460. :append-to-body="true"
  1461. width="300"
  1462. align-center
  1463. class="dialog_class bgcolor tianjia"
  1464. >
  1465. <template #header="{ titleId, titleClass }">
  1466. <div class="my-header">
  1467. <el-image :src="icon" fit="contain"></el-image>
  1468. <h4 :id="titleId" :class="titleClass">删除框</h4>
  1469. </div>
  1470. </template>
  1471. <h4 class="delecttitle">
  1472. 是否确认删除 <span class="spanclad">{{ zqname }}</span>
  1473. </h4>
  1474. <div class="dialog-footer footer_div l_btn">
  1475. <div class="footerbtn flex1">
  1476. <div class="borderimg">
  1477. <el-button @click="sdialog.dialogsgdelect = false">取消</el-button>
  1478. </div>
  1479. </div>
  1480. <div class="footerbtn flex1">
  1481. <div class="borderimg">
  1482. <el-button
  1483. @click="fundeledata();
  1484. sdialog.dialogsgdelect = false;
  1485. "
  1486. >
  1487. 确定
  1488. </el-button>
  1489. </div>
  1490. </div>
  1491. </div>
  1492. </el-dialog>
  1493. <!-- 水灾删除 -->
  1494. <el-dialog
  1495. v-model="sdialog.deletedata"
  1496. :append-to-body="true"
  1497. width="300"
  1498. align-center
  1499. class="dialog_class bgcolor tianjia"
  1500. >
  1501. <template #header="{ titleId, titleClass }">
  1502. <div class="my-header">
  1503. <el-image :src="icon" fit="contain"></el-image>
  1504. <h4 :id="titleId" :class="titleClass">删除框</h4>
  1505. </div>
  1506. </template>
  1507. <h4 class="delecttitle">
  1508. 是否确认删除 <span class="spanclad">{{ zqname }}</span>
  1509. </h4>
  1510. <div class="dialog-footer footer_div l_btn">
  1511. <div class="footerbtn flex1">
  1512. <div class="borderimg">
  1513. <el-button @click="sdialog.deletedata = false">取消</el-button>
  1514. </div>
  1515. </div>
  1516. <div class="footerbtn flex1">
  1517. <div class="borderimg">
  1518. <el-button
  1519. @click="deletedata();
  1520. sdialog.deletedata = false;
  1521. "
  1522. >
  1523. 确定
  1524. </el-button>
  1525. </div>
  1526. </div>
  1527. </div>
  1528. </el-dialog>
  1529. <!-- 瓦斯的删除 -->
  1530. <el-dialog
  1531. v-model="Gassdialog.wsdelete"
  1532. align-center
  1533. :append-to-body="true"
  1534. width="400"
  1535. class="dialog_class bgcolor tianjia"
  1536. >
  1537. <template #header="{ titleId, titleClass }">
  1538. <div class="my-header">
  1539. <el-image :src="icon" fit="contain"></el-image>
  1540. <h4 :id="titleId" :class="titleClass">删除框</h4>
  1541. </div>
  1542. </template>
  1543. <h4 class="delecttitle">
  1544. <!-- //{{ zqname }} -->
  1545. 是否确认删除 <span class="spanclad">{{zqname }}</span>
  1546. </h4>
  1547. <div class="dialog-footer footer_div l_btn">
  1548. <div class="footerbtn flex1">
  1549. <div class="borderimg">
  1550. <el-button @click="Gassdialog.wsdelete = false">取消</el-button>
  1551. </div>
  1552. </div>
  1553. <div class="footerbtn flex1">
  1554. <div class="borderimg">
  1555. <el-button
  1556. @click="wsdeledata();
  1557. Gassdialog.wsdelete = false;
  1558. "
  1559. >
  1560. 确定
  1561. </el-button>
  1562. </div>
  1563. </div>
  1564. </div>
  1565. </el-dialog>
  1566. </div>
  1567. <selfdialogs ref="dialogtrue" :site="dsite" @Dtext="Dtext"></selfdialogs>
  1568. <!-- <filesload
  1569. ref="filesload"
  1570. :fileurls="fileurls"
  1571. @fileLoadeState="fileLoadeState($event)"
  1572. ></filesload> -->
  1573. </template>
  1574. <script setup>
  1575. import { computed, ref, onMounted, reactive, toRef } from "vue";
  1576. import { request, uploadFile } from "@/utils/request";
  1577. import icon from "@/assets/img/icon.png";
  1578. import icon1 from "@/assets/img/Group27.png";
  1579. import closeimg from "@/assets/img/colse.png";
  1580. import {
  1581. ElMessage,
  1582. ElButton,
  1583. ElDialog,
  1584. ElSelect,
  1585. DROPDOWN_COLLECTION_INJECTION_KEY,
  1586. ElConfigProvider
  1587. } from "element-plus";
  1588. import zhCn from 'element-plus/es/locale/lang/zh-cn'
  1589. import { Calendar, Search } from "@element-plus/icons-vue";
  1590. import Fengmen from "./Fengmen.vue";
  1591. import InfoBoundary from "./InfoBoundary.vue";
  1592. import { c } from "@kitware/vtk.js/macros2";
  1593. import { vtkmodel } from "@/control/vtkModel.js";;
  1594. import selfdialogs from "./SetPipe.vue";
  1595. import vueUploader from "./fileuploads.vue";
  1596. import { NULL } from "sass";
  1597. import emitter from "@/utils/emitter";
  1598. // import filesload from "./filesloads.vue";
  1599. const statusMap = {
  1600. 'CIRCULAR': '圆形',
  1601. 'RECTANGLE': '矩形',
  1602. 'SEMICIRCULAR': '半椭圆形',
  1603. 'SEMIELLIPTICAL': '半圆形',
  1604. 'EGG': '蛋形',
  1605. 'GOTHIC': '哥特形',
  1606. 'MODBASKETHANDLE': '更正蓝形',
  1607. 'ARCH': '拱形',
  1608. 'RECT_ROUND': '弧底矩形',
  1609. 'BASKETHANDLE': '蓝形',
  1610. 'HORSESHOE': '马蹄形',
  1611. 'RECT_TRIANGULAR': '三角底矩形',
  1612. 'VERT_ELLIPSE': '竖向椭圆',
  1613. 'HORZI_ELLIPSE': '水平椭圆',
  1614. 'CATENARY': '悬链式',
  1615. };
  1616. let isActive=ref(0)
  1617. const changeClass= (i)=> {
  1618. isActive.value = i;
  1619. }
  1620. let deltext=ref();
  1621. let valuesw=ref(false)
  1622. let dsite=ref();
  1623. let state=ref();
  1624. const changeModel= ()=> {
  1625. vtkmodel.clearJgAddMode();
  1626. vtkmodel.renderWindow.render();
  1627. }
  1628. let yiweitable=ref();
  1629. let timing = ref(null);
  1630. let styX=ref({left: ""})
  1631. let vueupshow=ref(false);
  1632. const gfx=ref();
  1633. const inp=ref();
  1634. let tableDatpump=ref();
  1635. let Fengmenref=ref();
  1636. let gid=ref("");
  1637. let wsid=ref("");
  1638. let gfid=ref("");
  1639. let bfid=ref("");
  1640. let tableDataws=ref([]);
  1641. let currentrow = ref(false);
  1642. let currentrow1 = ref(false);
  1643. let currentrow2 = ref(false);
  1644. let tableline=ref();
  1645. let formLabelWidth2=ref(80);
  1646. let wasi=ref({
  1647. ssite:0.0,
  1648. esite:0.0,
  1649. gbid:Number,
  1650. pid:Number,
  1651. gdname:'',
  1652. pid:Number,
  1653. gid:Number,
  1654. blastdata:{},
  1655. gatherdata:{},
  1656. options:[{ name:"空白区" ,value:'0'},{ name:"积聚区" ,value:'1'},{ name:"点火区" ,value:'2'}],
  1657. type:'0',
  1658. gasdensity:0,
  1659. })
  1660. // 水泵参数
  1661. let pumpobj=ref({
  1662. pumpid:null,
  1663. pumpname:'',
  1664. openhig:'',
  1665. closehig:'',
  1666. onoff:'0',
  1667. pumpcode:'',
  1668. xzobj:{},
  1669. })
  1670. // 水泵性能 参数
  1671. let pumpxc=ref({
  1672. pumphfid:null,
  1673. hight:null,
  1674. flow:null,
  1675. xnobj:{},
  1676. })
  1677. let tishi =ref("");
  1678. let gtableData=ref([]);
  1679. let gjtableData=ref([]);
  1680. const props = defineProps({
  1681. classradio: {
  1682. type: String,
  1683. },
  1684. // aid: {
  1685. // type: String,
  1686. // },
  1687. });
  1688. let fileurls=ref([]);
  1689. let zaihai = ref({
  1690. addEied: "",
  1691. });
  1692. let gfname=ref("");
  1693. let bfname=ref("");
  1694. let dialogtrue = ref();
  1695. let zhtext = ref("");
  1696. const Gassdialog=ref({
  1697. wsaddflie:false,
  1698. wsaddflie:false,
  1699. wsaddarea:false,
  1700. wsdelete:false,
  1701. blast:false,
  1702. gather:false,
  1703. wsaddgather:false,
  1704. })
  1705. const sdialog = ref({
  1706. adddialog: false,
  1707. dialogsgdelect: false,
  1708. dianadddialog: false,
  1709. addpump:false,
  1710. dialogVisiblenode: false,
  1711. isDisasterfire: false,
  1712. isDisasterwter: false,
  1713. adddwater: false,
  1714. addline:false,
  1715. linetable:false,
  1716. deletedata:false,
  1717. yiweidialog:false,
  1718. });
  1719. let selectstr = ref("");
  1720. const currentPage4 = ref(1);
  1721. const pageSize4 = ref(5);
  1722. const tableDatawat = ref([]);
  1723. const tableDatafir = ref([]);
  1724. const dialogVisible = ref(true);
  1725. const sour = ref({
  1726. collfire: false,
  1727. collwater: false,
  1728. Gass:false,
  1729. collGass1:false
  1730. });
  1731. // 一维参数
  1732. let yiweiobj =ref({
  1733. ssite:null,
  1734. esite:null,
  1735. gasdensity:null,
  1736. gid:'',
  1737. nreobj:{}
  1738. })
  1739. let jiancobj = ref({});
  1740. let firepid = ref("");
  1741. let svid = ref("");
  1742. let firesid = ref("");
  1743. let searchtaggd = ref("");
  1744. let total = ref(1);
  1745. let gdadd = ref("0");
  1746. let jcadd = ref();
  1747. let tableHeight = ref(200);
  1748. const multipleTableRef = ref();
  1749. const multipleSelection = ref([]);
  1750. const formLabelWidth5 = ref(77);
  1751. const formLabelWidth6 = ref(120);
  1752. let source = reactive({ pname: "", site: 0.1 });
  1753. let Disastersource = ref({
  1754. svid: 0,
  1755. timeline:Number,
  1756. val1:Number,
  1757. val2: Number,
  1758. val3:Number,
  1759. val4:Number,
  1760. });
  1761. let tableobj = ref({});
  1762. const tableData2 = ref([]);
  1763. let aid = ref();
  1764. let biaoid = ref();
  1765. let coolactiveName1 = ref(["1", "2"]);
  1766. let zqname = ref("");
  1767. const tableRowClassName = ({ row, rowIndex }) => {
  1768. if (rowIndex % 2 != 0) {
  1769. return "evenRow";
  1770. }
  1771. return "oddRow";
  1772. };
  1773. const tableData = ref([]);
  1774. const tableDatay = ref([]);
  1775. const tableData4 = ref([]);
  1776. const initisshow=()=>{
  1777. Gassdialog.value.wsaddflie=false;
  1778. Gassdialog.value.wsaddflie=false;
  1779. Gassdialog.value.wsaddarea=false;
  1780. Gassdialog.value.wsdelete=false;
  1781. Gassdialog.value.blast=false;
  1782. Gassdialog.value.gather=false;
  1783. Gassdialog.value.wsaddgather=false;
  1784. sdialog.value.adddialog=false;
  1785. sdialog.value.dialogsgdelect= false;
  1786. sdialog.value.dianadddialog= false;
  1787. sdialog.value.addpump= false;
  1788. sdialog.value.dialogVisiblenode=false;
  1789. sdialog.value.isDisasterfire= false;
  1790. sdialog.value.isDisasterwter= false;
  1791. sdialog.value.adddwater= false;
  1792. sdialog.value.addline= false;
  1793. sdialog.value.linetable= false;
  1794. sdialog.value.deletedata= false;
  1795. sdialog.value.yiweidialog=false;
  1796. dialogtrue.value.dialoglog = false;
  1797. Fengmenref.value.initisshow();
  1798. closeDialog();
  1799. }
  1800. // emitter.on('handleSelect',(data)=>{
  1801. // initisshow();
  1802. // });
  1803. const accident3 = (key) => {
  1804. console.log(key);
  1805. //aid.value=id;
  1806. // console.log('我是aid', id);
  1807. if (key == "1"||key == "2"||key == "3"||key=='5') {
  1808. console.log(props.classradio )
  1809. if (props.classradio == "Fire") {
  1810. sour.value.collfire = true;
  1811. sour.value.collwater = false;
  1812. sour.value.Gass = false;
  1813. sour.value.collGass1=false
  1814. Fengmenref.value.getquery(aid.value);
  1815. } else if (props.classradio == "Water") {
  1816. sour.value.collwater = true;
  1817. sour.value.collfire = false;
  1818. sour.value.Gass = false;
  1819. sour.value.collGass1=false
  1820. }else if(props.classradio == "Gass"){
  1821. sour.value.collwater = false;
  1822. sour.value.collfire = false;
  1823. sour.value.Gass = true;
  1824. sour.value.collGass1=false
  1825. }else if(props.classradio == "Gass1"){
  1826. sour.value.collwater = false;
  1827. sour.value.collfire = false;
  1828. sour.value.Gass = false;
  1829. sour.value.collGass1=true;
  1830. //yiweiget()
  1831. }
  1832. } else {
  1833. sour.value.collwater = false;
  1834. sour.value.collfire = false;
  1835. sour.value.Gass = false;
  1836. sour.value.collGass1=false;
  1837. }
  1838. };
  1839. // 3D数据显示
  1840. const Dtext=(val)=>{
  1841. console.log(val);
  1842. selectstr.value=val.name;
  1843. firepid.value=val.id;
  1844. }
  1845. // 3D弹屏
  1846. const Dclick = () => {
  1847. dialogtrue.value.dialoglog = true;
  1848. // vtkmodel.clearJgAddMode() ;
  1849. vtkmodel.selectPipes();
  1850. vtkmodel.clearpipsite();
  1851. dialogtrue.value.jgSelect();
  1852. };
  1853. //灾情源查询列表
  1854. const handledisaster = (aidval) => {
  1855. vtkmodel.delSoures();
  1856. aid.value = aidval;
  1857. const params = {
  1858. transCode: "D00005",
  1859. aid: aid.value,
  1860. };
  1861. request(params)
  1862. .then((res) => {
  1863. console.log(res);
  1864. //vtkmodel.delSoures();
  1865. res.rows.forEach((item,index)=>{
  1866. vtkmodel.addSoures(item.pid,item.site)
  1867. })
  1868. if (props.classradio == "Fire") {
  1869. tableDatay.value = res.rows;
  1870. } else {
  1871. tableDatawat.value = res.rows;
  1872. }
  1873.  tableobj.value={};
  1874. })
  1875. .catch((err) => {
  1876. ElMessage.error(err.returnMsg);
  1877. });
  1878. };
  1879. // 灾情源添加
  1880. const fireadd = () => {
  1881. currentrow.value = false;
  1882. tableobj.value={};
  1883. if(firepid.value==null||firepid.value==""){
  1884. ElMessage.error("巷道不能为空")
  1885. //sdialog.value.dianadddialog = false;
  1886. }else{
  1887. const params = {
  1888. transCode: "D00004",
  1889. pid: firepid.value,
  1890. aid: aid.value,
  1891. stype: props.classradio,
  1892. site: source.site,
  1893. };
  1894. request(params)
  1895. .then((res) => {
  1896. ElMessage({
  1897. message: "保存成功",
  1898. type: "success",
  1899. });
  1900. sdialog.value.dianadddialog = false;
  1901. handledisaster(aid.value);
  1902. fun3D();
  1903. })
  1904. .catch((err) => {
  1905. ElMessage.error(err.returnMsg);
  1906. });
  1907. }
  1908. };
  1909. //下拉跳转
  1910. const handleChangecollapse = (val) => {
  1911. coolactiveName1.value=val;
  1912. }
  1913. // 加减input事件
  1914. const inputnuberChange = (number) => {
  1915. dsite.value=number;
  1916. dialogtrue.value.jgSelenum();
  1917. // vtkmodel.addpipsite( wasi.value.pid, wasi.value.ssite);
  1918. //   vtkmodel.addpipsite2( wasi.value.pid, wasi.value.esite);
  1919. }
  1920. // 3D关闭弹窗
  1921. const fun3D = () => {
  1922. state.value=sessionStorage.getItem("state");
  1923. //console.log(state.value);
  1924. if(state.value=='1'){
  1925. vtkmodel.clearModeAddJg();
  1926. }else{
  1927. vtkmodel.selectNoting();
  1928. }
  1929. dialogtrue.value.timintclaer();
  1930. vtkmodel.clearpipsite();//清除选择巷道的位置
  1931. }
  1932. const closeDialog=()=>{
  1933. console.log(state.value);
  1934. state.value=sessionStorage.getItem("state");
  1935. if(state.value=='1'){
  1936. vtkmodel.clearModeAddJg();
  1937. }else{
  1938. vtkmodel.selectNoting();
  1939. }//节点图形
  1940. vtkmodel.clearpipsite();//清除选择巷道的位置
  1941. dialogtrue.value.timintclaer();
  1942. }
  1943. //添加保存
  1944. const handleEditfire = () => {
  1945. if (gdadd.value == "1") {
  1946. fireadd();
  1947. // sdialog.value.dianadddialog = false;
  1948. } else if (gdadd.value == "2") {
  1949. if (props.classradio == "Fire") {
  1950. // sdialog.value.dianadddialog = false;
  1951. }
  1952. } else if ((gdadd.value = "3")) {
  1953. xiugaiapi();
  1954. // waaddshow.value=false;
  1955. } else {
  1956. }
  1957. };
  1958. //灾情源删除
  1959. const handleDelete = (val) => {
  1960. zqname.value = val.pname;
  1961. tableobj.value=val;
  1962. currentrow.value=true;
  1963. shanchu.value = val;
  1964. sdialog.dialogsgdelect = true;
  1965. firesid.value = val.sid;
  1966. handledetection(val);
  1967. };
  1968. const handleDeletewotwr = (val) => {
  1969. zqname.value = val.pname;
  1970. tableobj.value=val;
  1971. currentrow.value=true;
  1972. shanchu.value = val;
  1973. sdialog.dialogsgdelect = true;
  1974. firesid.value = val.sid;
  1975. handledetection2(val);
  1976. }
  1977. const shanchu = (val) => {
  1978. biaoid.value = val;
  1979. if(val=='1'){
  1980. if (JSON.stringify(tableobj.value) == "{}") {
  1981. ElMessage.error("你还没有选中删除的项目")
  1982. } else {
  1983. sdialog.value.dialogsgdelect = true;
  1984. }
  1985. }else {
  1986. if (JSON.stringify(jiancobj.value) == "{}") {
  1987. ElMessage.error("你还没有选中删除的项目")
  1988. } else {
  1989. sdialog.value.dialogsgdelect = true;
  1990. //sdialog.value.dialogsgdelect = true;
  1991. }
  1992. // sdialog.value.dialogsgdelect = true;
  1993. }
  1994. };
  1995. const fundeledata = () => {
  1996. if (biaoid.value == "1") {
  1997. fundeledata2();
  1998. } else{
  1999. fundeledata3();
  2000. }
  2001. };
  2002. //
  2003. const fundeledata2 = () => {
  2004. const params = {
  2005. transCode: "D000011",
  2006. sid: firesid.value,
  2007. };
  2008. console.log(params);
  2009. request(params)
  2010. .then((res) => {
  2011. ElMessage({
  2012. message: "删除成功",
  2013. type: "success",
  2014. });
  2015. if(props.classradio == "Fire"){
  2016. sdialog.value.isDisasterfire=false;
  2017. }else{
  2018. sdialog.value.disDisasterwter=false;
  2019. }
  2020. handledisaster(aid.value);
  2021. })
  2022. .catch((err) => {
  2023. ElMessage.error(err.returnMsg);
  2024. });
  2025. };
  2026. // 巷道搜索
  2027. function searchgd() {
  2028. pipelinedata(searchtaggd.value);
  2029. }
  2030. // 分页查询
  2031. function handleSizeChange(val) {}
  2032. const handleCurrentChange = (val) => {
  2033. pipelinedata(searchtaggd.value);
  2034. };
  2035. //新建fire
  2036. const newtable = (e) => {
  2037. var e = e || window.Event;
  2038. styX.value.left = e.clientX + "px";
  2039. console.log(styX.value.left);
  2040. currentrow.value=false;
  2041. tableobj.value={};
  2042. selectstr.value = "";
  2043. firepid.value = "";
  2044. source.site = 0;
  2045. newtable.value = "1";
  2046. gdadd.value = "1";
  2047. zhtext.value = "添加";
  2048. vtkmodel.clearJgAddMode() ;
  2049. // vtkmodel.selectPipes();
  2050. // dialogtrue.value.jgSelect();
  2051. // dialogtrue.value.initmsg();
  2052. };
  2053. // 修改
  2054. const xiugaitable = () => {
  2055. gdadd.value = "3";
  2056. zhtext.value = "修改";
  2057. if (JSON.stringify(tableobj.value) == "{}") {
  2058. ElMessage.error("你还没有选中修改的项目");
  2059. } else {
  2060. sdialog.value.dianadddialog = true;
  2061. aid.value = tableobj.value.aid;
  2062. firepid.value = tableobj.value.pid;
  2063. source.site = tableobj.value.site;
  2064. selectstr.value = tableobj.value.pname;
  2065. vtkmodel.clearJgAddMode() ;
  2066. //选中指定管道
  2067. vtkmodel.selectByPipeId(tableobj.value.pid); 
  2068. vtkmodel.addpipsite(tableobj.value.pid, tableobj.value.site);
  2069. // vtkmodel.selectPipes();
  2070. // dialogtrue.value.jgSelect();
  2071. vtkmodel.addpipsite( firepid.value,source.site )
  2072. }
  2073. };
  2074. // 修改接口
  2075. const xiugaiapi = () => {
  2076. const params = {
  2077. transCode: "D000010",
  2078. pid: firepid.value,
  2079. site: source.site,
  2080. sid: tableobj.value.sid,
  2081. };
  2082. request(params)
  2083. .then((res) => {
  2084. handledisaster(aid.value);
  2085. ElMessage({
  2086. message: "保存成功",
  2087. type: "success",
  2088. });
  2089. sdialog.value.dianadddialog = false;
  2090. fun3D();
  2091. })
  2092. .catch((err) => {});
  2093. };
  2094. // 选择
  2095. const fireclick = () => {
  2096. searchtaggd.value='';
  2097. pipelinedata("");
  2098. };
  2099. const queding = () => {
  2100. selectfun();
  2101. };
  2102. const selectfun = () => {
  2103. selectstr.value = "";
  2104. currentPage4.value = 1;
  2105. console.log();
  2106. if (multipleSelection.value.length != 0) {
  2107. firepid.value = multipleSelection.value[0].id;
  2108. selectstr.value = multipleSelection.value[0].name;
  2109. vtkmodel.selectByPipeId( firepid.value);
  2110. //vtkmodel.addpipsite( firepid.value,site.value);
  2111. } else {
  2112. // selectstr.value='';
  2113. }
  2114. };
  2115. const projectsSelectionSelect = (selection, row) => {
  2116. if (selection.length > 1) {
  2117. multipleTableRef.value.clearSelection();
  2118. multipleTableRef.value.toggleRowSelection(row, true);
  2119. let arrp=[];
  2120. arrp.push(selection[1])
  2121. multipleSelection.value = arrp;
  2122. return;
  2123. }
  2124. if (selection.length == 1) {
  2125. multipleSelection.value = selection;
  2126. } else if (selection.length == 0) {
  2127. }
  2128. // console.log(row)
  2129. };
  2130. //巷道数据查询
  2131. const pipelinedata = (searchtag) => {
  2132. const params = {
  2133. transCode: "D00001",
  2134. count: pageSize4.value,
  2135. page: currentPage4.value,
  2136. searchtag: searchtag,
  2137. };
  2138. request(params)
  2139. .then((res) => {
  2140. tableData2.value = res.rows.map(item => {
  2141. return {
  2142. ...item,
  2143. sectionType: statusMap[item.sectionType] || '未知' // 如果状态不存在,默认设置为'未知'
  2144. };
  2145. });
  2146. total.value = res.total;
  2147. })
  2148. .catch((err) => {});
  2149. };
  2150. // 灾源检测
  2151. const handledetection = ( row) => {
  2152. sdialog.value.isDisasterfire = true;
  2153. firesid.value = row.sid;
  2154. getinquire();
  2155. };
  2156. //突水灾源检测
  2157. const handledetection2 = (row) => {
  2158. sdialog.value.disDisasterwter = true;
  2159. firesid.value = row.sid;
  2160. getinquire();
  2161. };
  2162. // 灾源检测查询
  2163. const getinquire = () => {
  2164. const params = {
  2165. transCode: "D00007",
  2166. sid: firesid.value,
  2167. };
  2168. request(params)
  2169. .then((res) => {
  2170. console.log(res.rows);
  2171. if (props.classradio == "Fire") {
  2172. tableDatafir.value = res.rows;
  2173. } else {
  2174. tableData4.value = res.rows;
  2175. }
  2176. jiancobj.value={};
  2177. })
  2178. .catch((err) => {});
  2179. };
  2180. // const Disasterclick=(index,row)=>{
  2181. // addjiancf();
  2182. // }
  2183. // 灾源火灾检测添加
  2184. const addjiancf = () => {
  2185. if (zaihai.value.addEied == "a") {
  2186. const params = {
  2187. transCode: "D00006",
  2188. sid: firesid.value,
  2189. timeline: Disastersource.value.timeline,
  2190. val1: Disastersource.value.val1,
  2191. val2: Disastersource.value.val2,
  2192. val3: Disastersource.value.val3,
  2193. val4: Disastersource.value.val4,
  2194. };
  2195. request(params)
  2196. .then((res) => {
  2197. ElMessage({
  2198. message: '添加成功',
  2199. type: "success",
  2200. });
  2201. getinquire();
  2202. })
  2203. .catch((err) => {
  2204. ElMessage.error(err.returnMsg);
  2205. });
  2206. } else {
  2207. zaiyuxiugaiapi();
  2208. }
  2209. };
  2210. //灾情源添加清空
  2211. const firinit = () => {
  2212. zaihai.value.addEied = "a";
  2213. Disastersource.value.timeline = "";
  2214. Disastersource.value.val1 = "";
  2215. Disastersource.value.val2 = "";
  2216. Disastersource.value.val3 = "";
  2217. Disastersource.value.val4 = "";
  2218. zhtext.value = "添加";
  2219. currentrow1.value=false;
  2220. jiancobj.value={};
  2221. };
  2222. //瓦斯爆炸查询
  2223. const Gassgetdata=(aidval)=>{
  2224. aid.value=aidval;
  2225. const params = {
  2226. transCode: "D10020",
  2227. aid:aid.value
  2228. };
  2229. request(params)
  2230. .then((res) => {
  2231. tableDataws.value=res.rows;
  2232. tableobj.value={};
  2233. })
  2234. .catch((err) => {
  2235. ElMessage.error(err.returnMsg);
  2236. });
  2237. }
  2238. // 瓦斯爆炸的添加
  2239. const wanewadd=()=>{
  2240. Gassdialog.value.wsaddshow= true;
  2241. selectstr.value = "";
  2242. firepid.value = "";
  2243. zhtext.value = "添加";
  2244. currentrow.value=false;
  2245. tableobj.value={};
  2246. // dialogtrue.value.jgSelect();
  2247. vtkmodel.clearJgAddMode() ;
  2248. // vtkmodel.selectPipes();
  2249. }
  2250. const Gassadd=()=>{
  2251. console.log(firepid.value);
  2252. if(firepid.value==null||firepid.value==''||firepid.value==undefined){
  2253. ElMessage.error('巷道名称不能为空');
  2254. }else{
  2255. const params = {
  2256. transCode: "D10021",
  2257. gid:gid.value,
  2258. pid:firepid.value,
  2259. aid:aid.value
  2260. };
  2261. console.log(params);
  2262. request(params)
  2263. .then((res) => {
  2264. ElMessage({
  2265. message:"瓦斯添加成功",
  2266. type: "success",
  2267. });
  2268. Gassdialog.value.wsaddflie= false;
  2269. Gassdialog.value.wsaddshow=false
  2270. Gassgetdata(aid.value);
  2271. fun3D();
  2272. })
  2273. .catch((err) => {
  2274. ElMessage.error(err.returnMsg);
  2275. });
  2276. }
  2277. }
  2278. // 瓦斯选中一行
  2279. const handlews=(row)=>{
  2280. console.log(row);
  2281. currentrow.value=true;
  2282. tableobj.value=row;
  2283. handlook(row);
  2284. }
  2285. // 瓦斯的修改
  2286. const wsxiugai= ()=>{
  2287. if (JSON.stringify(tableobj.value) == "{}") {
  2288. ElMessage.error("你还没有选中修改的项目");
  2289. } else {
  2290. zhtext.value = "修改";
  2291. Gassdialog.value.wsaddshow= true;
  2292. // selectstr.value = "";
  2293. // firepid.value = "";
  2294. }
  2295. }
  2296. // 瓦斯删除
  2297. const wsdelete=()=>{
  2298. wsid.value='0'
  2299. if (JSON.stringify(tableobj.value) == "{}") {
  2300. ElMessage.error("你还没有选中删除的项目")
  2301. } else {
  2302. //zqname.value= tableobj.value.bfname+"-"+ tableobj.value.gfname;
  2303. zqname.value= tableobj.value.pname;
  2304. Gassdialog.value.wsdelete=true;
  2305. }
  2306. }
  2307. const wsdeledata=()=>{
  2308. console.log(wsid.value)
  2309. console.log(1111)
  2310. if(wsid.value=='0'){
  2311. wsdelete2();
  2312. }if(wsid.value=='1'){
  2313. wsblastdelete1();
  2314. }
  2315. }
  2316. // 瓦斯删除
  2317. const wsdelete2=()=>{
  2318. const params = {
  2319. transCode: "D10022",
  2320. gid:tableobj.value.gid
  2321. };
  2322. request(params)
  2323. .then((res) => {
  2324. ElMessage({
  2325. message: "瓦斯删除成功",
  2326. type: "success",
  2327. });
  2328. Gassdialog.value.wsdelete=false;
  2329. Gassdialog.value.blast=false;
  2330. Gassdialog.value.gather=false;
  2331. Gassgetdata(aid.value);
  2332. })
  2333. .catch((err) => {
  2334. ElMessage.error(err.returnMsg);
  2335. });
  2336. }
  2337. //瓦斯的查看
  2338. const handlook=(data)=>{
  2339. console.log(data);
  2340. Gassdialog.value.blast =true;
  2341. Gassdialog.value.gather =true;
  2342. wasi.value.gid=data.gid;
  2343. wsblastget();
  2344. gatherget();
  2345. }
  2346. // // 瓦斯爆炸区域查询
  2347. const wsblastget=()=>{
  2348. vtkmodel.delSoures();
  2349. const params = {
  2350. transCode: "D10023",
  2351. gid: wasi.value.gid,
  2352. };
  2353. request(params)
  2354. .then((res) => {
  2355. gtableData.value=res.rows;
  2356. wasi.value.blastdata={};
  2357. if(res.rows!=[]){
  2358. // vtkmodel.delSoures();
  2359. console.log(res.rows);
  2360. res.rows.forEach((item,index)=>{
  2361. vtkmodel.addSoures(item.pid,item.ssite)
  2362. vtkmodel.addSoures(item.pid,item.esite)
  2363. })
  2364. }
  2365. })
  2366. .catch((err) => {
  2367. ElMessage.error(err.returnMsg);
  2368. });
  2369. }
  2370. // 瓦斯爆炸区域的添加
  2371. const wsaddblast=()=>{
  2372. zhtext.value='添加';
  2373. wasi.value.ssite=0.0;
  2374. wasi.value.esite=0.0;
  2375. wasi.value.gbid=0;
  2376. wasi.value.pid='';
  2377. selectstr.value = "";
  2378. firepid.value = "";
  2379. Gassdialog.value.wsaddarea= true;
  2380. currentrow1.value=false;
  2381. wasi.value.blastdata={};
  2382. vtkmodel.clearJgAddMode() ;
  2383. // vtkmodel.selectPipes();
  2384. // dialogtrue.value.jgSelect();
  2385. }
  2386. const wsbalastadd=()=>{
  2387. wasi.value.pid=firepid.value;
  2388. if( wasi.value.ssite<wasi.value.esite){
  2389. const params = {
  2390. transCode: "D10024",
  2391. gid: wasi.value.gid,
  2392. pid: wasi.value.pid,
  2393. ssite:wasi.value.ssite,
  2394. esite: wasi.value.esite,
  2395. gbid:wasi.value.gbid,
  2396. };
  2397. request(params)
  2398. .then((res) => {
  2399. ElMessage({
  2400. message: zhtext.value+"瓦斯爆炸区域",
  2401. type: "success",
  2402. });
  2403. Gassdialog.value.wsaddarea= false;
  2404. wsblastget();
  2405. fun3D();
  2406. })
  2407. .catch((err) => {
  2408. ElMessage.error(err.returnMsg);
  2409. });
  2410. }else{
  2411. ElMessage.error("结束位置大于开始位置");
  2412. }
  2413. }
  2414. // 爆炸区域的修改
  2415. const wsxiugai2=()=>{
  2416. if (JSON.stringify(wasi.value.blastdata) == "{}") {
  2417. ElMessage.error("你还没有选中修改的项目");
  2418. }else{
  2419. zhtext.value='修改';
  2420. wasi.value.ssite=wasi.value.blastdata.ssite;
  2421. wasi.value.esite=wasi.value.blastdata.esite;
  2422. wasi.value.gbid=wasi.value.blastdata.gbid;
  2423. wasi.value.pid=wasi.value.blastdata.pid;
  2424. selectstr.value =wasi.value.blastdata.pname;
  2425. firepid.value =wasi.value.blastdata.pid;
  2426. Gassdialog.value.wsaddarea= true;
  2427. vtkmodel.clearJgAddMode() ;
  2428. // vtkmodel.selectPipes();
  2429. vtkmodel.selectByPipeId(tableobj.value.pid);
  2430. vtkmodel.addpipsite( wasi.value.pid, wasi.value.ssite);
  2431. vtkmodel.addpipsite2( wasi.value.pid, wasi.value.esite);
  2432. // dialogtrue.value.jgSelect();
  2433. }
  2434. }
  2435. const handleblastxg=(data)=>{
  2436. wasi.value.blastdata=data;
  2437. currentrow1.value=true;
  2438. }
  2439. // 爆炸区域删除
  2440. const wsblastdelete=()=>{
  2441. if (JSON.stringify(wasi.value.blastdata) == "{}") {
  2442. ElMessage.error("你还没有选中修改的项目");
  2443. }else{
  2444. wsid.value='1';
  2445. zqname.value= wasi.value.blastdata.pname;
  2446. Gassdialog.value.wsdelete=true;
  2447. }
  2448. }
  2449. const wsblastdelete1=()=>{
  2450. const params = {
  2451. transCode: "D10025",
  2452. gbid:wasi.value.blastdata.gbid,
  2453. };
  2454. request(params)
  2455. .then((res) => {
  2456. ElMessage({
  2457. message:"删除瓦斯爆炸区域成功",
  2458. type: "success",
  2459. });
  2460. Gassdialog.value.wsaddarea= false;
  2461. wsblastget();
  2462. })
  2463. .catch((err) => {
  2464. ElMessage.error(err.returnMsg);
  2465. })
  2466. }
  2467. // 积聚
  2468. const gatherget = () => {
  2469. const params = {
  2470. transCode: "D10026",
  2471. gid:wasi.value.gid,
  2472. };
  2473. request(params)
  2474. .then((res) => {
  2475. gjtableData.value=res.rows;
  2476. wasi.value.gatherdata={};
  2477. })
  2478. .catch((err) => {
  2479. ElMessage.error(err.returnMsg);
  2480. })
  2481. }
  2482. // 积聚的选中
  2483. const handlegather = (data) => {
  2484. console.log(data);
  2485. currentrow2.value=true;
  2486. wasi.value.gatherdata=data;
  2487. }
  2488. // 积聚的修改
  2489. const gatheruxiugai = () => {
  2490. zhtext.value = "修改";
  2491. if (JSON.stringify(wasi.value.gatherdata) == "{}") {
  2492. ElMessage.error("你还没有选中修改的项目");
  2493. } else {
  2494. Gassdialog.value.wsaddgather=true;
  2495. wasi.value.gasdensity=wasi.value.gatherdata.gasdensity;
  2496. wasi.value.type=wasi.value.gatherdata.type;
  2497. }
  2498. }
  2499. //
  2500. const wsgatheradd=()=>{
  2501. const params = {
  2502. transCode: "D10027",
  2503. type:wasi.value.type,
  2504. gasdensity:wasi.value.gasdensity,
  2505. ggid:wasi.value.gatherdata.ggid,
  2506. };
  2507. request(params)
  2508. .then((res) => {
  2509. ElMessage({
  2510. message: zhtext.value+"积聚区成功",
  2511. type: "success",
  2512. });
  2513. Gassdialog.value.wsaddgather=false;
  2514. gatherget()
  2515. })
  2516. .catch((err) => {
  2517. ElMessage.error(err.returnMsg);
  2518. })
  2519. }
  2520. // 灾害源检测的修改
  2521. const zaiyuxiugai = () => {
  2522. zaihai.value.addEied = "x";
  2523. zhtext.value='修改';
  2524. console.log( zhtext.value);
  2525. if (JSON.stringify(jiancobj.value) == "{}") {
  2526. ElMessage.error("你还没有选中修改的项目");
  2527. } else {
  2528. if (props.classradio == "Fire") {
  2529. sdialog.value.adddialog = true;
  2530. } else {
  2531. sdialog.value.adddwater = true;
  2532. }
  2533. Disastersource.value.timeline = jiancobj.value.timeline;
  2534. Disastersource.value.val1 = jiancobj.value.val1;
  2535. Disastersource.value.val2 = jiancobj.value.val2;
  2536. Disastersource.value.val3 = jiancobj.value.val3;
  2537. Disastersource.value.val4 = jiancobj.value.val4;
  2538. }
  2539. };
  2540. // 灾害源的检测表修改接口
  2541. const zaiyuxiugaiapi = () => {
  2542. const params = {
  2543. transCode: "D000012",
  2544. svid: jiancobj.value.svid,
  2545. timeline: Disastersource.value.timeline,
  2546. val1: Disastersource.value.val1,
  2547. val2: Disastersource.value.val2,
  2548. val3: Disastersource.value.val3,
  2549. val4: Disastersource.value.val4,
  2550. };
  2551. request(params)
  2552. .then((res) => {
  2553. ElMessage({
  2554. message:"修改成功",
  2555. type: "success",
  2556. });
  2557. getinquire();
  2558. })
  2559. .catch((err) => {
  2560. ElMessage.error(err.returnMsg);
  2561. });
  2562. };
  2563. // 灾源突水检测添加
  2564. //灾情检测删除
  2565. const handleDelete2 = (val) => {
  2566. currentrow1.value=true;
  2567. console.log(val);
  2568. jiancobj.value = val;
  2569. firesid.value = val.sid;
  2570. zqname.value = "监测表的一条信息";
  2571. svid.value = val.svid;
  2572. };
  2573. const handleDelete3 = (val) => {
  2574. currentrow1.value=true;
  2575. jiancobj.value = val;
  2576. firesid.value = val.sid;
  2577. zqname.value = "监测表的一条信息";
  2578. svid.value = val.svid;
  2579. };
  2580. const fundeledata3 = () => {
  2581. const params = {
  2582. transCode: "D000013",
  2583. svid: svid.value,
  2584. };
  2585. request(params)
  2586. .then((res) => {
  2587. //console.log(res);
  2588. ElMessage({
  2589. message: "删除成功",
  2590. type: "success",
  2591. });
  2592. getinquire();
  2593. })
  2594. .catch((err) => {
  2595. ElMessage.error(err.returnMsg);
  2596. });
  2597. };
  2598. const runstatezt=(res)=>{
  2599. // this.disabledok=res;
  2600. }
  2601. //load状态回调
  2602. const fileLoadeState=(files)=> {
  2603. console.log(files);
  2604. files.forEach((file) => {
  2605. this.loadObjs.forEach((obj) => {
  2606. if (obj.type == 2) {
  2607. if (obj.filename === file.name) {
  2608. obj.percentage = file.percentage;
  2609. }
  2610. }
  2611. if (obj.type == 1) {
  2612. // obj.message=file.message;
  2613. }
  2614. });
  2615. });
  2616. }
  2617. const handleSwitchChange=(value)=> {
  2618. pumpobj.value.onoff=value;
  2619. }
  2620. // 水泵
  2621. const addpumdfun=(e)=>{
  2622. var e = e || window.Event;
  2623. styX.value.left = e.clientX + "px";
  2624. currentrow.value=false;
  2625. zhtext.value = "添加";
  2626. tishi.value =zhtext.value;
  2627. pumpobj.value.xzobj={};
  2628. pumpobj.value.pumpid=null;
  2629. pumpobj.value.pumpname='';
  2630. pumpobj.value.pumpcode='';
  2631. pumpobj.value.openhig=null;
  2632. pumpobj.value.closehig=null;
  2633. pumpobj.value.onoff=0;
  2634. firepid.value=null;
  2635. source.site=null;
  2636. selectstr.value=null;
  2637. vtkmodel.clearJgAddMode() ;
  2638. // vtkmodel.selectPipes();
  2639. // dialogtrue.value.jgSelect();
  2640. vtkmodel.removepump();
  2641. }
  2642. //修改
  2643. const pumpxiugai=(val)=>{
  2644. zhtext.value = "修改";
  2645. tishi.value =zhtext.value;
  2646. if (JSON.stringify( pumpobj.value.xzobj) == "{}") {
  2647. ElMessage.error("你还没有选中修改的项目");
  2648. } else {
  2649. sdialog.value.addpump = true;
  2650. vtkmodel.clearJgAddMode() ;
  2651. // vtkmodel.selectPipes();
  2652. // dialogtrue.value.jgSelect();
  2653. pumpobj.value.pumpid=pumpobj.value.xzobj.pumpid;
  2654. pumpobj.value.pumpname=pumpobj.value.xzobj.pumpname;
  2655. pumpobj.value.openhig=pumpobj.value.xzobj.openhig;
  2656. pumpobj.value.closehig=pumpobj.value.xzobj.closehig;
  2657. pumpobj.value.pumpcode=pumpobj.value.xzobj.pumpcode;
  2658. firepid.value=pumpobj.value.xzobj.pid;
  2659. aid.value=pumpobj.value.xzobj.aid;
  2660. source.site=pumpobj.value.xzobj.site;
  2661. }
  2662. }
  2663. //水泵的添加接口
  2664. const addrequest=()=>{
  2665. if(firepid.value==null||firepid.value==""){
  2666. ElMessage.error("巷道不能为空")
  2667. }else{
  2668. const params = {
  2669. transCode: "D20002",
  2670. pumpid:pumpobj.value.pumpid,
  2671. pumpcode:pumpobj.value.pumpcode,
  2672. pumpname:pumpobj.value.pumpname,
  2673. openhig:parseFloat(pumpobj.value.openhig),
  2674. closehig:parseFloat(pumpobj.value.closehig),
  2675. pid: firepid.value,
  2676. aid: aid.value,
  2677. site: source.site,
  2678. onoff:pumpobj.value.onoff
  2679. };
  2680. request(params)
  2681. .then((res) => {
  2682. ElMessage({
  2683. message: zhtext.value+"水泵成功",
  2684. type: "success",
  2685. });
  2686. sdialog.value.addpump = false;
  2687. getrequest( aid.value);
  2688. fun3D();
  2689. })
  2690. .catch((err) => {
  2691. const regex = /字段\d*/g;
  2692. let Msg=err.returnMsg.replace(regex, '');
  2693. ElMessage.error(Msg)
  2694. });
  2695. }
  2696. }
  2697. //水泵查询
  2698. const getrequest=(id)=>{
  2699. aid.value=id;
  2700. const params = {
  2701. transCode: "D20001",
  2702. aid: aid.value,
  2703. };
  2704. request(params)
  2705. .then((res) => {
  2706. vtkmodel.removepump();
  2707. tableDatpump.value=res.rows;
  2708. })
  2709. .catch((err) => {
  2710. ElMessage.error(err.returnMsg);
  2711. });
  2712. }
  2713. // 列表选中
  2714. const pumpxz=(val)=>{
  2715. vtkmodel.delpump();
  2716. currentrow.value=true;
  2717. pumpobj.value.xzobj=val;
  2718. firepid.value=val.pid;
  2719. aid.value=val.aid;
  2720. source.site=val.site;
  2721. selectstr.value=val.pname;
  2722. pumpobj.value.onoff=val.onoff;
  2723. vtkmodel.addpump(val.pid,source.site);
  2724. //vtkmodel.showpump();
  2725. lookpump(val)
  2726. }
  2727. //查看
  2728. const lookpump=(row)=>{
  2729. sdialog.value.linetable=true;
  2730. pumpobj.value.pumpid=row.pumpid;
  2731. xngetdata();
  2732. }
  2733. // 性能表格
  2734. const clineadd=()=>{
  2735. currentrow1.value=false;
  2736. zhtext.value = "添加";
  2737. tishi.value =zhtext.value;
  2738. pumpxc.value.hight=null;
  2739. pumpxc.value.flow=null;
  2740. pumpxc.value.pumphfid=null;
  2741. }
  2742. //性能表添加接口
  2743. const xnadd=()=>{
  2744. if(pumpxc.value.hight==''||pumpxc.value.hight==null){
  2745. ElMessage.error("水位高度不能空")
  2746. }else if(pumpxc.value.flow==''||pumpxc.value.flow==null){
  2747. ElMessage.error("流量不能为空")
  2748. }else{
  2749. const params = {
  2750. transCode: "D20005",
  2751. pumphfid:pumpxc.value.pumphfid,
  2752. pumpid:pumpobj.value.xzobj.pumpid,
  2753. hight:parseFloat(pumpxc.value.hight),
  2754. flow:parseFloat(pumpxc.value.flow)
  2755. };
  2756. request(params)
  2757. .then((res) => {
  2758. ElMessage({
  2759. message: tishi.value+"性能曲线",
  2760. type: "success",
  2761. });
  2762. xngetdata();
  2763. sdialog.value.addline=false;
  2764. })
  2765. .catch((err) => {
  2766. ElMessage.error(err.returnMsg);
  2767. });
  2768. }
  2769. }
  2770. //性能表查询接口
  2771. const xngetdata=()=>{
  2772. const params = {
  2773. transCode: "D20004",
  2774. pumpid:pumpobj.value.pumpid,
  2775. };
  2776. request(params)
  2777. .then((res) => {
  2778. tableline.value=res.rows;
  2779. })
  2780. .catch((err) => {
  2781. ElMessage.error(err.returnMsg);
  2782. });
  2783. }
  2784. // 性能选中
  2785. const xnlinehande=(val)=>{
  2786. console.log(val);
  2787. pumpxc.value.xnobj=val;
  2788. currentrow1.value=true;
  2789. pumpxc.value.pumphfid=val.pumphfid;
  2790. pumpobj.value.xzobj.pumpid=val.pumpid;
  2791. }
  2792. // 性能修改
  2793. const xiugailine=()=>{
  2794. zhtext.value = "修改";
  2795. tishi.value =zhtext.value;
  2796. if (JSON.stringify( pumpxc.value.xnobj) == "{}") {
  2797. ElMessage.error("你还没有选中修改的项目");
  2798. } else {
  2799. sdialog.value.addline= true;
  2800. pumpxc.value.hight=pumpxc.value.xnobj.hight;
  2801. pumpxc.value.flow=pumpxc.value.xnobj.flow;
  2802. }
  2803. }
  2804. //水泵删除
  2805. const getshuidel=()=>{
  2806. const params = {
  2807. transCode: "D20003",
  2808. pumpid:pumpobj.value.xzobj.pumpid,
  2809. };
  2810. request(params)
  2811. .then((res) => {
  2812. ElMessage({
  2813. message: "水泵删除成功",
  2814. type: "success",
  2815. });
  2816. sdialog.value.linetable=false;
  2817. vtkmodel.delpump();
  2818. getrequest( aid.value);
  2819. })
  2820. .catch((err) => {
  2821. ElMessage.error(err.returnMsg);
  2822. });
  2823. }
  2824. const pumpdel=()=>{
  2825. if (JSON.stringify( pumpobj.value.xzobj) == "{}") {
  2826. ElMessage.error("你还没有选中删除的项目");
  2827. } else {
  2828. sdialog.value.deletedata = true;
  2829. deltext.value='水泵';
  2830. zqname.value=pumpobj.value.pumpname;
  2831. }
  2832. }
  2833. //性能删除
  2834. const deletedata=()=>{
  2835. if(deltext.value=='性能'){
  2836. const params = {
  2837. transCode: "D20006",
  2838. pumphfid:pumpxc.value.pumphfid,
  2839. };
  2840. request(params)
  2841. .then((res) => {
  2842. ElMessage({
  2843. message: "删除成功",
  2844. type: "success",
  2845. });
  2846. xngetdata();
  2847. })
  2848. .catch((err) => {
  2849. ElMessage.error(err.returnMsg);
  2850. });
  2851. }else if(deltext.value=='水泵'){
  2852. getshuidel()
  2853. } else if(deltext.value=='一维瓦斯'){
  2854. delyiwei();
  2855. }
  2856. else{
  2857. }
  2858. }
  2859. const delline=()=>{
  2860. if (JSON.stringify(pumpxc.value.xnobj) == "{}") {
  2861. ElMessage.error("你还没有选中删除的项目");
  2862. } else {
  2863. deltext.value='性能';
  2864. sdialog.value.deletedata = true;
  2865. }
  2866. }
  2867. //一维查询
  2868. const yiweiget=(aidval)=>{
  2869. aid.value=aidval;
  2870. vtkmodel.delSoures();
  2871. const params = {
  2872. transCode:"D30001",
  2873. aid: aid.value,
  2874. };
  2875. request(params)
  2876. .then((res) => {
  2877. console.log( res.row)
  2878. if(res.row!=[]){
  2879. // vtkmodel.delSoures();
  2880. console.log( res.row)
  2881. res.row.forEach((item,index)=>{
  2882. vtkmodel.addSoures(item.pid,item.ssite)
  2883. vtkmodel.addSoures(item.pid,item.esite)
  2884. })
  2885. }
  2886. yiweitable.value=res.row;
  2887. })
  2888. .catch((err) => {
  2889. ElMessage.error(err.returnMsg);
  2890. });
  2891. }
  2892. // 添加清空
  2893. const yiweiadd=()=>{
  2894. var e = e || window.Event;
  2895. styX.value.left = e.clientX + "px";
  2896. currentrow.value=false;
  2897. zhtext.value = "添加";
  2898. tishi.value =zhtext.value;
  2899. yiweiobj.value.ssite=null;
  2900. yiweiobj.value.esite=null;
  2901. yiweiobj.value.gasdensity=null;
  2902. firepid.value=null;
  2903. selectstr.value=null;
  2904. yiweiobj.value.nreobj={};
  2905. yiweiobj.value.gid='';
  2906. vtkmodel.clearJgAddMode() ;
  2907. // vtkmodel.selectPipes();
  2908. // dialogtrue.value.jgSelect();
  2909. }
  2910. // 修改
  2911. const yiweixiugai=()=>{
  2912. zhtext.value = "修改";
  2913. tishi.value =zhtext.value;
  2914. if (JSON.stringify(yiweiobj.value.nreobj) == "{}") {
  2915. ElMessage.error("你还没有选中修改的项目");
  2916. } else {
  2917. sdialog.value.yiweidialog=true;
  2918. currentrow.value=true;
  2919. yiweiobj.value.ssite=yiweiobj.value.nreobj.ssite;
  2920. yiweiobj.value.esite=yiweiobj.value.nreobj.esite;
  2921. yiweiobj.value.gasdensity=yiweiobj.value.nreobj.gasdensity;
  2922. selectstr.value=yiweiobj.value.nreobj.pname;
  2923. firepid.value=yiweiobj.value.nreobj.pid;
  2924. yiweiobj.value.gid=yiweiobj.value.nreobj.pid;
  2925. vtkmodel.clearJgAddMode() ;
  2926. // vtkmodel.selectPipes();
  2927. // dialogtrue.value.jgSelect();
  2928. }
  2929. }
  2930. const yiweihandle = (val) => {
  2931. yiweiobj.value.nreobj=val;
  2932. currentrow.value=true;
  2933. // }
  2934. };
  2935. // 一维灾情源添加
  2936. const yehandleEdit=()=>{
  2937. const params = {
  2938. transCode:"D30002",
  2939. pid: firepid.value,
  2940. aid: aid.value,
  2941. ssite:yiweiobj.value.ssite,
  2942. esite:yiweiobj.value.esite,
  2943. gasdensity:parseFloat(yiweiobj.value.gasdensity),
  2944. };
  2945. request(params)
  2946. .then((res) => {
  2947. console.log(res);
  2948. ElMessage({
  2949. message: tishi.value+"一维灾情源成功",
  2950. type: "success",
  2951. });
  2952. yiweiget(aid.value);
  2953. sdialog.value.yiweidialog=false;
  2954. dialogtrue.value.timintclaer();
  2955. })
  2956. .catch((err) => {
  2957. ElMessage.error(err.returnMsg);
  2958. });
  2959. }
  2960. // 删除
  2961. const yiweidelete=()=>{
  2962. deltext.value='一维瓦斯';
  2963. if (JSON.stringify(yiweiobj.value.nreobj) == "{}") {
  2964. ElMessage.error("你还没有选中删除的项目");
  2965. } else {
  2966. sdialog.value.deletedata = true;
  2967. zqname.value=yiweiobj.value.nreobj.pname;
  2968. }
  2969. }
  2970. const delyiwei=()=>{
  2971. console.log(yiweiobj.value.nreobj);
  2972. if (JSON.stringify(yiweiobj.value.nreobj) == "{}") {
  2973. ElMessage.error("你还没有选中删除的项目");
  2974. } else {
  2975. const params = {
  2976. transCode: "D30003",
  2977. gid:yiweiobj.value.nreobj.gid
  2978. };
  2979. request(params)
  2980. .then((res) => {
  2981. ElMessage({
  2982. message: "删除成功",
  2983. type: "success",
  2984. });
  2985. yiweiget(aid.value)
  2986. })
  2987. .catch((err) => {
  2988. ElMessage.error(err.returnMsg);
  2989. });
  2990. }
  2991. }
  2992. onMounted(() => {
  2993. });
  2994. defineExpose({ sour, accident3, handledisaster,changeModel,Gassgetdata,getrequest,yiweiget,initisshow});
  2995. </script>