paishui.vue 220 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766
  1. <!--排水-->
  2. <template>
  3. <div class="pspage">
  4. <!-- 头部 -->
  5. <div class="headerbig">
  6. <div class="headertop">
  7. <div class="headercont" style="display: flex;">
  8. <img src="@/assets/index_img/life-LOGO.png" style="width: 46px; height: 46px;" alt="">
  9. <img src="~@/assets/images/paishui/title.png" style="width: 600px; height: 55px;" />
  10. </div>
  11. </div>
  12. <div class="tongzhi" style="margin-top: -44px;">
  13. <img src="~@/assets/images/paishui/tongzhi.png">
  14. <a class="color-blink">关于加强污水排放管理工作的通知</a>
  15. </div>
  16. </div>
  17. <!-- 地图 -->
  18. <!-- 地图 -->
  19. <supermap ref="supermap" style="width: 100%;height: 100vh;position: relative;bottom: 16%;" @previewPointDetail="previewPointDetail" @getHeatingPipeByDataSetAndSmId="getHeatingPipeByDataSetAndSmId" :showLayer="true">
  20. </supermap>
  21. <!-- 左边 -->
  22. <!-- 时间 -->
  23. <div class="header-fl">
  24. <span id="time">15:30:00</span>
  25. <span id="day">2025.02.01</span>
  26. </div>
  27. <!-- 天气 -->
  28. <div class="header-fl-tq-1">
  29. <span>
  30. <img style="width: 25px" v-if="weatherinformationWeather==1" src="../../assets/images/integrated/weather/qing-1.png">
  31. <img style="width: 25px" v-if="weatherinformationWeather==2" src="../../assets/images/integrated/weather/duoyun-2.png">
  32. <img style="width: 25px" v-if="weatherinformationWeather==3" src="../../assets/images/integrated/weather/yin-3.png">
  33. <img style="width: 25px" v-if="weatherinformationWeather==4" src="../../assets/images/integrated/weather/zhenyu-4.png">
  34. <img style="width: 25px" v-if="weatherinformationWeather==5"
  35. src="../../assets/images/integrated/weather/leizhenyu-5.png">
  36. <img style="width: 25px" v-if="weatherinformationWeather==6"
  37. src="../../assets/images/integrated/weather/leizhenyubingbao-6.png">
  38. <img style="width: 25px" v-if="weatherinformationWeather==7" src="../../assets/images/integrated/weather/yujiaxue-7.png">
  39. <img style="width: 25px" v-if="weatherinformationWeather==8" src="../../assets/images/integrated/weather/xiaoyu-8.png">
  40. <img style="width: 25px" v-if="weatherinformationWeather==9||weatherinformationWeather==22"
  41. src="../../assets/images/integrated/weather/zhongyu-9.png">
  42. <img style="width: 25px" v-if="weatherinformationWeather==10||weatherinformationWeather==23"
  43. src="../../assets/images/integrated/weather/dayu-10.png">
  44. <img style="width: 25px" v-if="weatherinformationWeather==11||weatherinformationWeather==24"
  45. src="../../assets/images/integrated/weather/baoyu-11.png">
  46. <img style="width: 25px" v-if="weatherinformationWeather==12||weatherinformationWeather==25"
  47. src="../../assets/images/integrated/weather/dabaoyu-12.png">
  48. <img style="width: 25px" v-if="weatherinformationWeather==13||weatherinformationWeather==26"
  49. src="../../assets/images/integrated/weather/tedabaoyu-13.png">
  50. <img style="width: 25px" v-if="weatherinformationWeather==14"
  51. src="../../assets/images/integrated/weather/zhenxue-14.png">
  52. <img style="width: 25px" v-if="weatherinformationWeather==15"
  53. src="../../assets/images/integrated/weather/xiaoxue-15.png">
  54. <img style="width: 25px" v-if="weatherinformationWeather==16||weatherinformationWeather==27"
  55. src="../../assets/images/integrated/weather/zhongxue-16.png">
  56. <img style="width: 25px" v-if="weatherinformationWeather==17||weatherinformationWeather==28"
  57. src="../../assets/images/integrated/weather/daxue-17.png">
  58. <img style="width: 25px" v-if="weatherinformationWeather==18||weatherinformationWeather==29"
  59. src="../../assets/images/integrated/weather/baoxue-18.png">
  60. <img style="width: 25px" v-if="weatherinformationWeather==19" src="../../assets/images/integrated/weather/wu-19.png">
  61. <img style="width: 25px" v-if="weatherinformationWeather==20" src="../../assets/images/integrated/weather/dongyu-20.png">
  62. <img style="width: 25px" v-if="weatherinformationWeather==21"
  63. src="../../assets/images/integrated/weather/shachenbao-21.png">
  64. <img style="width: 25px" v-if="weatherinformationWeather==30" src="../../assets/images/integrated/weather/fuchen-30.png">
  65. <img style="width: 25px" v-if="weatherinformationWeather==31"
  66. src="../../assets/images/integrated/weather/yangsha-31.png">
  67. <img style="width: 25px" v-if="weatherinformationWeather==32"
  68. src="../../assets/images/integrated/weather/qiangshachenbao-32.png">
  69. </span>
  70. </div>
  71. <div class="header-fl-tq-2">
  72. <span>
  73. <i>
  74. <span v-if="weatherinformationWeather==1">晴</span>
  75. <span v-if="weatherinformationWeather==2">多云</span>
  76. <span v-if="weatherinformationWeather==3">阴</span>
  77. <span v-if="weatherinformationWeather==4">阵雨</span>
  78. <span v-if="weatherinformationWeather==5">雷阵雨</span>
  79. <span v-if="weatherinformationWeather==6">雷阵雨伴有冰雹</span>
  80. <span v-if="weatherinformationWeather==7">雨夹雪</span>
  81. <span v-if="weatherinformationWeather==8">小雨</span>
  82. <span v-if="weatherinformationWeather==9">中雨</span>
  83. <span v-if="weatherinformationWeather==10">大雨</span>
  84. <span v-if="weatherinformationWeather==11">暴雨</span>
  85. <span v-if="weatherinformationWeather==12">大暴雨</span>
  86. <span v-if="weatherinformationWeather==13">特大暴雨</span>
  87. <span v-if="weatherinformationWeather==14">阵雪</span>
  88. <span v-if="weatherinformationWeather==15">小雪</span>
  89. <span v-if="weatherinformationWeather==16">中雪</span>
  90. <span v-if="weatherinformationWeather==17">大雪</span>
  91. <span v-if="weatherinformationWeather==18">暴雪</span>
  92. <span v-if="weatherinformationWeather==19">雾</span>
  93. <span v-if="weatherinformationWeather==20">冻雨</span>
  94. <span v-if="weatherinformationWeather==21">沙尘暴</span>
  95. <span v-if="weatherinformationWeather==22">小雨—中雨</span>
  96. <span v-if="weatherinformationWeather==23">中雨—大雨</span>
  97. <span v-if="weatherinformationWeather==24">大雨—暴雨</span>
  98. <span v-if="weatherinformationWeather==25">暴雨—大暴雨</span>
  99. <span v-if="weatherinformationWeather==26">大暴雨—特大暴雨</span>
  100. <span v-if="weatherinformationWeather==27">小雪—中雪</span>
  101. <span v-if="weatherinformationWeather==28">中雪—大雪</span>
  102. <span v-if="weatherinformationWeather==29">大雪—暴雪</span>
  103. <span v-if="weatherinformationWeather==30">浮尘</span>
  104. <span v-if="weatherinformationWeather==31">扬沙</span>
  105. <span v-if="weatherinformationWeather==32">强沙尘暴</span>
  106. </i>
  107. <i>{{ weather }}℃</i>
  108. </span>
  109. </div>
  110. <div class="left-c-bg"></div>
  111. <div class="left-center left-nav" >
  112. <!-- 小标题 -->
  113. <div class="all-title">
  114. <span>重点关注</span>
  115. </div>
  116. <div class="task">
  117. <div style="width: 95%;height: 83%;overflow: hidden scroll;">
  118. <div v-for="(e,idx) in focusList" :key="idx" class="task-item zd-list" @click="openDetail(e,'重点关注')">
  119. <div :title="e.title"> {{ e.followName }}<span style="left: 50%;position: absolute;">{{ e.createTime }}</span></div>
  120. </div>
  121. </div>
  122. </div>
  123. <!-- <div class="tubiao" id="w_chart1"></div> -->
  124. <!-- 小标题 -->
  125. <div class="all-title">
  126. <span>设备汇总</span>
  127. <!-- <div class="date_qh" @click="inspectionDateHasChanged">-->
  128. <!-- <i data-text="week" :class="inspectionTimePeriod == 'week' ? 'on' : '' ">周</i>-->
  129. <!-- <i data-text="month" :class="inspectionTimePeriod == 'month' ? 'on' : '' ">月</i>-->
  130. <!-- <i data-text="quarter" :class="inspectionTimePeriod == 'quarter' ? 'on' : '' ">季度</i>-->
  131. <!-- <i data-text="year" :class="inspectionTimePeriod == 'year' ? 'on' : '' ">年</i>-->
  132. <!-- </div>-->
  133. </div>
  134. <div class="ps_sbhz">
  135. <div
  136. class="ps_sbhz_div"
  137. v-for="(e,idx) in deviceList"
  138. >
  139. <img
  140. :src="require(`../../assets/images/paishui/ps_listicon${idx+1}.png`)"
  141. />
  142. <div class="ps_sbhz_txt">
  143. <p>{{ e.deviceType.replace(/探测器|传感器|、/g ,'') }}</p>
  144. <b>{{ e.deviceCount }}</b>
  145. </div>
  146. </div>
  147. </div>
  148. <!-- 小标题 -->
  149. <div class="all-title">
  150. <span>排水管线汇总</span>
  151. </div>
  152. <div class="ps_sbhz ps_sbhz_flex_c">
  153. <div
  154. class="ps_sbhz_div ps_sbhz_div_flex_c"
  155. v-for="(e,idx) in pipeAnalysisData"
  156. :key="e.id" :class="`class-${idx + 1}`"
  157. >
  158. <img
  159. :src="require(`../../assets/images/paishui/ps_listicon-${idx+1}.png`)"
  160. />
  161. <div class="ps_sbhz_txt">
  162. <p>{{ e.label }}</p>
  163. <b>{{ e.value }}</b>
  164. </div>
  165. </div>
  166. </div>
  167. <!-- <div class="tubiao" id="w_chart3"></div> -->
  168. <!-- 小标题 -->
  169. <!--<div class="all-title">-->
  170. <!--<span>易涝点整改状态分析</span>-->
  171. <!--</div>-->
  172. <!--<div class="tubiao" id="w_chart4"></div>-->
  173. </div>
  174. <!-- 左侧隐藏列表组件 -->
  175. <div class="left-center left-nav-inside left-list-table">
  176. <!-- 小标题 -->
  177. <div class="all-title all-title-540" @click="viewLeftInsideAndOut1()">
  178. <span>{{ currentResourceTile }}</span>
  179. <div class="right-span"><i class="el-icon-close"></i></div>
  180. </div>
  181. <div v-if="type=='设备管理'" class="sbgl_list">
  182. <div class="sbgl_zs">
  183. <img src="../../assets/index_img/sbgl_icon1.png"/>
  184. <div class="sbgl_num1">
  185. <span>设备总数</span>
  186. <b>{{ totalCount }}</b>
  187. </div>
  188. <div class="sbgl_num2">
  189. <span>设备在线</span>
  190. <b>{{ onlineCount }}</b>
  191. </div>
  192. <div class="sbgl_num3">
  193. <span>设备离线</span>
  194. <b>{{ offlineCount }}</b>
  195. </div>
  196. <div class="sbgl_num4">
  197. <h4>{{percentage(totalCount,onlineCount)}}%</h4>
  198. <i>在线率</i>
  199. </div>
  200. </div>
  201. <!-- <div class="sbgl_fs">-->
  202. <!-- <div class="sbgl_fs_div" v-for="dep in dooByDep">-->
  203. <!-- <div class="sbgl_fs_left">-->
  204. <!-- <p>{{ dep.deptName }}</p>-->
  205. <!-- <b>{{ dep.total }}</b>-->
  206. <!-- <span>设备总数</span>-->
  207. <!-- </div>-->
  208. <!-- <div class="sbgl_fs_right">-->
  209. <!-- <p class="zx">在线</p>-->
  210. <!-- <span class="zx_span">{{ dep.online }}</span>-->
  211. <!-- <p class="lx">离线</p>-->
  212. <!-- <span class="lx_span">{{ dep.offline }}</span>-->
  213. <!-- </div>-->
  214. <!-- </div>-->
  215. <!-- </div>-->
  216. </div>
  217. <!-- 搜索 -->
  218. <div class="search_contain">
  219. <!-- 管线管理筛查项 -->
  220. <div v-if="type=='管线管理'">
  221. <el-input v-model="searchCode" placeholder="所在道路" clearable class="sj-in" style="width: 180px;">
  222. <template #append></template>
  223. </el-input>
  224. <el-input v-model="searchValue" placeholder="管线编码" clearable class="sj-in" style="width: 180px;">
  225. <template #append></template>
  226. </el-input>
  227. </div>
  228. <!-- 易涝点管理筛查项 -->
  229. <div v-if="type=='易涝点管理'" class="sjxq_inp">
  230. <el-input v-model="searchValue" placeholder="易涝点名称" clearable class="sj-in">
  231. <template #append></template>
  232. </el-input>
  233. </div>
  234. <!-- 堤防管理筛查项 -->
  235. <div v-if="type=='堤防管理'">
  236. <el-input v-model="searchValue" placeholder="堤防名称" clearable class="sj-in">
  237. <template #append></template>
  238. </el-input>
  239. </div>
  240. <!-- 下穿立交管理筛查项 -->
  241. <div v-if="type=='下穿立交管理'" class="sjxq_inp">
  242. <el-input v-model="searchCode" placeholder="下穿立交编号" clearable class="sj-in">
  243. <template #append></template>
  244. </el-input>
  245. <el-input v-model="searchValue" placeholder="下穿立交名称" clearable class="sj-in">
  246. <template #append></template>
  247. </el-input>
  248. </div>
  249. <!-- 值班管理筛查项 -->
  250. <div v-else-if="type=='值班管理'" class="sousuo">
  251. <el-input v-model="searchValue" placeholder="企业名称" clearable class="sj-in">
  252. <template #append></template>
  253. </el-input>
  254. </div>
  255. <!-- 泵站管理筛查项 -->
  256. <div v-if="type=='泵站管理'" class="sjxq_inp">
  257. <el-input v-model="searchCode" placeholder="泵站编号" clearable class="sj-in">
  258. <template #append></template>
  259. </el-input>
  260. <el-input v-model="searchValue" placeholder="泵站名称" clearable class="sj-in">
  261. <template #append></template>
  262. </el-input>
  263. </div>
  264. <!-- 雨量站管理筛查项 -->
  265. <div v-if="type=='雨量站管理'" class="sjxq_inp">
  266. <el-input v-model="searchCode" placeholder="雨量站编号" clearable class="sj-in">
  267. <template #append></template>
  268. </el-input>
  269. <el-input v-model="searchValue" placeholder="雨量站名称" clearable class="sj-in">
  270. <template #append></template>
  271. </el-input>
  272. </div>
  273. <!-- 污水处理厂管理筛查项 -->
  274. <div v-if="type=='污水处理厂管理'" class="sjxq_inp">
  275. <el-input v-model="searchCode" placeholder="污水厂编号" clearable class="sj-in">
  276. <template #append></template>
  277. </el-input>
  278. <el-input v-model="searchValue" placeholder="污水厂名称" clearable class="sj-in">
  279. <template #append></template>
  280. </el-input>
  281. </div>
  282. <!-- 调蓄设施管理筛查项 -->
  283. <div v-if="type=='调蓄设施管理'" class="sjxq_inp">
  284. <el-input v-model="searchCode" placeholder="设施编号" clearable class="sj-in">
  285. <template #append></template>
  286. </el-input>
  287. <el-input v-model="searchValue" placeholder="设施名称" clearable class="sj-in">
  288. <template #append></template>
  289. </el-input>
  290. </div>
  291. <!-- 窨井管理筛查项 -->
  292. <div v-else-if="type=='窨井管理'">
  293. <el-input v-model="searchCode" placeholder="井盖材质" clearable class="sj-in">
  294. <template #append></template>
  295. </el-input>
  296. <el-input v-model="searchValue" placeholder="所在道路" clearable class="sj-in">
  297. <template #append></template>
  298. </el-input>
  299. </div>
  300. <!-- 维修信息筛查项 -->
  301. <div v-else-if="type=='维修管理'">
  302. <el-input v-model="searchValue" placeholder="故障类型" clearable class="sj-in">
  303. <template #append></template>
  304. </el-input>
  305. </div>
  306. <!-- 企业管理筛查项 -->
  307. <div v-else-if="type=='企业管理'">
  308. <el-input v-model="searchValue" placeholder="企业名称" clearable class="sj-in">
  309. <template #append></template>
  310. </el-input>
  311. </div>
  312. <!-- 用户管理筛查项 -->
  313. <div v-else-if="type=='用户管理'">
  314. <el-input v-model="searchValue" placeholder="用户名称" clearable class="sj-in">
  315. <template #append></template>
  316. </el-input>
  317. </div>
  318. <!-- 风险清单管理筛查项 -->
  319. <div v-else-if="type=='风险清单管理'">
  320. <el-input v-model="searchValue" placeholder="风险类型" clearable class="sj-in">
  321. <template #append></template>
  322. </el-input>
  323. <el-select v-model="searchCode" placeholder="请选择风险等级" clearable class="sj-in">
  324. <el-option label="1级风险" value="1" />
  325. <el-option label="2级风险" value="2" />
  326. <el-option label="3级风险" value="3" />
  327. <el-option label="4级风险" value="4" />
  328. </el-select>
  329. </div>
  330. <!-- 隐患管理筛查项 -->
  331. <div v-else-if="type=='城市体检'||type=='维护监管'||type=='基础事件'||type=='设备预警'">
  332. <el-input v-model="searchValue" placeholder="事件名称" clearable class="sj-in">
  333. <template #append></template>
  334. </el-input>
  335. <el-date-picker type="date" value-format="yyyy-MM-dd" placeholder="上报时间" v-model="searchTime"
  336. :clearable="true" style="width: 40%; " class="sj-in"></el-date-picker>
  337. </div>
  338. <!-- 催办事件筛查项 -->
  339. <div v-else-if="type=='催办事件'">
  340. <el-input v-model="searchValue" placeholder="事件名称" clearable class="sj-in">
  341. <template #append></template>
  342. </el-input>
  343. <el-date-picker type="date" value-format="yyyy-MM-dd" placeholder="上报时间" v-model="searchTime"
  344. :clearable="true" style="width: 40%;" class="sj-in"></el-date-picker>
  345. </div>
  346. <!-- 督办事件筛查项 -->
  347. <div v-else-if="type=='督办事件'">
  348. <el-input v-model="searchValue" placeholder="事件名称" clearable class="sj-in">
  349. <template #append></template>
  350. </el-input>
  351. <el-date-picker type="date" value-format="yyyy-MM-dd" placeholder="上报时间" v-model="searchTime"
  352. :clearable="true" style="width: 40%;" class="sj-in"></el-date-picker>
  353. </div>
  354. <!-- 物资管理筛查项 -->
  355. <div v-else-if="type=='物资管理'">
  356. <el-input v-model="searchValue" placeholder="物资名称" clearable class="sj-in">
  357. <template #append></template>
  358. </el-input>
  359. <el-select v-model="searchCode" placeholder="请选择物资类型" clearable class="sj-in">
  360. <el-option v-for="dict in dict.type.material_type" :key="dict.value" :label="dict.label"
  361. :value="dict.value" />
  362. </el-select>
  363. </div>
  364. <!-- 巡检巡查任务管理筛查项 -->
  365. <div v-else-if="type=='巡检巡查任务管理'">
  366. <el-input v-model="searchValue" placeholder="巡检任务名称" clearable class="sj-in">
  367. <template #append></template>
  368. </el-input>
  369. </div>
  370. <!-- 巡检巡查数据管理筛查项 -->
  371. <div v-else-if="type=='巡检巡查数据管理'">
  372. <el-input v-model="searchValue" placeholder="巡检任务名称" clearable class="sj-in">
  373. <template #append></template>
  374. </el-input>
  375. <el-input v-model="searchCode" placeholder="巡检人名称" clearable class="sj-in">
  376. <template #append></template>
  377. </el-input>
  378. </div>
  379. <!-- 预案管理筛查项 -->
  380. <div v-else-if="type=='预案管理'">
  381. <el-input v-model="searchValue" placeholder="预案名称" clearable class="sj-in">
  382. <template #append></template>
  383. </el-input>
  384. </div>
  385. <!-- 设备管理筛查项 -->
  386. <div v-else-if="type=='设备管理'" class="dd">
  387. <el-input v-model="searchValue" placeholder="设备名称" clearable class="sj-in">
  388. <template #append></template>
  389. </el-input>
  390. <el-input v-model="searchCode" placeholder="设备编码" clearable class="sj-in">
  391. <template #append></template>
  392. </el-input>
  393. </div>
  394. <!-- 通知通告管理筛查项 -->
  395. <div v-else-if="type=='通知通告'">
  396. <el-input v-model="searchValue" placeholder="标题" clearable class="sj-in">
  397. <template #append></template>
  398. </el-input>
  399. <el-input v-model="searchCode" placeholder="内容" clearable class="sj-in">
  400. <template #append></template>
  401. </el-input>
  402. </div>
  403. <!-- 人员管理筛查项 -->
  404. <div v-else-if="type=='人员管理'">
  405. <el-input v-model="searchValue" placeholder="账号" clearable class="sj-in">
  406. <template #append></template>
  407. </el-input>
  408. <el-input v-model="searchCode" placeholder="昵称" clearable class="sj-in">
  409. <template #append></template>
  410. </el-input>
  411. </div>
  412. <!-- 维护报告筛查项 -->
  413. <div v-else-if="type=='维护报告'">
  414. <el-input v-model="searchValue" placeholder="标题" clearable class="sj-in">
  415. <template #append></template>
  416. </el-input>
  417. </div>
  418. <!-- 框选管线信息筛查项 -->
  419. <div v-else-if="type=='框选管线信息'">
  420. <el-input v-model="searchValue" placeholder="标题" clearable class="sj-in">
  421. <template #append></template>
  422. </el-input>
  423. </div>
  424. <div class="btnOption_contain">
  425. <el-button class="inp_ss" @click="TableInfoSearch">搜索</el-button>
  426. <el-button class="inp_cz" @click="TableInfoReset">重置</el-button>
  427. <!-- <el-button @click="exportExcel">导出</el-button>-->
  428. </div>
  429. </div>
  430. <!-- 列表 -->
  431. <el-table :data="tableList" element-loading-text="数据正在加载中..." ref="tableRef"
  432. style="width: 100%;height: 65%; overflow:hidden scroll;" class="ps-table-tb">
  433. <template slot="empty">
  434. <p>{{ dataText }}</p>
  435. </template>
  436. <el-table-column show-overflow-tooltip align="center" v-for="(table,idx) in tablePropAndLabel"
  437. :prop="table.prop" :label="table.label" :key="idx" v-if="!table.hidden">
  438. <template slot-scope="scope">
  439. <span>{{ scope.row[table.prop] }}</span>
  440. </template>
  441. </el-table-column>
  442. <el-table-column prop="abc" align="center" label="操作" width="131">
  443. <template slot-scope="scope">
  444. <el-button v-if="hasPositionLabels.includes(type)" size="mini" type="text"
  445. style="color:#fff;width: 45px;"
  446. @click="flyTo(type,scope.row[lonKey],scope.row[latKey])">定位</el-button>
  447. <el-button v-if="hasPositionLabels.includes(type)" size="mini" type="text"
  448. style="color:#fff;width: 60px;margin-left: 2px !important;">视频联动</el-button>
  449. <el-button v-else-if="!hasPositionLabels.includes(type)" class="no-margin-l" size="mini" type="text"
  450. style="color:#fff;width: 50px; margin-top: 5px;" @click="previewDetail(scope.row,type)">查看</el-button>
  451. </template>
  452. </el-table-column>
  453. </el-table>
  454. <!-- 分页 -->
  455. <el-pagination @current-change="tableListSizeChange" :current-page="pagerCount" :page-size="pageSize"
  456. layout="total, prev, pager, next" :total="total">
  457. </el-pagination>
  458. </div>
  459. <!-- 右边 -->
  460. <div class="right-c-bg"></div>
  461. <div class="right-center">
  462. <div class="header-fr">
  463. <!-- 头像 -->
  464. <div>
  465. <img src="~@/assets/index_img/home-img.png" style="cursor: pointer;" alt="" @click="goToHomePage"/>
  466. </div>
  467. </div>
  468. <!-- 小标题 -->
  469. <div class="all-title">
  470. <span>任务列表</span>
  471. </div>
  472. <!-- 任务列表 -->
  473. <div class="rw-list">
  474. <div class="rw-list-title">
  475. <span>任务标题</span>
  476. <span>创建时间</span>
  477. </div>
  478. <div class="fldx-cont">
  479. <ul class="rw-list-cont">
  480. <li v-for="(e,idx) in taskList" :key="idx" @click="openDetail(e,'任务列表')">
  481. <span :title="e.title">{{ e.title }}</span>
  482. <div class="jindu">
  483. <i class="jinxing"></i>
  484. <em>{{ e.createTime || '' }}</em>
  485. </div>
  486. </li>
  487. </ul>
  488. </div>
  489. </div>
  490. <!-- 小标题 -->
  491. <div class="all-title">
  492. <span>预警列表</span>
  493. </div>
  494. <div class="fldx-cont">
  495. <dl class="shijian-list">
  496. <dd v-for="(e,idx) in eventList" :key="idx" @click="openDetail(e,'预警列表',idx)">
  497. <div class="sjtop">
  498. <i></i>
  499. <span>{{ e.createTime || '' }}</span>
  500. <hr class="borcb" />
  501. <em class="cuiban">{{ e.eventStatusLabel || '' }}</em>
  502. </div>
  503. <div class="sjname">
  504. <em class="weiBj">{{ e.expediteStatusLabel }}</em>
  505. <span :title="e.eventTitle">{{ e.eventTitle }}</span>
  506. </div>
  507. </dd>
  508. </dl>
  509. </div>
  510. <!-- 小标题 -->
  511. <div class="all-title">
  512. <span>隐患列表</span>
  513. </div>
  514. <div class="rw-list">
  515. <div class="fxqh-list-title">
  516. <span>风险/隐患名称</span>
  517. <span>状态</span>
  518. </div>
  519. <div class="fldx-cont">
  520. <ul class="fxyh-list">
  521. <li v-for="(e,idx) in eventList" :key="idx" @click="openDetail(e,'隐患列表')">
  522. <span :title="e.eventTitle">{{ e.eventTitle }}</span>
  523. <div class="jindu">
  524. <i class="yiZg"></i>
  525. <em>{{ e.expediteStatus }}</em>
  526. </div>
  527. </li>
  528. </ul>
  529. </div>
  530. </div>
  531. </div>
  532. <!-- 底部 -->
  533. <div class="bombj">
  534. <div class="bom-cont">
  535. <div class="nav choice" @click="viewLeftInsideAndOut1()">
  536. <a class="nav-in">
  537. <img src="~@/assets/images/paishui/bom-icon1.png" />
  538. <span>可视化</span>
  539. </a>
  540. </div>
  541. <div class="nav">
  542. <a class="nav-in" @click="showData('isDatabaseVisible')">
  543. <img src="~@/assets/images/paishui/bom-icon3.png" />
  544. <span>基础数据库</span>
  545. </a>
  546. <div class="er-nav" v-show="currentShowList == 'isDatabaseVisible'">
  547. <img src="~@/assets/images/paishui/er-navbj.png" />
  548. <div>
  549. <span @click="getDataBaseList('维修管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />维修管理</span>
  550. <span @click="getDataBaseList('窨井管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />窨井管理</span>
  551. <span @click="getDataBaseList('管线管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />管线管理</span>
  552. <span @click="getDataBaseList('易涝点管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />易涝点管理</span>
  553. <span @click="getDataBaseList('堤防管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />堤防管理</span>
  554. <span @click="getDataBaseList('下穿立交管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />下穿立交管理</span>
  555. <span @click="getDataBaseList('泵站管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />泵站管理</span>
  556. <span @click="getDataBaseList('雨量站管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />雨量站管理</span>
  557. <span @click="getDataBaseList('污水处理厂管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />污水处理厂管理</span>
  558. <span @click="getDataBaseList('调蓄设施管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />调蓄设施管理</span>
  559. <span @click="getDataBaseList('企业管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />企业管理</span>
  560. <span @click="getDataBaseList('用户管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />用户管理</span>
  561. </div>
  562. </div>
  563. </div>
  564. <div class="nav">
  565. <a class="nav-in" @click="showData('isRiskVisible')">
  566. <img src="~@/assets/images/paishui/bom-icon2.png" />
  567. <span>风险清单</span>
  568. </a>
  569. <div class="er-nav" v-show="currentShowList == 'isRiskVisible'">
  570. <img src="~@/assets/images/paishui/er-navbj.png" />
  571. <div>
  572. <span @click="getDataBaseList('风险清单管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />风险清单管理</span>
  573. </div>
  574. </div>
  575. </div>
  576. <div class="nav">
  577. <a class="nav-in" @click="showData('isMonitoringVisible')">
  578. <img src="~@/assets/images/paishui/bom-icon4.png" />
  579. <span>监测系统</span>
  580. </a>
  581. <div class="er-nav" v-show="currentShowList == 'isMonitoringVisible'">
  582. <img src="~@/assets/images/paishui/er-navbj.png" />
  583. <div>
  584. <span @click="getDataBaseList('设备管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />设备管理</span>
  585. </div>
  586. </div>
  587. </div>
  588. <div class="nav">
  589. <a class="nav-in" @click="showData('isSupervisionVisible')">
  590. <img src="~@/assets/images/paishui/bom-icon5.png" />
  591. <span>监管平台</span>
  592. </a>
  593. <div class="er-nav" v-show="currentShowList == 'isSupervisionVisible'">
  594. <img src="~@/assets/images/paishui/er-navbj.png" />
  595. <div>
  596. <el-tooltip class="item span_tit" effect="dark"
  597. content="Right Center 提示文字" placement="right">
  598. <div slot="content">
  599. <span @click="getDataBaseList('城市体检')">城市体检</span><br>
  600. <span @click="getDataBaseList('维护监管')">维护监管</span><br>
  601. <span @click="getDataBaseList('基础事件')">基础事件</span><br>
  602. <span @click="getDataBaseList('设备预警')">设备预警</span><br>
  603. <span @click="getDataBaseList('催办事件')">催办事件</span><br>
  604. <span @click="getDataBaseList('督办事件')">督办事件</span>
  605. </div>
  606. <span><img src="~@/assets/images/paishui/sj-icon-half.png" />事件管理</span>
  607. </el-tooltip>
  608. <el-tooltip class="item span_tit" effect="dark"
  609. content="Right Center 提示文字" placement="right">
  610. <div slot="content">
  611. <span @click="getDataBaseList('巡检巡查任务管理')">巡检巡查任务管理</span><br>
  612. <span @click="getDataBaseList('巡检巡查数据管理')">巡检巡查数据管理</span>
  613. </div>
  614. <span><img src="~@/assets/images/paishui/sj-icon-half.png" />任务管理</span>
  615. </el-tooltip>
  616. <el-tooltip class="item span_tit" effect="dark"
  617. content="Right Center 提示文字" placement="right">
  618. <div slot="content">
  619. <span @click="getDataBaseList('预案管理')">预案管理</span><br>
  620. <span @click="getDataBaseList('物资管理')">物资管理</span>
  621. </div>
  622. <span><img src="~@/assets/images/paishui/sj-icon-half.png" />综合管理</span>
  623. </el-tooltip>
  624. <!-- <span><img src="~@/assets/images/paishui/sj-icon-half.png" />城市体检</span>-->
  625. <!-- <span><img src="~@/assets/images/paishui/sj-icon-half.png" />维护监管</span>-->
  626. <!-- <span><img src="~@/assets/images/paishui/sj-icon-half.png" />基础事件</span>-->
  627. <!-- <span><img src="~@/assets/images/paishui/sj-icon-half.png" />设备预警</span>-->
  628. <!-- <span><img src="~@/assets/images/paishui/sj-icon-half.png" />催办事件</span>-->
  629. <!-- <span><img src="~@/assets/images/paishui/sj-icon-half.png" />督办事件</span>-->
  630. <!-- <span><img src="~@/assets/images/paishui/sj-icon-half.png" />巡检巡查任务管理</span>-->
  631. <!-- <span><img src="~@/assets/images/paishui/sj-icon-half.png" />巡检巡查数据管理</span>-->
  632. <!-- <span><img src="~@/assets/images/paishui/sj-icon-half.png" />预案管理</span>-->
  633. <!-- <span><img src="~@/assets/images/paishui/sj-icon-half.png" />物资管理</span>-->
  634. </div>
  635. </div>
  636. </div>
  637. <div class="nav">
  638. <a class="nav-in" @click="showData('isTrManagementVisible')">
  639. <img src="~@/assets/images/paishui/bom-icon6.png" />
  640. <span>运管体系</span>
  641. </a>
  642. <div class="er-nav" v-show="currentShowList == 'isTrManagementVisible'">
  643. <img src="~@/assets/images/paishui/er-navbj.png" />
  644. <div>
  645. <span @click="getDataBaseList('值班管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />值班管理</span>
  646. <span @click="getDataBaseList('通知通告')"><img src="~@/assets/images/paishui/sj-icon-half.png" />通知通告</span>
  647. <span @click="getDataBaseList('人员管理')"><img src="~@/assets/images/paishui/sj-icon-half.png" />人员管理</span>
  648. <span @click="getDataBaseList('维护报告')"><img src="~@/assets/images/paishui/sj-icon-half.png" />维护报告</span>
  649. </div>
  650. </div>
  651. </div>
  652. </div>
  653. </div>
  654. <!-- 地图功能栏 -->
  655. <div class="mapBar"></div>
  656. <!-- 地图浮层 -->
  657. <ul class="map-tc-top">
  658. <li>
  659. <img src="~@/assets/images/paishui/tc(5).png" />
  660. <span>资源</span>
  661. </li>
  662. <li @click="showExcavation()">
  663. <img src="~@/assets/images/paishui/tc(6).png" />
  664. <span>开挖</span>
  665. </li>
  666. <li @click="measurementVisible = !measurementVisible">
  667. <img src="~@/assets/images/paishui/tc(7).png" />
  668. <span>测量</span>
  669. </li>
  670. <li @click="clearAll()">
  671. <img src="~@/assets/images/paishui/tc(8).png" />
  672. <span>清除</span>
  673. </li>
  674. </ul>
  675. <div class="map-tc-bom" @click="layerVisible = !layerVisible;currentLayerType = ''">
  676. <em><img src="~@/assets/images/paishui/tc(9).png" /></em>
  677. </div>
  678. <!-- 测量选择 -->
  679. <div class="map-tab measurement-tab" v-show="measurementVisible">
  680. <img src="~@/assets/images/paishui/er-navbj-fr.png"/>
  681. <div class="map-tab-in">
  682. <div class="tuceng" @click="choseMeasuringDistance()">
  683. <span>测距</span>
  684. </div>
  685. <div class="tuceng" @click="choseMeasuringArea()">
  686. <span>测面</span>
  687. </div>
  688. <div class="tuceng" @click="choseMeasuringHeight()">
  689. <span>测高</span>
  690. </div>
  691. <!-- <div class="tuceng" @click="boxSelection()">-->
  692. <!-- <span>框选</span>-->
  693. <!-- </div>-->
  694. </div>
  695. </div>
  696. <!-- 地图选择 -->
  697. <div class="map-tab-tc" v-show="layerVisible">
  698. <img src="~@/assets/images/paishui/er-navbj-fr.png" />
  699. <div class="map-tab-in">
  700. <div class="tuceng" @click="currentLayerType == 'baseLayers' ? currentLayerType = '' : currentLayerType = 'baseLayers' " :style="currentLayerType == 'baseLayers' ? 'border:2px solid #1BF5FF' : '' ">
  701. <img src="~@/assets/images/paishui/erwei.png" />
  702. <span>基础图层</span>
  703. </div>
  704. <div class="tuceng" @click="currentLayerType == 'twoLayers' ? currentLayerType = '' : currentLayerType = 'twoLayers' " :style="currentLayerType == 'twoLayers' ? 'border:2px solid #1BF5FF' : '' ">
  705. <img src="~@/assets/images/paishui/sanwei.png" />
  706. <span>二维图层</span>
  707. </div>
  708. <div class="tuceng" @click="currentLayerType == 'threeLayers' ? currentLayerType = '' : currentLayerType = 'threeLayers' " :style="currentLayerType == 'threeLayers' ? 'border:2px solid #1BF5FF' : '' ">
  709. <img src="~@/assets/images/paishui/yingxiang.png" />
  710. <span>三维图层</span>
  711. </div>
  712. </div>
  713. </div>
  714. <!-- 基础图层控制 -->
  715. <div class="layer-Control" v-show="currentLayerType == 'baseLayers'">
  716. <el-checkbox-group v-model="checkedBaseDOptions" @change="layerCheck">
  717. <el-checkbox v-for="e in addVectorTilesMapList" :label="e.id" :key="e.id">
  718. {{ e.name }}
  719. </el-checkbox>
  720. </el-checkbox-group>
  721. </div>
  722. <!-- 二维图层控制 -->
  723. <div class="layer-Control" v-show="currentLayerType == 'twoLayers'">
  724. <div style="height: 110px; overflow-y: scroll;">
  725. <el-tree
  726. :props="props"
  727. ref="twoDLayers_paishui_yushui"
  728. :data="twoDLayers_paishui_yushui"
  729. show-checkbox
  730. class="layers_paishui_yushui"
  731. node-key="id"
  732. @check="handleCheckChange">
  733. </el-tree>
  734. <el-tree
  735. :props="props"
  736. ref="twoDLayers_paishui_wushui"
  737. :data="twoDLayers_paishui_wushui"
  738. show-checkbox
  739. class="layers_paishui_wushui"
  740. node-key="id"
  741. @check="handleCheckChange">
  742. </el-tree>
  743. <el-tree
  744. :props="props"
  745. ref="twoDLayers_paishui_heliu"
  746. :data="twoDLayers_paishui_heliu"
  747. show-checkbox
  748. class="layers_paishui_heliu"
  749. node-key="id"
  750. @check="handleCheckChange">
  751. </el-tree>
  752. </div>
  753. </div>
  754. <!-- 三维图层控制 -->
  755. <div class="layer-Control" v-show="currentLayerType == 'threeLayers'">
  756. <div style="height: 110px; overflow-y: scroll;">
  757. <el-tree
  758. :props="props"
  759. ref="threeDLayers_paishui_yushui"
  760. :data="threeDLayers_paishui_yushui"
  761. show-checkbox
  762. class="layers_paishui_yushui"
  763. node-key="id"
  764. @check="handleCheckChange">
  765. </el-tree>
  766. <el-tree
  767. :props="props"
  768. ref="threeDLayers_paishui_wushui"
  769. :data="threeDLayers_paishui_wushui"
  770. show-checkbox
  771. class="layers_paishui_wushui"
  772. node-key="id"
  773. @check="handleCheckChange">
  774. </el-tree>
  775. <el-tree
  776. :props="props"
  777. ref="threeDLayers_paishui_heliu"
  778. :data="threeDLayers_paishui_heliu"
  779. show-checkbox
  780. class="layers_paishui_heliu"
  781. node-key="id"
  782. @check="handleCheckChange">
  783. </el-tree>
  784. </div>
  785. </div>
  786. <!-- 详情弹窗 -->
  787. <DetailDialog ref="detailDialog" />
  788. <!-- 事件详情弹窗 -->
  789. <el-dialog title="事件详情" :visible.sync="eventDialogVisible" custom-class="eventDialog"
  790. style="margin-top: 5vh !important;">
  791. <div class="transferBg d1">
  792. <h3>事件基本信息</h3>
  793. <div class="eventInfo_contain">
  794. <div style="width: 100%;" class="sj_tit">事件名称:{{ eventInfo['事件名称'] || '' }}</div>
  795. <div>事件类型:{{ eventInfo['事件类型'] || '' }}</div>
  796. <div>上报时间:{{ eventInfo['上报时间'] || '' }}</div>
  797. <div>事件状态:{{ eventInfo['事件状态'] || '' }}</div>
  798. <div>经度:{{ eventInfo['经度'] || '' }}</div>
  799. <div>纬度:{{ eventInfo['纬度'] || '' }}</div>
  800. <div class="videoLinkage"></div>
  801. </div>
  802. </div>
  803. <div class="transferBg d2">
  804. <h3>事件处理流程</h3>
  805. <div class="progress_contain">
  806. <div class="line"></div>
  807. <div class="e1">
  808. <img src="@/assets/images/eventLogo2.png">
  809. <div>事件发起</div>
  810. <div class="z-lc-time">
  811. 2025/11/05 07:45:11
  812. </div>
  813. <el-tooltip class="item" v-if="true" placement="top" popper-class="sj-tooltip">
  814. <div slot="content" class="info-list">
  815. <span>处置人:张远</span>
  816. </div>
  817. <div class="z-clyj">
  818. <img src="@/assets/index_img/clyj-icon.png" />
  819. </div>
  820. </el-tooltip>
  821. </div>
  822. <div class="e2">
  823. <img src="@/assets/images/eventLogo2.png">
  824. <div>事件签收</div>
  825. </div>
  826. <div class="e3">
  827. <img src="@/assets/images/eventLogo2.png">
  828. <div>事件处理</div>
  829. </div>
  830. <div class="e4">
  831. <img src="@/assets/images/eventLogo2.png">
  832. <div>事件办结</div>
  833. </div>
  834. </div>
  835. </div>
  836. <div class="d3">
  837. <div class="transferBg video" v-if="demoIdx != 1">
  838. <h3>现场图片</h3>
  839. <image-preview :src="require('@/assets/images/alarm.png')" :width="580" :height="360" />
  840. </div>
  841. <div class="transferBg video" v-else>
  842. <h3>计划附件</h3>
  843. <image-preview src="http://116.142.80.13:8081/group1/M00/00/2E/wKgKC2kNSGGACoyXAACpxjuIY5c521.png" :width="580" :height="360" />
  844. </div>
  845. <div class="mid">
  846. <div class="transferBg info" v-if="demoIdx != 1">
  847. <h3>现场状况</h3>
  848. <div class="xczk_div">
  849. <div>事件当前伤亡:0人</div>
  850. <div>事件预警影响:10人</div>
  851. <div>预计解决时间:3天</div>
  852. <div>当前处理人员:王鹤</div>
  853. <div>处理人员电话:18130987651</div>
  854. </div>
  855. </div>
  856. <div class="transferBg info_right" :class="demoIdx == 1 ? 'demoDeptStylesheet' : '' ">
  857. <h3 v-show="demoIdx != 0">联动部门</h3>
  858. <h4 v-show="demoIdx != 0" style="margin-top: 4%;"></h4>
  859. <div v-show="demoIdx != 0" class="planItem" style="border-left: none; display: flex; align-items: center;">
  860. <img src="@/assets/images/online-img2.png"
  861. style="width: 30px; height:30px; margin:0 5px 0 0 ;">
  862. <div style="margin-top: 0 !important;">四平市</div>
  863. </div>
  864. <h3 v-show="demoIdx == 0">设备数据</h3>
  865. <div v-show="demoIdx == 0" class="div_Option" ref="divOption"></div>
  866. </div>
  867. <div class="transferBg pics">
  868. <h3>处置照片</h3>
  869. <div class="otherPics">
  870. <image-preview :src="require('@/assets/images/alarm_1.png')" :width="200" :height="137" />
  871. </div>
  872. <!-- <router-link to="#" v-for="item, index in emergencyEventDetails.attachPath">
  873. <el-image :src="item"
  874. :preview-src-list="assetTypeAnImage(emergencyEventDetails.attachPath, index)"
  875. style="width:8rem; height:8rem;margin: 5px;">
  876. </el-image>
  877. </router-link>
  878. </div> -->
  879. </div>
  880. </div>
  881. <div class="right transferBg">
  882. <h3>事件日志</h3>
  883. <div class="block le_ri">
  884. <el-scrollbar style="height: 378px;" class="spsb_time">
  885. <el-timeline>
  886. <el-timeline-item placement="top">
  887. <span class="timeline-span">{{ eventInfo['上报时间'] || '' }}</span>
  888. <el-card>
  889. <h4>{{ eventInfo['事件描述'] || '' }}</h4>
  890. <p>{{ eventInfo['上报时间'] || '' }} 提交于 {{ eventInfo['上报时间'] || '' }}</p>
  891. </el-card>
  892. </el-timeline-item>
  893. </el-timeline>
  894. </el-scrollbar>
  895. <div class="spsb_xx">
  896. <textarea class="spsb_text" placeholder=""> </textarea>
  897. <div class="btn_option">
  898. <el-button>签收</el-button>
  899. <el-button>办结</el-button>
  900. <el-button>驳回</el-button>
  901. <el-button>归档</el-button>
  902. </div>
  903. </div>
  904. </div>
  905. </div>
  906. </div>
  907. </el-dialog>
  908. </div>
  909. </template>
  910. <script>
  911. import seriesColor from "echarts/src/visual/seriesColor";
  912. import Cookies from "js-cookie";
  913. let echarts = require('echarts')
  914. import DetailDialog from "@/components/DetailDialog/paishui.vue";
  915. import supermap from '@/components/supermap-2.5d' //超图
  916. import { getUserProfile } from '@/api/system/user'
  917. import {
  918. maintenanceRepairList, // 查询养护维修列表
  919. manholeList, // 查询排水窨井信息列表
  920. pipeList, // 查询排水管线管理列表
  921. easyFloodList, // 查询易涝点信息列表
  922. embankmentList, // 查询堤防信息列表
  923. overpassList, // 查询下穿立交信息列表
  924. pumpingStationList, // 查询排水泵站及泵信息列表
  925. rainGaugeStationList, // 查询雨量站信息列表
  926. sewageTreatmentPlantsList, // 查询污水处理厂信息列表
  927. storageFacilitiesList, // 查询调蓄设施列表
  928. enterpriseList, // 查询排水企业数据列表
  929. selectCompanyList, // 可视化查询用户管理列表
  930. deviceList, // 设备管理
  931. inspectionTaskEventList, // 查询巡检任务事件列表
  932. selectSewageTreatmentAnalysis, // 污水处理量分析
  933. getDeviceTypeCount, // 排水-按照类型统计设备数量
  934. selectDrainagePipeAnalysis, // 排水管线分析
  935. selectStateAnalysis, // 易涝点整改状态分析
  936. getDrainageDOOByDept //统计设备在离线数量
  937. } from '@/api/paishui'
  938. import {
  939. getHeatingList,
  940. getDrainagePipeBySmId,
  941. getReportList,
  942. heatingUserList,
  943. selectDutyVisualizationList,
  944. selectEventSuperviseList,
  945. selectTaskList,
  946. selectThresholdList,
  947. systemNoticeList,
  948. selectRiskRegisterlist,
  949. selectFocusList,
  950. selectInspectionPatrolTaskList, selectPatrolInspectionDataList, selectPlanList, selectMaterialsList
  951. } from '@/api/tableInfo'
  952. import { iconList, queryVectorTilesMapList } from '@/api/components/supermap'
  953. import { getWeather } from '@/api/data'
  954. import { getEventDetail, selectEventList } from '@/api/eventLifeLine'
  955. export default {
  956. dicts: [, 'sys_user_sex', 'sys_normal_disable',
  957. 'lifeline_enterprise', 'lifeline_industry', 'resident_type', 'construction_tasks_status',
  958. 'heating_device_type', 'material_type', 'sys_notice_type', 'sys_notice_status', 'heating_pipeline_category'
  959. ],
  960. components: {
  961. supermap,
  962. DetailDialog,
  963. },
  964. data() {
  965. return {
  966. props: {
  967. label: 'name',
  968. children: 'children'
  969. },
  970. hasPositionLabels: ['管线管理', '窨井管理','易涝点管理','堤防管理','下穿立交管理','泵站管理','雨量站管理','污水处理厂管理','调蓄设施管理','企业管理','用户管理','设备管理','城市体检', '维护监管', '基础事件', '设备预警', '催办事件', '督办事件'],
  971. type:"",
  972. weather:"",
  973. weatherinformationWeather:"",
  974. weatherinformationLevelValue:"",
  975. measurementVisible:false,
  976. intervalArr: [], // eCharts 防鬼畜
  977. iconData: [{
  978. name: '综合',
  979. icon: require("@/assets/lookall/zh-icon.png"),
  980. },
  981. {
  982. name: '燃气',
  983. icon: require("@/assets/lookall/rq-icon.png")
  984. },
  985. {
  986. name: '热力',
  987. icon: require("@/assets/lookall/rl-icon.png")
  988. },
  989. {
  990. name: '排水',
  991. icon: require("@/assets/lookall/ps-icon.png")
  992. },
  993. {
  994. name: '桥梁',
  995. icon: require("@/assets/lookall/ql-icon.png")
  996. },
  997. {
  998. name: '管廊',
  999. icon: require("@/assets/lookall/gl-icon.png")
  1000. },
  1001. {
  1002. name: '供水',
  1003. icon: require("@/assets/lookall/gs-icon.png")
  1004. }
  1005. ],
  1006. currentShowList:'',
  1007. currentTagName: 'left_btn1', // 左侧轮盘当前样式 默认选中可视化
  1008. normalIcon: require("@/assets/lookall/left-icon-2.png"),
  1009. hoveredIcon: require("@/assets/lookall/left-icon-1.png"),
  1010. hoveredIndexes: [],
  1011. section: [{
  1012. name: '综合管廊',
  1013. btn: [{
  1014. btnName: '监管中心',
  1015. btnSrc: require("@/assets/lookall/jgzx-icon.png"),
  1016. src: ''
  1017. },
  1018. {
  1019. btnName: '驾驶舱',
  1020. btnSrc: require("@/assets/lookall/jsc-icon.png"),
  1021. src: '/Cockpit'
  1022. },
  1023. {
  1024. btnName: '运营中心',
  1025. btnSrc: require("@/assets/lookall/yyzx-icon.png"),
  1026. src: ''
  1027. }
  1028. ]
  1029. },
  1030. {
  1031. name: '燃气',
  1032. btn: [{
  1033. btnName: '一张图',
  1034. btnSrc: require("@/assets/lookall/yzw-icon.png"),
  1035. src: ''
  1036. },
  1037. {
  1038. btnName: '瓶安四平',
  1039. btnSrc: require("@/assets/lookall/pan-icon.png"),
  1040. src: ''
  1041. },
  1042. {
  1043. btnName: '智慧哨兵',
  1044. btnSrc: require("@/assets/lookall/sb-icon.png"),
  1045. src: '/SentryPage'
  1046. },
  1047. {
  1048. btnName: '城市生命线',
  1049. btnSrc: require("@/assets/lookall/smx-icon.png"),
  1050. src: ''
  1051. }
  1052. ]
  1053. },
  1054. {
  1055. name: '热力',
  1056. btn: [{
  1057. btnName: '监管中心',
  1058. btnSrc: require("@/assets/lookall/jgzx-icon.png"),
  1059. src: ''
  1060. },
  1061. ]
  1062. },
  1063. {
  1064. name: '排水',
  1065. btn: [{
  1066. btnName: '监管中心',
  1067. btnSrc: require("@/assets/lookall/jgzx-icon.png"),
  1068. src: ''
  1069. },
  1070. ]
  1071. },
  1072. {
  1073. name: '桥梁',
  1074. btn: [{
  1075. btnName: '监管中心',
  1076. btnSrc: require("@/assets/lookall/jgzx-icon.png"),
  1077. src: ''
  1078. },
  1079. ]
  1080. },
  1081. {
  1082. name: '管廊',
  1083. btn: [{
  1084. btnName: '监管中心',
  1085. btnSrc: require("@/assets/lookall/jgzx-icon.png"),
  1086. src: ''
  1087. },
  1088. ]
  1089. },
  1090. {
  1091. name: '供水',
  1092. btn: [{
  1093. btnName: '监管中心',
  1094. btnSrc: require("@/assets/lookall/jgzx-icon.png"),
  1095. src: ''
  1096. },
  1097. ]
  1098. },
  1099. ],
  1100. taskList: [{
  1101. label: '测试任务2测试任务2测试任务2测试任务2测试任务2测试任务2测试任务2测试任务2',
  1102. time: '2025-01-01 12:00:00',
  1103. progress: '100%',
  1104. status: '已完成',
  1105. },
  1106. {
  1107. label: '测试任务3',
  1108. time: '2025-01-01 12:00:00',
  1109. progress: '100%',
  1110. status: '未处理',
  1111. }, {
  1112. label: '测试任务2',
  1113. time: '2025-01-01 12:00:00',
  1114. progress: '100%',
  1115. status: '处理中',
  1116. },
  1117. {
  1118. label: '测试任务3',
  1119. time: '2025-01-01 12:00:00',
  1120. progress: '100%',
  1121. status: '已完成',
  1122. },
  1123. ],
  1124. eventList: [{
  1125. label: '测试事件1测试事件1测试事件1测试事件1测试事件1测试事件1测试事件1测试事件1测试事件1测试事件1测试事件1',
  1126. time: '2025-02-20 08:54',
  1127. status: '未办结',
  1128. },
  1129. {
  1130. label: '测试事件2测试事件2测试事件2测试事件2测试事件2测试事件2测试事件2测试事件2测试事件2测试事件2测试事件2测试事件2测试事件2测试事件2',
  1131. time: '2025-02-20 08:54',
  1132. status: '已办结',
  1133. },
  1134. {
  1135. label: '测试事件3测试事件3测试事件3测试事件3测试事件3测试事件3测试事件3测试事件3测试事件3测试事件3测试事件3测试事件3测试事件3测试事件3',
  1136. time: '2025-02-20 08:54',
  1137. status: '未办结',
  1138. }
  1139. ],
  1140. riskList: [{
  1141. label: '风险/隐患名称1风险/隐患名称1风险/隐患名称1风险/隐患名称1风险/隐患名称1',
  1142. time: '2025-02-20 08:54',
  1143. status: '已整改',
  1144. },
  1145. {
  1146. label: '风险/隐患名称2风险/隐患名称2风险/隐患名称2风险/隐患名称2风险/隐患名称2',
  1147. time: '2025-02-20 08:54',
  1148. status: '未整改',
  1149. },
  1150. {
  1151. label: '风险/隐患名称3风险/隐患名称3风险/隐患名称3风险/隐患名称3风险/隐患名称3',
  1152. time: '2025-02-20 08:54',
  1153. status: '整改中',
  1154. },
  1155. {
  1156. label: '风险/隐患名称156风险/隐患名称156风险/隐患名称156风险/隐患名称156风险/隐患名称156',
  1157. time: '2025-02-20 08:54',
  1158. status: '无需整改',
  1159. },
  1160. {
  1161. label: '风险/隐患名称14风险/隐患名称14风险/隐患名称14风险/隐患名称14风险/隐患名称14',
  1162. time: '2025-02-20 08:54',
  1163. status: '已整改',
  1164. },
  1165. ],
  1166. gasTimePeriod: 'week', // 当前用气量分析选择时间段 默认为“周”
  1167. inspectionTimePeriod: 'week', // 巡检里程分析选择时间段 默认为“周”
  1168. layerVisible: false,
  1169. viewRightSideStatus: 'out',
  1170. viewLeftSideStatus: 'inside',
  1171. currentResourceTile:'',
  1172. pagerCount: 1,
  1173. pageSize: 10,
  1174. total: 0,
  1175. dataText: '',
  1176. tablePropAndLabel: [],
  1177. tableList: [],
  1178. searchValue: '',
  1179. searchCode: '',
  1180. searchTime: '',
  1181. demoIdx:null,
  1182. eventInfo:{},
  1183. eventDialogVisible:false,
  1184. currentLayerType: '',
  1185. checkedBaseDOptions: [],
  1186. addVectorTilesMapList: [],
  1187. checkedOptions: [],
  1188. twoDLayers_paishui_yushui:[
  1189. {
  1190. id: '1',
  1191. name: '雨水管',
  1192. url: [null, null],
  1193. class: 'cgy',
  1194. children: [
  1195. {
  1196. id: '1-1',
  1197. name: '铁西雨水管',
  1198. url: [null, '/map-PaiShui-2/rest/maps/TX_pai_yushui']
  1199. },
  1200. {
  1201. id: '1-2',
  1202. name: '铁东雨水管',
  1203. url: [null, '/map-PaiShui-2/rest/maps/TD_pai_yushui']
  1204. }
  1205. ]
  1206. },
  1207. ],
  1208. twoDLayers_paishui_wushui:[
  1209. {
  1210. id: '2',
  1211. name: '污水管',
  1212. url: [null, null],
  1213. class: 'zy',
  1214. children: [
  1215. {
  1216. id: '2-1',
  1217. name: '铁西污水管',
  1218. url: [null, '/map-PaiShui-2/rest/maps/TX_pai_wushui']
  1219. },
  1220. {
  1221. id: '2-2',
  1222. name: '铁东污水管',
  1223. url: [null, '/map-PaiShui-2/rest/maps/TD_pai_wushui']
  1224. }
  1225. ]
  1226. },
  1227. ],
  1228. twoDLayers_paishui_heliu:[
  1229. {
  1230. id: '3',
  1231. name: '合流管',
  1232. url: [null, null],
  1233. class: 'dy',
  1234. children: [
  1235. {
  1236. id: '3-1',
  1237. name: '铁西合流管',
  1238. url: [null, '/map-PaiShui-2/rest/maps/TX_pai_heliu']
  1239. },
  1240. {
  1241. id: '3-2',
  1242. name: '铁东合流管',
  1243. url: [null, '/map-PaiShui-2/rest/maps/TD_pai_heliu']
  1244. },
  1245. ]
  1246. }
  1247. ],
  1248. threeDLayers_paishui_yushui:[
  1249. {
  1250. id: '4',
  1251. name: '雨水管',
  1252. url: [null, null],
  1253. class: 'cgy',
  1254. children: [
  1255. {
  1256. id: '4-1',
  1257. name: '铁西雨水管',
  1258. url: ['/3D-TX_pai_yushui/rest/realspace', null]
  1259. },
  1260. {
  1261. id: '4-2',
  1262. name: '铁东雨水管',
  1263. url: ['/3D-TD_pai_yushui/rest/realspace', null]
  1264. }
  1265. ]
  1266. },
  1267. ],
  1268. threeDLayers_paishui_wushui:[
  1269. {
  1270. id: '5',
  1271. name: '污水管',
  1272. url: [null, null],
  1273. class: 'zy',
  1274. children: [
  1275. {
  1276. id: '5-1',
  1277. name: '铁西污水管',
  1278. url: ['/3D-TX_pai_wushui/rest/realspace', null]
  1279. },
  1280. {
  1281. id: '5-2',
  1282. name: '铁东污水管',
  1283. url: ['/3D-TD_pai_wushui/rest/realspace', null]
  1284. }
  1285. ]
  1286. },
  1287. ],
  1288. threeDLayers_paishui_heliu:[
  1289. {
  1290. id: '6',
  1291. name: '河流',
  1292. url: [null, null],
  1293. class: 'dy',
  1294. children: [
  1295. {
  1296. id: '6-1',
  1297. name: '铁西合流管',
  1298. url: ['/3D-TX_pai_heliu/rest/realspace', null]
  1299. },
  1300. {
  1301. id: '6-2',
  1302. name: '铁东合流管',
  1303. url: ['/3D-TD_pai_heliu/rest/realspace', null]
  1304. },
  1305. ]
  1306. }
  1307. ],
  1308. focusList:[], // 重点关注列表
  1309. dooByDep:[], // 各部门设备统计
  1310. totalCount:0,
  1311. onlineCount:0,
  1312. offlineCount:0,
  1313. openHeatingPipeVisible:false,
  1314. deviceList:[], // 设备数量
  1315. pipeAnalysisData:[], // 排水管线汇总
  1316. }
  1317. },
  1318. mounted() {
  1319. // 初始化地图数据
  1320. this.getSuperMapUrl();
  1321. this.time();
  1322. this.getWeather();
  1323. this.selectFocusList()
  1324. this.getDeviceTypeCount()
  1325. this.selectDrainagePipeAnalysis()
  1326. setTimeout(() => {
  1327. // this.initGasChart()
  1328. // this.pieChart()
  1329. this.selectTaskList();
  1330. this.selectEventList()
  1331. this.queryVectorTilesMapList()
  1332. },2000)
  1333. },
  1334. methods: {
  1335. selectDrainagePipeAnalysis(){
  1336. selectDrainagePipeAnalysis().then(res => {
  1337. if(res.data){
  1338. this.pipeAnalysisData = res.data
  1339. }
  1340. })
  1341. },
  1342. getDeviceTypeCount(){
  1343. getDeviceTypeCount().then(res => {
  1344. if(res.rows){
  1345. this.deviceList = res.rows
  1346. }
  1347. })
  1348. },
  1349. //关闭单选窨井信息
  1350. cancelHeatingPipeVisible() {
  1351. this.openHeatingPipeVisible = false
  1352. this.heatingPipe = {}
  1353. },
  1354. percentage(totalCount,onlineCount) {
  1355. // 防止除以0的情况
  1356. if (totalCount === 0) return 0;
  1357. // 计算百分比并保留两位小数
  1358. return ((onlineCount / totalCount) * 100).toFixed(2);
  1359. },
  1360. getWeather() {
  1361. let date = new Date()
  1362. let y = date.getFullYear()
  1363. let m = date.getMonth() + 1
  1364. m = m < 10 ? '0' + m : m
  1365. let d = date.getDate()
  1366. d = d < 10 ? '0' + d : d
  1367. let day = y + '-' + m + '-' + d
  1368. let that = this
  1369. //右侧获取天气信息
  1370. getWeather({
  1371. day: day
  1372. }).then(res => {
  1373. if (res.code == 200) {
  1374. if (Array.isArray(res.data) && res.data.length) {
  1375. this.weather = res.data[0].weatherinformationLow+ '~' + res.data[0].weatherinformationHigh
  1376. this.weatherinformationWeather = res.data[0].weatherinformationWeather
  1377. this.weatherinformationLevelValue = res.data[0].weatherinformationLevelValue
  1378. }
  1379. }
  1380. })
  1381. },
  1382. /**
  1383. * 重点关注列表
  1384. */
  1385. selectFocusList() {
  1386. selectFocusList({industry:2}).then(res => {
  1387. this.focusList = res.rows
  1388. console.log('this.focusList',this.focusList)
  1389. })
  1390. },
  1391. showData(param){
  1392. if(this.currentShowList == param){
  1393. this.currentShowList = '';
  1394. }else{
  1395. this.currentShowList = param;
  1396. }
  1397. },
  1398. goToHomePage() {
  1399. window.location.href = '/homePage';
  1400. },
  1401. /**
  1402. * 事件列表
  1403. */
  1404. selectEventList(){
  1405. selectEventList({
  1406. industry: '2'
  1407. }).then(res => {
  1408. this.eventList = res.rows
  1409. })
  1410. },
  1411. /**
  1412. * 任务列表
  1413. */
  1414. selectTaskList() {
  1415. selectTaskList({industry:2}).then(res => {
  1416. this.taskList = res.rows
  1417. })
  1418. },
  1419. //开挖
  1420. showExcavation() {
  1421. this.$refs.supermap.excavation()
  1422. this.$refs.supermap.closeClipboxByEditor()
  1423. },
  1424. //清除
  1425. clearAll() {
  1426. // 排水-雨水
  1427. if (this.$refs.twoDLayers_paishui_yushui) {
  1428. this.$refs.twoDLayers_paishui_yushui.setCheckedKeys([]);
  1429. }
  1430. // 排水-污水
  1431. if (this.$refs.twoDLayers_paishui_wushui) {
  1432. this.$refs.twoDLayers_paishui_wushui.setCheckedKeys([]);
  1433. }
  1434. // 排水-合流
  1435. if (this.$refs.twoDLayers_paishui_heliu) {
  1436. this.$refs.twoDLayers_paishui_heliu.setCheckedKeys([]);
  1437. }
  1438. // 排水-雨水
  1439. if (this.$refs.threeDLayers_paishui_yushui) {
  1440. this.$refs.threeDLayers_paishui_yushui.setCheckedKeys([]);
  1441. }
  1442. // 排水-污水
  1443. if (this.$refs.threeDLayers_paishui_wushui) {
  1444. this.$refs.threeDLayers_paishui_wushui.setCheckedKeys([]);
  1445. }
  1446. // 排水-合流
  1447. if (this.$refs.threeDLayers_paishui_heliu) {
  1448. this.$refs.threeDLayers_paishui_heliu.setCheckedKeys([]);
  1449. }
  1450. this.$refs.supermap.closeMeasuringAll()
  1451. this.$refs.supermap.closeExcavationAll()
  1452. this.$refs.supermap.closeClipboxByEditor()
  1453. this.$refs.supermap.removeBoxSelection()
  1454. this.checkedBaseDOptions = []
  1455. this.checkedOptions = []
  1456. this.$refs.supermap.addLifelineOpen([])
  1457. this.measurementVisible = false
  1458. },
  1459. //测距
  1460. choseMeasuringDistance() {
  1461. this.$refs.supermap.choseMeasuringDistance()
  1462. },
  1463. //测面
  1464. choseMeasuringArea() {
  1465. this.$refs.supermap.choseMeasuringArea()
  1466. },
  1467. //测高
  1468. choseMeasuringHeight() {
  1469. this.$refs.supermap.choseMeasuringHeight()
  1470. },
  1471. initDemoChart(){
  1472. let option = {
  1473. "tooltip": {
  1474. "trigger": "axis",
  1475. "axisPointer": {
  1476. "type": "line",
  1477. "lineStyle": {
  1478. "color": "#57617B"
  1479. }
  1480. },
  1481. "backgroundColor": "rgba(0,60,120,0.8)",
  1482. "padding": [
  1483. 8,
  1484. 10
  1485. ],
  1486. "extraCssText": "box-shadow: 0 0 3px rgba(255, 255, 255, 0.4);"
  1487. },
  1488. "grid": {
  1489. "borderWidth": 0,
  1490. "top": 50,
  1491. "bottom": 20,
  1492. "textStyle": {
  1493. "color": "#fff"
  1494. }
  1495. },
  1496. "xAxis": [
  1497. {
  1498. "type": "category",
  1499. "axisLine": {
  1500. "lineStyle": {
  1501. "color": "#32346c"
  1502. }
  1503. },
  1504. "boundaryGap": false,
  1505. "axisTick": {
  1506. "show": false
  1507. },
  1508. "splitArea": {
  1509. "show": false
  1510. },
  1511. "axisLabel": {
  1512. "inside": false,
  1513. "textStyle": {
  1514. "color": "#bac0c0",
  1515. "fontWeight": "normal",
  1516. "fontSize": "12"
  1517. }
  1518. },
  1519. "data": [
  1520. "2025-11-06 08:00",
  1521. "2025-11-06 10:00",
  1522. "2025-11-06 12:00",
  1523. "2025-11-06 14:00",
  1524. "2025-11-06 16:00",
  1525. "2025-11-06 18:00",
  1526. "2025-11-06 20:00"
  1527. ]
  1528. }
  1529. ],
  1530. "yAxis": [
  1531. {
  1532. "name": "℃",
  1533. "type": "value",
  1534. "axisTick": {
  1535. "show": false
  1536. },
  1537. "axisLine": {
  1538. "show": true,
  1539. "lineStyle": {
  1540. "color": "#9bbdde"
  1541. }
  1542. },
  1543. "splitLine": {
  1544. "show": true,
  1545. "lineStyle": {
  1546. "color": "#32346c "
  1547. }
  1548. },
  1549. "axisLabel": {
  1550. "textStyle": {
  1551. "color": "#bac0c0",
  1552. "fontWeight": "normal",
  1553. "fontSize": "12"
  1554. }
  1555. }
  1556. },
  1557. {
  1558. "name": "MPa",
  1559. "type": "value",
  1560. "axisTick": {
  1561. "show": false
  1562. },
  1563. "axisLine": {
  1564. "show": true,
  1565. "lineStyle": {
  1566. "color": "#9bbdde"
  1567. }
  1568. },
  1569. "splitLine": {
  1570. "show": true,
  1571. "lineStyle": {
  1572. "color": "#32346c "
  1573. }
  1574. },
  1575. "axisLabel": {
  1576. "textStyle": {
  1577. "color": "#bac0c0",
  1578. "fontWeight": "normal",
  1579. "fontSize": "12"
  1580. }
  1581. }
  1582. }
  1583. ],
  1584. "series": [
  1585. {
  1586. "name": "一次网供水压力",
  1587. "type": "line",
  1588. "symbolSize": 3,
  1589. "symbol": "circle",
  1590. "smooth": true,
  1591. "showSymbol": true,
  1592. "areaStyle": {
  1593. "normal": {
  1594. "color": {
  1595. "x": 0,
  1596. "y": 0,
  1597. "x2": 0,
  1598. "y2": 1,
  1599. "type": "linear",
  1600. "global": false,
  1601. "colorStops": [
  1602. {
  1603. "offset": 0,
  1604. "color": "#fa704d"
  1605. },
  1606. {
  1607. "offset": 0.8,
  1608. "color": "rgba(255,255,255,0)"
  1609. }
  1610. ]
  1611. },
  1612. "shadowBlur": 10,
  1613. "opacity": 0.3
  1614. }
  1615. },
  1616. "itemStyle": {
  1617. "normal": {
  1618. "color": "#fa704d",
  1619. "lineStyle": {
  1620. "width": 1,
  1621. "type": "solid"
  1622. },
  1623. "borderColor": "#fa704d",
  1624. "borderWidth": 8,
  1625. "barBorderRadius": 0,
  1626. "label": {
  1627. "show": false
  1628. },
  1629. "opacity": 0.5
  1630. }
  1631. },
  1632. "yAxisIndex": 1,
  1633. "data": [
  1634. 1.95,
  1635. 2.08,
  1636. 1.95,
  1637. 2.02,
  1638. 2.08,
  1639. 1.98,
  1640. 2.05
  1641. ]
  1642. },
  1643. {
  1644. "name": "一次网回水压力",
  1645. "type": "line",
  1646. "symbolSize": 3,
  1647. "symbol": "circle",
  1648. "smooth": true,
  1649. "showSymbol": true,
  1650. "areaStyle": {
  1651. "normal": {
  1652. "color": {
  1653. "x": 0,
  1654. "y": 0,
  1655. "x2": 0,
  1656. "y2": 1,
  1657. "type": "linear",
  1658. "global": false,
  1659. "colorStops": [
  1660. {
  1661. "offset": 0,
  1662. "color": "#01babc"
  1663. },
  1664. {
  1665. "offset": 0.8,
  1666. "color": "rgba(255,255,255,0)"
  1667. }
  1668. ]
  1669. },
  1670. "shadowBlur": 10,
  1671. "opacity": 0.3
  1672. }
  1673. },
  1674. "itemStyle": {
  1675. "normal": {
  1676. "color": "#01babc",
  1677. "lineStyle": {
  1678. "width": 1,
  1679. "type": "solid"
  1680. },
  1681. "borderColor": "#01babc",
  1682. "borderWidth": 8,
  1683. "barBorderRadius": 0,
  1684. "label": {
  1685. "show": false
  1686. },
  1687. "opacity": 0.5
  1688. }
  1689. },
  1690. "yAxisIndex": 1,
  1691. "data": [
  1692. 1.52,
  1693. 1.68,
  1694. 1.52,
  1695. 1.58,
  1696. 1.68,
  1697. 1.55,
  1698. 1.62
  1699. ]
  1700. },
  1701. {
  1702. "name": "一次网回水温度",
  1703. "type": "line",
  1704. "symbolSize": 3,
  1705. "symbol": "circle",
  1706. "smooth": true,
  1707. "showSymbol": true,
  1708. "areaStyle": {
  1709. "normal": {
  1710. "color": {
  1711. "x": 0,
  1712. "y": 0,
  1713. "x2": 0,
  1714. "y2": 1,
  1715. "type": "linear",
  1716. "global": false,
  1717. "colorStops": [
  1718. {
  1719. "offset": 0,
  1720. "color": "#1a9bfc"
  1721. },
  1722. {
  1723. "offset": 0.8,
  1724. "color": "rgba(255,255,255,0)"
  1725. }
  1726. ]
  1727. },
  1728. "shadowBlur": 10,
  1729. "opacity": 0.3
  1730. }
  1731. },
  1732. "itemStyle": {
  1733. "normal": {
  1734. "color": "#1a9bfc",
  1735. "lineStyle": {
  1736. "width": 1,
  1737. "type": "solid"
  1738. },
  1739. "borderColor": "#1a9bfc",
  1740. "borderWidth": 8,
  1741. "barBorderRadius": 0,
  1742. "label": {
  1743. "show": false
  1744. },
  1745. "opacity": 0.5
  1746. }
  1747. },
  1748. "yAxisIndex": 0,
  1749. "data": [
  1750. 38.5,
  1751. 42.1,
  1752. 38.5,
  1753. 40.1,
  1754. 42.1,
  1755. 39.2,
  1756. 41
  1757. ]
  1758. },
  1759. {
  1760. "name": "一次网供水温度",
  1761. "type": "line",
  1762. "symbolSize": 3,
  1763. "symbol": "circle",
  1764. "smooth": true,
  1765. "showSymbol": true,
  1766. "areaStyle": {
  1767. "normal": {
  1768. "color": {
  1769. "x": 0,
  1770. "y": 0,
  1771. "x2": 0,
  1772. "y2": 1,
  1773. "type": "linear",
  1774. "global": false,
  1775. "colorStops": [
  1776. {
  1777. "offset": 0,
  1778. "color": "#99da69"
  1779. },
  1780. {
  1781. "offset": 0.8,
  1782. "color": "rgba(255,255,255,0)"
  1783. }
  1784. ]
  1785. },
  1786. "shadowBlur": 10,
  1787. "opacity": 0.3
  1788. }
  1789. },
  1790. "itemStyle": {
  1791. "normal": {
  1792. "color": "#99da69",
  1793. "lineStyle": {
  1794. "width": 1,
  1795. "type": "solid"
  1796. },
  1797. "borderColor": "#99da69",
  1798. "borderWidth": 8,
  1799. "barBorderRadius": 0,
  1800. "label": {
  1801. "show": false
  1802. },
  1803. "opacity": 0.5
  1804. }
  1805. },
  1806. "yAxisIndex": 0,
  1807. "data": [
  1808. 78.9,
  1809. 82.4,
  1810. 78.9,
  1811. 80.5,
  1812. 82.4,
  1813. 79.8,
  1814. 81.2
  1815. ]
  1816. },
  1817. {
  1818. "name": "流量",
  1819. "type": "line",
  1820. "symbolSize": 3,
  1821. "symbol": "circle",
  1822. "smooth": true,
  1823. "showSymbol": true,
  1824. "areaStyle": {
  1825. "normal": {
  1826. "color": {
  1827. "x": 0,
  1828. "y": 0,
  1829. "x2": 0,
  1830. "y2": 1,
  1831. "type": "linear",
  1832. "global": false,
  1833. "colorStops": [
  1834. {
  1835. "offset": 0,
  1836. "color": "#e32f46"
  1837. },
  1838. {
  1839. "offset": 0.8,
  1840. "color": "rgba(255,255,255,0)"
  1841. }
  1842. ]
  1843. },
  1844. "shadowBlur": 10,
  1845. "opacity": 0.3
  1846. }
  1847. },
  1848. "itemStyle": {
  1849. "normal": {
  1850. "color": "#e32f46",
  1851. "lineStyle": {
  1852. "width": 1,
  1853. "type": "solid"
  1854. },
  1855. "borderColor": "#e32f46",
  1856. "borderWidth": 8,
  1857. "barBorderRadius": 0,
  1858. "label": {
  1859. "show": false
  1860. },
  1861. "opacity": 0.5
  1862. }
  1863. },
  1864. "yAxisIndex": 0,
  1865. "data": [
  1866. 48,
  1867. 52,
  1868. 48,
  1869. 50,
  1870. 52,
  1871. 49,
  1872. 51
  1873. ]
  1874. },
  1875. {
  1876. "name": "二次网供水压力",
  1877. "type": "line",
  1878. "symbolSize": 3,
  1879. "symbol": "circle",
  1880. "smooth": true,
  1881. "showSymbol": true,
  1882. "areaStyle": {
  1883. "normal": {
  1884. "color": {
  1885. "x": 0,
  1886. "y": 0,
  1887. "x2": 0,
  1888. "y2": 1,
  1889. "type": "linear",
  1890. "global": false,
  1891. "colorStops": [
  1892. {
  1893. "offset": 0,
  1894. "color": "#7049f0"
  1895. },
  1896. {
  1897. "offset": 0.8,
  1898. "color": "rgba(255,255,255,0)"
  1899. }
  1900. ]
  1901. },
  1902. "shadowBlur": 10,
  1903. "opacity": 0.3
  1904. }
  1905. },
  1906. "itemStyle": {
  1907. "normal": {
  1908. "color": "#7049f0",
  1909. "lineStyle": {
  1910. "width": 1,
  1911. "type": "solid"
  1912. },
  1913. "borderColor": "#7049f0",
  1914. "borderWidth": 8,
  1915. "barBorderRadius": 0,
  1916. "label": {
  1917. "show": false
  1918. },
  1919. "opacity": 0.5
  1920. }
  1921. },
  1922. "yAxisIndex": 1,
  1923. "data": [
  1924. 0.82,
  1925. 0.91,
  1926. 0.82,
  1927. 0.86,
  1928. 0.91,
  1929. 0.84,
  1930. 0.88
  1931. ]
  1932. },
  1933. {
  1934. "name": "二次网回水压力",
  1935. "type": "line",
  1936. "symbolSize": 3,
  1937. "symbol": "circle",
  1938. "smooth": true,
  1939. "showSymbol": true,
  1940. "areaStyle": {
  1941. "normal": {
  1942. "color": {
  1943. "x": 0,
  1944. "y": 0,
  1945. "x2": 0,
  1946. "y2": 1,
  1947. "type": "linear",
  1948. "global": false,
  1949. "colorStops": [
  1950. {
  1951. "offset": 0,
  1952. "color": "#fa704d"
  1953. },
  1954. {
  1955. "offset": 0.8,
  1956. "color": "rgba(255,255,255,0)"
  1957. }
  1958. ]
  1959. },
  1960. "shadowBlur": 10,
  1961. "opacity": 0.3
  1962. }
  1963. },
  1964. "itemStyle": {
  1965. "normal": {
  1966. "color": "#fa704d",
  1967. "lineStyle": {
  1968. "width": 1,
  1969. "type": "solid"
  1970. },
  1971. "borderColor": "#fa704d",
  1972. "borderWidth": 8,
  1973. "barBorderRadius": 0,
  1974. "label": {
  1975. "show": false
  1976. },
  1977. "opacity": 0.5
  1978. }
  1979. },
  1980. "yAxisIndex": 1,
  1981. "data": [
  1982. 0.65,
  1983. 0.72,
  1984. 0.65,
  1985. 0.68,
  1986. 0.72,
  1987. 0.66,
  1988. 0.7
  1989. ]
  1990. },
  1991. {
  1992. "name": "二次网供水温度",
  1993. "type": "line",
  1994. "symbolSize": 3,
  1995. "symbol": "circle",
  1996. "smooth": true,
  1997. "showSymbol": true,
  1998. "areaStyle": {
  1999. "normal": {
  2000. "color": {
  2001. "x": 0,
  2002. "y": 0,
  2003. "x2": 0,
  2004. "y2": 1,
  2005. "type": "linear",
  2006. "global": false,
  2007. "colorStops": [
  2008. {
  2009. "offset": 0,
  2010. "color": "#01babc"
  2011. },
  2012. {
  2013. "offset": 0.8,
  2014. "color": "rgba(255,255,255,0)"
  2015. }
  2016. ]
  2017. },
  2018. "shadowBlur": 10,
  2019. "opacity": 0.3
  2020. }
  2021. },
  2022. "itemStyle": {
  2023. "normal": {
  2024. "color": "#01babc",
  2025. "lineStyle": {
  2026. "width": 1,
  2027. "type": "solid"
  2028. },
  2029. "borderColor": "#01babc",
  2030. "borderWidth": 8,
  2031. "barBorderRadius": 0,
  2032. "label": {
  2033. "show": false
  2034. },
  2035. "opacity": 0.5
  2036. }
  2037. },
  2038. "yAxisIndex": 0,
  2039. "data": [
  2040. 53.2,
  2041. 57.6,
  2042. 53.2,
  2043. 55.1,
  2044. 57.6,
  2045. 54.3,
  2046. 56.4
  2047. ]
  2048. },
  2049. {
  2050. "name": "二次网回水温度",
  2051. "type": "line",
  2052. "symbolSize": 3,
  2053. "symbol": "circle",
  2054. "smooth": true,
  2055. "showSymbol": true,
  2056. "areaStyle": {
  2057. "normal": {
  2058. "color": {
  2059. "x": 0,
  2060. "y": 0,
  2061. "x2": 0,
  2062. "y2": 1,
  2063. "type": "linear",
  2064. "global": false,
  2065. "colorStops": [
  2066. {
  2067. "offset": 0,
  2068. "color": "#1a9bfc"
  2069. },
  2070. {
  2071. "offset": 0.8,
  2072. "color": "rgba(255,255,255,0)"
  2073. }
  2074. ]
  2075. },
  2076. "shadowBlur": 10,
  2077. "opacity": 0.3
  2078. }
  2079. },
  2080. "itemStyle": {
  2081. "normal": {
  2082. "color": "#1a9bfc",
  2083. "lineStyle": {
  2084. "width": 1,
  2085. "type": "solid"
  2086. },
  2087. "borderColor": "#1a9bfc",
  2088. "borderWidth": 8,
  2089. "barBorderRadius": 0,
  2090. "label": {
  2091. "show": false
  2092. },
  2093. "opacity": 0.5
  2094. }
  2095. },
  2096. "yAxisIndex": 0,
  2097. "data": [
  2098. 33.8,
  2099. 37.2,
  2100. 33.8,
  2101. 35.2,
  2102. 37.2,
  2103. 34.5,
  2104. 36.1
  2105. ]
  2106. }
  2107. ]
  2108. }
  2109. const chartDom = this.$refs.divOption;
  2110. const myChart = echarts.init(chartDom);
  2111. myChart.setOption(option);
  2112. },
  2113. previewDetail(e,type = this.currentResourceTile){
  2114. switch (type) {
  2115. case '维修管理':
  2116. let obj = {
  2117. '维修地址': e.repairAddress,
  2118. '维修性质': e.repairNature,
  2119. '维修故障类型': e.faultType,
  2120. '经度': e.longitude,
  2121. '纬度': e.latitude,
  2122. '维修时间': e.repairTime,
  2123. '创建时间': e.createTime,
  2124. '更新时间': e.updateTime,
  2125. '备注': e.remark,
  2126. '部门名称': e.deptName
  2127. }
  2128. this.$refs.detailDialog.openDetail(type,obj);
  2129. break;
  2130. case '窨井管理':
  2131. let obj1 = {
  2132. '附属设施编码': e.facilityCode,
  2133. '物探点号': e.explorationPointNo,
  2134. '地市编码': e.cityCode,
  2135. '窨井经度': e.longitude,
  2136. '窨井纬度': e.latitude,
  2137. '区划名称': e.districtName,
  2138. '高程': e.elevation,
  2139. '埋深': e.neckDepth,
  2140. '特征点': e.characteristicPoint,
  2141. '附属物': e.appurtenance,
  2142. '所在道路': e.roadName,
  2143. '点符号旋转角': e.symbolRotationAngle,
  2144. '井底埋深': e.bottomDepth,
  2145. '井盖形状': e.coverShape,
  2146. '井盖材质': e.manholeMaterial,
  2147. '井盖尺寸': e.coverSize,
  2148. '检修井材质': e.manholeMaterial,
  2149. '井脖深': e.neckDepth,
  2150. '井室规格': e.chamberSpecification,
  2151. '窨井性质': e.manholeNature,
  2152. '安装日期': e.installationDate,
  2153. '安装单位名称': e.installerName,
  2154. '安装单位社会信用代码': e.installerCreditCode,
  2155. '权属单位名称': e.ownerName,
  2156. '权属单位信用代码': e.ownerCreditCode,
  2157. '使用单位名称': e.userName,
  2158. '使用单位信用代码': e.userCreditCode,
  2159. '维修责任单位名称': e.maintenanceUnitName,
  2160. '维修责任单位信用代码': e.maintenanceUnitCreditCode,
  2161. '部门名称': e.deptName,
  2162. }
  2163. this.$refs.detailDialog.openDetail(type,obj1);
  2164. break;
  2165. case '管线管理':
  2166. let obj2 = {
  2167. '管线编码': e.pipelineCode,
  2168. '管线类别': e.pipelineCategory,
  2169. '地市编码': e.cityCode,
  2170. '区划名称': e.districtName,
  2171. '起点编号': e.startPointId,
  2172. '终点编号': e.endPointId,
  2173. '起点高程': e.startPointElevation,
  2174. '终点高程': e.endPointElevation,
  2175. '起点埋深': e.startPointBurialDepth,
  2176. '终点埋深': e.endPointBurialDepth,
  2177. '管径': e.pipeDiameter,
  2178. '材质': e.material,
  2179. '压力级别': e.pressureLevel,
  2180. '压力': e.pressure,
  2181. '流向': e.flowDirection,
  2182. '压力类型': e.pressureType,
  2183. '埋深日期': e.burialTime,
  2184. '埋设类型': e.burialType,
  2185. '断面形式': e.crossSectionalForm,
  2186. '管道年限': e.pipelineAge,
  2187. '线型': e.pipelineType,
  2188. '所在道路': e.roadName,
  2189. '权属单位名称': e.ownershipUnitName,
  2190. '权属单位统一信用代码': e.ownershipUnitCreditCode,
  2191. '建设年代': e.constructionYear,
  2192. '部门名称': e.deptName,
  2193. '长度': e.length,
  2194. '经度': e.longitude,
  2195. '纬度': e.latitude,
  2196. }
  2197. this.$refs.detailDialog.openDetail(type,obj2);
  2198. break;
  2199. case '易涝点管理':
  2200. let obj3 = {
  2201. '易涝点编号': e.floodCode,
  2202. '易涝点名称': e.floodName,
  2203. '积水深度': e.waterDepth,
  2204. '地市编码': e.cityCode,
  2205. '区划名称': e.districtName,
  2206. '经度': e.longitude,
  2207. '纬度': e.latitude,
  2208. '地址': e.address,
  2209. '所在道路': e.roadName,
  2210. '最长积水时间': e.maxWaterTime,
  2211. '最大积水面积': e.maxWaterArea,
  2212. '积水原因': e.floodReason,
  2213. '负责人': e.responsiblePerson,
  2214. '负责人联系方式': e.contactNumber,
  2215. '易涝点产生时间': e.floodOccurTime,
  2216. '整改状态': e.rectifyStatus,
  2217. '整改时间': e.rectifyTime,
  2218. '整改措施': e.rectifyMeasures,
  2219. '创建时间': e.createTime,
  2220. '更新时间': e.updateTime,
  2221. '备注': e.remark,
  2222. '部门名称': e.deptName
  2223. }
  2224. this.$refs.detailDialog.openDetail(type,obj3);
  2225. break;
  2226. case '堤防管理':
  2227. let obj4 = {
  2228. '堤防编号': e.embankmentCode,
  2229. '名称': e.name,
  2230. '地市编码': e.cityCode,
  2231. '区划名称': e.regionalName,
  2232. '类型': e.type,
  2233. '等级': e.level,
  2234. '类型描述': e.typeDescription,
  2235. '起点位置': e.startPosition,
  2236. '终点位置': e.endPosition,
  2237. '位置信息': e.positionInfo,
  2238. '经度': e.longitude,
  2239. '纬度': e.latitude,
  2240. '创建时间': e.createTime,
  2241. '更新时间': e.updateTime,
  2242. '部门名称': e.deptName
  2243. }
  2244. this.$refs.detailDialog.openDetail(type,obj4);
  2245. break;
  2246. case '下穿立交管理':
  2247. let obj5 = {
  2248. '下穿立交编号': e.overpassCode,
  2249. '下穿立交名称': e.overpassName,
  2250. '地市编码': e.cityCode,
  2251. '区划名称': e.districtName,
  2252. '经度': e.longitude,
  2253. '纬度': e.latitude,
  2254. '地址': e.address,
  2255. '集水面积': e.catchmentArea,
  2256. '创建时间': e.createTime,
  2257. '更新时间': e.updateTime,
  2258. '备注': e.remark,
  2259. '部门名称': e.deptName
  2260. }
  2261. this.$refs.detailDialog.openDetail(type,obj5);
  2262. break;
  2263. case '泵站管理':
  2264. let obj6 = {
  2265. '泵站编号': e.pumpingStationCode,
  2266. '泵站名称': e.pumpingStationName,
  2267. '地市编码': e.cityCode,
  2268. '区划名称': e.districtName,
  2269. '泵站类型': e.pumpingStationType,
  2270. '经度': e.longitude,
  2271. '纬度': e.latitude,
  2272. '地址': e.address,
  2273. '拥有泵数量': e.pumpCount,
  2274. '设计雨水排水能力': e.designedRainwaterDrainageCapacity,
  2275. '设计污水排水能力': e.designedSewageDrainageCapacity,
  2276. '服务范围': e.serviceRange,
  2277. '服务面积': e.serviceArea,
  2278. '责任人': e.responsiblePerson,
  2279. '责任人联系方式': e.contactNumber,
  2280. '泵编号': e.pumpCode,
  2281. '泵抽水功率': e.pumpPower,
  2282. '设备类型': e.equipmentType,
  2283. '生产厂家': e.manufacturer,
  2284. '出厂日期': e.productionDate,
  2285. '安装日期': e.installationDate,
  2286. '创建时间': e.createTime,
  2287. '更新时间': e.updateTime,
  2288. '备注': e.remark,
  2289. '部门名称': e.deptName
  2290. }
  2291. this.$refs.detailDialog.openDetail(type,obj6);
  2292. break;
  2293. case '雨量站管理':
  2294. let obj7 = {
  2295. '站点编号': e.stationCode,
  2296. '站点名称': e.stationName,
  2297. '站点类型': e.stationType,
  2298. '地市编码': e.cityCode,
  2299. '区划名称': e.districtName,
  2300. '地址': e.address,
  2301. '经度': e.longitude,
  2302. '纬度': e.latitude,
  2303. '报警水位': e.alarmWaterLevel,
  2304. '设施状态': e.facilityStatus,
  2305. '数据创建时间': e.createTime,
  2306. '数据更新时间': e.updateTime,
  2307. '部门名称': e.deptName
  2308. }
  2309. this.$refs.detailDialog.openDetail(type,obj7);
  2310. break;
  2311. case '污水处理厂管理':
  2312. let obj8 = {
  2313. '污水厂编号': e.plantCode,
  2314. '污水厂名称': e.plantName,
  2315. '地址': e.address,
  2316. '地市编码': e.cityCode,
  2317. '区划名称': e.regionalName,
  2318. '处理规模': e.treatmentCapacity,
  2319. '经度': e.longitude,
  2320. '纬度': e.latitude,
  2321. '所在道路': e.roadName,
  2322. '建设单位名称': e.constructionUnit,
  2323. '建设单位统一社会信用代码': e.cuc,
  2324. '建设时间': e.constructionTime,
  2325. '运营单位名称': e.operationUnit,
  2326. '运营单位统一社会信用代码': e.ouc,
  2327. '管理单位名称': e.managementUnit,
  2328. '管理单位统一社会信用代码': e.muc,
  2329. '占地面积': e.landArea,
  2330. '污水处理设施': e.treatmentFacilities,
  2331. '设施类型': e.facilityType,
  2332. '排水去向': e.drainageDestination,
  2333. '处理工艺': e.treatmentProcess,
  2334. '污泥去向': e.sludgeDestination,
  2335. '数据创建时间': e.createTime,
  2336. '数据更新时间': e.updateTime,
  2337. '部门名称': e.deptName
  2338. }
  2339. this.$refs.detailDialog.openDetail(type,obj8);
  2340. break;
  2341. case '调蓄设施管理':
  2342. let obj9 = {
  2343. '设施编号': e.facilityCode,
  2344. '设施名称': e.facilityName,
  2345. '设施类型': e.facilityType,
  2346. '地理编码': e.geoCode,
  2347. '区划名称': e.regionalName,
  2348. '设计容量': e.designCapacity,
  2349. '设计流量': e.designFlow,
  2350. '占地面积': e.landArea,
  2351. '材质': e.material,
  2352. '进水口数量': e.inletCount,
  2353. '出水口数量': e.outletCount,
  2354. '当前水位': e.currentWaterLevel,
  2355. '当前蓄水量': e.currentStorage,
  2356. '进水流量': e.inflowRate,
  2357. '出水流量': e.outflowRate,
  2358. '污泥去向': e.sludgeDestination,
  2359. '经度': e.longitude,
  2360. '纬度': e.latitude,
  2361. '创建时间': e.createTime,
  2362. '更新时间': e.updateTime,
  2363. '部门名称': e.deptName
  2364. }
  2365. this.$refs.detailDialog.openDetail(type,obj9);
  2366. break;
  2367. case '企业管理':
  2368. let obj10 = {
  2369. '排水企业名称': e.enterpriseName,
  2370. '排水企业位置': e.location,
  2371. '经度': e.longitude,
  2372. '纬度': e.latitude,
  2373. '所在地址': e.address,
  2374. '创建者': e.createBy,
  2375. '创建时间': e.createTime,
  2376. '更新者': e.updateBy,
  2377. '更新时间': e.updateTime,
  2378. '备注': e.remark,
  2379. '部门名称': e.deptName
  2380. }
  2381. this.$refs.detailDialog.openDetail(type,obj10);
  2382. break;
  2383. case '用户管理':
  2384. let obj11 = {
  2385. '用户名称': e.name,
  2386. '用户类型': e.customerType,
  2387. '小区名称': e.communityName,
  2388. '排水小区及门牌号': e.communityNumber,
  2389. '楼栋名称': e.buildingName,
  2390. '经度': e.longitude,
  2391. '纬度': e.latitude,
  2392. '用户号': e.userNum,
  2393. '联系方式': e.phone,
  2394. '地址': e.address,
  2395. '气体种类': e.gasType,
  2396. '住户类型': e.houseType,
  2397. '排水公司': e.drainageCompany,
  2398. '最新检查时间': e.lastCheckTime,
  2399. '最新检查报告': e.lastCheckReport,
  2400. '创建人名称': e.createName,
  2401. '创建时间': e.createTime,
  2402. '更新人名称': e.updateName,
  2403. '更新时间': e.updateTime,
  2404. '部门名称': e.deptName
  2405. }
  2406. this.$refs.detailDialog.openDetail(type,obj11);
  2407. break;
  2408. case '风险清单管理':
  2409. let obj13 = {
  2410. "风险类型": e.hiddenDangerType,
  2411. "风险等级": e.hiddenDangerLevel,
  2412. "说明": e.remark,
  2413. "图片": e.hiddenDangerUrl,
  2414. }
  2415. this.$refs.detailDialog.openDetail(type,obj13);
  2416. break;
  2417. case '设备管理':
  2418. let obj14 = {
  2419. "设备名称": e.deviceName,
  2420. "设备编码": e.deviceCode,
  2421. "设备型号": this.dict.type.heating_device_type.find(item => item.value == e.deviceType)?.label,
  2422. "设备检测指标": e.deviceDetectionIndex,
  2423. "设备厂家": e.deviceManufacturer,
  2424. "建设时间": e.deviceConstructionDate,
  2425. "经度": e.longitude,
  2426. "纬度": e.latitude,
  2427. "备注": e.remark,
  2428. }
  2429. this.$refs.detailDialog.openDetail(type,obj14);
  2430. break;
  2431. // 运营体系
  2432. case '值班管理':
  2433. let obj15 = {
  2434. "企业名称": e.companyName,
  2435. "所属行业": this.dict.type.lifeline_industry.find(item => item.value == e.industry)?.label,
  2436. "值班负责人": e.dutyLeaderName,
  2437. "负责人电话": e.leaderPhone,
  2438. "值班人员": e.dutyMembersStr,
  2439. "值班时间": e.dutyDate,
  2440. // "创建时间": row.createTime,
  2441. // "备注": row.remark,
  2442. }
  2443. this.$refs.detailDialog.openDetail(type,obj15);
  2444. break;
  2445. case '通知通告':
  2446. let obj16 = {
  2447. "公告标题": e.noticeTitle,
  2448. "公告类型": this.dict.type.sys_notice_type.find(item => item.value == e.noticeType)?.label,
  2449. "公告内容": e.noticeContent,
  2450. "公告状态": this.dict.type.sys_notice_status.find(item => item.value == e.status)?.label,
  2451. "创建者": e.createBy,
  2452. "创建时间": e.createTime,
  2453. "备注": e.remark,
  2454. }
  2455. this.$refs.detailDialog.openDetail(type,obj16);
  2456. break;
  2457. case '人员管理':
  2458. let obj17 = {
  2459. "用户账号": e.userName,
  2460. "用户昵称": e.nickName,
  2461. "用户邮箱": e.email,
  2462. "手机号码": e.phonenumber,
  2463. "用户性别": this.dict.type.sys_user_sex.find(item => item.value == e.sex)?.label,
  2464. "帐号状态": this.dict.type.sys_normal_disable.find(item => item.value == e.status)?.label,
  2465. "最后登录IP": e.loginIp,
  2466. "最后登录时间": e.loginDate,
  2467. "备注": e.remark,
  2468. }
  2469. this.$refs.detailDialog.openDetail(type,obj17);
  2470. break;
  2471. case '维护报告':
  2472. let obj18 = {
  2473. "标题": e.reportName,
  2474. "企业": this.dict.type.lifeline_enterprise.find(item => item.value == e.enterprise)?.label,
  2475. "行业": this.dict.type.lifeline_industry.find(item => item.value == e.industry)?.label,
  2476. "描述": e.reportRemark,
  2477. }
  2478. this.$refs.detailDialog.openDetail(type,obj18);
  2479. break;
  2480. // 监管平台
  2481. case "城市体检" || "维护监管" || "基础事件"|| "设备预警"|| "催办事件"|| "督办事件":
  2482. this.openEventDetail(e);
  2483. break;
  2484. case '巡检巡查任务管理':
  2485. let obj20 = {
  2486. "巡检任务名称": e.taskName,
  2487. "巡检开始时间": e.startTime,
  2488. "巡检结束时间": e.endTime,
  2489. "巡检周期": e.inspectionCycle,
  2490. "巡检任务状态": e.statusName,
  2491. "创建人名称": e.createName,
  2492. "创建时间": e.createTime,
  2493. "备注": e.notes,
  2494. "部门名称": e.deptName,
  2495. };
  2496. this.$refs.detailDialog.openDetail(type,obj20);
  2497. break;
  2498. case '巡检巡查数据管理':
  2499. let obj21 = {
  2500. "任务名称": e.taskName,
  2501. "开始时间": e.startTime,
  2502. "结束时间": e.endTime,
  2503. "巡检人名称": e.userName,
  2504. "巡查状态": e.status,
  2505. "巡查状态名称": e.statusName,
  2506. };
  2507. this.$refs.detailDialog.openDetail(type,obj21);
  2508. break;
  2509. case '预案管理':
  2510. let obj22 = {
  2511. "预案名称": e.contingencyPlanName,
  2512. "创建时间": e.createTime,
  2513. "预案内容": e.contingencyPlanContent,
  2514. };
  2515. this.$refs.detailDialog.openDetail(type,obj22);
  2516. break;
  2517. case '物资管理':
  2518. let obj23 = {
  2519. "物资名称": e.name,
  2520. "物资存放地址": e.address,
  2521. "物资类型": this.dict.type.material_type.find(item => item.value == e.type)?.label,
  2522. "所属行业": this.dict.type.lifeline_industry.find(item => item.value == e.industry)?.label,
  2523. "联系人姓名": e.contactPerson,
  2524. "联系电话": e.phone,
  2525. "经度坐标": e.longitude,
  2526. "纬度坐标": e.latitude,
  2527. "物资详细描述": e.description,
  2528. };
  2529. this.$refs.detailDialog.openDetail(type,obj23);
  2530. break;
  2531. default:
  2532. break;
  2533. }
  2534. console.log(this.currentResourceTile,e)
  2535. // this.$refs.detailDialog.openDetail(type,obj);
  2536. },
  2537. openDetail(e,tile,demoIdx){
  2538. if(tile == '重点关注'){
  2539. let obj = {
  2540. "标题":e.followName,
  2541. "附件":e.followUrl,
  2542. "创建时间":e.createTime,
  2543. "详情":e.followRemark,
  2544. }
  2545. this.$refs.detailDialog.openDetail(tile,obj);
  2546. } else if(tile == '隐患列表') {
  2547. let obj = {
  2548. "隐患标题": e.title,
  2549. "管线名称": e.pipeName,
  2550. "经度": e.longitude,
  2551. "纬度": e.latitude,
  2552. "上报时间": e.reportTime,
  2553. "上报人": e.userName,
  2554. "上报地点": e.address,
  2555. "立查立改": e.rectifiedName,
  2556. "状态": e.statusLabel,
  2557. "描述": e.description,
  2558. "整改信息": e.rectificationData,
  2559. "整改前图片": 'http://116.142.80.13:8081/group1/M00/00/2D/wKgKC2kAcBeAUz2IAAb_TSnIT-c466.png',
  2560. "整改后图片": e.rectificationUrl
  2561. }
  2562. this.$refs.detailDialog.openDetail(tile,obj);
  2563. } else if(tile == '任务列表') {
  2564. let obj = {
  2565. "任务标题": e.title,
  2566. "任务状态": this.dict.type.construction_tasks_status.find(item => item.value == e.status).label,
  2567. "开始时间": e.startTime,
  2568. "截止时间": e.deadline,
  2569. "结果反馈": e.resultFeedback,
  2570. "任务详情": e.content,
  2571. "附件":e.reportUrl,
  2572. }
  2573. this.$refs.detailDialog.openDetail(tile,obj);
  2574. } else if(tile == '预警列表') {
  2575. this.openEventDetail(e);
  2576. if(this.demoIdx == 0){
  2577. setTimeout(() => {
  2578. this.initDemoChart()
  2579. })
  2580. }
  2581. } else if (tile == "值班管理") {
  2582. let obj = {
  2583. "企业名称": e.companyName,
  2584. "所属行业": this.dict.type.lifeline_industry.find(item => item.value == e.industry)?.label,
  2585. "值班负责人": e.dutyLeaderName,
  2586. "负责人电话": e.leaderPhone,
  2587. "值班人员": e.dutyMembersStr,
  2588. "值班时间": e.dutyDate,
  2589. // "创建时间": e.createTime,
  2590. // "备注": e.remark,
  2591. };
  2592. return;
  2593. } else if (tile == "通知通告") {
  2594. let obj = {
  2595. "公告标题": e.noticeTitle,
  2596. "公告类型": this.dict.type.sys_notice_type.find(item => item.value == e.noticeType)?.label,
  2597. "公告内容": e.noticeContent,
  2598. "公告状态": this.dict.type.sys_notice_status.find(item => item.value == e.status)?.label,
  2599. "创建者": e.createBy,
  2600. "创建时间": e.createTime,
  2601. // "更新者": e.updateBy,
  2602. // "更新时间": e.updateTime,
  2603. "备注": e.remark,
  2604. // "附件": e.noticeFile,
  2605. // "发布状态": e.release,
  2606. "备注": e.remark,
  2607. };
  2608. this.$refs.detailDialog.openDetail(tile,obj);
  2609. return;
  2610. } else if (tile == "人员管理") {
  2611. let obj = {
  2612. // "部门ID": e.deptId,
  2613. "用户账号": e.userName,
  2614. "用户昵称": e.nickName,
  2615. "用户邮箱": e.email,
  2616. "手机号码": e.phonenumber,
  2617. "用户性别": this.dict.type.sys_user_sex.find(item => item.value == e.sex)?.label,
  2618. // "头像地址": e.avatar,
  2619. "帐号状态": this.dict.type.sys_normal_disable.find(item => item.value == e.status)?.label,
  2620. "最后登录IP": e.loginIp,
  2621. "最后登录时间": e.loginDate,
  2622. "备注": e.remark,
  2623. };
  2624. this.$refs.detailDialog.openDetail(tile,obj);
  2625. return;
  2626. } else if (tile == "维护报告") {
  2627. let obj = {
  2628. "标题": e.reportName,
  2629. "企业": this.dict.type.lifeline_enterprise.find(item => item.value == e.enterprise)?.label,
  2630. "行业": this.dict.type.lifeline_industry.find(item => item.value == e.industry)?.label,
  2631. "描述": e.reportRemark,
  2632. };
  2633. this.$refs.detailDialog.openDetail(tile,obj);
  2634. return;
  2635. }
  2636. },
  2637. //列表操作
  2638. handleClick(row) {
  2639. console.log(row);
  2640. },
  2641. //列表查询
  2642. TableInfoSearch() {
  2643. this.getInfoList(this.type, this.deptId, 1)
  2644. },
  2645. //重置
  2646. TableInfoReset() {
  2647. this.searchValue = ''
  2648. this.searchCode = ''
  2649. this.searchTime = ''
  2650. this.getInfoList(this.type, this.deptId, 1)
  2651. },
  2652. tableListSizeChange(pageSize) {
  2653. this.getInfoList(this.currentResourceTile, this.deptId, pageSize)
  2654. },
  2655. flyTo(currentType, longitude, latitude) {
  2656. this.$refs.supermap.dropLocation(latitude * 1, longitude * 1);
  2657. if (currentType == '管线管理') {
  2658. let ListMarkersList = []
  2659. let markersMap = {
  2660. lng: 124.59,
  2661. lat: 43.02,
  2662. icon: "kaiwa",
  2663. bindPopupHtml: "",
  2664. keepBindPopup: false,
  2665. isAggregation: false,
  2666. };
  2667. markersMap.lng = longitude * 1;
  2668. markersMap.lat = latitude * 1;
  2669. ListMarkersList.push(markersMap);
  2670. this.$refs.supermap.clearM();
  2671. this.$refs.supermap.setMarkers(ListMarkersList);
  2672. }
  2673. },
  2674. getDataBaseList(text){
  2675. this.currentResourceTile = text
  2676. // 更新当前资源标题
  2677. if(this.currentResourceTile != text){
  2678. //TODO: 更换
  2679. this.viewLeftInsideAndOut1()
  2680. }
  2681. this.getInfoList(this.currentResourceTile)
  2682. this.searchValue = ''
  2683. this.searchCode = ''
  2684. this.searchTime = ''
  2685. setTimeout(() => {
  2686. this.viewLeftInsideAndOut()
  2687. },500)
  2688. },
  2689. getInfoList(type, deptId, pageNum){
  2690. this.type=type
  2691. debugger
  2692. switch (type) {
  2693. case '维修管理':
  2694. maintenanceRepairList({
  2695. pageNum: pageNum || 1,
  2696. pageSize: 10,
  2697. ...(this.searchValue ? {
  2698. faultType: this.searchValue
  2699. } : {})
  2700. }).then(res => {
  2701. this.tablePropAndLabel = [
  2702. {prop: `id`, label: '主键ID',hidden: true},
  2703. {prop: `repairAddress`, label: '维修地址'},
  2704. {prop: `repairNature`, label: '维修性质'},
  2705. {prop: `faultType`, label: '维修故障类型'},
  2706. {prop: `longitude`, label: '经度',hidden: true},
  2707. {prop: `latitude`, label: '纬度',hidden: true},
  2708. {prop: `repairTime`, label: '维修时间',hidden: true},
  2709. {prop: `createTime`, label: '创建时间',hidden: true},
  2710. {prop: `updateTime`, label: '更新时间',hidden: true},
  2711. {prop: `remark`, label: '备注',hidden: true},
  2712. {prop: `deptName`, label: '部门名称'}
  2713. ]
  2714. // 地图绑定落点
  2715. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  2716. setTimeout(() => {
  2717. this.tableList = res.rows
  2718. this.total = res.total
  2719. if (res.rows) {
  2720. this.dataText = "暂无数据"
  2721. }
  2722. })
  2723. })
  2724. break;
  2725. case '窨井管理':
  2726. manholeList({
  2727. pageNum: pageNum || 1,
  2728. pageSize: 10,
  2729. ...(this.searchCode ? {
  2730. coverMaterial: this.searchCode
  2731. } : {}),
  2732. ...(this.searchValue ? {
  2733. roadName: this.searchValue
  2734. } : {})
  2735. }).then(res => {
  2736. this.tablePropAndLabel = [
  2737. {prop: `id`, label: '主键ID',hidden: true},
  2738. {prop: `manholeCode`, label: '窨井编码'},
  2739. {prop: `longitude`, label: '窨井经度',hidden: true},
  2740. {prop: `latitude`, label: '窨井纬度',hidden: true},
  2741. {prop: `explorationPointNo`, label: '物探点号',hidden: true},
  2742. {prop: `cityCode`, label: '地市编码',hidden: true},
  2743. {prop: `districtName`, label: '区划名称',hidden: true},
  2744. {prop: `elevation`, label: '高程',hidden: true},
  2745. {prop: `burialDepth`, label: '埋深',hidden: true},
  2746. {prop: `characteristicPoint`, label: '特征点',hidden: true},
  2747. {prop: `appurtenance`, label: '附属物',hidden: true},
  2748. {prop: `roadName`, label: '所在道路'},
  2749. {prop: `symbolRotationAngle`, label: '旋转角度',hidden: true},
  2750. {prop: `bottomDepth`, label: '井底埋深',hidden: true},
  2751. {prop: `coverShape`, label: '井盖形状',hidden: true},
  2752. {prop: `coverMaterial`, label: '井盖材质'},
  2753. {prop: `coverSize`, label: '井盖尺寸',hidden: true},
  2754. {prop: `manholeMaterial`, label: '检修井材质',hidden: true},
  2755. {prop: `neckDepth`, label: '井脖深',hidden: true},
  2756. {prop: `chamberSpecification`, label: '井室规格',hidden: true},
  2757. {prop: `installationDate`, label: '安装日期',hidden: true},
  2758. {prop: `installerName`, label: '安装单位名称',hidden: true},
  2759. {prop: `installerCreditCode`, label: '安装单位统一社会信用代码',hidden: true},
  2760. {prop: `deptName`, label: '部门名称',hidden: true}
  2761. ]
  2762. // 地图绑定落点
  2763. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  2764. setTimeout(() => {
  2765. this.tableList = res.rows
  2766. this.total = res.total
  2767. if (res.rows) {
  2768. this.dataText = "暂无数据"
  2769. }
  2770. })
  2771. })
  2772. break;
  2773. case '管线管理':
  2774. pipeList({
  2775. pageNum: pageNum || 1,
  2776. pageSize: 10,
  2777. ...(this.searchCode ? {
  2778. roadName: this.searchCode
  2779. } : {}),
  2780. ...(this.searchValue ? {
  2781. pipelineCode: this.searchValue
  2782. } : {})
  2783. }).then(res => {
  2784. this.tablePropAndLabel = [
  2785. {prop: `id`, label: '主键Id',hidden: true},
  2786. {prop: `pipelineCode`, label: '管线编码'},
  2787. {prop: `pipelineCategory`, label: '管线类别'},
  2788. {prop: `cityCode`, label: '地市编码',hidden: true},
  2789. {prop: `districtName`, label: '区划名称',hidden: true},
  2790. {prop: `startPointId`, label: '起点编号',hidden: true},
  2791. {prop: `endPointId`, label: '终点编号',hidden: true},
  2792. {prop: `startPointElevation`, label: '起点高程',hidden: true},
  2793. {prop: `endPointElevation`, label: '终点高程',hidden: true},
  2794. {prop: `startPointBurialDepth`, label: '起点埋深',hidden: true},
  2795. {prop: `endPointBurialDepth`, label: '终点埋深',hidden: true},
  2796. {prop: `pipeDiameter`, label: '管径',hidden: true},
  2797. {prop: `material`, label: '材质',hidden: true},
  2798. {prop: `pressureLevel`, label: '压力级别',hidden: true},
  2799. {prop: `pressure`, label: '压力',hidden: true},
  2800. {prop: `flowDirection`, label: '流向',hidden: true},
  2801. {prop: `pressureType`, label: '压力类型',hidden: true},
  2802. {prop: `burialTime`, label: '埋深日期',hidden: true},
  2803. {prop: `burialType`, label: '埋设类型',hidden: true},
  2804. {prop: `crossSectionalForm`, label: '断面形式',hidden: true},
  2805. {prop: `pipelineAge`, label: '管道年限',hidden: true},
  2806. {prop: `pipelineType`, label: '线型',hidden: true},
  2807. {prop: `roadName`, label: '所在道路'},
  2808. {prop: `ownershipUnitName`, label: '权属单位名称',hidden: true},
  2809. {prop: `ownershipUnitCreditCode`, label: '权属单位统一信用代码',hidden: true},
  2810. {prop: `constructionYear`, label: '建设年代',hidden: true},
  2811. {prop: `deptName`, label: '部门名称',hidden: true},
  2812. {prop: `length`, label: '长度',hidden: true},
  2813. {prop: `longitude`, label: '经度',hidden: true},
  2814. {prop: `latitude`, label: '纬度',hidden: true},
  2815. ]
  2816. // 地图绑定落点
  2817. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  2818. setTimeout(() => {
  2819. this.tableList = res.rows
  2820. this.total = res.total
  2821. if (res.rows) {
  2822. this.dataText = "暂无数据"
  2823. }
  2824. })
  2825. })
  2826. break;
  2827. case '易涝点管理':
  2828. easyFloodList({
  2829. pageNum: pageNum || 1,
  2830. pageSize: 10,
  2831. ...(this.searchValue ? {
  2832. floodName: this.searchValue
  2833. } : {}),
  2834. }).then(res => {
  2835. this.tablePropAndLabel = [
  2836. {prop: `id`, label: '主键ID',hidden: true},
  2837. {prop: `floodCode`, label: '易涝点编号',hidden: true},
  2838. {prop: `floodName`, label: '易涝点名称'},
  2839. {prop: `waterDepth`, label: '积水深度',hidden: true},
  2840. {prop: `cityCode`, label: '地市编码',hidden: true},
  2841. {prop: `districtName`, label: '区划名称'},
  2842. {prop: `longitude`, label: '经度',hidden: true},
  2843. {prop: `latitude`, label: '纬度',hidden: true},
  2844. {prop: `address`, label: '地址',hidden: true},
  2845. {prop: `roadName`, label: '所在道路'},
  2846. {prop: `maxWaterTime`, label: '最长积水时间',hidden: true},
  2847. {prop: `maxWaterArea`, label: '最大积水面积',hidden: true},
  2848. {prop: `floodReason`, label: '积水原因',hidden: true},
  2849. {prop: `responsiblePerson`, label: '负责人',hidden: true},
  2850. {prop: `contactNumber`, label: '负责人联系方式',hidden: true},
  2851. {prop: `floodOccurTime`, label: '易涝点产生时间',hidden: true},
  2852. {prop: `rectifyStatus`, label: '整改状态',hidden: true},
  2853. {prop: `rectifyTime`, label: '整改时间',hidden: true},
  2854. {prop: `rectifyMeasures`, label: '整改措施',hidden: true},
  2855. {prop: `createTime`, label: '创建时间',hidden: true},
  2856. {prop: `updateTime`, label: '更新时间',hidden: true},
  2857. {prop: `remark`, label: '备注',hidden: true},
  2858. {prop: `deptName`, label: '部门名称',hidden: true}
  2859. ]
  2860. // 地图绑定落点
  2861. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  2862. setTimeout(() => {
  2863. this.tableList = res.rows
  2864. this.total = res.total
  2865. if (res.rows) {
  2866. this.dataText = "暂无数据"
  2867. }
  2868. })
  2869. })
  2870. break;
  2871. case '堤防管理':
  2872. embankmentList({
  2873. pageNum: pageNum || 1,
  2874. pageSize: 10,
  2875. ...(this.searchValue ? {
  2876. name: this.searchValue
  2877. } : {}),
  2878. }).then(res => {
  2879. this.tablePropAndLabel = [
  2880. {prop: `id`, label: '主键ID',hidden: true},
  2881. {prop: `embankmentCode`, label: '堤防编号'},
  2882. {prop: `name`, label: '名称'},
  2883. {prop: `cityCode`, label: '地市编码',hidden: true},
  2884. {prop: `regionalName`, label: '区划名称'},
  2885. {prop: `type`, label: '类型',hidden: true},
  2886. {prop: `level`, label: '等级',hidden: true},
  2887. {prop: `typeDescription`, label: '类型描述',hidden: true},
  2888. {prop: `startPosition`, label: '起点位置',hidden: true},
  2889. {prop: `endPosition`, label: '终点位置',hidden: true},
  2890. {prop: `positionInfo`, label: '位置信息',hidden: true},
  2891. {prop: `longitude`, label: '经度',hidden: true},
  2892. {prop: `latitude`, label: '纬度',hidden: true},
  2893. {prop: `createTime`, label: '创建时间',hidden: true},
  2894. {prop: `updateTime`, label: '更新时间',hidden: true},
  2895. {prop: `deptName`, label: '部门名称',hidden: true}
  2896. ]
  2897. // 地图绑定落点
  2898. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  2899. setTimeout(() => {
  2900. this.tableList = res.rows
  2901. this.total = res.total
  2902. if (res.rows) {
  2903. this.dataText = "暂无数据"
  2904. }
  2905. })
  2906. })
  2907. break;
  2908. case '下穿立交管理':
  2909. overpassList({
  2910. pageNum: pageNum || 1,
  2911. pageSize: 10,
  2912. ...(this.searchCode ? {
  2913. overpassCode: this.searchCode
  2914. } : {}),
  2915. ...(this.searchValue ? {
  2916. overpassName: this.searchValue
  2917. } : {}),
  2918. }).then(res => {
  2919. this.tablePropAndLabel = [
  2920. {prop: `id`, label: '主键ID',hidden: true},
  2921. {prop: `overpassCode`, label: '下穿立交编号'},
  2922. {prop: `overpassName`, label: '下穿立交名称'},
  2923. {prop: `cityCode`, label: '地市编码',hidden: true},
  2924. {prop: `districtName`, label: '区划名称'},
  2925. {prop: `longitude`, label: '经度',hidden: true},
  2926. {prop: `latitude`, label: '纬度',hidden: true},
  2927. {prop: `address`, label: '地址',hidden: true},
  2928. {prop: `catchmentArea`, label: '集水面积',hidden: true},
  2929. {prop: `createBy`, label: '创建者',hidden: true},
  2930. {prop: `createTime`, label: '创建时间',hidden: true},
  2931. {prop: `updateBy`, label: '更新者',hidden: true},
  2932. {prop: `updateTime`, label: '更新时间',hidden: true},
  2933. {prop: `remark`, label: '备注',hidden: true},
  2934. {prop: `deptName`, label: '部门名称',hidden: true}
  2935. ]
  2936. // 地图绑定落点
  2937. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  2938. setTimeout(() => {
  2939. this.tableList = res.rows
  2940. this.total = res.total
  2941. if (res.rows) {
  2942. this.dataText = "暂无数据"
  2943. }
  2944. })
  2945. })
  2946. break;
  2947. case '泵站管理':
  2948. pumpingStationList({
  2949. pageNum: pageNum || 1,
  2950. pageSize: 10,
  2951. ...(this.searchCode ? {
  2952. pumpingStationCode: this.searchCode
  2953. } : {}),
  2954. ...(this.searchValue ? {
  2955. pumpingStationName: this.searchValue
  2956. } : {}),
  2957. }).then(res => {
  2958. this.tablePropAndLabel = [
  2959. {prop: `id`, label: '主键ID',hidden: true},
  2960. {prop: `pumpingStationCode`, label: '泵站编号'},
  2961. {prop: `pumpingStationName`, label: '泵站名称'},
  2962. {prop: `cityCode`, label: '地市编码',hidden: true},
  2963. {prop: `districtName`, label: '区划名称'},
  2964. {prop: `pumpingStationType`, label: '泵站类型',hidden: true},
  2965. {prop: `longitude`, label: '经度',hidden: true},
  2966. {prop: `latitude`, label: '纬度',hidden: true},
  2967. {prop: `address`, label: '地址',hidden: true},
  2968. {prop: `pumpCount`, label: '拥有泵数量',hidden: true},
  2969. {prop: `designedRainwaterDrainageCapacity`, label: '设计雨水排水能力',hidden: true},
  2970. {prop: `designedSewageDrainageCapacity`, label: '设计污水排水能力',hidden: true},
  2971. {prop: `serviceRange`, label: '服务范围',hidden: true},
  2972. {prop: `serviceArea`, label: '服务面积',hidden: true},
  2973. {prop: `responsiblePerson`, label: '责任人',hidden: true},
  2974. {prop: `contactNumber`, label: '责任人联系方式',hidden: true},
  2975. {prop: `pumpCode`, label: '泵编号',hidden: true},
  2976. {prop: `pumpPower`, label: '泵抽水功率',hidden: true},
  2977. {prop: `equipmentType`, label: '设备类型',hidden: true},
  2978. {prop: `manufacturer`, label: '生产厂家',hidden: true},
  2979. {prop: `productionDate`, label: '出厂日期',hidden: true},
  2980. {prop: `installationDate`, label: '安装日期',hidden: true},
  2981. {prop: `createTime`, label: '创建时间',hidden: true},
  2982. {prop: `updateTime`, label: '更新时间',hidden: true},
  2983. {prop: `remark`, label: '备注',hidden: true},
  2984. {prop: `deptName`, label: '部门名称',hidden: true}
  2985. ]
  2986. // 地图绑定落点
  2987. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  2988. setTimeout(() => {
  2989. this.tableList = res.rows
  2990. this.total = res.total
  2991. if (res.rows) {
  2992. this.dataText = "暂无数据"
  2993. }
  2994. })
  2995. })
  2996. break;
  2997. case '雨量站管理':
  2998. rainGaugeStationList({
  2999. pageNum: pageNum || 1,
  3000. pageSize: 10,
  3001. ...(this.searchCode ? {
  3002. stationCode: this.searchCode
  3003. } : {}),
  3004. ...(this.searchValue ? {
  3005. stationName: this.searchValue
  3006. } : {})
  3007. }).then(res => {
  3008. this.tablePropAndLabel = [
  3009. {prop: `id`, label: '主键ID',hidden: true},
  3010. {prop: `stationCode`, label: '站点编号'},
  3011. {prop: `stationName`, label: '站点名称'},
  3012. {prop: `stationType`, label: '站点类型',hidden: true},
  3013. {prop: `cityCode`, label: '地市编码',hidden: true},
  3014. {prop: `districtName`, label: '区划名称'},
  3015. {prop: `address`, label: '地址',hidden: true},
  3016. {prop: `longitude`, label: '经度',hidden: true},
  3017. {prop: `latitude`, label: '纬度',hidden: true},
  3018. {prop: `alarmWaterLevel`, label: '报警水位',hidden: true},
  3019. {prop: `facilityStatus`, label: '设施状态',hidden: true},
  3020. {prop: `createTime`, label: '数据创建时间',hidden: true},
  3021. {prop: `updateTime`, label: '数据更新时间',hidden: true},
  3022. {prop: `deptName`, label: '部门名称',hidden: true}
  3023. ]
  3024. // 地图绑定落点
  3025. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  3026. setTimeout(() => {
  3027. this.tableList = res.rows
  3028. this.total = res.total
  3029. if (res.rows) {
  3030. this.dataText = "暂无数据"
  3031. }
  3032. })
  3033. })
  3034. break;
  3035. case '污水处理厂管理':
  3036. sewageTreatmentPlantsList({
  3037. pageNum: pageNum || 1,
  3038. pageSize: 10,
  3039. ...(this.searchCode ? {
  3040. plantCode: this.searchCode
  3041. } : {}),
  3042. ...(this.searchValue ? {
  3043. plantName: this.searchValue
  3044. } : {})
  3045. }).then(res => {
  3046. this.tablePropAndLabel = [
  3047. {prop: `id`, label: '主键ID',hidden: true},
  3048. {prop: `plantCode`, label: '污水厂编号'},
  3049. {prop: `plantName`, label: '污水厂名称'},
  3050. {prop: `address`, label: '地址',hidden: true},
  3051. {prop: `cityCode`, label: '地市编码',hidden: true},
  3052. {prop: `regionalName`, label: '区划名称'},
  3053. {prop: `treatmentCapacity`, label: '处理规模',hidden: true},
  3054. {prop: `longitude`, label: '经度',hidden: true},
  3055. {prop: `latitude`, label: '纬度',hidden: true},
  3056. {prop: `roadName`, label: '所在道路'},
  3057. {prop: `constructionUnit`, label: '建设单位名称',hidden: true},
  3058. {prop: `cuc`, label: '建设单位统一社会信用代码',hidden: true},
  3059. {prop: `constructionTime`, label: '建设时间',hidden: true},
  3060. {prop: `operationUnit`, label: '运营单位名称',hidden: true},
  3061. {prop: `ouc`, label: '运营单位统一社会信用代码',hidden: true},
  3062. {prop: `managementUnit`, label: '管理单位名称',hidden: true},
  3063. {prop: `muc`, label: '管理单位统一社会信用代码',hidden: true},
  3064. {prop: `landArea`, label: '占地面积',hidden: true},
  3065. {prop: `treatmentFacilities`, label: '污水处理设施',hidden: true},
  3066. {prop: `facilityType`, label: '设施类型',hidden: true},
  3067. {prop: `drainageDestination`, label: '排水去向',hidden: true},
  3068. {prop: `treatmentProcess`, label: '处理工艺',hidden: true},
  3069. {prop: `sludgeDestination`, label: '污泥去向',hidden: true},
  3070. {prop: `createTime`, label: '数据创建时间',hidden: true},
  3071. {prop: `updateTime`, label: '数据更新时间',hidden: true},
  3072. {prop: `deptName`, label: '部门名称',hidden: true}
  3073. ]
  3074. // 地图绑定落点
  3075. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  3076. setTimeout(() => {
  3077. this.tableList = res.rows
  3078. this.total = res.total
  3079. if (res.rows) {
  3080. this.dataText = "暂无数据"
  3081. }
  3082. })
  3083. })
  3084. break;
  3085. case '调蓄设施管理':
  3086. storageFacilitiesList({
  3087. pageNum: pageNum || 1,
  3088. pageSize: 10,
  3089. ...(this.searchCode ? {
  3090. facilityCode: this.searchCode
  3091. } : {}),
  3092. ...(this.searchValue ? {
  3093. facilityName: this.searchValue
  3094. } : {})
  3095. }).then(res => {
  3096. this.tablePropAndLabel = [
  3097. {prop: `id`, label: '主键ID',hidden: true},
  3098. {prop: `facilityCode`, label: '设施编号'},
  3099. {prop: `facilityName`, label: '设施名称'},
  3100. {prop: `facilityType`, label: '设施类型',hidden: true},
  3101. {prop: `geoCode`, label: '地理编码',hidden: true},
  3102. {prop: `regionalName`, label: '区划名称'},
  3103. {prop: `designCapacity`, label: '设计容量',hidden: true},
  3104. {prop: `designFlow`, label: '设计流量',hidden: true},
  3105. {prop: `landArea`, label: '占地面积',hidden: true},
  3106. {prop: `material`, label: '材质',hidden: true},
  3107. {prop: `inletCount`, label: '进水口数量',hidden: true},
  3108. {prop: `outletCount`, label: '出水口数量',hidden: true},
  3109. {prop: `currentWaterLevel`, label: '当前水位',hidden: true},
  3110. {prop: `currentStorage`, label: '当前蓄水量',hidden: true},
  3111. {prop: `inflowRate`, label: '进水流量',hidden: true},
  3112. {prop: `outflowRate`, label: '出水流量',hidden: true},
  3113. {prop: `sludgeDestination`, label: '污泥去向',hidden: true},
  3114. {prop: `longitude`, label: '经度',hidden: true},
  3115. {prop: `latitude`, label: '纬度',hidden: true},
  3116. {prop: `createTime`, label: '创建时间',hidden: true},
  3117. {prop: `updateTime`, label: '更新时间',hidden: true},
  3118. {prop: `deptName`, label: '部门名称',hidden: true}
  3119. ]
  3120. // 地图绑定落点
  3121. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  3122. setTimeout(() => {
  3123. this.tableList = res.rows
  3124. this.total = res.total
  3125. if (res.rows) {
  3126. this.dataText = "暂无数据"
  3127. }
  3128. })
  3129. })
  3130. break;
  3131. case '企业管理':
  3132. enterpriseList({
  3133. pageNum: pageNum || 1,
  3134. pageSize: 10,
  3135. ...(this.searchValue ? {
  3136. enterpriseName: this.searchValue
  3137. } : {}),
  3138. }).then(res => {
  3139. this.tablePropAndLabel = [
  3140. {prop: `id`, label: '主键ID',hidden: true},
  3141. {prop: `enterpriseName`, label: '排水企业名称'},
  3142. {prop: `location`, label: '排水企业位置'},
  3143. {prop: `longitude`, label: '经度',hidden: true},
  3144. {prop: `latitude`, label: '纬度',hidden: true},
  3145. {prop: `address`, label: '所在地址',hidden: true},
  3146. {prop: `createBy`, label: '创建者',hidden: true},
  3147. {prop: `createTime`, label: '创建时间',hidden: true},
  3148. {prop: `updateBy`, label: '更新者',hidden: true},
  3149. {prop: `updateTime`, label: '更新时间',hidden: true},
  3150. {prop: `remark`, label: '备注',hidden: true},
  3151. {prop: `deptName`, label: '部门名称',hidden: true}
  3152. ]
  3153. // 地图绑定落点
  3154. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  3155. setTimeout(() => {
  3156. this.tableList = res.rows
  3157. this.total = res.total
  3158. if (res.rows) {
  3159. this.dataText = "暂无数据"
  3160. }
  3161. })
  3162. })
  3163. break;
  3164. case '用户管理':
  3165. selectCompanyList({
  3166. pageNum: pageNum || 1,
  3167. pageSize: 10,
  3168. ...(this.searchCode ? {
  3169. communityName: this.searchCode
  3170. } : {}),
  3171. ...(this.searchValue ? {
  3172. name: this.searchValue
  3173. } : {})
  3174. }).then(res => {
  3175. this.tablePropAndLabel = [
  3176. {prop: `id`, label: '主键',hidden: true},
  3177. {prop: `name`, label: '用户名称'},
  3178. {prop: `customerType`, label: '用户类型',hidden: true},
  3179. {prop: `communityName`, label: '小区名称'},
  3180. {prop: `communityNumber`, label: '排水小区及门牌号',hidden: true},
  3181. {prop: `buildingName`, label: '楼栋名称'},
  3182. {prop: `longitude`, label: '经度',hidden: true},
  3183. {prop: `latitude`, label: '纬度',hidden: true},
  3184. {prop: `userNum`, label: '用户号'},
  3185. {prop: `idCard`, label: '身份证号',hidden: true},
  3186. {prop: `phone`, label: '联系方式',hidden: true},
  3187. {prop: `address`, label: '地址',hidden: true},
  3188. {prop: `gasType`, label: '气体种类',hidden: true},
  3189. {prop: `houseType`, label: '住户类型',hidden: true},
  3190. {prop: `drainageCompany`, label: '排水公司',hidden: true},
  3191. {prop: `lastCheckTime`, label: '最新检查时间',hidden: true},
  3192. {prop: `lastCheckReport`, label: '最新检查报告',hidden: true},
  3193. {prop: `createTime`, label: '创建时间',hidden: true},
  3194. {prop: `updateTime`, label: '更新时间',hidden: true},
  3195. {prop: `deptName`, label: '部门名称',hidden: true}
  3196. ]
  3197. // 地图绑定落点
  3198. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  3199. setTimeout(() => {
  3200. this.tableList = res.rows
  3201. this.total = res.total
  3202. if (res.rows) {
  3203. this.dataText = "暂无数据"
  3204. }
  3205. })
  3206. })
  3207. break;
  3208. case '设备管理':
  3209. getDrainageDOOByDept().then(res => {
  3210. this.dooByDep = res.data.dooByDep
  3211. this.totalCount = res.data.totalCount
  3212. this.onlineCount = res.data.onlineCount
  3213. this.offlineCount = res.data.offlineCount
  3214. })
  3215. deviceList({
  3216. pageNum: pageNum || 1,
  3217. pageSize: 10,
  3218. ...(this.searchCode ? {
  3219. deviceCode: this.searchCode
  3220. } : {}),
  3221. ...(this.searchValue ? {
  3222. deviceName: this.searchValue
  3223. } : {}),
  3224. ...(this.searchTime ? {
  3225. deviceType: this.searchTime
  3226. } : {})
  3227. }).then(res => {
  3228. this.tablePropAndLabel = [{
  3229. prop: 'id',
  3230. label: '主键',
  3231. hidden: true
  3232. },
  3233. {
  3234. prop: `deviceName`,
  3235. label: '设备名称'
  3236. },
  3237. {
  3238. prop: `deviceModel`,
  3239. label: '设备型号'
  3240. },
  3241. ]
  3242. // 地图绑定落点
  3243. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  3244. setTimeout(() => {
  3245. this.tableList = res.rows
  3246. this.total = res.total
  3247. if (res.rows) {
  3248. this.dataText = "暂无数据"
  3249. }
  3250. })
  3251. })
  3252. break;
  3253. case '风险清单管理':
  3254. selectRiskRegisterlist({
  3255. pageNum: pageNum || 1,
  3256. pageSize: 10,
  3257. industry: 2,
  3258. ...(this.searchCode ? {
  3259. hiddenDangerLevel: this.searchCode
  3260. } : {}),
  3261. ...(this.searchValue ? {
  3262. hiddenDangerType: this.searchValue
  3263. } : {}),
  3264. ...(this.searchTime ? {
  3265. buildingName: this.searchTime
  3266. } : {})
  3267. }).then(res => {
  3268. this.tablePropAndLabel = [{
  3269. prop: 'id',
  3270. label: '主键',
  3271. hidden: true
  3272. },
  3273. {
  3274. prop: `hiddenDangerType`,
  3275. label: '风险类型'
  3276. },
  3277. {
  3278. prop: `hiddenDangerLevel`,
  3279. label: '风险等级'
  3280. },
  3281. ]
  3282. setTimeout(() => {
  3283. this.tableList = res.rows
  3284. this.total = res.total
  3285. if (res.rows) {
  3286. this.dataText = "暂无数据"
  3287. }
  3288. })
  3289. })
  3290. break;
  3291. // 监管平台
  3292. case '城市体检' || '维护监管' || '基础事件' || '设备预警' || '催办事件' || '督办事件' :
  3293. this.tableListVisible = true
  3294. selectEventList({
  3295. pageNum: pageNum || 1,
  3296. pageSize: 10,
  3297. industry : 2,
  3298. eventTypeDl: type == '城市体检' ? 100 : type == '日常监管' ? 200 : type == '基础事件' ? 300 : type == '设备预警' ? 400 : null,
  3299. ...(this.searchTime ? {
  3300. selectDay: this.searchTime
  3301. } : {}),
  3302. ...(this.searchValue ? {
  3303. eventTitle: this.searchValue
  3304. } : {})
  3305. }).then(res => {
  3306. this.tablePropAndLabel = [
  3307. {
  3308. prop: `eventId`,
  3309. label: '事件唯一标识',
  3310. hidden: true
  3311. },
  3312. {
  3313. prop: `eventTitle`,
  3314. label: '事件名称'
  3315. },
  3316. {
  3317. prop: `eventDescription`,
  3318. label: '事件描述',
  3319. hidden: true
  3320. },
  3321. {
  3322. prop: `createTime`,
  3323. label: '上报时间'
  3324. },
  3325. {
  3326. prop: `createBy`,
  3327. label: '创建人id',
  3328. hidden: true
  3329. },
  3330. {
  3331. prop: `createName`,
  3332. label: '创建人姓名',
  3333. hidden: true
  3334. },
  3335. {
  3336. prop: `eventTypeId`,
  3337. label: '事件类型',
  3338. hidden: true
  3339. },
  3340. {
  3341. prop: `longitude`,
  3342. label: '经度',
  3343. hidden: true
  3344. },
  3345. {
  3346. prop: `latitude`,
  3347. label: '纬度',
  3348. hidden: true
  3349. },
  3350. {
  3351. prop: `eventStatusLabel`,
  3352. label: '事件状态'
  3353. },
  3354. {
  3355. prop: `eventSource`,
  3356. label: '事件来源',
  3357. hidden: true
  3358. },
  3359. {
  3360. prop: `eventTypeName`,
  3361. label: '事件类型',
  3362. hidden: true
  3363. },
  3364. {
  3365. prop: `expediteStatusLabel`,
  3366. label: '催办状态',
  3367. hidden: true
  3368. },
  3369. ]
  3370. this.tableList = res.rows
  3371. this.total = res.total
  3372. // 地图绑定落点
  3373. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  3374. if (res.rows) {
  3375. this.dataText = "暂无数据"
  3376. }
  3377. })
  3378. break;
  3379. case '催办事件' :
  3380. this.tableListVisible = true
  3381. selectEventList({
  3382. pageNum: pageNum || 1,
  3383. pageSize: 10,
  3384. industry : 2,
  3385. expediteStatus: 1,
  3386. ...(this.searchTime ? {
  3387. selectDay: this.searchTime
  3388. } : {}),
  3389. ...(this.searchValue ? {
  3390. eventTitle: this.searchValue
  3391. } : {})
  3392. }).then(res => {
  3393. this.tablePropAndLabel = [
  3394. {
  3395. prop: `eventId`,
  3396. label: '事件唯一标识',
  3397. hidden: true
  3398. },
  3399. {
  3400. prop: `eventTitle`,
  3401. label: '事件名称'
  3402. },
  3403. {
  3404. prop: `eventDescription`,
  3405. label: '事件描述',
  3406. hidden: true
  3407. },
  3408. {
  3409. prop: `createTime`,
  3410. label: '上报时间'
  3411. },
  3412. {
  3413. prop: `createBy`,
  3414. label: '创建人id',
  3415. hidden: true
  3416. },
  3417. {
  3418. prop: `createName`,
  3419. label: '创建人姓名',
  3420. hidden: true
  3421. },
  3422. {
  3423. prop: `eventTypeId`,
  3424. label: '事件类型',
  3425. hidden: true
  3426. },
  3427. {
  3428. prop: `longitude`,
  3429. label: '经度',
  3430. hidden: true
  3431. },
  3432. {
  3433. prop: `latitude`,
  3434. label: '纬度',
  3435. hidden: true
  3436. },
  3437. {
  3438. prop: `eventStatusLabel`,
  3439. label: '事件状态'
  3440. },
  3441. {
  3442. prop: `eventSource`,
  3443. label: '事件来源',
  3444. hidden: true
  3445. },
  3446. {
  3447. prop: `eventTypeName`,
  3448. label: '事件类型',
  3449. hidden: true
  3450. },
  3451. {
  3452. prop: `expediteStatusLabel`,
  3453. label: '催办状态',
  3454. hidden: true
  3455. },
  3456. ]
  3457. this.tableList = res.rows
  3458. this.total = res.total
  3459. // 地图绑定落点
  3460. this.setMakersHandler(type, 'longitude', 'latitude', res.rows, 'event')
  3461. if (res.rows) {
  3462. this.dataText = "暂无数据"
  3463. }
  3464. })
  3465. break;
  3466. case '督办事件' :
  3467. this.tableListVisible = true
  3468. selectEventList({
  3469. pageNum: pageNum || 1,
  3470. pageSize: 10,
  3471. industry : 2,
  3472. superviseStatus: 1,
  3473. ...(this.searchTime ? {
  3474. selectDay: this.searchTime
  3475. } : {}),
  3476. ...(this.searchValue ? {
  3477. eventTitle: this.searchValue
  3478. } : {})
  3479. }).then(res => {
  3480. this.tablePropAndLabel = [
  3481. {
  3482. prop: `eventId`,
  3483. label: '事件唯一标识',
  3484. hidden: true
  3485. },
  3486. {
  3487. prop: `eventTitle`,
  3488. label: '事件名称'
  3489. },
  3490. {
  3491. prop: `eventDescription`,
  3492. label: '事件描述',
  3493. hidden: true
  3494. },
  3495. {
  3496. prop: `createTime`,
  3497. label: '上报时间'
  3498. },
  3499. {
  3500. prop: `createBy`,
  3501. label: '创建人id',
  3502. hidden: true
  3503. },
  3504. {
  3505. prop: `createName`,
  3506. label: '创建人姓名',
  3507. hidden: true
  3508. },
  3509. {
  3510. prop: `eventTypeId`,
  3511. label: '事件类型',
  3512. hidden: true
  3513. },
  3514. {
  3515. prop: `longitude`,
  3516. label: '经度',
  3517. hidden: true
  3518. },
  3519. {
  3520. prop: `latitude`,
  3521. label: '纬度',
  3522. hidden: true
  3523. },
  3524. {
  3525. prop: `eventStatusLabel`,
  3526. label: '事件状态'
  3527. },
  3528. {
  3529. prop: `eventSource`,
  3530. label: '事件来源',
  3531. hidden: true
  3532. },
  3533. {
  3534. prop: `eventTypeName`,
  3535. label: '事件类型',
  3536. hidden: true
  3537. },
  3538. {
  3539. prop: `expediteStatusLabel`,
  3540. label: '催办状态',
  3541. hidden: true
  3542. },
  3543. ]
  3544. this.tableList = res.rows
  3545. this.total = res.total
  3546. // 地图绑定落点
  3547. this.setMakersHandler(type, 'longitude', 'latitude', res.rows)
  3548. if (res.rows) {
  3549. this.dataText = "暂无数据"
  3550. }
  3551. })
  3552. break;
  3553. // 运管体系
  3554. case '巡检巡查任务管理':
  3555. this.tableListVisible = true
  3556. selectInspectionPatrolTaskList({
  3557. pageNum: pageNum || 1,
  3558. pageSize: 10,
  3559. type:2,
  3560. ...(this.searchCode ? {
  3561. status: this.searchCode
  3562. } : {}),
  3563. ...(this.searchValue ? {
  3564. taskName: this.searchValue
  3565. } : {})
  3566. }).then(res => {
  3567. this.tablePropAndLabel = [{
  3568. prop: 'id',
  3569. label: '主键',
  3570. hidden: true
  3571. },
  3572. {
  3573. prop: 'taskName',
  3574. label: '任务名称'
  3575. },
  3576. {
  3577. prop: 'startTime',
  3578. label: '开始时间'
  3579. },
  3580. {
  3581. prop: 'endTime',
  3582. label: '结束时间'
  3583. },
  3584. {
  3585. prop: 'inspectionCycle',
  3586. label: '巡检周期',
  3587. hidden: true
  3588. },
  3589. {
  3590. prop: 'statusName',
  3591. label: '任务状态',
  3592. hidden: true
  3593. },
  3594. {
  3595. prop: 'notes',
  3596. label: '备注',
  3597. hidden: true
  3598. },
  3599. {
  3600. prop: 'createBy',
  3601. label: '创建人id',
  3602. hidden: true
  3603. },
  3604. {
  3605. prop: 'createName',
  3606. label: '创建人名称',
  3607. hidden: true
  3608. },
  3609. {
  3610. prop: 'createTime',
  3611. label: '创建时间',
  3612. hidden: true
  3613. },
  3614. {
  3615. prop: 'updateBy',
  3616. label: '更新人id',
  3617. hidden: true
  3618. },
  3619. {
  3620. prop: 'updateName',
  3621. label: '更新人名称',
  3622. hidden: true
  3623. },
  3624. {
  3625. prop: 'updateTime',
  3626. label: '更新时间',
  3627. hidden: true
  3628. },
  3629. {
  3630. prop: 'deptId',
  3631. label: '部门id',
  3632. hidden: true
  3633. },
  3634. {
  3635. prop: 'deptName',
  3636. label: '部门名称',
  3637. hidden: true
  3638. }
  3639. ]
  3640. setTimeout(() => {
  3641. this.tableList = res.rows
  3642. this.total = res.total
  3643. })
  3644. })
  3645. break;
  3646. case '巡检巡查数据管理':
  3647. this.tableListVisible = true
  3648. selectPatrolInspectionDataList({
  3649. pageNum: pageNum || 1,
  3650. pageSize: 10,
  3651. type:2,
  3652. ...(this.searchCode ? {
  3653. userName: this.searchCode
  3654. } : {}),
  3655. ...(this.searchValue ? {
  3656. taskName: this.searchValue
  3657. } : {})
  3658. }).then(res => {
  3659. this.tablePropAndLabel = [{
  3660. prop: 'id',
  3661. label: '主键',
  3662. hidden: true
  3663. },
  3664. {
  3665. prop: 'taskName',
  3666. label: '任务名称'
  3667. },
  3668. {
  3669. prop: 'startTime',
  3670. label: '开始时间'
  3671. },
  3672. {
  3673. prop: 'endTime',
  3674. label: '结束时间'
  3675. },
  3676. {
  3677. prop: 'userId',
  3678. label: '巡检人id',
  3679. hidden: true
  3680. },
  3681. {
  3682. prop: 'userName',
  3683. label: '巡检人名称'
  3684. },
  3685. {
  3686. prop: 'status',
  3687. label: '巡查状态',
  3688. hidden: true
  3689. },
  3690. {
  3691. prop: 'statusName',
  3692. label: '巡查状态',
  3693. hidden: true
  3694. },
  3695. {
  3696. prop: 'taskTrajectory',
  3697. label: '巡检轨迹',
  3698. hidden: true
  3699. },
  3700. {
  3701. prop: 'taskId',
  3702. label: '巡检任务id',
  3703. hidden: true
  3704. },
  3705. ]
  3706. setTimeout(() => {
  3707. this.tableList = res.rows
  3708. this.total = res.total
  3709. })
  3710. })
  3711. break;
  3712. case '预案管理':
  3713. this.tableListVisible = true
  3714. selectPlanList({
  3715. pageNum: pageNum || 1,
  3716. pageSize: 10,
  3717. ...(this.searchTime ? {
  3718. dutyDate: this.searchTime
  3719. } : {}),
  3720. ...(this.searchValue ? {
  3721. contingencyPlanName: this.searchValue
  3722. } : {})
  3723. }).then(res => {
  3724. this.tablePropAndLabel = [{
  3725. prop: `id`,
  3726. label: '事件唯一标识',
  3727. hidden: true
  3728. },
  3729. {
  3730. prop: `contingencyPlanName`,
  3731. label: '预案名称'
  3732. },
  3733. {
  3734. prop: `contingencyPlanContent`,
  3735. label: '预案内容'
  3736. },
  3737. {
  3738. prop: `createTime`,
  3739. label: '创建时间'
  3740. }
  3741. ]
  3742. setTimeout(() => {
  3743. this.tableList = res.rows
  3744. this.total = res.total
  3745. })
  3746. })
  3747. break;
  3748. case '物资管理':
  3749. this.tableListVisible = true
  3750. selectMaterialsList({
  3751. pageNum: pageNum || 1,
  3752. pageSize: 10,
  3753. industry: 2,
  3754. ...(this.searchCode ? {
  3755. type: this.searchCode
  3756. } : {}),
  3757. ...(this.searchValue ? {
  3758. name: this.searchValue
  3759. } : {})
  3760. }).then(res => {
  3761. this.tablePropAndLabel = [{
  3762. prop: 'id',
  3763. label: '主键',
  3764. hidden: true
  3765. },
  3766. {
  3767. prop: 'name',
  3768. label: '物资名称'
  3769. },
  3770. {
  3771. prop: 'address',
  3772. label: '物资存放地址',
  3773. hidden: true
  3774. },
  3775. {
  3776. prop: 'type',
  3777. label: '物资类型',
  3778. isDict: true,
  3779. dictKey: 'material_type'
  3780. },
  3781. {
  3782. prop: 'industry',
  3783. label: '所属行业',
  3784. isDict: true,
  3785. dictKey: 'lifeline_industry',
  3786. hidden: true
  3787. },
  3788. {
  3789. prop: 'contactPerson',
  3790. label: '联系人'
  3791. },
  3792. {
  3793. prop: 'phone',
  3794. label: '联系电话'
  3795. },
  3796. {
  3797. prop: 'longitude',
  3798. label: '经度坐标',
  3799. hidden: true
  3800. },
  3801. {
  3802. prop: 'latitude',
  3803. label: '纬度坐标',
  3804. hidden: true
  3805. },
  3806. {
  3807. prop: 'description',
  3808. label: '物资描述',
  3809. hidden: true
  3810. }
  3811. ]
  3812. setTimeout(() => {
  3813. this.tableList = res.rows
  3814. this.total = res.total
  3815. })
  3816. })
  3817. break;
  3818. case '值班管理':
  3819. selectDutyVisualizationList({
  3820. pageNum: pageNum || 1,
  3821. pageSize: 10,
  3822. industry: 2,
  3823. ...(this.searchTime ? {
  3824. dutyDate: this.searchTime
  3825. } : {}),
  3826. ...(this.searchValue ? {
  3827. companyName: this.searchValue
  3828. } : {})
  3829. }).then(res => {
  3830. this.tablePropAndLabel = [{
  3831. prop: `company`,
  3832. label: '企业名称ID',
  3833. hidden: true
  3834. },
  3835. {
  3836. prop: `companyName`,
  3837. label: '企业名称'
  3838. },
  3839. {
  3840. prop: `dutyLeader`,
  3841. label: '值班负责人',
  3842. hidden: true
  3843. },
  3844. {
  3845. prop: `dutyLeaderName`,
  3846. label: '值班负责人'
  3847. },
  3848. {
  3849. prop: `leaderPhone`,
  3850. label: '负责人电话'
  3851. },
  3852. {
  3853. prop: `eventTitle`,
  3854. label: '事件标题',
  3855. hidden: true
  3856. },
  3857. {
  3858. prop: `eventDescription`,
  3859. label: '事件描述',
  3860. hidden: true
  3861. },
  3862. {
  3863. prop: `dutyDate`,
  3864. label: '值班时间',
  3865. hidden: true
  3866. },
  3867. {
  3868. prop: `createTime`,
  3869. label: '创建时间',
  3870. hidden: true
  3871. },
  3872. {
  3873. prop: `createBy`,
  3874. label: '创建人id',
  3875. hidden: true
  3876. },
  3877. {
  3878. prop: `createName`,
  3879. label: '创建人姓名',
  3880. hidden: true
  3881. },
  3882. {
  3883. prop: `eventTypeId`,
  3884. label: '事件类型',
  3885. hidden: true
  3886. },
  3887. {
  3888. prop: `longitude`,
  3889. label: '经度',
  3890. hidden: true
  3891. },
  3892. {
  3893. prop: `latitude`,
  3894. label: '纬度',
  3895. hidden: true
  3896. },
  3897. {
  3898. prop: `eventStatus`,
  3899. label: '事件状态',
  3900. hidden: true
  3901. },
  3902. {
  3903. prop: `eventSource`,
  3904. label: '事件来源',
  3905. hidden: true
  3906. },
  3907. {
  3908. prop: `eventTypeName`,
  3909. label: '事件类型',
  3910. hidden: true
  3911. },
  3912. {
  3913. prop: `industry`,
  3914. label: '所属行业',
  3915. hidden: true,
  3916. isDict: true,
  3917. dictKey: 'lifeline_industry'
  3918. },
  3919. ]
  3920. setTimeout(() => {
  3921. this.tableList = res.rows
  3922. this.total = res.total
  3923. })
  3924. })
  3925. break;
  3926. case '通知通告':
  3927. systemNoticeList({
  3928. pageNum: pageNum || 1,
  3929. pageSize: 10,
  3930. deptId:this.deptId,
  3931. ...(this.searchCode ? {
  3932. noticeContent: this.searchCode
  3933. } : {}),
  3934. ...(this.searchValue ? {
  3935. noticeTitle: this.searchValue
  3936. } : {})
  3937. }).then(res => {
  3938. this.tablePropAndLabel = [{
  3939. prop: `noticeId`,
  3940. label: '公告ID',
  3941. hidden: true
  3942. },
  3943. {
  3944. prop: `noticeTitle`,
  3945. label: '公告标题'
  3946. },
  3947. {
  3948. prop: `noticeType`,
  3949. label: '公告类型',
  3950. isDict: true,
  3951. dictKey: 'sys_notice_type'
  3952. },
  3953. {
  3954. prop: `noticeContent`,
  3955. label: '公告内容',
  3956. hidden: true
  3957. },
  3958. {
  3959. prop: `status`,
  3960. label: '公告状态',
  3961. isDict: true,
  3962. hidden: true,
  3963. dictKey: 'sys_notice_status'
  3964. },
  3965. ]
  3966. setTimeout(() => {
  3967. this.tableList = res.rows
  3968. this.total = res.total
  3969. })
  3970. })
  3971. break;
  3972. case '人员管理':
  3973. heatingUserList({
  3974. pageNum: pageNum || 1,
  3975. pageSize: 10,
  3976. ...(this.searchCode ? {
  3977. nickName: this.searchCode
  3978. } : {}),
  3979. ...(this.searchValue ? {
  3980. userName: this.searchValue
  3981. } : {})
  3982. }).then(res => {
  3983. this.tablePropAndLabel = [{
  3984. prop: `userId`,
  3985. label: '用户ID',
  3986. hidden: true
  3987. },
  3988. {
  3989. prop: `userName`,
  3990. label: '用户账号'
  3991. },
  3992. {
  3993. prop: `nickName`,
  3994. label: '用户昵称'
  3995. },
  3996. {
  3997. prop: `phonenumber`,
  3998. label: '手机号码'
  3999. },
  4000. {
  4001. prop: `sex`,
  4002. label: '用户性别',
  4003. hidden: true,
  4004. isDict: true,
  4005. dictKey: 'sys_user_sex'
  4006. },
  4007. {
  4008. prop: `status`,
  4009. label: '帐号状态',
  4010. hidden: true,
  4011. isDict: true,
  4012. dictKey: 'sys_normal_disable'
  4013. },
  4014. ]
  4015. setTimeout(() => {
  4016. this.tableList = res.rows
  4017. this.total = res.total
  4018. })
  4019. })
  4020. break;
  4021. case '维护报告':
  4022. getReportList({
  4023. pageNum: pageNum || 1,
  4024. pageSize: 10,
  4025. ...(this.searchCode ? {
  4026. reportName: this.searchCode
  4027. } : {}),
  4028. ...(this.searchValue ? {
  4029. reportName: this.searchValue
  4030. } : {})
  4031. }).then(res => {
  4032. this.tablePropAndLabel = [{
  4033. prop: `eventId`,
  4034. label: '事件唯一标识',
  4035. hidden: true
  4036. },
  4037. {
  4038. prop: `reportName`,
  4039. label: '标题'
  4040. },
  4041. {
  4042. prop: `reportRemark`,
  4043. label: '描述',
  4044. hidden: true
  4045. },
  4046. {
  4047. prop: `enterprise`,
  4048. label: '企业',
  4049. isDict: true,
  4050. dictKey: 'lifeline_enterprise'
  4051. },
  4052. {
  4053. prop: `industry`,
  4054. label: '行业',
  4055. isDict: true,
  4056. dictKey: 'lifeline_industry'
  4057. },
  4058. {
  4059. prop: `reportUrl`,
  4060. label: '附件',
  4061. hidden: true
  4062. },
  4063. ]
  4064. setTimeout(() => {
  4065. this.tableList = res.rows
  4066. this.total = res.total
  4067. })
  4068. })
  4069. break;
  4070. default:
  4071. break;
  4072. }
  4073. },
  4074. setMakersHandler(type, lonKey, latKey, rows) {
  4075. let ListMarkersList = []
  4076. this.latKey = latKey
  4077. this.lonKey = lonKey
  4078. for (let i = 0; i < rows.length; i++) {
  4079. let markersMap = {
  4080. lng: 124.59,
  4081. lat: 43.02,
  4082. icon: "marker",
  4083. bindPopupHtml: "",
  4084. keepBindPopup: false,
  4085. isAggregation: false,
  4086. click: 'previewPointDetail',
  4087. parameter: ''
  4088. };
  4089. switch (type) {
  4090. case "管线管理":
  4091. markersMap.icon = "kaiwa";
  4092. break;
  4093. case "维修管理":
  4094. markersMap.icon = "weixiu";
  4095. break;
  4096. case "易涝点管理":
  4097. markersMap.icon = "yilaodian";
  4098. break;
  4099. case "堤防管理":
  4100. markersMap.icon = "difang";
  4101. break;
  4102. case "下穿立交管理":
  4103. markersMap.icon = "xiachuanlijiao";
  4104. break;
  4105. case "泵站管理":
  4106. markersMap.icon = "bengzhan";
  4107. break;
  4108. case "雨量站管理":
  4109. markersMap.icon = "yuliangzhan";
  4110. break;
  4111. case "污水处理厂管理":
  4112. markersMap.icon = "wushuichulichang";
  4113. break;
  4114. case "调蓄设施管理":
  4115. markersMap.icon = "diaoxusheshi";
  4116. break;
  4117. case "窨井管理":
  4118. markersMap.icon = "yinjing";
  4119. break;
  4120. case "用户管理":
  4121. markersMap.icon = "yonghu";
  4122. break;
  4123. case "设备管理":
  4124. markersMap.icon = "shebei";
  4125. break;
  4126. case "督办事件":
  4127. markersMap.icon = "duban";
  4128. break;
  4129. case "催办事件":
  4130. markersMap.icon = "cuiban";
  4131. break;
  4132. case "企业管理":
  4133. markersMap.icon = "reyuanchang";
  4134. break;
  4135. case '城市体检':
  4136. case '维护监管':
  4137. case '基础事件':
  4138. case '设备预警':
  4139. markersMap.icon = "yujing";
  4140. break;
  4141. }
  4142. markersMap.lng = rows[i][lonKey] * 1;
  4143. markersMap.lat = rows[i][latKey] * 1;
  4144. markersMap.radius = rows[i].cameraRadius || '';
  4145. markersMap.parameter = {
  4146. type: this.currentResourceTile,
  4147. params: rows[i]
  4148. };
  4149. ListMarkersList.push(markersMap);
  4150. }
  4151. setTimeout(() => {
  4152. this.$refs.supermap.clearM();
  4153. this.$refs.supermap.setMarkers(ListMarkersList);
  4154. }, 2000)
  4155. },
  4156. // 打开事件详情弹窗
  4157. openEventDetail(obj) {
  4158. getEventDetail({
  4159. eventId: obj.eventId
  4160. }).then(res => {
  4161. this.demoIdx = obj.demoIdx
  4162. this.eventInfo = res.data
  4163. this.eventDialogVisible = true
  4164. })
  4165. },
  4166. previewPointDetail(params) {
  4167. this.previewDetail(params.params,params.type)
  4168. },
  4169. //初始化地图数据
  4170. getSuperMapUrl() {
  4171. getUserProfile().then(response => {
  4172. let mapDeptId = response.mapDeptId
  4173. if (mapDeptId == '365') {
  4174. this.num = 0
  4175. } else if (mapDeptId == '369') {
  4176. this.num = 1
  4177. } else if (mapDeptId == '371') {
  4178. this.num = 2
  4179. } else if (mapDeptId == '373') {
  4180. this.num = 3
  4181. } else if (mapDeptId == '372') {
  4182. this.num = 4
  4183. } else if (mapDeptId == '370') {
  4184. this.num = 5
  4185. }
  4186. this.$refs.supermap.removeAllviewer(mapDeptId, -1)
  4187. })
  4188. },
  4189. // 获取配置项
  4190. queryVectorTilesMapList() {
  4191. this.addVectorTilesMapList = []
  4192. queryVectorTilesMapList(Cookies.get('deptId')).then(req => {
  4193. for (let i = 0; i < req.length; i++) {
  4194. if (req[i].note == '图层过滤') {
  4195. this.addVectorTilesMapList.push(req[i])
  4196. }
  4197. }
  4198. }
  4199. )
  4200. },
  4201. //查询单选管线详情信息
  4202. getHeatingPipeByDataSetAndSmId(yId,yName) {
  4203. getDrainagePipeBySmId({yId:yId,yName:yName}).then(res => {
  4204. if (res && res.data !== null && res.data !== undefined) {
  4205. this.heatingPipe= {
  4206. '管线编码': res.data.pipelineCode,
  4207. '管线类别': res.data.pipelineCategory,
  4208. '地市编码': res.data.cityCode,
  4209. '区划名称': res.data.districtName,
  4210. '起点编号': res.data.startPointId,
  4211. '终点编号': res.data.endPointId,
  4212. '起点高程': res.data.startPointElevation,
  4213. '终点高程': res.data.endPointElevation,
  4214. '经度': res.data.longitude,
  4215. '纬度': res.data.latitude,
  4216. '起点埋深': res.data.startPointBurialDepth,
  4217. '终点埋深': res.data.endPointBurialDepth,
  4218. '管径': res.data.pipeDiameter,
  4219. '材质': res.data.material,
  4220. '保温材质': res.data.insulationMaterial,
  4221. '保温层厚度': res.data.insulationLayerThickness,
  4222. '保护层材质': res.data.protectiveLayerMaterial,
  4223. '保护层厚度': res.data.protectiveLayerThickness,
  4224. '压力级别': res.data.pressureLevel,
  4225. '压力': res.data.pressure,
  4226. '流向': res.data.flowDirection,
  4227. '埋深日期': res.data.burialDate,
  4228. '埋深类型': res.data.burialType,
  4229. '管道年限': res.data.pipelineAge,
  4230. '线型': res.data.pipelineType,
  4231. '所在道路': res.data.roadName,
  4232. '权属单位名称': res.data.ownershipUnitName,
  4233. '权属单位信用代码': res.data.ownershipUnitCreditCode,
  4234. '使用单位名称': res.data.usageUnitName,
  4235. '使用单位信用代码': res.data.usageUnitCreditCode,
  4236. '维修责任单位名称': res.data.maintenanceUnitName,
  4237. '维修责任单位信用代码': res.data.maintenanceUnitCreditCode,
  4238. '建设年代': res.data.constructionYear,
  4239. '部门名称': res.data.deptName,
  4240. '长度': res.data.length
  4241. }
  4242. this.$refs.detailDialog.openDetail('管线管理', this.heatingPipe);
  4243. }
  4244. })
  4245. },
  4246. time() {
  4247. let dt = new Date();
  4248. let y = dt.getFullYear();
  4249. let mt = dt.getMonth() + 1;
  4250. mt = mt >= 10 ? mt : '0' + mt
  4251. let day = dt.getDate() >= 10 ? dt.getDate() : '0' + dt.getDate();
  4252. let h = dt.getHours() >= 10 ? dt.getHours() : '0' + dt.getHours();
  4253. let m = dt.getMinutes() >= 10 ? dt.getMinutes() : '0' + dt.getMinutes();
  4254. let s = dt.getSeconds() >= 10 ? dt.getSeconds() : '0' + dt.getSeconds();
  4255. // document.getElementById("day").innerHTML = y + "年" + mt + "月" + day + "日";//2022年1月17日
  4256. document.getElementById("day").innerHTML = y + "." + mt + "." + day + ""; //2022年1月17日
  4257. document.getElementById("time").innerHTML = h + ":" + m + ":" + s; //16:28:03
  4258. setTimeout(() => {
  4259. this.time()
  4260. }, 1000);
  4261. },
  4262. // 左侧视窗伸缩
  4263. viewLeftInsideAndOut() {
  4264. this.isDatabaseVisible = false
  4265. if (this.viewLeftSideStatus == 'inside') {
  4266. this.getLeftSideOut()
  4267. this.viewLeftSideStatus = 'out'
  4268. }
  4269. },
  4270. viewLeftInsideAndOut1() {
  4271. if (this.viewLeftSideStatus = 'inside') {
  4272. this.getLeftSideInside()
  4273. }
  4274. },
  4275. getLeftSideOut() {
  4276. document.querySelector('.left-nav').style.transform = 'translateX(-25.2rem)'
  4277. document.querySelector('.left-nav-inside').style.transform = 'translateX(40.25rem)'
  4278. document.querySelector('.left-nav').style.transition = 'all .5s ease-in-out'
  4279. document.querySelector('.left-nav-inside').style.transition = 'all .5s ease-in-out'
  4280. document.querySelector('.map-tc-top').style.transform = 'translateX(10rem)'
  4281. document.querySelector('.map-tc-top').style.transition = 'all .5s ease-in-out'
  4282. document.querySelector('.measurement-tab').style.transform = 'translateX(10rem)'
  4283. document.querySelector('.measurement-tab').style.transition = 'all .5s ease-in-out'
  4284. },
  4285. getLeftSideInside() {
  4286. document.querySelector('.left-nav').style.transform = 'translateX(-0rem)'
  4287. document.querySelector('.left-nav-inside').style.transform = 'translateX(-40.25rem)'
  4288. document.querySelector('.left-nav').style.transition = 'all .5s ease-in-out'
  4289. document.querySelector('.left-nav-inside').style.transition = 'all .5s ease-in-out'
  4290. document.querySelector('.map-tc-top').style.transform = 'translateX(0rem)'
  4291. document.querySelector('.map-tc-top').style.transition = 'all .5s ease-in-out'
  4292. document.querySelector('.measurement-tab').style.transform = 'translateX(0rem)'
  4293. document.querySelector('.measurement-tab').style.transition = 'all .5s ease-in-out'
  4294. },
  4295. initGasChart(text) {
  4296. // const week = 9;
  4297. // const month = 9;
  4298. // const quarter = 14;
  4299. // const year = 11;
  4300. // let data = ["周一", "周二", "周三", "周四", "周五", "周六", "周日"];
  4301. // let value1 = [];
  4302. // let value2 = [];
  4303. // let value3 = [];
  4304. // for (let i = 1; i <= 31; i++) {
  4305. // value1.push((Math.random(10) * 10).toFixed(0))
  4306. // value2.push((Math.random(10) * 10).toFixed(0))
  4307. // value3.push((Math.random(10) * 10).toFixed(0))
  4308. // }
  4309. // if (text == "month") {
  4310. // data = [];
  4311. // for (let i = 1; i <= 31; i++) {
  4312. // data.push(i + "日")
  4313. // }
  4314. // } else if (text == "quarter") {
  4315. // data = ["春季", "夏季", "秋季", "冬季"];
  4316. // } else if (text == "year") {
  4317. // data = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"];
  4318. // data = ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"];
  4319. // }
  4320. selectSewageTreatmentAnalysis().then(res => {
  4321. let myChart = echarts.init(document.getElementById('w_chart1'))
  4322. let option = {
  4323. dataZoom: text == "month" ? [{
  4324. show: false,
  4325. type: 'slider', // 滑动条型数据区域缩放组件
  4326. xAxisIndex: 0, // 控制第一个 xAxis
  4327. start: 0, // 初始范围的起始百分比(0-100)
  4328. end: 20, // 初始范围的结束百分比(0-100)
  4329. bottom: 0, // 距离容器底部的距离
  4330. height: 20, // 组件高度
  4331. showDetail: false, // 是否显示详细数值
  4332. filterMode: 'filter' // 过滤模式
  4333. },
  4334. {
  4335. type: 'inside', // 内置型数据区域缩放组件
  4336. xAxisIndex: 0, // 控制第一个 xAxis
  4337. zoomOnMouseWheel: false, // 鼠标滚轮缩放
  4338. moveOnMouseMove: true, // 拖拽缩放
  4339. }
  4340. ] : text == "year" ? [{
  4341. show: false,
  4342. type: 'slider', // 滑动条型数据区域缩放组件
  4343. xAxisIndex: 0, // 控制第一个 xAxis
  4344. start: 0, // 初始范围的起始百分比(0-100)
  4345. end: 48, // 初始范围的结束百分比(0-100)
  4346. bottom: 0, // 距离容器底部的距离
  4347. height: 20, // 组件高度
  4348. showDetail: false, // 是否显示详细数值
  4349. filterMode: 'filter' // 过滤模式
  4350. },
  4351. {
  4352. type: 'inside', // 内置型数据区域缩放组件
  4353. xAxisIndex: 0, // 控制第一个 xAxis
  4354. zoomOnMouseWheel: false, // 鼠标滚轮缩放
  4355. moveOnMouseMove: true, // 拖拽缩放
  4356. }
  4357. ] : [{
  4358. show: false,
  4359. type: 'slider', // 滑动条型数据区域缩放组件
  4360. xAxisIndex: 0, // 控制第一个 xAxis
  4361. start: 0, // 初始范围的起始百分比(0-100)
  4362. end: 100, // 初始范围的结束百分比(0-100)
  4363. bottom: 0, // 距离容器底部的距离
  4364. height: 20, // 组件高度
  4365. showDetail: false, // 是否显示详细数值
  4366. filterMode: 'filter' // 过滤模式
  4367. },
  4368. {
  4369. type: 'inside', // 内置型数据区域缩放组件
  4370. xAxisIndex: 0, // 控制第一个 xAxis
  4371. zoomOnMouseWheel: false, // 鼠标滚轮缩放
  4372. moveOnMouseMove: true, // 拖拽缩放
  4373. }
  4374. ],
  4375. grid: {
  4376. top: "7%",
  4377. left: "8%",
  4378. bottom: "20%", //也可设置left和right设置距离来控制图表的大小
  4379. right: "1%"
  4380. },
  4381. tooltip: {
  4382. trigger: "axis",
  4383. formatter: (params) => {
  4384. let result = params[0].name +
  4385. // (text == "month"?"日":"") +
  4386. // (text == "year"?"月":"") +
  4387. ':'
  4388. params.forEach(item => {
  4389. result += item.value + '家<br/>'
  4390. })
  4391. return result
  4392. }
  4393. },
  4394. xAxis: {
  4395. data: res.data.labels,
  4396. axisLine: {
  4397. show: true, //隐藏X轴轴线
  4398. lineStyle: {
  4399. color: '#67C9D2'
  4400. }
  4401. },
  4402. axisTick: {
  4403. show: true //隐藏X轴刻度
  4404. },
  4405. axisLabel: {
  4406. show: true,
  4407. textStyle: {
  4408. color: "#fff" //X轴文字颜色
  4409. }
  4410. },
  4411. },
  4412. yAxis: [{
  4413. type: "value",
  4414. nameTextStyle: {
  4415. color: "#ebf8ac"
  4416. },
  4417. splitLine: {
  4418. show: false
  4419. },
  4420. axisTick: {
  4421. show: false
  4422. },
  4423. axisLine: {
  4424. show: true,
  4425. lineStyle: {
  4426. color: '#67C9D2'
  4427. }
  4428. },
  4429. axisLabel: {
  4430. show: true,
  4431. textStyle: {
  4432. color: "#fff"
  4433. }
  4434. },
  4435. },
  4436. {
  4437. type: "value",
  4438. // name: "同比",
  4439. nameTextStyle: {
  4440. color: "#ebf8ac"
  4441. },
  4442. position: "right",
  4443. splitLine: {
  4444. show: false
  4445. },
  4446. axisTick: {
  4447. show: false
  4448. },
  4449. axisLine: {
  4450. show: false
  4451. },
  4452. axisLabel: {
  4453. show: false,
  4454. formatter: "{value} %", //右侧Y轴文字显示
  4455. textStyle: {
  4456. color: "#ebf8ac"
  4457. }
  4458. }
  4459. },
  4460. {
  4461. type: "value",
  4462. gridIndex: 0,
  4463. min: 50,
  4464. max: 100,
  4465. splitNumber: 8,
  4466. splitLine: {
  4467. show: false
  4468. },
  4469. axisLine: {
  4470. show: false
  4471. },
  4472. axisTick: {
  4473. show: false
  4474. },
  4475. axisLabel: {
  4476. show: false
  4477. },
  4478. splitArea: {
  4479. show: true,
  4480. areaStyle: {
  4481. color: ["rgba(250,250,250,0.0)", "rgba(250,250,250,0.05)"]
  4482. }
  4483. }
  4484. }
  4485. ],
  4486. series: [{
  4487. // name: "0~99m³",
  4488. type: "bar",
  4489. // barWidth: text == "month" ? month : text == "quarter" ? quarter : text == "year" ?
  4490. // year : week,
  4491. itemStyle: {
  4492. color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
  4493. offset: 0,
  4494. color: "#1282FA"
  4495. },
  4496. {
  4497. offset: 1,
  4498. color: "#4693EC"
  4499. }
  4500. ]),
  4501. borderWidth: 2,
  4502. borderColor: new echarts.graphic.LinearGradient(
  4503. 0, 0, 0, 1,
  4504. [{
  4505. offset: 0,
  4506. color: '#fff'
  4507. },
  4508. {
  4509. offset: 1,
  4510. color: '#93B4EC'
  4511. },
  4512. ]
  4513. ),
  4514. shadowColor: 'blue',
  4515. shadowBlur: 12,
  4516. shadowOffsetX: 0,
  4517. shadowOffsetY: 0,
  4518. },
  4519. data: res.data.values
  4520. },
  4521. // {
  4522. // name: "100~299m³",
  4523. // type: "bar",
  4524. // barWidth: text == "month" ? month : text == "quarter" ? quarter : text == "year" ?
  4525. // year : week,
  4526. // itemStyle: {
  4527. // color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
  4528. // offset: 0,
  4529. // color: "#29CAE6"
  4530. // },
  4531. // {
  4532. // offset: 1,
  4533. // color: "#4693EC"
  4534. // }
  4535. // ]),
  4536. // borderWidth: 2,
  4537. // borderColor: new echarts.graphic.LinearGradient(
  4538. // 0, 0, 0, 1,
  4539. // [{
  4540. // offset: 0,
  4541. // color: '#fff'
  4542. // },
  4543. // {
  4544. // offset: 1,
  4545. // color: '#93B4EC'
  4546. // },
  4547. // ]
  4548. // ),
  4549. // shadowColor: 'blue',
  4550. // shadowBlur: 12,
  4551. // shadowOffsetX: 0,
  4552. // shadowOffsetY: 0,
  4553. // },
  4554. // data: value2
  4555. // },
  4556. // {
  4557. // name: "300m³以上",
  4558. // type: "bar",
  4559. // barWidth: text == "month" ? month : text == "quarter" ? quarter : text == "year" ?
  4560. // year : week,
  4561. // itemStyle: {
  4562. // color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
  4563. // offset: 0,
  4564. // color: "#29CAE6"
  4565. // },
  4566. // {
  4567. // offset: 1,
  4568. // color: "#4693EC"
  4569. // }
  4570. // ]),
  4571. // borderWidth: 2,
  4572. // borderColor: new echarts.graphic.LinearGradient(
  4573. // 0, 0, 0, 1,
  4574. // [{
  4575. // offset: 0,
  4576. // color: '#fff'
  4577. // },
  4578. // {
  4579. // offset: 1,
  4580. // color: '#93B4EC'
  4581. // },
  4582. // ]
  4583. // ),
  4584. // shadowColor: 'blue',
  4585. // shadowBlur: 12,
  4586. // shadowOffsetX: 0,
  4587. // shadowOffsetY: 0,
  4588. // },
  4589. // data: value3
  4590. // }
  4591. ]
  4592. }
  4593. myChart.setOption(option)
  4594. const chartName = "污水处理量分析";
  4595. if (this.intervalArr.includes(chartName)) {
  4596. return;
  4597. }
  4598. this.intervalArr.push(chartName);
  4599. // 获取数据的总长度,用于循环
  4600. let dataLength = option.series[0].data.length;
  4601. // 设置一个计数器
  4602. let currentIndex = -1;
  4603. // 使用 setInterval 实现自动轮播
  4604. setInterval(function() {
  4605. // 显示 tooltip 自动轮播效果
  4606. currentIndex = (currentIndex + 1) % dataLength;
  4607. myChart.dispatchAction({
  4608. type: 'showTip',
  4609. seriesIndex: 0,
  4610. dataIndex: currentIndex
  4611. });
  4612. }, 2000); // 每隔 2000 毫秒切换一次
  4613. })
  4614. },
  4615. // 用气量分析时间段变化
  4616. gasDateHasChanged(e) {
  4617. const target = e.target.closest('i')
  4618. // 通过自定义 data 属性获取数据
  4619. const text = target.dataset.text
  4620. this.gasTimePeriod = text
  4621. // 更新图表数据
  4622. // this.initGasChart(text)
  4623. },
  4624. // 巡检里程分析时间段变化
  4625. inspectionDateHasChanged(e) {
  4626. const target = e.target.closest('i')
  4627. // 通过自定义 data 属性获取数据
  4628. const text = target.dataset.text
  4629. this.inspectionTimePeriod = text
  4630. },
  4631. checkoutTagName(tagName) {
  4632. if (this.currentTagName == tagName) return;
  4633. this.currentTagName = tagName
  4634. },
  4635. initCharts() {
  4636. let myChart1 = echarts.init(document.getElementById('inspection-mileage-analysis'))
  4637. let myChart2 = echarts.init(document.getElementById('pipeline-type-analysis'))
  4638. let myChart3 = echarts.init(document.getElementById('gas-consumption-analysis'))
  4639. let myChart4 = echarts.init(document.getElementById('assessment-and-evaluation'))
  4640. myChart1.setOption({
  4641. grid: {
  4642. top: "10%",
  4643. right: '5%',
  4644. bottom: "35%" //也可设置left和right设置距离来控制图表的大小
  4645. },
  4646. tooltip: {
  4647. trigger: "axis",
  4648. axisPointer: {
  4649. type: "shadow",
  4650. label: {
  4651. show: true
  4652. }
  4653. }
  4654. },
  4655. xAxis: {
  4656. data: [
  4657. "1月",
  4658. "2月",
  4659. "3月",
  4660. "4月",
  4661. "5月",
  4662. "6月",
  4663. "7月",
  4664. "8月",
  4665. "9月",
  4666. "10月",
  4667. "11月",
  4668. "12月"
  4669. ],
  4670. axisLine: {
  4671. show: true, //隐藏X轴轴线
  4672. lineStyle: {
  4673. color: '#B2BFB6'
  4674. }
  4675. },
  4676. axisTick: {
  4677. show: true //隐藏X轴刻度
  4678. },
  4679. axisLabel: {
  4680. show: true,
  4681. textStyle: {
  4682. color: "#B2BFB6" //X轴文字颜色
  4683. }
  4684. },
  4685. },
  4686. yAxis: [{
  4687. type: "value",
  4688. nameTextStyle: {
  4689. color: "#ebf8ac"
  4690. },
  4691. splitLine: {
  4692. show: false
  4693. },
  4694. axisTick: {
  4695. show: true
  4696. },
  4697. axisLine: {
  4698. show: true,
  4699. lineStyle: {
  4700. color: '#FFFFFF'
  4701. }
  4702. },
  4703. axisLabel: {
  4704. show: true,
  4705. textStyle: {
  4706. color: "#B2BFB6"
  4707. }
  4708. },
  4709. },
  4710. {
  4711. nameTextStyle: {
  4712. color: "#ebf8ac"
  4713. },
  4714. position: "right",
  4715. splitLine: {
  4716. show: false
  4717. },
  4718. axisTick: {
  4719. show: false
  4720. },
  4721. axisLine: {
  4722. show: false
  4723. },
  4724. axisLabel: {
  4725. show: false,
  4726. formatter: "{value} %", //右侧Y轴文字显示
  4727. textStyle: {
  4728. color: "#ebf8ac"
  4729. }
  4730. }
  4731. },
  4732. {
  4733. type: "value",
  4734. gridIndex: 0,
  4735. min: 50,
  4736. max: 100,
  4737. splitNumber: 8,
  4738. splitLine: {
  4739. show: false
  4740. },
  4741. axisLine: {
  4742. show: false
  4743. },
  4744. axisTick: {
  4745. show: false
  4746. },
  4747. axisLabel: {
  4748. show: false
  4749. },
  4750. splitArea: {
  4751. show: true,
  4752. areaStyle: {
  4753. color: ["rgba(250,250,250,0.0)", "rgba(250,250,250,0.05)"]
  4754. }
  4755. }
  4756. }
  4757. ],
  4758. series: [{
  4759. name: "销售水量",
  4760. type: "line",
  4761. yAxisIndex: 1, //使用的 y 轴的 index,在单个图表实例中存在多个 y轴的时候有用
  4762. smooth: true, //平滑曲线显示
  4763. showAllSymbol: true, //显示所有图形。
  4764. symbol: "circle", //标记的图形为实心圆
  4765. symbolSize: 1, //标记的大小
  4766. itemStyle: {
  4767. //折线拐点标志的样式
  4768. color: "#058cff"
  4769. },
  4770. lineStyle: {
  4771. color: "#2689F9"
  4772. },
  4773. data: [55, 81, 30, 58, 17, 80, 25, 58, 80, 23, 79, 40]
  4774. },
  4775. {
  4776. name: "主营业务",
  4777. type: "bar",
  4778. barWidth: 15,
  4779. itemStyle: {
  4780. normal: {
  4781. color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
  4782. offset: 0,
  4783. color: "#B5C3DC"
  4784. },
  4785. {
  4786. offset: 1,
  4787. color: "#34445E"
  4788. }
  4789. ])
  4790. }
  4791. },
  4792. data: [55, 81, 30, 58, 17, 80, 25, 58, 80, 23, 79, 40]
  4793. }
  4794. ]
  4795. })
  4796. myChart2.setOption({
  4797. grid: {
  4798. top: "15%",
  4799. right: '5%',
  4800. left: '15%',
  4801. bottom: "25%" //也可设置left和right设置距离来控制图表的大小
  4802. },
  4803. tooltip: {
  4804. trigger: 'axis',
  4805. axisPointer: {
  4806. // Use axis to trigger tooltip
  4807. type: 'shadow' // 'shadow' as default; can also be 'line' or 'shadow'
  4808. }
  4809. },
  4810. legend: {
  4811. top: '0%',
  4812. right: '5%',
  4813. textStyle: {
  4814. color: '#556677'
  4815. }
  4816. },
  4817. xAxis: {
  4818. type: 'value',
  4819. axisTick: {
  4820. show: false
  4821. },
  4822. axisLabel: {
  4823. show: false,
  4824. },
  4825. },
  4826. yAxis: {
  4827. type: 'category',
  4828. axisLabel: {
  4829. show: true,
  4830. textStyle: {
  4831. color: "#fff"
  4832. }
  4833. },
  4834. data: ['四平市', '铁东区', '铁西区', '双辽市', '伊通县', '梨树县']
  4835. },
  4836. series: [{
  4837. name: '次高压',
  4838. type: 'bar',
  4839. stack: 'total',
  4840. label: {
  4841. show: true
  4842. },
  4843. emphasis: {
  4844. focus: 'series'
  4845. },
  4846. itemStyle: {
  4847. normal: {
  4848. color: '#0080D5'
  4849. }
  4850. },
  4851. data: [320, 302, 301, 334, 390, 330, 320]
  4852. },
  4853. {
  4854. name: '中压',
  4855. type: 'bar',
  4856. stack: 'total',
  4857. label: {
  4858. show: true
  4859. },
  4860. emphasis: {
  4861. focus: 'series'
  4862. },
  4863. itemStyle: {
  4864. normal: {
  4865. color: '#774BB6'
  4866. }
  4867. },
  4868. data: [150, 212, 201, 154, 190, 330, 410]
  4869. },
  4870. {
  4871. name: '低压',
  4872. type: 'bar',
  4873. stack: 'total',
  4874. label: {
  4875. show: true
  4876. },
  4877. itemStyle: {
  4878. normal: {
  4879. color: '#069DF9'
  4880. }
  4881. },
  4882. emphasis: {
  4883. focus: 'series'
  4884. },
  4885. data: [820, 832, 901, 934, 1290, 1330, 1320]
  4886. }
  4887. ]
  4888. })
  4889. myChart3.setOption({
  4890. grid: {
  4891. top: "10%",
  4892. right: '5%',
  4893. bottom: "35%" //也可设置left和right设置距离来控制图表的大小
  4894. },
  4895. tooltip: {
  4896. trigger: "axis",
  4897. axisPointer: {
  4898. type: "shadow",
  4899. label: {
  4900. show: true
  4901. }
  4902. }
  4903. },
  4904. xAxis: {
  4905. data: [
  4906. "1月",
  4907. "2月",
  4908. "3月",
  4909. "4月",
  4910. "5月",
  4911. "6月",
  4912. "7月",
  4913. "8月",
  4914. "9月",
  4915. "10月",
  4916. "11月",
  4917. "12月"
  4918. ],
  4919. axisLine: {
  4920. show: true, //隐藏X轴轴线
  4921. lineStyle: {
  4922. color: '#B2BFB6'
  4923. }
  4924. },
  4925. axisTick: {
  4926. show: true //隐藏X轴刻度
  4927. },
  4928. axisLabel: {
  4929. show: true,
  4930. textStyle: {
  4931. color: "#B2BFB6" //X轴文字颜色
  4932. }
  4933. },
  4934. },
  4935. yAxis: [{
  4936. type: "value",
  4937. nameTextStyle: {
  4938. color: "#ebf8ac"
  4939. },
  4940. splitLine: {
  4941. show: false
  4942. },
  4943. axisTick: {
  4944. show: true
  4945. },
  4946. axisLine: {
  4947. show: true,
  4948. lineStyle: {
  4949. color: '#FFFFFF'
  4950. }
  4951. },
  4952. axisLabel: {
  4953. show: true,
  4954. textStyle: {
  4955. color: "#B2BFB6"
  4956. }
  4957. },
  4958. },
  4959. {
  4960. nameTextStyle: {
  4961. color: "#ebf8ac"
  4962. },
  4963. position: "right",
  4964. splitLine: {
  4965. show: false
  4966. },
  4967. axisTick: {
  4968. show: false
  4969. },
  4970. axisLine: {
  4971. show: false
  4972. },
  4973. axisLabel: {
  4974. show: false,
  4975. formatter: "{value} %", //右侧Y轴文字显示
  4976. textStyle: {
  4977. color: "#ebf8ac"
  4978. }
  4979. }
  4980. },
  4981. {
  4982. type: "value",
  4983. gridIndex: 0,
  4984. min: 50,
  4985. max: 100,
  4986. splitNumber: 8,
  4987. splitLine: {
  4988. show: false
  4989. },
  4990. axisLine: {
  4991. show: false
  4992. },
  4993. axisTick: {
  4994. show: false
  4995. },
  4996. axisLabel: {
  4997. show: false
  4998. },
  4999. splitArea: {
  5000. show: true,
  5001. areaStyle: {
  5002. color: ["rgba(250,250,250,0.0)", "rgba(250,250,250,0.05)"]
  5003. }
  5004. }
  5005. }
  5006. ],
  5007. series: [{
  5008. name: "销售水量",
  5009. type: "line",
  5010. yAxisIndex: 1, //使用的 y 轴的 index,在单个图表实例中存在多个 y轴的时候有用
  5011. smooth: true, //平滑曲线显示
  5012. showAllSymbol: true, //显示所有图形。
  5013. symbol: "circle", //标记的图形为实心圆
  5014. symbolSize: 1, //标记的大小
  5015. itemStyle: {
  5016. //折线拐点标志的样式
  5017. color: "#058cff"
  5018. },
  5019. lineStyle: {
  5020. color: "#2689F9"
  5021. },
  5022. data: [55, 81, 30, 58, 17, 80, 25, 58, 80, 23, 79, 40]
  5023. },
  5024. {
  5025. name: "主营业务",
  5026. type: "bar",
  5027. barWidth: 15,
  5028. itemStyle: {
  5029. normal: {
  5030. color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
  5031. offset: 0,
  5032. color: "#B5C3DC"
  5033. },
  5034. {
  5035. offset: 1,
  5036. color: "#34445E"
  5037. }
  5038. ])
  5039. }
  5040. },
  5041. data: [55, 81, 30, 58, 17, 80, 25, 58, 80, 23, 79, 40]
  5042. }
  5043. ]
  5044. })
  5045. myChart4.setOption({
  5046. color: ['#46E8FE', '#F1F745', '#45CE32'],
  5047. tooltip: {
  5048. show: true
  5049. },
  5050. series: [{
  5051. type: "pie",
  5052. radius: ["60%", "50%"],
  5053. center: ["60%", "40%"],
  5054. hoverAnimation: false,
  5055. z: 10,
  5056. itemStyle: {
  5057. // normal: {
  5058. // borderWidth:5,
  5059. // borderColor: "#003359"
  5060. // }
  5061. },
  5062. label: {
  5063. show: false
  5064. },
  5065. data: [100, 38, 43],
  5066. labelLine: {
  5067. show: false
  5068. }
  5069. }]
  5070. })
  5071. },
  5072. //icon替换
  5073. getIcon(index) {
  5074. return this.hoveredIndexes.includes(index) ? this.hoveredIcon : this.normalIcon;
  5075. },
  5076. handleMouseOver(index) {
  5077. if (!this.hoveredIndexes.includes(index)) {
  5078. this.hoveredIndexes.push(index); // 添加到被hover的数组中
  5079. }
  5080. },
  5081. handleMouseLeave(index) {
  5082. const indexToRemove = this.hoveredIndexes.indexOf(index);
  5083. if (indexToRemove !== -1) {
  5084. this.hoveredIndexes.splice(indexToRemove, 1); // 从数组中移除索引,恢复普通图标状态
  5085. }
  5086. },
  5087. //点击滚动
  5088. scrollToSection(index) {
  5089. const element = document.getElementById(index);
  5090. if (element) {
  5091. element.scrollIntoView({
  5092. behavior: 'smooth'
  5093. });
  5094. }
  5095. console.log(index)
  5096. },
  5097. //序号+1
  5098. computedIndex(index) {
  5099. return index + 1;
  5100. },
  5101. layerCheck() {
  5102. this.$refs.supermap.reload(this.checkedBaseDOptions)
  5103. },
  5104. handleCheckChange() {
  5105. // 获取所有tree的叶子节点
  5106. const allLeafNodes = [];
  5107. // 排水-雨水
  5108. if (this.$refs.twoDLayers_paishui_yushui) {
  5109. const leafNodes3 = this.$refs.twoDLayers_paishui_yushui.getCheckedNodes(true);
  5110. allLeafNodes.push(...leafNodes3);
  5111. }
  5112. // 排水-污水
  5113. if (this.$refs.twoDLayers_paishui_wushui) {
  5114. const leafNodes3 = this.$refs.twoDLayers_paishui_wushui.getCheckedNodes(true);
  5115. allLeafNodes.push(...leafNodes3);
  5116. }
  5117. // 排水-合流
  5118. if (this.$refs.twoDLayers_paishui_heliu) {
  5119. const leafNodes3 = this.$refs.twoDLayers_paishui_heliu.getCheckedNodes(true);
  5120. allLeafNodes.push(...leafNodes3);
  5121. }
  5122. // 排水-雨水
  5123. if (this.$refs.threeDLayers_paishui_yushui) {
  5124. const leafNodes3 = this.$refs.threeDLayers_paishui_yushui.getCheckedNodes(true);
  5125. allLeafNodes.push(...leafNodes3);
  5126. }
  5127. // 排水-污水
  5128. if (this.$refs.threeDLayers_paishui_wushui) {
  5129. const leafNodes3 = this.$refs.threeDLayers_paishui_wushui.getCheckedNodes(true);
  5130. allLeafNodes.push(...leafNodes3);
  5131. }
  5132. // 排水-合流
  5133. if (this.$refs.threeDLayers_paishui_heliu) {
  5134. const leafNodes3 = this.$refs.threeDLayers_paishui_heliu.getCheckedNodes(true);
  5135. allLeafNodes.push(...leafNodes3);
  5136. }
  5137. // 提取需要的属性
  5138. this.checkedOptions = allLeafNodes.map(node => node.url).filter(url => url);
  5139. this.handleCheckedOptions()
  5140. },
  5141. handleCheckedOptions() {
  5142. this.$refs.supermap.addLifelineOpen(this.checkedOptions)
  5143. },
  5144. }
  5145. }
  5146. </script>
  5147. <style rel="stylesheet/scss" lang="scss" scoped>
  5148. @import '@/assets/styles/base.scss';
  5149. // 动画
  5150. //标题初始动画
  5151. @keyframes headermove {
  5152. 0% {
  5153. transform: translateY(-200px);
  5154. }
  5155. 100% {
  5156. transform: translateY(0);
  5157. }
  5158. }
  5159. @keyframes btmmove2 {
  5160. 0% {
  5161. transform: translateY(-100px);
  5162. }
  5163. 100% {
  5164. transform: translateY(0);
  5165. }
  5166. }
  5167. //雷达初始化
  5168. @keyframes radarOP {
  5169. 0% {
  5170. opacity: 0;
  5171. }
  5172. 100% {
  5173. opacity: 1;
  5174. }
  5175. }
  5176. //按钮初始化
  5177. @keyframes btnRun {
  5178. 0% {
  5179. transform: translateY(500px);
  5180. }
  5181. 100% {
  5182. transform: translateY(0);
  5183. }
  5184. }
  5185. @keyframes topDown {
  5186. 0% {
  5187. transform: translateY(-1000px);
  5188. }
  5189. 100% {
  5190. transform: translateY(0px);
  5191. }
  5192. }
  5193. @keyframes movetop2 {
  5194. 0% {
  5195. transform: translateY(0px);
  5196. }
  5197. 50% {
  5198. transform: translateY(-18px);
  5199. }
  5200. 100% {
  5201. transform: translateY(0px);
  5202. }
  5203. }
  5204. @keyframes moveLeft {
  5205. 0% {
  5206. transform: translateX(-200px);
  5207. }
  5208. 100% {
  5209. transform: translateY(0);
  5210. }
  5211. }
  5212. @keyframes moveRight {
  5213. 0% {
  5214. transform: translateX(1000px);
  5215. }
  5216. 100% {
  5217. transform: translateY(0);
  5218. }
  5219. }
  5220. .ps_sbhz_flex_c{
  5221. div.class-1{
  5222. b{
  5223. background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#b8ca43));
  5224. background: linear-gradient(top, #fff, #b8ca43);
  5225. -webkit-background-clip: text; /* Chrome, Safari */
  5226. background-clip: text;
  5227. -webkit-text-fill-color: transparent; /* Chrome, Safari */
  5228. color: transparent; /* 兼容不支持background-clip的浏览器 */
  5229. /*box-shadow: 0px 0px 5px #3063ca;*/
  5230. }
  5231. }
  5232. div.class-2{
  5233. b{
  5234. background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#2c3ec5));
  5235. background: linear-gradient(top, #fff, #2c3ec5);
  5236. -webkit-background-clip: text; /* Chrome, Safari */
  5237. background-clip: text;
  5238. -webkit-text-fill-color: transparent; /* Chrome, Safari */
  5239. color: transparent; /* 兼容不支持background-clip的浏览器 */
  5240. /*box-shadow: 0px 0px 5px #3063ca;*/
  5241. }
  5242. }
  5243. div.class-3{
  5244. b{
  5245. background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#a1e1fb));
  5246. background: linear-gradient(top, #fff, #a1e1fb);
  5247. -webkit-background-clip: text; /* Chrome, Safari */
  5248. background-clip: text;
  5249. -webkit-text-fill-color: transparent; /* Chrome, Safari */
  5250. color: transparent; /* 兼容不支持background-clip的浏览器 */
  5251. /*box-shadow: 0px 0px 5px #3063ca;*/
  5252. }
  5253. }
  5254. }
  5255. ::v-deep .el-icon-date::before{
  5256. position: relative !important;
  5257. bottom: 22% !important;
  5258. }
  5259. ::v-deep .el-select__caret::before{
  5260. position: relative !important;
  5261. top: -22% !important;
  5262. }
  5263. .titleBar {
  5264. width: 450px;
  5265. height: 40px;
  5266. background: url('~@/assets/images/lookall/titleBar.png') 0px 0 no-repeat;
  5267. background-size: 100% 100%;
  5268. }
  5269. .titleBar::after {
  5270. content: attr(data-text);
  5271. position: relative;
  5272. display: inline-block;
  5273. width: 30%;
  5274. height: 100%;
  5275. text-align: left;
  5276. letter-spacing: 2px;
  5277. top: 12%;
  5278. text-align: center;
  5279. font-size: 17px;
  5280. font-weight: 600;
  5281. left: 5%;
  5282. color: #fff;
  5283. font-family: 'pmzd';
  5284. background: linear-gradient(to bottom, #fff, #8CC1E6);
  5285. background-clip: text;
  5286. color: transparent;
  5287. }
  5288. .layer-Control {
  5289. position: absolute;
  5290. right: 470px;
  5291. top: 295px;
  5292. width: 500px;
  5293. height: 142px;
  5294. border: solid 1px #0f7caf;
  5295. background: color(srgb 0.06 0.22 0.37 / 0.7);
  5296. padding: 15px;
  5297. }
  5298. .layer-Control span{
  5299. display: block;
  5300. font-size: 14px;
  5301. color: #fff;
  5302. height: 30px;
  5303. line-height: 30px;
  5304. font-weight: 900;
  5305. }
  5306. .layer-Control::after{
  5307. content: '';
  5308. display: block;
  5309. background: url("../../assets/index_img/look_jt.png") no-repeat top;
  5310. width: 60px;
  5311. height: 13px;
  5312. background-size: 100% 100%;
  5313. position: absolute;
  5314. top: -9px;
  5315. right: -3px;
  5316. }
  5317. .task-item-unprocessed {
  5318. position: absolute;
  5319. width: 14%;
  5320. height: 104%;
  5321. top: -6%;
  5322. right: -0.7%;
  5323. background: url('~@/assets/images/lookall/notCompleted.png') 0px 0 no-repeat;
  5324. background-size: 100% 100%;
  5325. }
  5326. .task-item-processing {
  5327. position: absolute;
  5328. width: 14%;
  5329. height: 104%;
  5330. top: -6%;
  5331. right: -0.7%;
  5332. background: url('~@/assets/images/lookall/Processing.png') 0px 0 no-repeat;
  5333. background-size: 100% 100%;
  5334. }
  5335. .task-item-completed {
  5336. position: absolute;
  5337. width: 14%;
  5338. height: 104%;
  5339. top: -6%;
  5340. right: -0.7%;
  5341. background: url('~@/assets/images/lookall/completed.png') 0px 0 no-repeat;
  5342. background-size: 100% 100%;
  5343. }
  5344. .event-item-unprocessed {
  5345. position: absolute;
  5346. width: 18%;
  5347. height: 35%;
  5348. top: 27%;
  5349. right: 77%;
  5350. background: url('~@/assets/images/lookall/eventNotCompleted.png') 0px 0 no-repeat;
  5351. background-size: 100% 100%;
  5352. }
  5353. .event-item-completed {
  5354. position: absolute;
  5355. width: 18%;
  5356. height: 35%;
  5357. top: 27%;
  5358. right: 77%;
  5359. background: url('~@/assets/images/lookall/eventCompleted.png') 0px 0 no-repeat;
  5360. background-size: 100% 100%;
  5361. }
  5362. // 已整改
  5363. .risk-item-rectified {}
  5364. //未整改
  5365. .risk-item-unRectified {
  5366. background-color: rgba(#C13232, .5) !important;
  5367. }
  5368. //整改中
  5369. .risk-item-underRectification {}
  5370. //无需整改
  5371. .risk-item-noRectificationRequired {
  5372. background-color: rgba(#B96623, .5) !important;
  5373. }
  5374. div ::-webkit-scrollbar {
  5375. width: 0;
  5376. height: 0;
  5377. }
  5378. .bg-contain {
  5379. position: absolute;
  5380. top: -1.4%;
  5381. width: 100%;
  5382. height: 100vh;
  5383. background: url('~@/assets/images/lookall/bg.png') -1px 5px no-repeat;
  5384. background-size: 100% 96%;
  5385. -webkit-mask:
  5386. linear-gradient(black, black) content-box,
  5387. linear-gradient(black, black);
  5388. -webkit-mask-composite: xor;
  5389. mask-composite: exclude;
  5390. pointer-events: none;
  5391. padding: 477px;
  5392. }
  5393. .header {
  5394. position: absolute;
  5395. top: 1%;
  5396. left: 0%;
  5397. width: 40%;
  5398. height: 10%;
  5399. background: url('~@/assets/images/lookall/header.png') 0px 0 no-repeat;
  5400. background-size: 100% 100%;
  5401. }
  5402. .header::after {
  5403. content: attr(data-text);
  5404. display: inline-block;
  5405. width: 80%;
  5406. letter-spacing: 2px;
  5407. font-size: 35px;
  5408. font-family: 'ysbth';
  5409. font-weight: bolder;
  5410. line-height: 2.5;
  5411. height: 100%;
  5412. text-align: center;
  5413. background: linear-gradient(to bottom, #fff, #AACCEF);
  5414. background-clip: text;
  5415. color: transparent;
  5416. }
  5417. .lookall {
  5418. background: url('~@/assets/lookall/mapBg.png') no-repeat fixed;
  5419. width: 100%;
  5420. height: 100vh;
  5421. overflow: hidden;
  5422. .lookall-header {
  5423. width: 100%;
  5424. height: 109px;
  5425. // background: url('~@/assets/lookall/lan-header-bg.png') no-repeat top center;
  5426. top: 0;
  5427. font-family: pmzd;
  5428. font-size: 42px;
  5429. text-align: center;
  5430. line-height: 80px;
  5431. animation: headermove 1s ease-out;
  5432. span {
  5433. line-height: 22px;
  5434. font-weight: 400;
  5435. color: #EFF8FC;
  5436. background: linear-gradient(0deg, rgba(119, 186, 255, 1), rgba(255, 255, 255, 1));
  5437. opacity: 1;
  5438. -webkit-background-clip: text;
  5439. -webkit-text-fill-color: transparent;
  5440. }
  5441. }
  5442. .content-bar {
  5443. width: 100%;
  5444. position: absolute;
  5445. height: calc(100% - 110px);
  5446. overflow: hidden;
  5447. .left-nav {
  5448. height: calc(100% - 109px);
  5449. float: left;
  5450. width: 23%;
  5451. overflow-y: scroll;
  5452. position: relative;
  5453. display: flex;
  5454. .line {
  5455. position: absolute;
  5456. left: 130px;
  5457. height: 78vh;
  5458. top: 20px;
  5459. animation: topDown 1s ease-out;
  5460. }
  5461. .none {
  5462. display: none;
  5463. }
  5464. .nthm {
  5465. margin-left: 130px;
  5466. .nthl {
  5467. margin-bottom: 20px;
  5468. transition: all .5s ease-in-out;
  5469. a {
  5470. display: flex;
  5471. position: relative;
  5472. width: 226px;
  5473. height: 84px;
  5474. background: url('~@/assets/lookall/left-icon-bg.png') no-repeat right;
  5475. align-items: center;
  5476. .icon-left {
  5477. position: absolute;
  5478. left: -24px;
  5479. animation: topDown 1s ease-out;
  5480. }
  5481. .icon-left2 {
  5482. position: absolute;
  5483. left: 54px;
  5484. }
  5485. img {
  5486. transition: all .8s ease-in-out;
  5487. }
  5488. span {
  5489. position: absolute;
  5490. left: 130px;
  5491. font-family: pmzd;
  5492. font-size: 24px;
  5493. }
  5494. }
  5495. }
  5496. .nthl:hover {
  5497. filter: hue-rotate(-60deg) brightness(160%);
  5498. transform: translateX(5px);
  5499. img:nth-child(2) {
  5500. transform: rotate3d(1, 2, 3, 360deg);
  5501. }
  5502. }
  5503. .nthl0 {
  5504. animation: moveLeft .5s ease-out;
  5505. }
  5506. .nthl1 {
  5507. animation: moveLeft .8s ease-out;
  5508. }
  5509. .nthl2 {
  5510. animation: moveLeft 1.1s ease-out;
  5511. }
  5512. .nthl3 {
  5513. animation: moveLeft 1.4s ease-out;
  5514. }
  5515. .nthl4 {
  5516. animation: moveLeft 1.7s ease-out;
  5517. }
  5518. .nthl5 {
  5519. animation: moveLeft 2s ease-out;
  5520. }
  5521. .nthl6 {
  5522. animation: moveLeft 2.3s ease-out;
  5523. }
  5524. }
  5525. }
  5526. .right-content {
  5527. display: flex;
  5528. justify-content: space-between;
  5529. overflow-y: scroll;
  5530. position: relative;
  5531. height: calc(100vh - 110px);
  5532. margin-right: 120px;
  5533. width: 50%;
  5534. right: -26%;
  5535. .con-box {
  5536. height: 280px;
  5537. display: flex;
  5538. flex-direction: column;
  5539. .tit {
  5540. width: 100%;
  5541. height: 60px;
  5542. background: url('~@/assets/lookall/lan-tit-bg.png') no-repeat top left;
  5543. font-family: pmzd;
  5544. font-size: 24px;
  5545. line-height: 60px;
  5546. padding-left: 70px;
  5547. animation: headermove 1s ease-out;
  5548. color: #fff;
  5549. }
  5550. .btm-btn3 {
  5551. width: 100%;
  5552. height: 220px;
  5553. display: flex;
  5554. justify-content: start;
  5555. align-items: center;
  5556. cursor: pointer;
  5557. animation: btmmove2 1s ease-out;
  5558. .btn-span2 {
  5559. margin: 0 10px;
  5560. display: flex;
  5561. flex-direction: column;
  5562. align-items: center;
  5563. transition: all 0.3s;
  5564. margin: 0 20px;
  5565. img {
  5566. width: 160px;
  5567. height: 160px;
  5568. }
  5569. span {
  5570. font-size: 20px;
  5571. color: #EFF2FF;
  5572. font-family: ysbth;
  5573. line-height: 40px;
  5574. background: linear-gradient(0deg, rgba(49, 190, 255, 1), rgba(239, 252, 254, 1), rgba(239, 252, 254, 1));
  5575. -webkit-background-clip: text;
  5576. -webkit-text-fill-color: transparent;
  5577. margin-top: -30px;
  5578. }
  5579. }
  5580. .btn-span2:hover {
  5581. filter: brightness(170%) hue-rotate(-20deg);
  5582. transform: translateY(-10px);
  5583. }
  5584. }
  5585. }
  5586. .leftContent {
  5587. width: 48%;
  5588. height: 100%;
  5589. >div {
  5590. width: 100%;
  5591. height: 30%;
  5592. }
  5593. >div:not(:nth-child(1)) {
  5594. margin-top: 2%;
  5595. }
  5596. .task {
  5597. .task-item {
  5598. position: relative;
  5599. width: 88%;
  5600. height: 30px;
  5601. margin: 2% 0 0 4%;
  5602. border: 1px solid #516990;
  5603. background-color: rgba(18, 31, 51, .6);
  5604. >div:nth-child(1) {
  5605. width: 80%;
  5606. height: 100%;
  5607. color: #fff;
  5608. line-height: 4;
  5609. text-indent: 20px;
  5610. text-overflow: ellipsis;
  5611. overflow: hidden;
  5612. white-space: nowrap;
  5613. }
  5614. }
  5615. }
  5616. .event {
  5617. .event-item {
  5618. position: relative;
  5619. width: 88%;
  5620. height: 45%;
  5621. margin: 2% 0 0 4%;
  5622. border: 1px solid #516990;
  5623. background-color: rgba(18, 31, 51, .6);
  5624. >div:nth-child(1) {
  5625. width: 38%;
  5626. height: 30%;
  5627. color: #fff;
  5628. line-height: 2;
  5629. text-indent: 20px;
  5630. text-overflow: ellipsis;
  5631. overflow: hidden;
  5632. white-space: nowrap;
  5633. }
  5634. .content {
  5635. position: absolute;
  5636. bottom: 2%;
  5637. display: flex;
  5638. width: 100%;
  5639. height: 65%;
  5640. .content-text {
  5641. position: absolute;
  5642. display: -webkit-box;
  5643. -webkit-box-orient: vertical;
  5644. top: 6%;
  5645. left: 25%;
  5646. width: 70%;
  5647. height: 73%;
  5648. color: #fff;
  5649. overflow: hidden;
  5650. text-overflow: ellipsis;
  5651. -webkit-line-clamp: 2;
  5652. }
  5653. }
  5654. .line {
  5655. position: relative;
  5656. width: 58%;
  5657. top: -24%;
  5658. left: 35%;
  5659. color: #C9E1EF;
  5660. }
  5661. }
  5662. }
  5663. .risk {
  5664. position: relative;
  5665. .risk-item {
  5666. position: relative;
  5667. display: flex;
  5668. justify-content: space-between;
  5669. padding-right: 6%;
  5670. width: 88%;
  5671. height: 23%;
  5672. margin: 0 0 0 4%;
  5673. border: 1px solid #516990;
  5674. background-color: rgba(18, 31, 51, .6);
  5675. color: #fff;
  5676. line-height: 3.2;
  5677. text-indent: 20px;
  5678. >div:nth-child(1) {
  5679. width: 70%;
  5680. text-overflow: ellipsis;
  5681. overflow: hidden;
  5682. white-space: nowrap;
  5683. }
  5684. }
  5685. }
  5686. }
  5687. .assessmentText {
  5688. position: absolute;
  5689. width: 21%;
  5690. height: 17%;
  5691. bottom: 6%;
  5692. right: 3%;
  5693. >div {
  5694. position: relative;
  5695. display: flex;
  5696. width: 100%;
  5697. height: 30%;
  5698. .point {
  5699. width: 8px;
  5700. height: 8px;
  5701. margin: auto 0;
  5702. }
  5703. >span {
  5704. display: inline-block;
  5705. margin: auto 0;
  5706. text-indent: 10px;
  5707. color: #fff;
  5708. }
  5709. }
  5710. .num {
  5711. position: absolute;
  5712. right: 15%;
  5713. top: 28%;
  5714. font-size: 20px;
  5715. font-weight: 700;
  5716. transform: skewX(-5deg);
  5717. }
  5718. }
  5719. .rightContent {
  5720. width: 48%;
  5721. height: 100%;
  5722. >div {
  5723. width: 100%;
  5724. height: 23%;
  5725. }
  5726. >div:not(:nth-child(1)) {
  5727. margin-top: 1%;
  5728. }
  5729. }
  5730. }
  5731. }
  5732. .mapBar {
  5733. position: absolute;
  5734. bottom: 5%;
  5735. background: url('~@/assets/images/lookall/mapBar.png') 0px 0 no-repeat;
  5736. background-size: 100% 100%;
  5737. left: 44%;
  5738. width: 50px;
  5739. height: 280px;
  5740. }
  5741. }
  5742. #w_chart1,
  5743. #w_chart2 {
  5744. height: 100px;
  5745. margin-top: 10%;
  5746. }
  5747. .date_qh {
  5748. display: block;
  5749. position: absolute;
  5750. top: 41px;
  5751. left: 4%;
  5752. width: 200px;
  5753. background: rgba(15, 44, 78, 0.7);
  5754. height: 25px;
  5755. line-height: 26px;
  5756. border-radius: 4px;
  5757. overflow: hidden;
  5758. border: 1px solid #2C6B70;
  5759. i {
  5760. width: 25%;
  5761. display: inline-block;
  5762. padding: 0px 5px;
  5763. font-style: normal;
  5764. cursor: pointer;
  5765. font-size: 15px;
  5766. color: #919DA5;
  5767. text-align: center;
  5768. }
  5769. }
  5770. .on {
  5771. color: #fff !important;
  5772. }
  5773. .map-tc-top {
  5774. position: fixed;
  5775. left: 410px;
  5776. top: 100px;
  5777. width: 43px;
  5778. height: 275px;
  5779. background: rgba(8, 43, 91, 0.24);
  5780. border: dashed 1px #26B0F3;
  5781. border-radius: 3px;
  5782. li {
  5783. width: 100%;
  5784. text-align: center;
  5785. margin: 20px 0;
  5786. img {
  5787. display: block;
  5788. margin: 0 auto;
  5789. }
  5790. span {
  5791. font-size: 12px;
  5792. color: #21BCFE;
  5793. }
  5794. }
  5795. }
  5796. .map-tc-bom {
  5797. position: fixed;
  5798. right: 410px;
  5799. top: 195px;
  5800. width: 55px;
  5801. height: 55px;
  5802. background: rgba(8, 43, 91, 0.48);
  5803. border-radius: 27px;
  5804. border: 1px solid #26B0F3;
  5805. cursor: pointer;
  5806. img {
  5807. display: block;
  5808. margin: 13px auto;
  5809. }
  5810. }
  5811. .task {
  5812. height: 17%;
  5813. .task-item {
  5814. position: relative;
  5815. width: 95%;
  5816. height: 55px;
  5817. margin: 2% 0 0 5%;
  5818. border: 1px solid #516990;
  5819. background-color: rgba(18, 31, 51, .6);
  5820. cursor: pointer;
  5821. > div:nth-child(1) {
  5822. width: 80%;
  5823. height: 100%;
  5824. color: #fff;
  5825. line-height: 3.5;
  5826. text-indent: 20px;
  5827. text-overflow: ellipsis;
  5828. overflow: hidden;
  5829. white-space: nowrap;
  5830. }
  5831. }
  5832. }
  5833. /* 重点关注列表 */
  5834. .zd-list{
  5835. border-left: 3px solid #b4763e !important;
  5836. background: linear-gradient(to right, rgb(52 69 95 / 32%), rgb(52 69 95 / 0%)) !important;
  5837. div{
  5838. width: 60% !important;
  5839. }
  5840. }
  5841. </style>
  5842. <style lang="scss" scoped>
  5843. .el-progress {
  5844. width: 103px;
  5845. position: relative;
  5846. right: 0%;
  5847. top: 27%;
  5848. }
  5849. .el-progress-bar__outer {
  5850. background-color: #001C3B;
  5851. }
  5852. .el-progress-bar__inner {
  5853. background-color: #00AEEA;
  5854. }
  5855. .el-progress__text {
  5856. color: #C9E1EF;
  5857. }
  5858. ::v-deep .eventDialog {
  5859. width: 97% !important;
  5860. height: 95%;
  5861. border-radius: 10px;
  5862. background: center center no-repeat #273554;
  5863. .el-dialog__body {
  5864. height: 93%;
  5865. color: #fff;
  5866. }
  5867. .transferBg {
  5868. padding: 15px 0 0 15px;
  5869. background: linear-gradient(to bottom, rgba(15, 42, 58, 0.9), rgba(35, 42, 48, .9));
  5870. border-radius: 10px;
  5871. h3{
  5872. padding-left: 20px;
  5873. background: url("../../assets/gas/leftlist_btn.png") no-repeat 0px 0px;
  5874. background-size: 12px 15px;
  5875. font-size: 16px;
  5876. font-weight: 600;
  5877. }
  5878. .spsb_xx{
  5879. display: flex;
  5880. height: 130px;
  5881. border-radius: 10px;
  5882. padding-left: 3%;
  5883. .spsb_text{
  5884. width: 60%;
  5885. height: 100%;
  5886. padding: 5px;
  5887. border-color: #22BCF3;
  5888. background: #14375A;
  5889. border-radius: 4px;
  5890. outline: 0px;
  5891. border-radius: 10px;
  5892. color: #fff;
  5893. line-height: 25px;
  5894. }
  5895. .btn_option{
  5896. width: 40%;
  5897. height: 100%;
  5898. .el-button{
  5899. width: 70%;
  5900. height: 20%;
  5901. margin: 2.5% 0 0 15% !important;
  5902. background-color: #14375A !important;
  5903. }
  5904. }
  5905. }
  5906. }
  5907. .xczk_div{
  5908. margin-top: 15px!important;
  5909. div{
  5910. font-size: 14px;
  5911. line-height: 20px;
  5912. color: #c9e3f3;
  5913. padding-left: 19px;
  5914. }
  5915. }
  5916. .continueForm_contain {
  5917. position: absolute;
  5918. width: 8vh;
  5919. right: 3%;
  5920. top: 10%;
  5921. color: #fff;
  5922. background-color: #5bdddd;
  5923. border-radius: 10px;
  5924. border: 0px;
  5925. outline: 0px;
  5926. padding: 4px 0px;
  5927. }
  5928. .d1 {
  5929. height: 20%;
  5930. .eventInfo_contain {
  5931. display: flex;
  5932. height: 60%;
  5933. width: 100%;
  5934. flex-wrap: wrap;
  5935. margin-top: 1.5%;
  5936. .sj_tit{
  5937. font-size: 14px;
  5938. font-weight: 600;
  5939. color: #22bcf3;
  5940. }
  5941. >div {
  5942. width: 250px;
  5943. color: #b9e5ff;
  5944. }
  5945. >div:not(:nth-child(4n+1)) {
  5946. margin-right: 5%;
  5947. }
  5948. .videoLinkage{
  5949. position: absolute;
  5950. width: 200px !important;
  5951. height: 15%;
  5952. text-align: center;
  5953. top: 10%;
  5954. right: -3%;
  5955. cursor: pointer;
  5956. background: url("~@/assets/images/lookall/sxt.png") 0 0 no-repeat;
  5957. background-size: 100% 100%;
  5958. }
  5959. }
  5960. }
  5961. .d2 {
  5962. position: relative;
  5963. width: 69%;
  5964. height: 146px;
  5965. margin-top: 1%;
  5966. .progress_contain {
  5967. height: 60%;
  5968. margin-top: 1.5%;
  5969. color: #c3e7ff;
  5970. .line {
  5971. width: 99%;
  5972. height: 2px;
  5973. margin-top: 3%;
  5974. background-color: #09C2C4;
  5975. }
  5976. .e1 {
  5977. width: 60px;
  5978. position: absolute;
  5979. bottom: 18%;
  5980. left: 8%;
  5981. div{
  5982. height: 22px;
  5983. line-height: 35px;
  5984. }
  5985. }
  5986. .e2 {
  5987. width: 60px;
  5988. position: absolute;
  5989. bottom: 18%;
  5990. left: 32%;
  5991. div{
  5992. height: 22px;
  5993. line-height: 35px;
  5994. }
  5995. }
  5996. .e3 {
  5997. width: 60px;
  5998. position: absolute;
  5999. bottom: 18%;
  6000. left: 59%;
  6001. div{
  6002. height: 22px;
  6003. line-height: 35px;
  6004. }
  6005. }
  6006. .e4 {
  6007. width: 60px;
  6008. position: absolute;
  6009. bottom: 18%;
  6010. left: 86%;
  6011. div{
  6012. height: 22px;
  6013. line-height: 35px;
  6014. }
  6015. }
  6016. .z-lc-time {
  6017. width: 120px;
  6018. height: 23px;
  6019. background: linear-gradient(0deg, #2A6DCD 0%, rgba(43, 96, 152, 0.5) 100%);
  6020. border-radius: 50px;
  6021. font-size: 12px;
  6022. padding: 0 5px;
  6023. line-height: 24px !important;
  6024. color: #fff;
  6025. position: absolute;
  6026. left: 55px;
  6027. top: 15px;
  6028. }
  6029. .z-clyj {
  6030. position: absolute;
  6031. left: 190px;
  6032. top: 9px;
  6033. img {
  6034. width: 35px;
  6035. height: 35px;
  6036. }
  6037. }
  6038. }
  6039. }
  6040. .d3 {
  6041. display: flex;
  6042. height: 56%;
  6043. margin-top: 1%;
  6044. .video {
  6045. width: 34%;
  6046. }
  6047. .mid {
  6048. width: 34%;
  6049. margin-left: 1.5%;
  6050. .info {
  6051. width: 48.5%;
  6052. height: 48.5%;
  6053. float: left;
  6054. >div {
  6055. margin-top: 2.5%;
  6056. height: 76%;
  6057. >div:not(:nth-child(1)) {
  6058. margin-top: 2%;
  6059. }
  6060. }
  6061. }
  6062. .info_right {
  6063. float: left;
  6064. width: 48.5%;
  6065. height: 48.5%;
  6066. margin-left: 3%;
  6067. >div {
  6068. margin-top: 3%;
  6069. >div:not(:nth-child(1)) {
  6070. margin-top: 2%;
  6071. }
  6072. }
  6073. .div_Option {
  6074. width: 96%;
  6075. height: 16vh;
  6076. }
  6077. }
  6078. .demoDeptStylesheet{
  6079. width: 100%;
  6080. position: relative;
  6081. left: -3%;
  6082. }
  6083. .pics {
  6084. width: 100%;
  6085. height: 48.5%;
  6086. float: left;
  6087. margin-top: 2%;
  6088. >div {
  6089. overflow-x: auto;
  6090. /* 横向滚动条 */
  6091. overflow-y: hidden;
  6092. /* 隐藏纵向滚动条 */
  6093. white-space: nowrap;
  6094. /* 防止换行(如果不是 flex) */
  6095. display: flex;
  6096. padding-top: 2%;
  6097. img {
  6098. flex-shrink: 0;
  6099. width: 200px;
  6100. height: 140px;
  6101. }
  6102. >img:not(:nth-child(1)) {
  6103. margin-left: 3%;
  6104. }
  6105. }
  6106. }
  6107. }
  6108. .right {
  6109. width: 30%;
  6110. height: 140%;
  6111. margin-left: 1.5%;
  6112. margin-top: -168px;
  6113. padding-right: 1%;
  6114. >div {
  6115. margin-top: 1.5%;
  6116. >div:not(:nth-child(1)) {
  6117. margin-top: 2%;
  6118. }
  6119. }
  6120. }
  6121. }
  6122. }
  6123. .el-dialog__header .el-dialog__title {
  6124. color: #22bcf3;
  6125. }
  6126. .eventDialog .transferBg {
  6127. background: -webkit-gradient(linear, left top, left bottom, from(rgba(16, 28, 45, 0.9)), to(rgba(3, 27, 49, 0.9)));
  6128. background: linear-gradient(to bottom, rgb(16 28 45 / 90%), rgb(3 27 49 / 90%));
  6129. }
  6130. .eventDialog .d2 .progress_contain .line {
  6131. background-color: #22bcf3;
  6132. }
  6133. .el-timeline-item__node {
  6134. background-color: #22bcf3;
  6135. -webkit-box-shadow: 0px 0px 5px #22bcf3;
  6136. box-shadow: 0px 0px 5px #22bcf3;
  6137. }
  6138. .el-timeline-item__tail {
  6139. border-left: 1px solid #22bcf3;
  6140. }
  6141. .el-card {
  6142. border: 1px solid #22bcf3;
  6143. background-color: rgba(39, 155, 255, 0.2);
  6144. color: #fff;
  6145. line-height: 25px;
  6146. }
  6147. .pspage {
  6148. // background: url("~@/assets/images/paishui/ditu.png") no-repeat left center;
  6149. background-size: 100% 100%;
  6150. width: 100%;
  6151. height: 100%;
  6152. }
  6153. .headerbig {
  6154. position: relative;
  6155. width: 100%;
  6156. height: 150px;
  6157. background: url("~@/assets/images/paishui/topbj.png") no-repeat left center;
  6158. background-size: 100% 100%;
  6159. left: 0;
  6160. top: 0;
  6161. z-index: 990;
  6162. }
  6163. .headercont {
  6164. width: 1044px;
  6165. height: 100px;
  6166. margin: 0 auto;
  6167. background: url("~@/assets/images/paishui/header.png") no-repeat left center;
  6168. background-size: 100% 100%;
  6169. display:flex;
  6170. justify-content: center;
  6171. align-items: center;
  6172. img {
  6173. display: block;
  6174. margin-top: -30px;
  6175. }
  6176. }
  6177. .headertop {
  6178. overflow: hidden;
  6179. position: relative;
  6180. }
  6181. .header-fl {
  6182. font-family: pmzd;
  6183. color: #AECAF5;
  6184. text-shadow: 0px 1px 3px rgba(5, 12, 25, 0.54);
  6185. position: absolute;
  6186. flex-direction: row;
  6187. left: 20px;
  6188. top: 20px;
  6189. z-index: 999;
  6190. span {
  6191. display: block;
  6192. }
  6193. span:nth-child(1) {
  6194. font-size: 16px;
  6195. }
  6196. span:nth-child(2) {
  6197. font-size: 12px;
  6198. }
  6199. }
  6200. .header-fl-tq-1{
  6201. font-family: pmzd;
  6202. color: #AECAF5;
  6203. text-shadow: 0px 1px 3px rgba(5,12,25,0.54);
  6204. position: absolute;
  6205. left: 100px;
  6206. top: 20px;
  6207. z-index: 999;
  6208. span{
  6209. display: block;
  6210. }
  6211. span:nth-child(1){
  6212. font-size: 16px;
  6213. }
  6214. span:nth-child(2){
  6215. font-size: 12px;
  6216. }
  6217. }
  6218. .header-fl-tq-2{
  6219. font-family: pmzd;
  6220. color: #AECAF5;
  6221. text-shadow: 0px 1px 3px rgba(5,12,25,0.54);
  6222. position: absolute;
  6223. left: 140px;
  6224. top: 20px;
  6225. z-index: 999;
  6226. span{
  6227. display: block;
  6228. }
  6229. span:nth-child(1){
  6230. font-size: 16px;
  6231. }
  6232. span:nth-child(2){
  6233. font-size: 12px;
  6234. }
  6235. }
  6236. .header-fr {
  6237. width: 32px;
  6238. height: 32px;
  6239. border-radius: 50%;
  6240. padding: 1px;
  6241. position: absolute;
  6242. right: 54px;
  6243. top: 49px;
  6244. cursor: pointer;
  6245. div {
  6246. width: 30px;
  6247. height: 30px;
  6248. border-radius: 50%;
  6249. img {
  6250. margin: -2px 0 0 -1px;
  6251. }
  6252. }
  6253. }
  6254. .tongzhi {
  6255. background: url("~@/assets/images/paishui/tongzhibj.png") no-repeat left bottom;
  6256. background-size: 100% auto;
  6257. width: 850px;
  6258. height: 90px;
  6259. margin: 0 auto;
  6260. text-align: center;
  6261. font-size: 16px;
  6262. color: #f0fcfd;
  6263. display: flex;
  6264. align-items: center;
  6265. padding: 0 80px;
  6266. img{
  6267. width: 30px;
  6268. height: 30px;
  6269. margin: 0 10px 0 0;
  6270. }
  6271. }
  6272. /* the shining alert */
  6273. .color-blink {
  6274. animation: colorBlink 3s infinite;
  6275. }
  6276. @keyframes colorBlink {
  6277. 0% { color: white; }
  6278. 33% { color: orange; }
  6279. 66% { color: yellow; }
  6280. 100% { color: red; }
  6281. }
  6282. .left-center {
  6283. width: 400px;
  6284. height: 100%;
  6285. position: absolute;
  6286. left: 0;
  6287. top: 0;
  6288. padding: 100px 0 0 15px;
  6289. z-index: 1;
  6290. transition: 1s ease-in-out;
  6291. }
  6292. .left-nav-inside {
  6293. overflow-y: scroll;
  6294. position: absolute;
  6295. left: -40.25rem !important;
  6296. }
  6297. .left-list-table {
  6298. width: 540px !important;
  6299. z-index: 999;
  6300. .rw-list {
  6301. width: 100% !important;
  6302. margin: 0 !important;
  6303. height: 750px !important;
  6304. overflow-y: scroll;
  6305. }
  6306. .search_contain {
  6307. display: flex;
  6308. flex-direction: row;
  6309. justify-content: space-between;
  6310. margin: 20px 0px 10px 0px;
  6311. }
  6312. }
  6313. .left-c-bg {
  6314. background: url("~@/assets/images/paishui/leftbj.png") no-repeat left center;
  6315. background-size: 100% 100%;
  6316. width: 400px;
  6317. height: 100%;
  6318. position: absolute;
  6319. left: 0;
  6320. top: 0;
  6321. padding: 100px 0 0 15px;
  6322. z-index: 1;
  6323. }
  6324. .right-c-bg {
  6325. background: url("~@/assets/images/paishui/rightbj.png") no-repeat left center;
  6326. background-size: 100% 100%;
  6327. width: 400px;
  6328. height: 100%;
  6329. position: absolute;
  6330. right: 0;
  6331. top: 0;
  6332. padding: 100px 0 0 15px;
  6333. z-index: 1;
  6334. }
  6335. .right-center {
  6336. width: 400px;
  6337. height: 100%;
  6338. position: absolute;
  6339. right: 0;
  6340. top: 0;
  6341. padding: 100px 15px 0 0;
  6342. z-index: 999;
  6343. }
  6344. .all-title {
  6345. position: relative;
  6346. background: url("~@/assets/images/paishui/all-title13.png") no-repeat left center;
  6347. background-size: 100% 100%;
  6348. width: 378px;
  6349. height: 35px;
  6350. padding: 0 0 0 36px;
  6351. line-height: 32px;
  6352. margin: 0 0 6px 0;
  6353. span {
  6354. font-weight: bold;
  6355. font-size: 16px;
  6356. background: linear-gradient(to right, #8bc7ff, #ffffff);
  6357. -webkit-background-clip: text;
  6358. -webkit-text-fill-color: transparent;
  6359. text-shadow: 1px 2px 8px rgba(13, 24, 45, 0.26);
  6360. font-style: oblique;
  6361. padding: 0 10px 0 0;
  6362. font-family: 'almmsht';
  6363. }
  6364. .right-span {
  6365. width: 18px;
  6366. height: 18px;
  6367. position: absolute;
  6368. cursor: pointer;
  6369. top: 0;
  6370. right: 0;
  6371. color: #00deff;
  6372. z-index: 999;
  6373. background: #0b3876;
  6374. display: flex;
  6375. justify-content: center;
  6376. align-items: center;
  6377. }
  6378. }
  6379. .all-title-540 {
  6380. position: relative;
  6381. background: url("~@/assets/images/paishui/all-title-540.png") no-repeat left center !important;
  6382. background-size: 100% 100% !important;
  6383. width: 540px !important;
  6384. height: 35px;
  6385. padding: 0 0 0 36px;
  6386. line-height: 32px;
  6387. margin: 0 0 6px 0;
  6388. .right-span {
  6389. top: 0;
  6390. right:17px;
  6391. }
  6392. }
  6393. .tubiao {
  6394. height: 150px;
  6395. font-size: 14px;
  6396. color: #fff;
  6397. padding: 0 0 0 20px;
  6398. }
  6399. .bombj {
  6400. background: url("~@/assets/images/paishui/bombj.png") no-repeat left bottom;
  6401. background-size: 100% 100%;
  6402. width: 100%;
  6403. height: 119px;
  6404. position: absolute;
  6405. left: 0;
  6406. bottom: 0;
  6407. z-index: 0;
  6408. }
  6409. .bom-cont {
  6410. background: url("~@/assets/images/paishui/navbig.png") no-repeat left bottom;
  6411. background-size: 100% auto;
  6412. display: flex;
  6413. justify-content: center;
  6414. }
  6415. .nav {
  6416. width: 160px;
  6417. position: relative;
  6418. transition: all 0.3s ease-in-out;
  6419. .nav-in {
  6420. display: block;
  6421. width: 118px;
  6422. height: 118px;
  6423. background: url("~@/assets/images/paishui/nav-bj.png") no-repeat left bottom;
  6424. background-size: 100% 100%;
  6425. text-align: center;
  6426. margin: 0 auto;
  6427. img {
  6428. display: block;
  6429. margin: 0 auto 10px auto;
  6430. width: 69px;
  6431. height: 69px;
  6432. }
  6433. span {
  6434. font-size: 16px;
  6435. color: #FFFFFF;
  6436. }
  6437. }
  6438. .er-nav {
  6439. position: absolute;
  6440. left: 50%;
  6441. bottom: 100px;
  6442. width: 190px;
  6443. display: flex;
  6444. flex-direction: column-reverse;
  6445. transform: translate(-50%);
  6446. img {
  6447. display: block;
  6448. width: 190px;
  6449. height: 12px;
  6450. }
  6451. div {
  6452. width: 190px;
  6453. border: solid 1px #0dadf7;
  6454. border-top-left-radius: 3px;
  6455. border-top-right-radius: 3px;
  6456. border-bottom: none;
  6457. background: color(srgb 0.06 0.22 0.37 / 0.48);
  6458. display: flex;
  6459. flex-direction: column;
  6460. padding: 10px;
  6461. box-shadow: inset 0px 8px 14px color(srgb 0.05 0.68 0.97 / 0.22);
  6462. span {
  6463. font-size: 14px;
  6464. color: #C9E1EF;
  6465. line-height: 28px;
  6466. margin: 0 0 10px 0;
  6467. padding: 0 0 0 15px;
  6468. border: 1px solid color(srgb 0.07 0.4 0.68 / 0.36);
  6469. display:flex;
  6470. align-items: center;
  6471. img{
  6472. width: 5px;
  6473. height: 12px;
  6474. margin-right: 10px;
  6475. }
  6476. }
  6477. span:hover,
  6478. .span-active {
  6479. background: rgba(0, 157, 255, 0.5);
  6480. border: 1px solid color(srgb 0.07 0.4 0.68 / 0.36);
  6481. }
  6482. }
  6483. }
  6484. }
  6485. .nav:hover,
  6486. .nav.choice {
  6487. background: url("~@/assets/images/paishui/navhover.png") no-repeat left bottom;
  6488. background-size: 100% auto;
  6489. filter: brightness(120%) hue-rotate(-10deg);
  6490. transform: translateY(-10px);
  6491. }
  6492. .rw-list {
  6493. height: 220px;
  6494. width: 330px;
  6495. margin: 0 auto;
  6496. overflow: hidden;
  6497. }
  6498. .rw-list-title {
  6499. width: 330px;
  6500. height: 29px;
  6501. border-bottom: solid 1px #1166AE;
  6502. background: linear-gradient(to right, color(srgb 0.02 0.34 0.69 / 0.2), color(srgb 0.02 0.34 0.69 / 0.8));
  6503. padding: 0 15px;
  6504. display: flex;
  6505. span {
  6506. font-size: 12px;
  6507. color: #C9E1EF;
  6508. line-height: 30px;
  6509. display: block;
  6510. }
  6511. span:nth-child(1) {
  6512. width: 175px;
  6513. }
  6514. span:nth-child(2) {
  6515. width: 100px;
  6516. }
  6517. span:nth-child(3) {
  6518. width: 115px;
  6519. }
  6520. }
  6521. .fxqh-list-title {
  6522. width: 330px;
  6523. height: 30px;
  6524. background: rgba(8, 43, 91, 0.6);
  6525. border: 1px solid #009fd9;
  6526. padding: 0 15px;
  6527. display: flex;
  6528. margin: 0 auto;
  6529. box-shadow: 0px 0px 6px color(srgb 0.1 0.25 1 / 0.64);
  6530. line-height: 30px;
  6531. span {
  6532. font-size: 12px;
  6533. color: #C9E1EF;
  6534. line-height: 30px;
  6535. display: block;
  6536. }
  6537. span:nth-child(1) {
  6538. width: 240px;
  6539. }
  6540. span:nth-child(2) {
  6541. width: 90px;
  6542. text-indent: 17px
  6543. }
  6544. }
  6545. .fldx-cont {
  6546. height: 220px;
  6547. overflow-y: auto;
  6548. ul.rw-list-cont {
  6549. width: 100%;
  6550. li {
  6551. display: flex;
  6552. width: 100%;
  6553. padding: 0 15px;
  6554. line-height: 32px;
  6555. background: rgba(18, 91, 174, 0.22);
  6556. border: 1px solid color(srgb 0.07 0.4 0.68 / 0.36);
  6557. cursor: pointer;
  6558. span {
  6559. width: 175px;
  6560. display: block;
  6561. white-space: nowrap;
  6562. text-overflow: ellipsis;
  6563. overflow: hidden;
  6564. font-size: 12px;
  6565. color: #C9E1EF;
  6566. line-height: 32px;
  6567. }
  6568. .jindu {
  6569. width: 150px;
  6570. display: flex;
  6571. align-items: center;
  6572. i {
  6573. display: block;
  6574. width: 8px;
  6575. height: 8px;
  6576. border-radius: 50%;
  6577. margin: 0 8px 0 0;
  6578. }
  6579. i.jinxing {
  6580. border: solid 2px #31ff62;
  6581. }
  6582. i.wancheng {
  6583. border: solid 2px #4689da;
  6584. }
  6585. i.zanting {
  6586. border: solid 2px #ffc53f;
  6587. }
  6588. em {
  6589. font-size: 12px;
  6590. color: #C9E1EF;
  6591. line-height: 27px;
  6592. font-style: normal;
  6593. }
  6594. }
  6595. .jinduT {
  6596. width: 115px;
  6597. font-size: 12px;
  6598. color: #C9E1EF;
  6599. line-height: 27px;
  6600. }
  6601. }
  6602. li:nth-child(2n) {
  6603. background: rgba(18, 91, 174, 0.1);
  6604. border: none;
  6605. }
  6606. }
  6607. dl.shijian-list {
  6608. width: 330px;
  6609. margin: 0 auto;
  6610. dd {
  6611. width: 100%;
  6612. margin: 0 0 10px 0;
  6613. cursor: pointer;
  6614. .sjtop {
  6615. display: flex;
  6616. width: 100%;
  6617. align-items: center;
  6618. justify-content: space-between;
  6619. i {
  6620. width: 4px;
  6621. height: 4px;
  6622. background: #09E5FE;
  6623. border-radius: 50%;
  6624. }
  6625. span {
  6626. font-size: 12px;
  6627. color: #C9E1EF;
  6628. line-height: 28px;
  6629. }
  6630. hr.borcb {
  6631. width: 40%;
  6632. border: dashed 1px #C9E1EF;
  6633. }
  6634. hr.borbj {
  6635. width: 68%;
  6636. border: solid 1px #C9E1EF;
  6637. }
  6638. em {
  6639. width: 30px;
  6640. height: 20px;
  6641. border-radius: 3px;
  6642. font-size: 12px;
  6643. color: #E0E5FA;
  6644. font-style: normal;
  6645. text-align: center;
  6646. line-height: 20px;
  6647. }
  6648. em.cuiban {
  6649. background: rgba(255, 132, 0, 0.6);
  6650. border: 1px solid #FF8400;
  6651. }
  6652. }
  6653. .sjname {
  6654. display: flex;
  6655. width: 100%;
  6656. align-items: center;
  6657. em {
  6658. display: block;
  6659. width: 100px;
  6660. height: 20px;
  6661. font-style: normal;
  6662. font-size: 12px;
  6663. text-align: center;
  6664. line-height: 20px;
  6665. }
  6666. em.weiBj {
  6667. color: #FF8400;
  6668. background: url("~@/assets/images/paishui/jx14.png") no-repeat left center;
  6669. background-size: 100% 100%;
  6670. }
  6671. em.yiWc {
  6672. color: #0D85F5;
  6673. background: url("~@/assets/images/paishui/jx141.png") no-repeat left center;
  6674. background-size: 100% 100%;
  6675. }
  6676. span {
  6677. font-size: 12px;
  6678. color: #FFFFFF;
  6679. line-height: 18px;
  6680. width: 100%;
  6681. }
  6682. }
  6683. }
  6684. }
  6685. ul.fxyh-list {
  6686. width: 100%;
  6687. li {
  6688. display: flex;
  6689. width: 100%;
  6690. padding: 0 15px;
  6691. line-height: 28px;
  6692. cursor: pointer;
  6693. span {
  6694. width: 240px;
  6695. display: block;
  6696. white-space: nowrap;
  6697. text-overflow: ellipsis;
  6698. overflow: hidden;
  6699. font-size: 12px;
  6700. color: #C9E1EF;
  6701. line-height: 27px;
  6702. }
  6703. .jindu {
  6704. width: 90px;
  6705. display: flex;
  6706. align-items: center;
  6707. i {
  6708. display: block;
  6709. width: 8px;
  6710. height: 8px;
  6711. border-radius: 50%;
  6712. margin: 0 8px 0 0;
  6713. }
  6714. i.yiZg {
  6715. border: solid 2px #00deff;
  6716. }
  6717. i.weiZg {
  6718. border: solid 2px #ef3805;
  6719. }
  6720. i.zhongZg {
  6721. border: solid 2px #2ef25f;
  6722. }
  6723. i.wuxZg {
  6724. border: solid 2px #e4b33f;
  6725. }
  6726. em {
  6727. font-size: 12px;
  6728. color: #C9E1EF;
  6729. line-height: 27px;
  6730. font-style: normal;
  6731. }
  6732. }
  6733. }
  6734. li:hover {
  6735. background: color(srgb 0.22 0.39 0.95 / 0.25);
  6736. }
  6737. }
  6738. }
  6739. .map-tab {
  6740. position: fixed;
  6741. left: 457px;
  6742. top: 240px;
  6743. img {
  6744. display: block;
  6745. float: right;
  6746. height: 44px;
  6747. }
  6748. .map-tab-in {
  6749. border: solid 1px #0f7caf;
  6750. border-top-left-radius: 3px;
  6751. border-bottom-left-radius: 3px;
  6752. border-right: none;
  6753. background: color(srgb 0.06 0.22 0.37 / 0.48);
  6754. display: flex;
  6755. padding: 10px 0;
  6756. box-shadow: inset 0px 0px 0px color(srgb 0.05 0.68 0.97 / 0.22);
  6757. .tuceng {
  6758. width: 92px;
  6759. border: solid 1px #0dadf7;
  6760. margin: 0 10px;
  6761. text-align: center;
  6762. background: #0dadf7;
  6763. cursor: pointer;
  6764. img {
  6765. display: block;
  6766. width: 88px;
  6767. height: 60px;
  6768. }
  6769. span {
  6770. font-size: 14px;
  6771. color: #fff;
  6772. }
  6773. }
  6774. }
  6775. }
  6776. .map-tab-tc {
  6777. position: fixed;
  6778. right: 470px;
  6779. top: 183px;
  6780. img {
  6781. display: block;
  6782. float: right;
  6783. height: 44px;
  6784. }
  6785. .map-tab-in {
  6786. border: solid 1px #0f7caf;
  6787. border-top-left-radius: 3px;
  6788. border-bottom-left-radius: 3px;
  6789. border-right: none;
  6790. background: color(srgb 0.06 0.22 0.37 / 0.48);
  6791. display: flex;
  6792. padding: 10px 0;
  6793. box-shadow: inset 0px 0px 0px color(srgb 0.05 0.68 0.97 / 0.22);
  6794. .tuceng {
  6795. width: 92px;
  6796. border: solid 1px #0dadf7;
  6797. margin: 0 10px;
  6798. text-align: center;
  6799. background: #0dadf7;
  6800. cursor: pointer;
  6801. img {
  6802. display: block;
  6803. width: 88px;
  6804. height: 60px;
  6805. }
  6806. span {
  6807. font-size: 14px;
  6808. color: #fff;
  6809. }
  6810. }
  6811. }
  6812. }
  6813. .measurement-tab{
  6814. position: fixed;
  6815. left: 456px !important;
  6816. top: 240px !important;
  6817. .map-tab-in {
  6818. border: solid 1px #0f7caf;
  6819. border-top-left-radius: 3px;
  6820. border-bottom-left-radius: 3px;
  6821. background: color(srgb 0.06 0.22 0.37 / 0.48);
  6822. display: flex;
  6823. padding: 10px 0;
  6824. box-shadow: inset 0px 0px 0px color(srgb 0.05 0.68 0.97 / 0.22);
  6825. .tuceng {
  6826. width: 92px;
  6827. border: solid 1px #0dadf7;
  6828. margin: 0 10px;
  6829. text-align: center;
  6830. background: #0dadf7;
  6831. cursor: pointer;
  6832. img {
  6833. display: block;
  6834. width: 88px;
  6835. height: 60px;
  6836. }
  6837. span {
  6838. font-size: 14px;
  6839. color: #fff;
  6840. }
  6841. }
  6842. }
  6843. }
  6844. .el-pagination {
  6845. background: rgb(31 42 65 / 82%);
  6846. padding: 4px 15px !important;
  6847. text-align: center;
  6848. .el-pagination .el-pager li.active {
  6849. color: #22bcfe !important;
  6850. }
  6851. }
  6852. .el-pagination .btn-next,
  6853. .el-pagination .btn-prev {
  6854. color: #fff !important;
  6855. }
  6856. .el-dialog,
  6857. .el-pager li {
  6858. background: center center no-repeat #273554;
  6859. color: #fff !important;
  6860. }
  6861. .el-pagination button:disabled {
  6862. background: center center no-repeat #273554;
  6863. color: #fff !important;
  6864. }
  6865. .el-pagination .btn-next,
  6866. .el-pagination .btn-prev {
  6867. background: center center no-repeat #273554;
  6868. color: #fff !important;
  6869. }
  6870. .el-pagination .el-pager li.active {
  6871. color: #22bcfe !important;
  6872. }
  6873. /*全局滚动条样式*/
  6874. ::-webkit-scrollbar {
  6875. width: 5px;
  6876. height: 14px;
  6877. }
  6878. ::-webkit-scrollbar-thumb {
  6879. /* background-color: #01c8dc;
  6880. border-radius: 3px; */
  6881. background-color: #b6b6b6;
  6882. }
  6883. /*全局滚动条样式结束*/
  6884. .sbgl_list{
  6885. display: flex;
  6886. flex-direction: column;
  6887. width: 510px;
  6888. z-index: 999;
  6889. .sbgl_zs{
  6890. flex-direction: row;
  6891. display: flex;
  6892. justify-content: space-between;
  6893. border-bottom: 1px solid #496fa6;
  6894. div{
  6895. span{
  6896. font-size: 16px;
  6897. font-weight: bold;
  6898. display: block;
  6899. color: #fff;
  6900. padding-top: 16px;
  6901. }
  6902. b{
  6903. font-family: 'ysbth';
  6904. font-size: 22px;
  6905. line-height: 40px;
  6906. }
  6907. h4{
  6908. font-size: 35px;
  6909. font-family: 'ysbth';
  6910. color: #00b2ff;
  6911. text-shadow:0px 0px 9px #05918a;
  6912. padding-top: 12px;
  6913. }
  6914. i{
  6915. font-size: 12px;
  6916. color: #fff;
  6917. font-style: normal;
  6918. }
  6919. }
  6920. .sbgl_num1{
  6921. b{
  6922. background: -webkit-linear-gradient(bottom,#96adf7,#fff); /* Chrome, Safari */
  6923. background: linear-gradient(bottom,#96adf7,#fff); /* 标准语法 */
  6924. -webkit-background-clip: text; /* Chrome, Safari */
  6925. background-clip: text;
  6926. -webkit-text-fill-color: transparent; /* Chrome, Safari */
  6927. color: transparent; /* 兼容不支持background-clip的浏览器 */
  6928. /*box-shadow: 0px 0px 5px #3063ca;*/
  6929. }
  6930. }
  6931. .sbgl_num2{
  6932. b{
  6933. background: -webkit-linear-gradient(bottom,#96f7ab,#fff); /* Chrome, Safari */
  6934. background: linear-gradient(bottom,#96f7ab,#fff); /* 标准语法 */
  6935. -webkit-background-clip: text; /* Chrome, Safari */
  6936. background-clip: text;
  6937. -webkit-text-fill-color: transparent; /* Chrome, Safari */
  6938. color: transparent; /* 兼容不支持background-clip的浏览器 */
  6939. /*box-shadow: 0px 0px 5px #3063ca;*/
  6940. }
  6941. }
  6942. .sbgl_num3{
  6943. b{
  6944. background: -webkit-linear-gradient(bottom,#ababab,#fff); /* Chrome, Safari */
  6945. background: linear-gradient(bottom,#ababab,#fff); /* 标准语法 */
  6946. -webkit-background-clip: text; /* Chrome, Safari */
  6947. background-clip: text;
  6948. -webkit-text-fill-color: transparent; /* Chrome, Safari */
  6949. color: transparent; /* 兼容不支持background-clip的浏览器 */
  6950. /*box-shadow: 0px 0px 5px #3063ca;*/
  6951. }
  6952. }
  6953. }
  6954. .sbgl_fs{
  6955. display: flex;
  6956. flex-direction: row;
  6957. justify-content: space-between;
  6958. .sbgl_fs_div{
  6959. display: flex;
  6960. flex-direction: row;
  6961. padding-top: 15px;
  6962. .sbgl_fs_left{
  6963. p{
  6964. font-size: 16px;
  6965. font-weight: bold;
  6966. padding-left: 25px;
  6967. background: url("../../assets/index_img/sbgl_icon2.png") no-repeat left;
  6968. color: #fff;
  6969. }
  6970. b{
  6971. background: -webkit-linear-gradient(bottom,#96adf7,#fff); /* Chrome, Safari */
  6972. background: linear-gradient(bottom,#96adf7,#fff); /* 标准语法 */
  6973. -webkit-background-clip: text; /* Chrome, Safari */
  6974. background-clip: text;
  6975. -webkit-text-fill-color: transparent; /* Chrome, Safari */
  6976. color: transparent; /* 兼容不支持background-clip的浏览器 */
  6977. /*box-shadow: 0px 0px 5px #3063ca;*/
  6978. display: block;
  6979. font-family: 'ysbth';
  6980. font-size: 20px;
  6981. padding-left: 25px;
  6982. line-height: 35px;
  6983. }
  6984. span{
  6985. color: #fff;
  6986. font-size: 12px;
  6987. padding-left: 25px;
  6988. }
  6989. }
  6990. .sbgl_fs_right{
  6991. padding-left: 15px;
  6992. p{
  6993. font-size: 12px;
  6994. padding-left: 10px;
  6995. color: #fff;
  6996. position: relative;
  6997. }
  6998. p::after{
  6999. position: absolute;
  7000. content: '';
  7001. display: block;
  7002. width: 5px;
  7003. height: 5px;
  7004. left: 0px;
  7005. top:7px;
  7006. }
  7007. p.zx::after{
  7008. background: #03f38a;
  7009. }
  7010. p.lx::after{
  7011. background: #afafaf;
  7012. }
  7013. span.zx_span{
  7014. color: #03f38a;
  7015. height: 23px;
  7016. line-height: 23px;
  7017. }
  7018. span.lx_span{
  7019. color: #afafaf;
  7020. height: 23px;
  7021. line-height: 23px;
  7022. }
  7023. }
  7024. }
  7025. }
  7026. }
  7027. </style>
  7028. <style lang="scss">
  7029. .el-checkbox {
  7030. margin-right: 15px !important;
  7031. }
  7032. .el-checkbox__inner {
  7033. border: 1px solid #0fc5f2;
  7034. width: 13px;
  7035. height: 13px;
  7036. background: none;
  7037. }
  7038. .el-checkbox__label {
  7039. color: #b9e4ef;
  7040. }
  7041. .el-checkbox__inner::after {
  7042. border-color: #0fc5f2;
  7043. }
  7044. .el-checkbox__input.is-checked .el-checkbox__inner, .el-checkbox__input.is-indeterminate .el-checkbox__inner {
  7045. border-color: #0fc0ee;
  7046. background: none;
  7047. }
  7048. .el-checkbox__input.is-checked + .el-checkbox__label {
  7049. color: #0fc5f2;
  7050. }
  7051. .el-checkbox__input.is-disabled .el-checkbox__inner {
  7052. background-color: #628c91;
  7053. border-color: #407983;
  7054. cursor: not-allowed;
  7055. }
  7056. .el-timeline {
  7057. padding-left: 8px !important;
  7058. }
  7059. .el-timeline-item__node {
  7060. background-color: #1fe3d2;
  7061. box-shadow: 0px 0px 5px #1fe3d2;
  7062. }
  7063. .ant-timeline-item-head-custom {
  7064. background: none;
  7065. /* 移除自定义图标背景 */
  7066. }
  7067. .el-timeline-item__node--normal {
  7068. left: 0px;
  7069. width: 10px;
  7070. height: 10px;
  7071. }
  7072. .el-timeline-item__tail {
  7073. position: absolute;
  7074. left: 4px;
  7075. width: 1px;
  7076. height: 100%;
  7077. display: block !important;
  7078. border-left: 1px solid #1e6a78;
  7079. }
  7080. .el-card {
  7081. border: 1px solid #1e6a78;
  7082. background-color: #00706b61;
  7083. color: #fff;
  7084. line-height: 25px;
  7085. }
  7086. .timeline-span {
  7087. color: #fff;
  7088. margin-bottom: 9px !important;
  7089. text-shadow: 0px 0px 5px rgba(31, 227, 210, 0.38);
  7090. font-weight: 900;
  7091. display: block;
  7092. margin-top: -11px !important;
  7093. }
  7094. .el-timeline-item__node {
  7095. background-color: #1fe3d2;
  7096. box-shadow: 0px 0px 5px #1fe3d2;
  7097. }
  7098. .jinduT {
  7099. .el-progress__text {
  7100. color: #00deff;
  7101. }
  7102. }
  7103. .ps-table{
  7104. margin-bottom: 15px !important;
  7105. .el-table__header-wrapper th,
  7106. .el-table__fixed-header-wrapper th {
  7107. background-color: #2e3952 !important;
  7108. color: #22bcfe !important;
  7109. }
  7110. }
  7111. .ps-table-tb{
  7112. background-color: rgb(33 44 60 / 74%) !important;
  7113. .el-table__header-wrapper th,
  7114. .el-table__fixed-header-wrapper th {
  7115. border: 1px solid color(srgb 0.07 0.4 0.68 / 0.36);
  7116. background-color: rgba(18, 91, 174, 0.22) !important;
  7117. color: #22bcfe !important;
  7118. }
  7119. td.el-table__cell,
  7120. th.el-table__cell.is-leaf {
  7121. border-bottom: 1px solid #455373 !important;
  7122. }
  7123. tr{
  7124. background-color: rgba(18, 91, 174, 0.22) !important;
  7125. }
  7126. .el-table__body-wrapper td {
  7127. background-color: rgb(8 28 66 / 11%) !important;
  7128. color: #fff;
  7129. font-size: 12px !important;
  7130. }
  7131. .cell{
  7132. .el-button {
  7133. padding: 5px 0 !important;
  7134. color: #fff !important;
  7135. background-color: rgb(0 88 255 / 11%) !important;
  7136. border: 1px solid #627ecb !important;
  7137. }
  7138. }
  7139. }
  7140. .btnOption_contain {
  7141. width: 150px;
  7142. .ss-input {
  7143. background-color: #22bcf3 !important;
  7144. padding: 5px 10px !important;
  7145. }
  7146. .cz-input {
  7147. background-color: #424e5e !important;
  7148. padding: 5px 10px !important;
  7149. }
  7150. .el-button{
  7151. width: 60px;
  7152. height: 30px;
  7153. background-color: #14375A !important;
  7154. border: 1px solid #28529c!important;
  7155. color: #fff;
  7156. }
  7157. }
  7158. .sj-btn-b {
  7159. .el-button {
  7160. padding: 5px 0 !important;
  7161. color: #fff !important;
  7162. background-color: #394152 !important;
  7163. border: 1px solid #475b93 !important;
  7164. }
  7165. }
  7166. .el-table,
  7167. .el-table__expanded-cell {
  7168. background-color: #212c3c;
  7169. }
  7170. .sj-in {
  7171. width: 150px !important;
  7172. margin: 0 5px 0 0 !important;
  7173. .el-input__inner {
  7174. background-color: rgba(18, 91, 174, 0.22) !important;
  7175. color: #fff;
  7176. height: 28px;
  7177. line-height: 28px;
  7178. border: 1px solid #475b93 !important;
  7179. color: #22bcfe !important;
  7180. }
  7181. .el-input {
  7182. .el-input__inner {
  7183. background: transparent;
  7184. }
  7185. }
  7186. }
  7187. .el-table--border::after, .el-table--group::after, .el-table::before{
  7188. display: none;
  7189. }
  7190. .el-pager li {
  7191. background: center center no-repeat #273554;
  7192. color: #fff !important;
  7193. }
  7194. .el-pagination button:disabled {
  7195. background: center center no-repeat #273554;
  7196. color: #fff !important;
  7197. }
  7198. .el-pagination .btn-next,
  7199. .el-pagination .btn-prev {
  7200. background: center center no-repeat #273554;
  7201. color: #fff !important;
  7202. }
  7203. .el-pagination .el-pager li.active {
  7204. color: #22bcfe !important;
  7205. }
  7206. .ps_sbhz{
  7207. height: 300px;
  7208. .ps_sbhz_div_flex_c{
  7209. display: flex !important;
  7210. flex-direction: column !important;
  7211. justify-content: center;
  7212. align-items:center;
  7213. width: 33% !important;
  7214. img{
  7215. width: 100px;
  7216. margin-top: 20px;
  7217. }
  7218. .ps_sbhz_txt{
  7219. margin-top: -20px !important;
  7220. p{
  7221. color: #fff;
  7222. letter-spacing: 2px;
  7223. font-size: 14px;
  7224. }
  7225. b{
  7226. background: -webkit-linear-gradient(top, #aaebff, #08bfce); /* Chrome, Safari */
  7227. background: linear-gradient(top,#aaebff, #08bfce); /* 标准语法 */
  7228. -webkit-background-clip: text; /* Chrome, Safari */
  7229. background-clip: text;
  7230. -webkit-text-fill-color: transparent; /* Chrome, Safari */
  7231. color: transparent; /* 兼容不支持background-clip的浏览器 */
  7232. /*box-shadow: 0px 0px 5px #3063ca;*/
  7233. font-size: 20px;
  7234. font-family: ysbth;
  7235. }
  7236. }
  7237. }
  7238. .ps_sbhz_div{
  7239. display: block;
  7240. float: left;
  7241. width: 182px;
  7242. height: 100px;
  7243. img{
  7244. width: 100px;
  7245. float: left;
  7246. }
  7247. .ps_sbhz_txt{
  7248. margin-top: 20px;
  7249. p{
  7250. color: #fff;
  7251. letter-spacing: 2px;
  7252. font-size: 14px;
  7253. }
  7254. b{
  7255. background: -webkit-linear-gradient(top, #aaebff, #08bfce); /* Chrome, Safari */
  7256. background: linear-gradient(top,#aaebff, #08bfce); /* 标准语法 */
  7257. -webkit-background-clip: text; /* Chrome, Safari */
  7258. background-clip: text;
  7259. -webkit-text-fill-color: transparent; /* Chrome, Safari */
  7260. color: transparent; /* 兼容不支持background-clip的浏览器 */
  7261. /*box-shadow: 0px 0px 5px #3063ca;*/
  7262. font-size: 20px;
  7263. font-family: ysbth;
  7264. }
  7265. }
  7266. }
  7267. }
  7268. //供水-雨水
  7269. .layers_paishui_yushui{
  7270. .el-tree-node__expand-icon{
  7271. color: #a0dffa !important; /* 自定义背景色 */
  7272. }
  7273. .el-tree-node__content:hover {
  7274. background-color: rgb(159, 221, 249, 0.4) !important; /* 自定义背景色 */
  7275. }
  7276. .el-tree-node:focus {
  7277. background-color: rgb(159, 221, 249, 0.4) !important; /* 自定义背景色 */
  7278. }
  7279. .is-current:focus {
  7280. background-color: rgb(159, 221, 249, 0.4) !important; /* 自定义背景色 */
  7281. }
  7282. .is-focusable:focus {
  7283. background-color: rgb(159, 221, 249, 0.4) !important; /* 自定义背景色 */
  7284. }
  7285. .el-tree-node:active {
  7286. background-color: rgb(159, 221, 249, 0.4) !important; /* 自定义背景色 */
  7287. }
  7288. .el-checkbox__inner {
  7289. border: 1px solid #a0dffa !important; /* 自定义背景色 */
  7290. background: rgba(159, 221, 249, 0.28) !important; /* 自定义背景色 */
  7291. }
  7292. .el-tree-node:focus > .el-tree-node__content {
  7293. background-color: rgb(159, 221, 249, 0.4) !important; /* 自定义背景色 */
  7294. }
  7295. .el-checkbox__input.is-checked .el-checkbox__inner, .el-checkbox__input.is-indeterminate .el-checkbox__inner {
  7296. background-color: rgb(159, 221, 249, 0.7) !important; /* 自定义背景色 */
  7297. border-color: #a0dffa !important; /* 自定义背景色 */
  7298. }
  7299. .el-checkbox__inner::after {
  7300. border-color: #fff !important; /* 自定义背景色 */
  7301. }
  7302. }
  7303. //供水-污水
  7304. .layers_paishui_wushui{
  7305. .el-tree-node__expand-icon{
  7306. color: #b7c843 !important; /* 自定义背景色 */
  7307. }
  7308. .el-tree-node__content:hover {
  7309. background-color: rgb(182, 198, 67, 0.4) !important; /* 自定义背景色 */
  7310. }
  7311. .el-tree-node:focus {
  7312. background-color: rgb(182, 198, 67, 0.4) !important; /* 自定义背景色 */
  7313. }
  7314. .is-current:focus {
  7315. background-color: rgb(182, 198, 67, 0.4) !important; /* 自定义背景色 */
  7316. }
  7317. .is-focusable:focus {
  7318. background-color: rgb(182, 198, 67, 0.4) !important; /* 自定义背景色 */
  7319. }
  7320. .el-tree-node:active {
  7321. background-color: rgb(182, 198, 67, 0.4) !important; /* 自定义背景色 */
  7322. }
  7323. .el-checkbox__inner {
  7324. border: 1px solid #b7c843 !important; /* 自定义背景色 */
  7325. background: rgba(182, 198, 67, 0.28) !important; /* 自定义背景色 */
  7326. }
  7327. .el-tree-node:focus > .el-tree-node__content {
  7328. background-color: rgb(182, 198, 67, 0.4) !important; /* 自定义背景色 */
  7329. }
  7330. .el-checkbox__input.is-checked .el-checkbox__inner, .el-checkbox__input.is-indeterminate .el-checkbox__inner {
  7331. background-color: rgb(182, 198, 67, 0.7) !important; /* 自定义背景色 */
  7332. border-color: #b7c843 !important; /* 自定义背景色 */
  7333. }
  7334. .el-checkbox__inner::after {
  7335. border-color: #fff !important; /* 自定义背景色 */
  7336. }
  7337. }
  7338. //供水-合流
  7339. .layers_paishui_heliu{
  7340. .el-tree-node__expand-icon{
  7341. color: #2c3ec4 !important; /* 自定义背景色 */
  7342. }
  7343. .el-tree-node__content:hover {
  7344. background-color: rgb(44, 62, 195, 0.4) !important; /* 自定义背景色 */
  7345. }
  7346. .el-tree-node:focus {
  7347. background-color: rgb(44, 62, 195, 0.4) !important; /* 自定义背景色 */
  7348. }
  7349. .is-current:focus {
  7350. background-color: rgb(44, 62, 195, 0.4) !important; /* 自定义背景色 */
  7351. }
  7352. .is-focusable:focus {
  7353. background-color: rgb(44, 62, 195, 0.4) !important; /* 自定义背景色 */
  7354. }
  7355. .el-tree-node:active {
  7356. background-color: rgb(44, 62, 195, 0.4) !important; /* 自定义背景色 */
  7357. }
  7358. .el-checkbox__inner {
  7359. border: 1px solid #2c3ec4 !important; /* 自定义背景色 */
  7360. background: rgba(44, 62, 195, 0.28) !important; /* 自定义背景色 */
  7361. }
  7362. .el-tree-node:focus > .el-tree-node__content {
  7363. background-color: rgb(44, 62, 195, 0.4) !important; /* 自定义背景色 */
  7364. }
  7365. .el-checkbox__input.is-checked .el-checkbox__inner, .el-checkbox__input.is-indeterminate .el-checkbox__inner {
  7366. background-color: rgb(44, 62, 195, 0.7) !important; /* 自定义背景色 */
  7367. border-color: #2c3ec4 !important; /* 自定义背景色 */
  7368. }
  7369. .el-checkbox__inner::after {
  7370. border-color: #fff !important; /* 自定义背景色 */
  7371. }
  7372. }
  7373. .el-tooltip__popper.is-dark{
  7374. border: solid 1px #0dadf7;
  7375. background: color(srgb 0.06 0.22 0.37 / 0.48);
  7376. -webkit-box-shadow: inset 0px 8px 14px color(srgb 0.05 0.68 0.97 / 0.22);
  7377. box-shadow: inset 0px 8px 14px color(srgb 0.05 0.68 0.97 / 0.22);
  7378. color: #FFF;
  7379. font-size: 14px;
  7380. line-height: 22px;
  7381. }
  7382. .el-tooltip__popper.is-dark span{
  7383. display: block;
  7384. }
  7385. </style>