12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611 |
- <template>
- <el-row class="contentBox">
- <transition name="el-fade-in-linear">
- <el-col class="leftBox" v-show="stroes.$state.leftBtn">
- <div class="leftTop">
- <h4>疏导区基本情况</h4>
- <div class="leftTopContent2">
- <!-- <el-row>
- <div v-for="(item,index) in diversionArea" :key="index">
- <p>{{ item.name }}</p>
- <p><strong><CountTo :startVal='0' :endVal='item.value' :duration='5000'> {{ item.value || 0 }}</CountTo></strong>{{ item.unit }}</p>
- </div>
- </el-row> -->
- <el-row class="sdqBasicInfo sdline1">
- <div
- class="basicItem"
- v-for="(item, index) in diversionArea.slice(0,5)"
- :key="index"
- >
- <div style="padding: 0.03rem 0; text-align: center">
- <span style="display: block">
- <Strong
- style="color: #01E0FF;font-weight: 600;font-size: 0.26rem"
- >
-
- <!-- <CountTo :startVal="0" :endVal="item.value || 0" :duration="3000" v-if="!isNaN(item.value)">{{ item.value || 0 }}</CountTo>
- <span v-if="isNaN(item.value)" style="fontSize: 0.2rem !important">{{ item.value || 0 }}</span> -->
- <span>{{ item.value }}</span>
- </Strong>
- {{ item.unit }}
- </span>
- <span class="nameBox" style="">{{ item.name }}</span>
- </div>
- </div>
- </el-row>
- <el-row class="sdqBasicInfo sdline2" >
- <div
- class="basicItem"
- v-for="(item, index) in diversionArea.slice(7,10)"
- :key="index"
- >
- <div style="padding: 0.03rem 0; text-align: center">
- <span style="display: block">
- <Strong
- style="color: #F48354;font-weight: 600;font-size: 0.3rem"
- >
- <CountTo :startVal="0" :endVal="item.value || 0" :duration="3000" v-if="!isNaN(item.value)">{{ item.value || 0 }}</CountTo>
- <span v-if="isNaN(item.value)" style="fontSize: 0.2rem !important">{{ item.value || 0 }}</span>
- </Strong>
- {{ item.unit }}
- </span>
- <span class="nameBox" style="">{{ item.name }}</span>
- </div>
- </div>
- </el-row>
-
- <el-row v-if="basicStatisStatus" class="sdline3" >
- <div
- class="basicItem"
- v-for="(item, index) in line3Array"
- :key="index"
- @click="basicStaticsData(item.value,item.name)"
- >
- <div style="padding: 0.03rem 0; text-align: center">
- <span style="display: block">
- <Strong
- style="color: #4FE261;font-weight: 600;font-size: .225rem"
- >
- <CountTo :startVal="0" :endVal="item.count || 0" :duration="3000" v-if="!isNaN(item.count)">{{ item.count || 0 }}</CountTo>
- <span v-if="isNaN(item.count)" style="fontSize: 0.2rem !important">{{ item.count || 0 }}</span>
- </Strong>
- {{ item.unit }}
- </span>
- <span class="nameBox" style="font-size:12px">{{ item.name }}</span>
- </div>
- </div>
- </el-row>
- <el-row v-else class="sdqBasicInfo sdline3" style="position:relative">
- <div @click="basicGoBack" class="return">
- <div class="returnText">返回</div>
- </div>
-
- 表格展示区域
- <!-- <el-table :data="tableDataBasic" style="width: 100%;height:1.7rem;margin-top:20px;" class="transparentTableRow" @mouseenter="autoScroll1(true)" @mouseleave="autoScroll1()">
- <el-table-column prop="date" label="Date" width="180" />
- <el-table-column prop="name" label="Name" width="180" />
- <el-table-column prop="address" label="Address" />
- </el-table> -->
- </el-row>
- </div>
- </div>
-
- <div class="leftCenter">
- <div style="display: flex;">
- <h4>疏导区社会单位情况</h4>
- <div style="display: flex; border-bottom: 0.0125rem solid rgba(115, 251, 253, 0.5);">
- <el-form class="titleElForm" :inline="true" size="mini" :model="barForm" style="height: 0">
- <el-form-item>
- <!-- <el-select v-model="barForm.fireType" @change="getHouse()" filterable clearable placeholder="场所">
- <el-option v-for="(item, ind) in fireTypeList" :key="ind" :label="item" :value="item"></el-option>
- </el-select> -->
- <!-- <el-select v-model="units" filterable clearable placeholder="场所">
- <el-option v-for="(item, ind) in diversionArea" :key="ind" :label="item.name" :value="item.value"></el-option>
- </el-select> -->
-
- <el-select v-model="value111" @change="getOneUnit" class="m-2" placeholder="请选择" style="width:200px">
- <el-option
- v-for="item in line3Array"
- :key="item.value"
- :label="item.name"
- :value="item.value"
- />
- </el-select>
- </el-form-item>
- </el-form>
- </div>
- </div>
- <unit-box :typeValue="value111" :arrayData="arrayData" :staticData="staticData" v-if="staticData.total" :type="value111" @staticsPoint="staticsPoint"></unit-box>
- <div v-else>暂无数据</div>
- <!-- <category
- ref="category"
- v-show="category"
- :dataMap="reportComplaintList.map((val, ind) => val.value)"
- :xData="reportComplaintList.map((val, ind) => val.name)"
- :isSlice="10"
- :width="40"
- color="#73FBFD"
- @echartsClick="categoryClick"
- ></category> -->
-
- </div>
- <div class="rightCenter">
- <h4>执勤战备力量部署</h4>
- <div class="rightTopContent">
- <div style="width:95%;margin:0 auto;border: 1px solid rgba(48, 207, 255, 0.6); box-shadow: inset 0 0 0.07rem 0.04rem rgb(115 251 253 / 40%); box-sizing: border-box;display: flex;
- justify-content: space-between;padding: .15rem .125rem .15rem">
- <span>闵行支队安保分指挥所</span> <span>淮虹路151弄9号</span> <span>电台:闵101</span> <span>值班电话:33281293</span>
- </div>
- <el-row>
- <el-col :span="5" style="border: 1px solid rgba(48, 207, 255, 0.6); margin: .25rem .08rem .125rem .16rem; box-shadow: inset 0 0 0.07rem 0.04rem rgb(115 251 253 / 40%); box-sizing: border-box"
- v-for="(item,index) in staticData.array1" :key="index" @click="goPoints(item.facilityType)">
- <div style="padding: 0.2rem 0; text-align: center;user-select:none !important">
- <span style="display: block">
- <Strong :style="{ color: item.color, fontSize: '0.3rem'}" >
- <CountTo :startVal='0' :endVal='item.count || 0' :duration='3000'>{{ item.count || 0 }}</CountTo>
- </Strong>
- 家
- </span>
- <span style="font-size:.1375rem">{{item.streetTown}}</span>
- </div>
- </el-col>
- </el-row>
- <!-- <el-table :data="tableData2" class="transparentTableRow" height="100%" :empty-text="dataNo">
- <el-table-column type="expand">
- <template #default="props">
- <template v-if="props.row.children">
- <template v-for="(item, ind) in props.row.children" :key="ind">
- <el-row class="tableExpendTitle" style="margin-top: 10px">
- 状态:{{ item.carStatus }}({{ item.equipTypeName ? item.equipTypeName + "," : "" }}{{ item.renyuanNum }}人)
- </el-row>
- <el-row class="tableExpendcontent">
- <el-col>
- <div>
- 车牌号:<span style="color: #6ff3f6">{{ item.cphm }}</span>
- </div>
- </el-col>
- <el-col v-if="item.zhy" :span="12">
- <div>
- 指挥员:<span style="color: #6ff3f6">{{ item.zhy }}</span>
- </div>
- </el-col>
- <el-col v-if="item.txy" :span="12">
- <div>
- 通讯员:<span style="color: #6ff3f6">{{ item.txy }}</span>
- </div>
- </el-col>
- <el-col v-if="item.jsy" :span="12">
- <div>
- 驾驶员:<span style="color: #6ff3f6">{{ item.jsy }}</span>
- </div>
- </el-col>
- <el-col v-if="item.zsry" :span="24">
- <div>
- 战士人员:<span style="color: #6ff3f6">{{ item.zsry }}</span>
- </div>
- </el-col>
- </el-row>
- </template>
- </template>
- </template>
- </el-table-column>
- <el-table-column show-overflow-tooltip v-for="item in headerData2" :key="item.prop" :prop="item.prop" align="center" min-width="20" :label="item.name">
- <template v-if="item.prop === 'car'" #default="scope">
- <span style="color: #6ff3f6">{{ scope.row.car }}</span>
- </template>
- <template v-if="item.prop === 'personnel'" #default="scope">
- <span style="color: #6ff3f6">{{ scope.row.personnel }}</span>
- </template>
- </el-table-column>
- </el-table> -->
- </div>
- </div>
-
- <!-- <div class="leftCenter">
- <h4 class="h4Top">接警处置情况</h4>
- <category
- ref="category"
- v-show="category"
- :dataMap="reportComplaintList.map((val, ind) => val.value)"
- :xData="reportComplaintList.map((val, ind) => val.name)"
- :isSlice="10"
- :width="40"
- color="#73FBFD"
- @echartsClick="categoryClick"
- ></category>
- <div @click="goBack" class="return" v-if="!category">
- <div class="returnText">返回</div>
- </div>
- </div> -->
- <div class="leftBotContent2">
- <el-table v-if="!category" :data="tableData" class="transparentTableRow" height="100%" ref="reportTable" @mouseenter="autoScroll(true)" @mouseleave="autoScroll()">
- <el-table-column v-for="item in headerData" show-overflow-tooltip :key="item.prop" :prop="item.prop" align="center" min-width="20" :label="item.name">
- <template #default="scope">
- {{ item.prop === "type" ? "" : item.prop === "status" ? (scope.row[item.prop] == 1 ? "可用" : "不可用") : scope.row[item.prop] }}
- </template>
- </el-table-column>
- </el-table>
- </div>
- </el-col>
- </transition>
- <transition name="el-fade-in-linear">
- <el-col class="centerBox" style="width: 100%">
- <div :class="stroes.$state.leftBtn ? 'leftBtn btnW' : 'leftBtn0 btnW'" @click="stroes.leftBtnClick()">
- <img src="@/assets/img/svg/left.svg" alt="" class="img" />
- </div>
- <el-col class="centerContent" id="mapF"></el-col>
- <div :class="stroes.$state.rightBtn ? 'rightBtn btnW' : 'rightBtn0 btnW'" @click="stroes.rightBtnClick()">
- <img src="@/assets/img/svg/left.svg" alt="" class="img" />
- </div>
- <div class="mapTips_type">
- <img src="@/assets/img/svg/danweitop.svg" alt="" class="img" />
- <div class="content">
- <p>类型筛选</p>
- <div class="selectType">
- <!-- <div @click="checkboxChange(0)" :class="checkedArray.checkedData[0] == 0 ? 'checkTypeSelect' : ''">
- <img :src="stores.sadianIcon.xfc" alt="" />
- <span>车辆</span>
- </div> -->
- <!-- <div @click="checkboxChange(1)" :class="checkedArray.checkedData[0] == 1 ? 'checkTypeSelect' : ''">
- <img :src="stores.sadianIcon.lsjq" alt="" />
- <span>历史警情</span>
- </div>
- <div @click="checkboxChange(2)" :class="checkedArray.checkedData[0] == 2 ? 'checkTypeSelect' : ''">
- <img :src="stores.sadianIcon.lshz" alt="" />
- <span>历史火灾</span>
- </div> -->
- <!-- <div @click="checkboxChange(3)" :class="checkedArray.checkedData[0] == 3 ? 'checkTypeSelect' : ''">
- <img :src="stores.sadianIcon.zddw" alt="" />
- <span>重点单位</span>
- </div> -->
- <div
- :class="
- checkedArray.checkedData[0] == 4
- ? 'checkTypeSelect'
- : checkedArray.checkedData[0] == 40
- ? 'checkTypeSelect'
- : checkedArray.checkedData[0] == 41
- ? 'checkTypeSelect'
- : checkedArray.checkedData[0] == 42
- ? 'checkTypeSelect'
- : checkedArray.checkedData[0] == 43
- ? 'checkTypeSelect'
- : checkedArray.checkedData[0] == 44
- ? 'checkTypeSelect'
- : checkedArray.checkedData[0] == 45
- ? 'checkTypeSelect'
- : checkedSelectValue == '46'
- ? stores.sadianIcon.yjxfz
- : checkedSelectValue == '47'
- ? stores.sadianIcon.jzzzxfd
- : ' '
- "
- >
- <img
- :src="
- checkedSelectValue == '40'
- ? stores.sadianIcon.xfz
- : checkedSelectValue == '41'
- ? stores.sadianIcon.zzd
- : checkedSelectValue == '42'
- ? stores.sadianIcon.jzwxxfz
- : checkedSelectValue == '43'
- ? stores.sadianIcon.csxfz
- : checkedSelectValue == '44'
- ? stores.sadianIcon.qyxfd
- : checkedSelectValue == '45'
- ? stores.sadianIcon.sqwxxfz
- : checkedSelectValue == '46'
- ? stores.sadianIcon.sqwxxfz
- : checkedSelectValue == '47'
- ? stores.sadianIcon.sqwxxfz
- : stores.sadianIcon.xfz
- "
- alt=""
- />
- <span>{{ checkedSelectLabel }}</span>
- <el-select
- v-model="checkedSelectValue"
- placeholder="消防站"
- class="selectTypeIcon"
- style="display: inline-block; width: 100%; position: absolute; right: 0"
- @change="selectArray"
- >
- <el-option v-for="item in checkedSelectArray" :key="item.value" :label="item.label" :value="item.value"> </el-option>
- </el-select>
- </div>
- <div @click="checkboxChange(19)" :class="checkedArray.checkedData[0] == 19 ? 'checkTypeSelect' : ''">
- <img :src="stores.sadianIcon.d" alt="" />
- <span>大网格</span>
- </div>
- <div @click="checkboxChange(15)" :class="checkedArray.checkedData[0] == 15 ? 'checkTypeSelect' : ''">
- <img :src="stores.sadianIcon.z" alt="" />
- <span>中网格</span>
- </div>
- <div @click="checkboxChange(16)" :class="checkedArray.checkedData[0] == 16 ? 'checkTypeSelect' : ''">
- <img :src="stores.sadianIcon.x" alt="" />
- <span>小网格</span>
- </div>
- <div @click="checkboxChange(17)" :class="checkedArray.checkedData[0] == 17 ? 'checkTypeSelect' : ''">
- <img :src="stores.sadianIcon.ssjq" alt="" />
- <span>监控视频</span>
- </div>
- <div @click="checkboxChange(18)" :class="checkedArray.checkedData[0] == 18 ? 'checkTypeSelect' : ''">
- <img :src="stores.sadianIcon.jdjc" alt="" />
- <span>监督检查</span>
- </div>
- <div @click="checkboxChange(20)" :class="checkedArray.checkedData[0] == 20 ? 'checkTypeSelect' : ''">
- <img :src="stores.sadianIcon.zfjly" alt="" />
- <span>执法记录仪</span>
- </div>
-
- </div>
- </div>
- </div>
- </el-col>
- </transition>
- <transition name="el-fade-in-linear">
- <el-col class="rightBox" v-show="stroes.$state.rightBtn">
- <!-- 疏导区每日动态 start -->
- <div class="dailyNewSec">
- <h4 style="display: flex">疏导区每日动态</h4>
- <div class="dailyItem dailyItemLeft">
- <el-row>
- <el-col>七宝镇党委书记杨维萍开展网格治理调研指导</el-col>
- </el-row>
- <el-row>
- <el-col>华漕镇开展“地毯式”安全生产大检查活动</el-col>
- </el-row>
- <el-row>
- <el-col>张雪松支队长带队到疏导区开展消防安全检查</el-col>
- </el-row>
- <el-row>
- <el-col>陈国清政委到指挥所检查指导</el-col>
- </el-row>
- <el-row>
- <el-col>总队召开进博会消防安保临战动员部署会</el-col>
- </el-row>
- <el-row>
- <el-col>支队召开第六届进博会消防安保警师大会</el-col>
- </el-row>
- </div>
- <div class="dailyItem dailyItemRight">
- <el-row>
- <el-col><a href="http://32.0.15.107:8080/mhvi/20231031.pdf" target="_blank">第七期 第六届中国国际进口博览会每日工作动态</a></el-col>
- <el-col><a href="http://32.0.15.107:8080/mhvi/20231030.pdf" target="_blank">第六期 第六届中国国际进口博览会每日工作动态</a></el-col>
- <el-col><a href="http://32.0.15.107:8080/mhvi/20231027.pdf" target="_blank">第五期 第六届中国国际进口博览会每日工作动态</a></el-col>
- <el-col><a href="http://32.0.15.107:8080/mhvi/20231026.pdf" target="_blank">第四期 第六届中国国际进口博览会每日工作动态</a></el-col>
- <el-col><a href="http://32.0.15.107:8080/mhvi/20231025.pdf" target="_blank">第三期 第六届中国国际进口博览会每日工作动态</a></el-col>
- <el-col><a href="http://32.0.15.107:8080/mhvi/20231024.pdf" target="_blank">第二期 第六届中国国际进口博览会每日工作动态</a></el-col>
- <el-col><a href="http://32.0.15.107:8080/mhvi/20231023.pdf" target="_blank">第一期 第六届中国国际进口博览会每日工作动态</a></el-col>
- </el-row>
- <el-row>
- <el-col></el-col>
- </el-row>
- <el-row>
- <el-col>今日支队领导视察指挥中心</el-col>
- </el-row>
- </div>
-
-
-
- </div>
- <!-- 疏导区网格检查情况 start -->
- <div class="girdCheckSec">
- <h4 style="display: flex">疏导区网格检查情况</h4>
- <div class="girdCheckItem">
- <div class="row_g">
- <div style="font-size:.175rem">累计:</div>
- <div >检查家数<br>4558家次</div>
- <div >发现隐患数<br>747处</div>
- <div >整改隐患<br>747处</div>
- <div style="font-size:.175rem;margin-left:.125rem" >当日:</div>
- <div >检查家数<br>125家次</div>
- <div >发现隐患数<br>46处</div>
- <div >整改隐患<br>46处</div>
- </div>
- </div>
- <div style="display: flex">
- <h4 style="font-size: 0.2rem;border:none"></h4>
- <div
- style="
- display: flex;
- border-bottom: 0.0125rem solid
- rgba(115, 251, 253, 0.5);
- "
- >
- <el-button
- size="mini"
- @click="btnC('1')"
- :class="{ btnClick: check === '1' }"
- >大网格</el-button
- >
- <el-button
- size="mini"
- @click="btnC('2')"
- :class="{ btnClick: check === '2' }"
- >中网格</el-button
- >
- </div>
- </div>
- <el-table :data="tableData111"
- class="transparentTableRow"
- height="57%"
- :empty-text="dataNo2"
-
- >
- <el-table-column prop="id" label="网格编号" min-width="20" show-overflow-tooltip/>
- <el-table-column prop="count1" label="检查家数" min-width="20" show-overflow-tooltip/>
- <el-table-column prop="count2" label="发现隐患数" min-width="20" show-overflow-tooltip/>
- <el-table-column prop="count3" label="整改隐患" min-width="20" show-overflow-tooltip/>
- </el-table>
-
-
-
-
- </div>
- <!-- 疏导区单位四色分级情况 start -->
- <div class=" ssfjSec">
- <h4 style="display: flex">疏导区单位四色分级情况</h4>
-
- <div class="girdCheckItem">
-
- <div class="row_g2">
- <div >消防安全重点单位</div>
- <div style="color:red">高风险<br>2(家)</div>
- <div style="color:orange">较高风险<br>1(家)</div>
- <div style="color:yellow">一般风险<br>3(家)</div>
- <div style="color:green">低风险<br>170(家)</div>
- </div>
- <div class="row_g2">
- <div >九小场所</div>
- <div style="color:red">高风险<br>151(家)</div>
- <div style="color:orange">较高风险<br>278(家)</div>
- <div style="color:yellow">一般风险<br>114(家)</div>
- <div style="color:green">低风险<br>4026(家)</div>
- </div>
- </div>
-
-
- </div>
-
- <!-- <div class="girdCheckSec">
- <h4 style="display: flex">疏导区网格检查情况</h4>
- <div class="girdCheckItem">
- <p>大网格<span> 街镇分营领导:10 城运中心主任:10 安监所所长:10 支队外参谋:10</span></p>
- <el-row>
- <el-col :span="6">检查家数: 100</el-col>
- <el-col :span="6">发现隐患数: 20</el-col>
- <el-col :span="6">督改隐患数: 20</el-col>
- <el-col :span="6">签约承诺数: 20</el-col>
- </el-row>
- </div>
- <div class="girdCheckItem">
- <p>中网格</p>
- <el-row>
- <el-col :span="6">检查家数: 100</el-col>
- <el-col :span="6">发现隐患数: 20</el-col>
- <el-col :span="6">督改隐患数: 20</el-col>
- <el-col :span="6">签约承诺数: 20</el-col>
- </el-row>
- </div>
- <div class="girdCheckItem">
- <p>小网格</p>
- <el-row>
- <el-col :span="6">检查家数: 100</el-col>
- <el-col :span="6">发现隐患数: 20</el-col>
- <el-col :span="6">督改隐患数: 20</el-col>
- <el-col :span="6">签约承诺数: 20</el-col>
- </el-row>
- </div>
- <br>
- </div> -->
- <!-- 疏导区网格检查情况 end -->
- <!-- <div class="rightTop3">
- <h4 style="display: flex">处置网格</h4>
-
- <div class="rightTopContent">
- <el-row v-if="gridStatisticsStatus">
- <el-col :span="12" @click="gridStatistics(1)">
- <div>
- <div class="left">
- <img src="@a/img/sadian/sbs.png" alt="" />
- <div>上报数</div>
- </div>
- <el-row class="right">
- <el-col :span="24" style="color: #ff0000">{{ gridStatisticsNum.total || 0 }}</el-col>
- </el-row>
- </div>
- </el-col>
- <el-col :span="12" @click="gridStatistics(3)">
- <div>
- <div class="left">
- <img src="@a/img/sadian/yhs.png" alt="" />
- <div>隐患数</div>
- </div>
- <el-row class="right">
- <el-col :span="24" style="color: #ff5a00">{{ gridStatisticsNum.yinhuan || 0 }}</el-col>
- </el-row>
- </div>
- </el-col>
- <el-col :span="12" @click="gridStatistics(2)">
- <div>
- <div class="left">
- <img src="@a/img/sadian/czs.png" alt="" />
- <div>处置数</div>
- </div>
- <el-row class="right">
- <el-col :span="24" style="color: #ffd800">{{ gridStatisticsNum.over || 0 }}</el-col>
- </el-row>
- </div>
- </el-col>
- <el-col :span="12">
- <div>
- <div class="left">
- <img src="@a/img/sadian/czl.png" alt="" />
- <div>处置率</div>
- </div>
- <el-row class="right">
- <el-col :span="24" style="color: #0084ff">{{ gridStatisticsNum.rate || 0 }}%</el-col>
- </el-row>
- </div>
- </el-col>
- </el-row>
-
- <el-row v-if="!gridStatisticsStatus">
- <el-table
- :data="gridStatisticsTableType"
- class="transparentTableRow"
- height="100%"
- :empty-text="dataNo3"
- ref="reportTable"
- @mouseenter="autoScroll1(true)"
- @mouseleave="autoScroll1()"
- >
- <el-table-column v-for="item in gridStatisticsHeader" show-overflow-tooltip :key="item.prop" :prop="item.prop" align="left" min-width="20" :label="item.name">
- <template v-if="item.prop =='案件状态' || item.prop =='街镇' || item.prop =='自治网格' || item.prop =='案件子类' || item.prop =='发现时间'" #default="scope">
- <el-tooltip placement="left" >
- <template #content >
- <div class="tableTooltip" ref="ff">
- <div class="tableTitle">
- <div>案件详情</div>
- </div>
- <img src="~@a/img/icon/close.png" alt="" class="close" @click="closeIsTooltip" />
- <el-row class="tableContent">
- <el-col :span="20" v-if="scope.row['案件状态']">案件状态:{{scope.row["案件状态"]}}</el-col>
- <el-col :span="24" v-if="scope.row['任务号'] ">任务号:{{scope.row["任务号"] }}</el-col>
- <el-col :span="24" v-if="scope.row['发现时间']">发现时间:{{scope.row["发现时间"]}}</el-col>
- <el-col :span="24" v-if="scope.row['案件来源']">案件来源:{{scope.row["案件来源"]}}</el-col>
- <el-col :span="24" v-if="scope.row['案件属性']">案件属性:{{scope.row["案件属性"]}}</el-col>
- <el-col :span="24" v-if="scope.row['街镇']">街镇:{{scope.row["街镇"]}}</el-col>
- <el-col :span="12" v-if="scope.row['自治网格类型']">自治网格类型:{{scope.row["自治网格类型"]}}</el-col>
- <el-col :span="24" v-if="scope.row['责任块']">责任块:{{scope.row["责任块"]}}</el-col>
- <el-col :span="24" v-if="scope.row['案件大类']">案件大类:{{scope.row["案件大类"]}}</el-col>
-
-
- <el-col :span="24" v-if="scope.row['案件小类']">案件小类:{{scope.row["案件小类"]}}</el-col>
-
- <el-col :span="24" v-if="scope.row['自治网格']">自治网格:{{scope.row["自治网格"]}}</el-col>
-
-
-
-
- <el-col :span="24" v-if="scope.row['处置网格']">处置网格:{{scope.row["处置网格"]}}</el-col>
-
- <el-col :span="24" v-if="scope.row['发生地址']">发生地址:{{scope.row["发生地址"]}}</el-col>
- <el-col :span="24" v-if="scope.row['诉求联系人']">诉求联系人:{{scope.row["诉求联系人"]}}</el-col>
- <el-col :span="24" v-if="scope.row['流转方向']">流转方向:{{scope.row["流转方向"]}}</el-col>
- <el-col :span="24" v-if="scope.row['派遣时间'] ">派遣时间:{{scope.row["派遣时间"] }}</el-col>
- <el-col :span="24" v-if="scope.row['主责部门']">主责部门:{{scope.row["主责部门"] }}</el-col>
- <el-col :span="24" v-if="scope.row['三级主责部门']">三级主责部门:{{scope.row["三级主责部门"] }}</el-col>
- <el-col :span="24" v-if="scope.row['处理时间']">处理时间:{{scope.row["处理时间"] }}</el-col>
- </el-row>
- </div>
- </template>
- <template>
- <div class="name-wrapper" >{{ scope.row[item.prop] }}</div>
- </template>
- </el-tooltip>
- </template>
- <template v-else #default="scope">
- {{ scope.row[item.prop] }}
- </template>
- </el-table-column>
- </el-table>
- </el-row>
- </div>
- <div class="leftTopContent" v-if="tabsArea == 'jc'">
- <el-row>
- <el-col :span="12">
- <div>
- <div class="title">
- <div>检查单位数(家次)</div>
- </div>
- <div class="content">
- <span>6276</span>
- <span>同比</span>
- <span style="color: #fe0505">+29.48%</span>
- </div>
- </div>
- </el-col>
- <el-col :span="12">
- <div>
- <div class="title">
- <div>发现隐患数(处)</div>
- </div>
- <div class="content">
- <span>1340</span>
- <span>同比</span>
- <span style="color: #fe0505">+14.18%</span>
- </div>
- </div>
- </el-col>
- <el-col :span="12">
- <div>
- <div class="title">
- <div>督改隐患数(处)</div>
- </div>
- <div class="content">
- <span>1090</span>
- <span>同比</span>
- <span style="color: #fe0505">+7.34%</span>
- </div>
- </div>
- </el-col>
- <el-col :span="12">
- <div style="width: 80%">
- <div class="title">
- <div>签约承诺书(份)</div>
- </div>
- <div class="content">
- <span>5410</span>
- </div>
- </div>
- </el-col>
- </el-row>
- </div>
- </div> -->
- <!-- <div class="rightTop">
- <h4 style="display: flex">疏导区社会面风险评估情况</h4>
- <div style="display: flex;float:right;margin-top:-36px;">
- <el-button size="mini" @click="tabsArea = 'fx'" :class="{ btnClick: tabsArea == 'fx' }"> 风险情况 </el-button>
- <el-button size="mini" @click="tabsArea = 'jc'" :class="{ btnClick: tabsArea == 'jc' }"> 检查情况 </el-button>
- </div>
- <div class="rightTopContent" v-if="tabsArea == 'fx'">
- <el-row>
- <el-col :span="12">
- <div>
- <div class="left">
- <img src="@a/img/securityPlan/right1.png" alt="" />
- <div>高风险场所</div>
- </div>
- <el-row class="right">
- <el-col :span="24">单位总数(家)</el-col>
- <el-col :span="24" style="color: #ff0000">8</el-col>
- </el-row>
- </div>
- </el-col>
- <el-col :span="12">
- <div>
- <div class="left">
- <img src="@a/img/securityPlan/right2.png" alt="" />
- <div>较高风险场所</div>
- </div>
- <el-row class="right">
- <el-col :span="24">单位总数(家)</el-col>
- <el-col :span="24" style="color: #ff5a00">0</el-col>
- </el-row>
- </div>
- </el-col>
- <el-col :span="12">
- <div>
- <div class="left">
- <img src="@a/img/securityPlan/right3.png" alt="" />
- <div>一般风险场所</div>
- </div>
- <el-row class="right">
- <el-col :span="24">单位总数(家)</el-col>
- <el-col :span="24" style="color: #ffd800">6</el-col>
- </el-row>
- </div>
- </el-col>
- <el-col :span="12">
- <div>
- <div class="left">
- <img src="@a/img/securityPlan/right4.png" alt="" />
- <div>低风险场所</div>
- </div>
- <el-row class="right">
- <el-col :span="24">单位总数(家)</el-col>
- <el-col :span="24" style="color: #0084ff">18</el-col>
- </el-row>
- </div>
- </el-col>
- </el-row>
- </div>
- <div class="leftTopContent" v-if="tabsArea == 'jc'">
- <el-row>
- <el-col :span="12">
- <div>
- <div class="title">
- <div>检查单位数(家次)</div>
- </div>
- <div class="content">
- <span>6276</span>
- <span>同比</span>
- <span style="color: #fe0505">+29.48%</span>
- </div>
- </div>
- </el-col>
- <el-col :span="12">
- <div>
- <div class="title">
- <div>发现隐患数(处)</div>
- </div>
- <div class="content">
- <span>1340</span>
- <span>同比</span>
- <span style="color: #fe0505">+14.18%</span>
- </div>
- </div>
- </el-col>
- <el-col :span="12">
- <div>
- <div class="title">
- <div>督改隐患数(处)</div>
- </div>
- <div class="content">
- <span>1090</span>
- <span>同比</span>
- <span style="color: #fe0505">+7.34%</span>
- </div>
- </div>
- </el-col>
- <el-col :span="12">
- <div style="width: 80%">
- <div class="title">
- <div>签约承诺书(份)</div>
- </div>
- <div class="content">
- <span>5410</span>
- </div>
- </div>
- </el-col>
- </el-row>
- </div>
- </div> -->
- <div class="rightTop">
- <!-- <h4>安保推送情况</h4>
- <el-row class="rightTop2">
- <el-col :span="8" v-for="(item, index) in proptionList" :key="index">
- <div>
- <div style="text-align: center; font-size: 0.18rem">
- {{ item.type }}
- </div>
- <div style="height: 1.5rem">
- <gauge ref="gauge1" :data="item"></gauge>
- </div>
- </div>
- </el-col>
- </el-row> -->
- <h4>疏导区执法记录仪画面</h4>
- <el-row class="monitor-list" >
- <div class="list">
- <el-select
- v-model="zfjly1"
- placeholder="请选择执法记录仪"
- class="videoSelect"
- >
- <el-option
- v-for="item in selectVideoData"
- :key="item.url"
- :label="item.name"
- :value="item.url"
- >
- </el-option>
- </el-select>
- <img src="@/assets/img/home/video.jpg" alt="" v-if="!zfjly1">
-
- <iframe
- class="hlsVideo monitor-height"
- :src="zfjly1"
- allowfullscreen="true"
- ></iframe>
- <div @click="videoClose(1)" class="videoCloseBtn" v-if="zfjly1">
- <div class="returnText">关闭</div>
- </div>
- </div>
- <div class="list" :offset="2">
- <el-select
- v-model="zfjly2"
- placeholder="请选择监控视频"
- class="videoSelect"
- >
- <el-option
- v-for="item in selectVideoData"
- :key="item.url"
- :label="item.name"
- :value="item.url"
- >
- </el-option>
- </el-select>
- <img src="@/assets/img/home/video.jpg" alt="" v-if="!zfjly2">
- <iframe
- class="hlsVideo monitor-height"
- :src="zfjly2"
- allowfullscreen="true"
- ></iframe>
- <div @click="videoClose(2)" class="videoCloseBtn" v-if="zfjly2">
- <div class="returnText">关闭</div>
- </div>
- </div>
- </el-row>
- </div>
- <!-- <div class="rightBot">
- <h4>网格人员信息</h4>
- <div class="rightBotContent" v-if="erpData.length > 0">
- <el-table
- :data="rightArray.tableData"
- class="transparentTableRow"
- height="100%"
- :empty-text="dataNo2"
- ref="reportTable"
- @mouseenter="autoScroll(true)"
- @mouseleave="autoScroll()"
- >
- <el-table-column v-for="item in rightArray.headerData2" show-overflow-tooltip :key="item.prop" :prop="item.prop" align="left" min-width="20" :label="item.name">
- <template #default="scope">
- {{ item.prop === "type" ? "" : item.prop === "status" ? (scope.row[item.prop] == 1 ? "可用" : "不可用") : scope.row[item.prop] }}
- </template>
- </el-table-column>
- </el-table>
- </div>
- </div> -->
- </el-col>
- </transition>
- <!-- 普通弹框 -->
- <!-- <div class="tableTooltipwt sadianTankang" v-show="stores.$state.arrayList.length > 0 && !jkspStatus">
- <img src="~@a/img/icon/close.png" alt="" class="close" @click="close" />
- <el-row class="tableContent">
- <el-col class="mk" v-for="li in stores.$state.arrayList" :key="li" v-show="li.title[1]">
- <p v-show="li.title[1]">{{ li.title[0] }}</p>
- <el-row>
- <el-col v-for="ch in li.children" :key="ch" :span="ch[2]" v-show="li.title[1] && ch[1]">
- <span class="color1">{{ ch[0] }}</span>
- <span class="color2">{{ ch[1] }}</span>
- </el-col>
- <el-row style="margin-top: 10px" v-if="li.type">
- <iframe :src="li.url" allowfullscreen="true" style="width: 100%"></iframe>
- </el-row>
- </el-row>
- </el-col>
- </el-row>
- </div> -->
- <!-- 普通弹框 -->
- <div class="tableTooltipwt sadianTankang " v-if="jkspStatus">
- <img src="~@a/img/icon/close.png" alt="" class="close" @click="closeJkspStatus" />
- <el-row class="tableContent">
- <el-col class="mk">
- <p style="font-size:0.2rem">监控视频</p>
- <el-row>
- <el-col v-for="ch in stores.$state.jkspData.children" :key="ch" :span="24" >
- <span class="color1">{{ ch[0] }}</span>
- <span class="color2">{{ ch[1] }}</span>
- </el-col>
- </el-row>
- </el-col>
- <div class="video">
- <video :id="Message.videoId" preload="true" autoplay="autoplay"
- class="hlsVideo monitor-height" ref="hlsVideo" style="width: 100%" controls muted></video>
- </div>
-
- </el-row>
- </div>
- <!-- pdf弹框 -->
- <!-- <div class="pdf sadianTankang" >
- <object :data="pdfUrl"></object>
- </div> -->
- </el-row>
- </template>
- <script>
- import axios from "axios";
- import linstener from "@c/mixins/linstener";
- import map from "@c/mixins/map-data1";
- import gauge from "@c/gauge/index6";
- // import map from "@c/mixins/map-gaode-public";
- import category from "@c/category/index22";
- import unitBox from "@c/unitBox/index";
- import CountTo from "@/components/count-to/index.js";
- import Hls from "hls.js";
- export default {
- mixins: [linstener, map],
- components: { category, gauge, CountTo,unitBox },
- data() {
- return {
- check: 1,
- tableData111:[{
- id: '闵S1(华漕网格)',
- count1: '1127',
- count2: '250',
- count3: '250',
- },
- {
- id: '闵S2(新虹网格)',
- count1: '1242',
- count2: '169',
- count3: '169',
- },
- {
- id: '闵S3(七宝网格)',
- count1: '1187',
- count2: '173',
- count3: '173',
- },
- {
- id: '闵S4(虹桥网格)',
- count1: '1002',
- count2: '155',
- count3: '155',
- }],
- tableDataBasic:[
- {
- date: '2016-05-03',
- name: 'Tom',
- address: 'No. 189, Grove St, Los Angeles',
- },
- {
- date: '2016-05-02',
- name: 'Tom',
- address: 'No. 189, Grove St, Los Angeles',
- },
- {
- date: '2016-05-04',
- name: 'Tom',
- address: 'No. 189, Grove St, Los Angeles',
- },
- {
- date: '2016-05-01',
- name: 'Tom',
- address: 'No. 189, Grove St, Los Angeles',
- },
- ],
- basicStatisStatus:true,
- gridStatisticsNum:{
- total:0,
- over:0,
- rate:0,
- yinhuan:0,
- },
- hls: "",
- Message: {
- "name": undefined,
- "videoId": undefined,
- "videoUrl": false,
- },
- jkspStatus:false,//监控视频弹框状态
- gridStatisticsStatus:true,//处置网格统计状态
- dataNo3:"加载中...",
- gridStatisticsTable:[
- // {
- // "案件状态": "待申请核查",
- // "任务号": "2310M2253844",
- // "发现时间": "2023-10-13 09:18",
- // "案件来源": "12345上报",
- // "案件属性": "部件",
- // "案件大类": "其他设施",
- // "案件小类": "充电站(桩)",
- // "案件子类": "其他充电桩相关问题",
- // "街镇": "华漕镇",
- // "自治网格": "诸新路居委会",
- // "自治网格类型": "居委",
- // "处置网格": "华漕镇处置网格五(诸翟南片区)",
- // "责任块": "九方家园",
- // "发生地址": "闵行区华漕镇保乐路168弄九方家园",
- // "诉求联系人": "臧婷婷",
- // "流转方向": "平台流转",
- // "派遣时间": "2023-10-13 09:20",
- // "主责部门": "华漕镇",
- // "三级主责部门": "诸新路居委会",
- // "处理时间": null,
- // "处理备注": null,
- // "结案时间": null,
- // "结案评判": null,
- // "结案意见": null,
- // "X坐标": -17369.89850242,
- // "Y坐标": -2808.9159114,
- // "问题描述": "市民来电反映:其是上述地址小区居民,要申请安装充电站,物业不肯给其敲章,市民为此不满,故来来电投诉上述小区物业。"
- // }
- ],//处置网格table数据
- gridStatisticsTableType:[],
- gridStatisticsHeader:[
- { prop: "发现时间", name: "发现时间" },
- { prop: "街镇", name: "街镇" },
- { prop: "自治网格", name: "自治网格" },
- { prop: "案件子类", name: "案件子类" },
- { prop: "案件状态", name: "案件状态" },
-
- ],//处置网格header
- value111:23,
- //24、厂房仓库?? 25、大型商业综合体?? 27、批发市场??
- // 23、宾馆酒店 26、规模租赁公寓 28、三合一场所 29、养老机构 30、医疗机构
- options: [
- {
- value: '23',
- label: '宾馆酒店',
- },
- {
- value: '25', //
- label: '大型商业综合体',
- },
- {
- value: '13', //?
- label: '消防安全重点单位',
- },
- {
- value: '30',
- label: '医疗机构',
- },
- {
- value: '29',
- label: '养老机构',
- },
-
- {
- value: '24',
- label: '厂房仓库',
- },
- {
- value: '27',
- label: '批发市场',
- },
- // {
- // value: '5',
- // label: '居民小区', //??
- // },
-
- {
- value: '26',
- label: '规模租赁公寓',
- },
- {
- value: '28',
- label: '三合一场所',
- },
-
- {
- value: '6',//????
- label: '电动自行车领域',
- },
-
- ],
- arrayData:[],
- line3Array:[
- {
- "name": "消防安全重点单位",
- "count": 176,
- "value":0
- },
- {
- "name": "大型商业综合体",
- "count": 13,
- "value":25
- },
- // {
- // "name": "重点单位",
- // "count": 14,
- // "value":13
- // },
- {
- "name": "酒店/宾馆",
- "count": 85,
- "value":23
- },
- {
- "name": "规模租赁公寓",
- "count": 90,
- "value":26
- },
- // {
- // "name": "高层建筑",
- // "count": 839,
- // "value":0 //?
- // },
- {
- "name": "厂房/仓库",
- "count": 83,
- "value":24
- },
- // {
- // "name": "商市场",
- // "count": 11,
- // "value":0 //?
- // },
- // {
- // "name": "公共娱乐场所",
- // "count": 38,
- // "value":0 //?
- // },
- {
- "name": "医疗机构",
- "count": 18,
- "value":30,
- },{
- "name": "养老机构",
- "count": 10,
- "value":29,
- },
- {
- "name": '批发市场',
- "count": 2,
- "value": '27',
- },
- {
- "name": '学校',
- "count": 23,
- "value": '37',
- },
- {
- "name": "沿街门面",
- "count": 3080,
- "value":1 //?
- },
- // {
- // "name": "办公楼宇",
- // "count": 52,
- // "value":0 //?
- // },
- // {
- // "name": "在建工地",
- // "count": 6,
- // "value":0 //?
- // },
- {
- "name": "居民小区",
- "count": 194,
- "value":38 //?
- },
-
- // {
- // "name": "宗教场所",
- // "count": 4,
- // "value":0 //?
- // },
- // {
- // "name": "学校",
- // "count": 23,
- // "value":37
- // },
- // {
- // "name": "加油(汽)站",
- // "count": 10,
- // "value":0 //?
- // },
- {
- "name": "地铁站",
- "count": 4,
- "value":3 //?
- }
-
- ],
- staticData:{
- array:[],
- total:0,
- array1:[
- {
- "streetTown": "消防站",
- "count": 4,
- "color": "#FF0709",
- "facilityType":30
- },
- {
- "streetTown": "流动消防站(一级)",
- "count": 5,
- "color": "#F48354",
- "facilityType":33
- },
- {
- "streetTown": "流动消防站(二级)",
- "count": 5,
- "color": "#73FBFD",
- "facilityType":34
- },
- {
- "streetTown": "重点微型消防站",
- "count": 77,
- "color": "#4FE261",
- "facilityType":36
- }
- ]
- },
- zfjly1:undefined,
- zfjly2:undefined,
- selectVideoData: [],
- tabsArea: "fx", //切换
- diversionArea: [
- { name: "疏导区总面积", value: 57.41, unit: "km²", color: "#7DD807" },
- { name: "华漕镇", value: 28.2, unit: "km²", color: "#01C3B4" },
- { name: "新虹街道", value: 2, unit: "km²", color: "#01C3B4" },
- { name: "七宝镇", value: 7, unit: "k㎡", color: "#01C3B4" },
- { name: "虹桥镇", value: 2.95, unit: "km²", color: "#01C3B4" },
-
- { name: "分管领导", value: 20, unit: "人", color: "#058DFE" },
- { name: "增援干部", value: 11, unit: "人", color: "#058DD1" },
- { name: "大网格", value: 4, unit: "个", color: "#FC0609 " },
- { name: "中网格", value: 14, unit: "个", color: "#FD843A" },
- { name: "小网格", value: 103, unit: "个", color: "#7DD807" },
- // {name:"人员力量",value:41,unit:"人",color:"#058DD1"},
- ], //疏导区基本情况
- gridStatus: 15,
- dataNo: "加载中...",
- dataNo2: "加载中...",
- stores: this.$useStore(),
- proptionList: [
- {
- type: "已推送单位",
- number: 306,
- month: null,
- radio: "1",
- sameStatus: 2,
- avg: null,
- color: ["#BF4216 ", "#F68E6A"],
- },
- {
- type: "已接收单位",
- number: 303,
- month: null,
- radio: "1",
- sameStatus: 2,
- avg: null,
- color: ["#06B1B9 ", "#14E1EA"],
- },
- {
- type: "推送接收率",
- number: 99,
- month: null,
- radio: "0.99",
- sameStatus: 2,
- avg: null,
- color: ["#E4951E ", "#F8ED41"],
- },
- ],
- category: true,
- tableData2: [],
- headerData2: [
- { prop: "name", name: "站点名称" },
- { prop: "car", name: "站点车辆" },
- { prop: "personnel", name: "人员" },
- ],
- reportComplaintList: [
- { name: "火灾扑救", value: 100 },
- { name: "社会救助", value: 90 },
- { name: "抢险救援", value: 60 },
- ], //接处警情况
- checkedArray: {
- checkedData: [19],
- checkedList: [
- { value: 0, label: "车辆" },
- { value: 1, label: "历史警情" },
- { value: 2, label: "历史火灾" },
- { value: 3, label: "重点单位" },
- { value: 4, label: "消防站" },
- { value: 19, label: "大网格" },
- { value: 15, label: "中网格" },
- { value: 16, label: "小网格" },
- { value: 17, label: "监控视频" },
- { value: 18, label: "监督检查" },
- { value: 20, label: "执法记录仪" },
- ],
- }, //类型筛选
- checkedSelectValue: "40",
- checkedSelectLabel: "消防站",
- checkedSelectArray: [
- { value: 40, label: "消防站" },
- { value: 41, label: "专职队" },
- // { value: 43, label: "城市消防站" },
- { value: 44, label: "企业消防队" },
- { value: 42, label: "街镇微型消防站" },
- { value: 45, label: "社区微型消防站" },
- { value: 46, label: "一级微型消防站" },
- { value: 47, label: "街镇专职消防队" },
- ],
- tableData: [
- {
- type: "火灾",
- policeTime: "23:00:00",
- alertLevel: "二级",
- address: "闵行区",
- car: "2辆",
- policeCause: "电器火灾",
- department: "吴泾支队",
- status: "1",
- callingUp: "1号",
- equipName: "一七",
- carNumber: "沪X5477应急",
- carStatus: "出动",
- disposeTime: "1:00:00",
- correspondent: "张三",
- commander: "李四",
- firemen: "王五",
- driver: "赵六",
- },
- {
- type: "火灾",
- policeTime: "23:00:00",
- alertLevel: "二级",
- address: "闵行区",
- car: "2辆",
- policeCause: "电器火灾",
- department: "吴泾支队",
- status: "1",
- callingUp: "1号",
- equipName: "一七",
- carNumber: "沪X5477应急",
- carStatus: "出动",
- disposeTime: "1:00:00",
- correspondent: "张三",
- commander: "李四",
- firemen: "王五",
- driver: "赵六",
- },
- {
- type: "火灾",
- policeTime: "23:00:00",
- alertLevel: "二级",
- address: "闵行区",
- car: "2辆",
- policeCause: "电器火灾",
- department: "吴泾支队",
- status: "1",
- callingUp: "1号",
- equipName: "一七",
- carNumber: "沪X5477应急",
- carStatus: "出动",
- disposeTime: "1:00:00",
- correspondent: "张三",
- commander: "李四",
- firemen: "王五",
- driver: "赵六",
- },
- {
- type: "社会救援",
- policeTime: "23:00:00",
- alertLevel: "二级",
- address: "闵行区",
- car: "2辆",
- policeCause: "电器火灾",
- department: "吴泾支队",
- status: "1",
- callingUp: "1号",
- equipName: "一七",
- carNumber: "沪X5477应急",
- carStatus: "出动",
- disposeTime: "1:00:00",
- correspondent: "张三",
- commander: "李四",
- firemen: "王五",
- driver: "赵六",
- },
- {
- type: "社会救援",
- policeTime: "23:00:00",
- alertLevel: "二级",
- address: "闵行区",
- car: "2辆",
- policeCause: "电器火灾",
- department: "吴泾支队",
- status: "1",
- callingUp: "1号",
- equipName: "一七",
- carNumber: "沪X5477应急",
- carStatus: "出动",
- disposeTime: "1:00:00",
- correspondent: "张三",
- commander: "李四",
- firemen: "王五",
- driver: "赵六",
- },
- {
- type: "社会救援",
- policeTime: "23:00:00",
- alertLevel: "二级",
- address: "闵行区",
- car: "2辆",
- policeCause: "电器火灾",
- department: "吴泾支队",
- status: "1",
- callingUp: "1号",
- equipName: "一七",
- carNumber: "沪X5477应急",
- carStatus: "出动",
- disposeTime: "1:00:00",
- correspondent: "张三",
- commander: "李四",
- firemen: "王五",
- driver: "赵六",
- },
- {
- type: "抢险救援",
- policeTime: "23:00:00",
- alertLevel: "二级",
- address: "闵行区",
- car: "2辆",
- policeCause: "电器火灾",
- department: "吴泾支队",
- status: "1",
- callingUp: "1号",
- equipName: "一七",
- carNumber: "沪X5477应急",
- carStatus: "出动",
- disposeTime: "1:00:00",
- correspondent: "张三",
- commander: "李四",
- firemen: "王五",
- driver: "赵六",
- },
- {
- type: "抢险救援",
- policeTime: "23:00:00",
- alertLevel: "二级",
- address: "闵行区",
- car: "2辆",
- policeCause: "电器火灾",
- department: "吴泾支队",
- status: "1",
- callingUp: "1号",
- equipName: "一七",
- carNumber: "沪X5477应急",
- carStatus: "出动",
- disposeTime: "1:00:00",
- correspondent: "张三",
- commander: "李四",
- firemen: "王五",
- driver: "赵六",
- },
- {
- type: "抢险救援",
- policeTime: "23:00:00",
- alertLevel: "二级",
- address: "闵行区",
- car: "2辆",
- policeCause: "电器火灾",
- department: "吴泾支队",
- status: "1",
- callingUp: "1号",
- equipName: "一七",
- carNumber: "沪X5477应急",
- carStatus: "出动",
- disposeTime: "1:00:00",
- correspondent: "张三",
- commander: "李四",
- firemen: "王五",
- driver: "赵六",
- },
- {
- type: "抢险救援",
- policeTime: "23:00:00",
- alertLevel: "二级",
- address: "闵行区",
- car: "2辆",
- policeCause: "电器火灾",
- department: "吴泾支队",
- status: "1",
- callingUp: "1号",
- equipName: "一七",
- carNumber: "沪X5477应急",
- carStatus: "出动",
- disposeTime: "1:00:00",
- correspondent: "张三",
- commander: "李四",
- firemen: "王五",
- driver: "赵六",
- },
- {
- type: "火灾",
- policeTime: "23:00:00",
- alertLevel: "二级",
- address: "闵行区",
- car: "2辆",
- policeCause: "电器火灾",
- department: "吴泾支队",
- status: "1",
- callingUp: "1号",
- equipName: "一七",
- carNumber: "沪X5477应急",
- carStatus: "出动",
- disposeTime: "1:00:00",
- correspondent: "张三",
- commander: "李四",
- firemen: "王五",
- driver: "赵六",
- },
- ],
- headerData: [
- { prop: "policeTime", name: "立案时间" },
- { prop: "alertLevel", name: "警情等级" },
- { prop: "address", name: "案发地址" },
- { prop: "car", name: "调动车辆" },
- // { prop: "type", name: "类型" },
- { prop: "policeCause", name: "原因" },
- { prop: "department", name: "所属中队" },
- { prop: "status", name: "状况" },
- ],
- erpData: [
- {
- linkPhone: "13917453877",
- address: "上海市闵行区新虹街道申滨南路1156号龙湖天街A栋112、115室",
- employeeNum: "",
- registrar: "市场监督管理局",
- companyType: "9",
- fireDutyName: "魏良满",
- delegateName: "魏静",
- completedTime: null,
- companyName: "龙湖虹桥天街",
- fireManageName: "魏良满",
- businessStatus: "开业",
- buildArea: "0.0",
- paidCapital: "500",
- companyId: "2DB679350A0F4023B74C4261539AA031",
- foundTime: null,
- buildingStructure: "钢筋混凝土",
- registeredCapital: "500",
- organization: "91310112MA1GEKG30K",
- companyNature: 9,
- buildingHeight: "25",
- fireRating: "一级",
- construction: null,
- id: 1415,
- },
- ],
- rightArray: {
- tableData: [],
- headerData2: [
- { prop: "gridArea", name: "网格区域" },
- { prop: "streetTown", name: "街道" },
- { prop: "gridPeople", name: "网格人员" },
- { prop: "recruiting", name: "增援干部" },
- { prop: "responsibilities", name: "分管领导" },
- ],
- },
- };
- },
- mounted() {
- this.gridStatisticsData()//处置网格数据
- this.grid(15);
- setTimeout(() => {
- this.autoScroll();
- });
- window.addEventListener("resize", () => this.resizeTimeActions([this.$refs.category, this.$refs.gauge1]), true);
- this.initMap("anbao"); //地图初始化
- this.anbao(null, 3);//大网格
- this.dwgjcmcAndhzzx()//大网格名称及会展中心
- // this.anbaoMap()
- this.getFireSiteDuty(); //各站点执勤实力
- this.selectVideo(); //视频在线
- // this.sadianSelect(this.checkedArray.checkedData[0]); //撒点
- this.getStaticData(this.value111) //疏导区社会单位情况统计
- this.getZQStaticData() //执勤战备力量部署
- this.anbaoSDUWG()//疏导区网格
- // this.llbutj()//力量部署统计
-
- },
- methods: {
- btnC(val) {
- this.check = val;
- },
- /**
- * 视频关闭
- * @param {} id
- */
- videoClose(id){
- if(id ==1){
- this.zfjly1 = true
- }
- if(id ==2){
- this.zfjly2 = true
- }
- this.destroyHls()
- },
- /**
- * 大网格街镇名称
- */
- dwgjcmcAndhzzx(){
- setTimeout(()=>{
- let data = [
- {
- gisX: 121.271655,
- gisY: 31.227993,
- type: "wgmc_hc",
- },
- {
- gisX: 121.308632,
- gisY: 31.201660,
- type: "wgmc_xh",
- },
- {
- gisX: 121.333994,
- gisY: 31.165263,
- type: "wgmc_qb",
- },
- {
- gisX: 121.379764,
- gisY: 31.186605,
- type: "wgmc_hq",
- },
- {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- }
- ];
- this.addMarkerWG(data, "security-plan", "大网格街镇名称&国家会展中心")
- },2000)
- },
- /**
- * 会展中心图标()特殊处理
- */
- hzzxtb(){
- setTimeout(()=>{
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- this.addMarkerSYC([data], "security-plan", "国家会展中心")
- },2000)
- },
- /**
- * 力量部署统计
- */
- llbutj(){
- this.$axios.post(this.$api.water.baseGgpFacilityStatistic,{
- "facilityType": [33,34,35,36] ,
- "statisticType":"facilityType",
- }).then((res) => {
- for(let i =0;i<res.data.length;i++){
- if(res.data[i].facilityType == "33"){
- this.staticData.array1[0].count = res.data[i].count
- }
- if(res.data[i].facilityType == "34"){
- this.staticData.array1[1].count = res.data[i].count
- }
- if(res.data[i].facilityType == "35"){
- this.staticData.array1[2].count = res.data[i].count
- }
- if(res.data[i].facilityType == "36"){
- this.staticData.array1[3].count = res.data[i].count
- }
- }
- })
- },
- staticsPoint(arr,type,val){ //疏导区社会单位情况统计撒点
- this.addMarker(arr, "security-plan", val)
- },
- goPoints(type){
- // alert(type)
- this.$axios.post(this.$api.water.baseGgpFacilityList,{
- "facilityType": [type ]
- }).then((res) => {
- let arr = []
- if(res.data.length>0){
- arr = res.data;
- this.arrayData= res.data;
-
- if(type=='30'){
- this.addMarker(arr, "security-plan", "消防站")
- }else if(type=='33'){
- this.addMarker(arr, "security-plan", "流动消防站(一级)")
- }else if(type=='34'){
- this.addMarker(arr, "security-plan", "流动消防站(二级)")
- }else if(type=='36'){
- this.addMarker(arr, "security-plan", "重点微型消防站")
- }
- }
- });
- },
- basicStaticsData(type,name){ //疏导区基本情况 统计点击事件
- this.$axios.post(this.$api.water.baseGgpFacilityList,{
- "facilityType": [type ]
- }).then((res) => {
- let arr = []
- if(res.data.length>0){
- arr = res.data;
- this.arrayData= res.data;
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data)
- this.addMarker(arr, "security-plan", name)
- // if(type=='29'){
- // this.addMarker(arr, "security-plan", "养老机构")
- // }else if(type=='30'){
- // this.addMarker(arr, "security-plan", "医疗机构")
- // }
- }
- });
-
- // this.basicStatisStatus=false;
- },
- basicGoBack(){ //疏导区基本情况 返回
- this.basicStatisStatus=true;
- },
- getZQStaticData(){
- this.$axios.post(this.$api.water.baseGgpFacilityStatistic,{
- "facilityType": [33,34,35,36 ],
- "statisticType":"facilityType",
- }).then((res) => {
- // this.staticData.array=res.data;
- // var colorArr=['#00C8B8','#068DFF','#FF843A','#7DD807'];
- // this.staticData.array.forEach((item, index) => {
- // item.color = colorArr[index]
- // })
- // console.log(this.staticData.array)
- // var totalCount=0
- // res.data.forEach(function(item){
- // totalCount+=Number(item.count)
- // })
- // this.staticData.total=totalCount
- })
- },
- getStaticData(type){
- this.$axios.post(this.$api.water.baseGgpFacilityStatistic,{
- "facilityType": [type ] ,
- "statisticType":"street",
- }).then((res) => {
- //筛选4个街镇的数据
- this.staticData.array = res.data.filter(item=> item.streetTown=='华漕镇'||item.streetTown=='新虹街道'||item.streetTown=='七宝镇'||item.streetTown=='虹桥镇')
- var colorArr=['#00C8B8','#068DFF','#FF843A','#7DD807'];
- this.staticData.array.forEach((item, index) => {
- item.color = colorArr[index]
- })
- // console.log(this.staticData.array)
- var totalCount=0
- res.data.forEach(function(item){
- totalCount+=Number(item.count)
- })
- this.staticData.total=totalCount
- })
- },
- getOneUnit(val){
- if(val=='29'||val=='30'){ //表格及撒点
- this.$axios.post(this.$api.water.baseGgpFacilityList,{
- "facilityType": [val ]
- }).then((res) => {
- let arr = []
- if(res.data.length>0){
- arr = res.data;
- this.arrayData = res.data ? JSON.parse(JSON.stringify(res.data)) : []
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data)
- if(val=='29'){
- this.addMarker(arr, "security-plan", "养老机构")
- }else{
- this.addMarker(arr, "security-plan", "医疗机构")
- }
- }
- });
- }else if(val=='6'){
-
- }else{//统计
- this.getStaticData(val)
- }
- },
- beforeDestroy() {
- this.autoScroll(true);
- },
- closeJkspStatus(){
- this.jkspStatus = false
- this.destroyHls()
- },
- //播放按钮
- play() {
- this.destroyHls()
- this.loadVideoFn(this.Message.videoUrl)
- },
- destroyHls: function () {//关闭视频拉取
- if (this.hls) {
- this.$refs.hlsVideo.pause();
- this.hls.destroy();
- this.hls = null;
- }
- },
- loadVideoFn(url) {//视频播放
- setTimeout(() => {
- if (Hls.isSupported()) {
- this.hls = new Hls();
- this.hls.loadSource(url);
- this.hls.attachMedia(this.$refs.hlsVideo);
- this.hls.on(Hls.Events.MANIFEST_PARSED, () => {
- // console.log("加载成功");
- this.$refs.hlsVideo.play();
- });
- this.hls.on(Hls.Events.ERROR, (event, data) => {
- // console.log(event, data);
- // 监听出错事件
- //console.log("加载失败");
- });
- }
- }, 1000)
- },
- /**
- * 监控视频
- */
- surveillance(){
- axios({
- method: "get",
- url: "http://32.1.7.96:8086/fireMajorSecurityProcess/selectSecurityViewUrl",
- params:{
- "pageNum":"1",
- "pageSize":"500",
- }
- }).then((res) => {
- this.sadian(res.data.data, "security-plan", "监控视频");
- })
- },
- /**
- * 网格统计状态切换
- */
- gridStatisticsGoBack(){
- this.gridStatisticsStatus = true
- },
- /**
- * 网格数据统计
- */
- gridStatisticsData(){
- let formData = new FormData()
- formData.append('grant_type', "client_credentials")
- formData.append('client_id', "12016")
- formData.append('client_secret', "956DD43944464DCeB262cED7d351AAA4")
- formData.append('scope', "api.read")
- axios({
- headers: {
- 'Content-Type': 'multipart/form-data'
- },
- method: "post",
- url: "http://32.1.8.124:5001/connect/token",
- data:formData
- }).then((res) => {
- axios({
- headers: {
- 'Content-Type': 'multipart/form-data',
- "AppId": "12016",
- "ResourceId": "1884",
- "Authorization":'Bearer ' + res.access_token
- },
-
- method: "get",
- url: "http://32.1.8.124:5002/api/data-share/1884/json",
- params:{
- "STARTTIME":dayjs().subtract(0, "day").format("YYYY-MM-DD"),
- "ENDTIME":dayjs().subtract(0, "day").format("YYYY-MM-DD"),
- "STREETCODE":"",
- "INFOTYPEID":"",
- "INFOBCCODE":"",
- "INFOSCCODE":"",
- "INFOZCCODE":"",
- // "ENDTIME":"2023-12-01",
- }
- }).then((res2) => {
- this.gridStatisticsTable.total = []
- this.gridStatisticsTable.over = []
- this.gridStatisticsTable.yinhuan = []
- this.gridStatisticsTable.total = res2.values
- this.gridStatisticsTableType = this.gridStatisticsTable.total
- this.gridStatisticsNum.total = res2.values.length
- let num = 0;
- let yinhuan = 0
- for(let i =0;i<res2.values.length;i++){
- if(res2.values[i]["案件状态"] == "已结案"){
- num ++
- this.gridStatisticsTable.over.push(res2.values[i])
- }
- if(res2.values[i]["案件子类"].indexOf("部件") > -1 ||
- res2.values[i]["案件子类"].indexOf("三违") > -1 ||
- res2.values[i]["案件子类"].indexOf("扰乱火灾") > -1 ||
- res2.values[i]["案件子类"].indexOf("焚烧") > -1 ||
- res2.values[i]["案件子类"].indexOf("森林火灾") > -1 ){
-
- }else{
- yinhuan ++
- this.gridStatisticsTable.yinhuan.push(res2.values[i])
- }
- }
- setTimeout(()=>{
- this.gridStatisticsNum.over = num
- this.gridStatisticsNum.yinhuan = yinhuan
- if(num){
- this.gridStatisticsNum.rate = ((num / this.gridStatisticsNum.total) * 100).toFixed(2)
- }else{
- this.gridStatisticsNum.rate = 0
- }
- },50)
- })
- })
- },
- /**
- * 网格统计
- * @param {} id 1上报数,2隐患数,3处置数
- */
- gridStatistics(id){
- this.gridStatisticsStatus = false
- if(id == 1){
- this.gridStatisticsTableType = this.gridStatisticsTable.total
- }
- if(id == 2){
- this.gridStatisticsTableType = this.gridStatisticsTable.over
- }
- if(id == 3){
- this.gridStatisticsTableType = this.gridStatisticsTable.yinhuan
- }
-
- },
- /**
- * 在线视频
- */
- async selectVideo(id) {
- await axios({
- headers: {
- "Content-Type": "application/json;charset=UTF-8",
- },
- method: "get",
- // url: "http://32.0.15.107:8080/video-api/kiop-gateway-core/4G/device/ext?apikey=643e6591-a489-4648-ba35-c15c39c64022",
- url: "http://32.0.15.107:8080/video-api/kiop-gateway-core/tysbs/device/ext?apikey=643e6591-a489-4648-ba35-c15c39c64022&f_in_civilCode=31021019,31020414&pageNo=0&pageSize=10000",
- }).then((res) => {
- let arr = [];
- let zfjly = [];
- if (res.data.length > 0) {
- let data = res.data;
- for (let i = 0; i < data.length; i++) {
- if (data[i].otherNames?.status_name == "在线") {
- var num = {
- id: data[i].id,
- name: data[i]?.deviceName,
- groupName: data[i]?.groupName,
- gisX: data[i]?.longitude
- ? data[i]?.longitude
- : 0,
- gisY: data[i]?.latitude ? data[i]?.latitude : 0,
- type: "执法记录仪",
- gbid: data[i].gbid,
- url:
- "http://10.107.31.215:50080/dispatch-ms/#/conference/single_url?ipc_live=1&key=643e6591-a489-4648-ba35-c15c39c64022&gbids=" +
- data[i].gbid,
- };
- arr.push(num);
- }
- }
- for (let i = 0; i < arr.length; i++) {
- if (
- arr[i].name.indexOf("单兵") == "-1" &&
- arr[i].name.indexOf("无人机") == "-1" &&
- arr[i].name.indexOf("布控球") == "-1"
- ) {
- zfjly.push(arr[i]);
- }
- }
- this.selectVideoData = zfjly;
- if (arr.length > 0 && id) {
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data)
- this.addMarker(arr, "enforcement-dynamic","执法记录仪");
- }
- }
- });
- // 测试
- // let arr =
- // [{
- // id: "5708ad6382517cd68ea2d2f8cd01bb58",
- // name: "上海闵行闵行消防站4G布控球",
- // groupName: "009闵行支队",
- // gisX: 121.386128,
- // gisY:31.139253 ,
- // type:"video",
- // gbid:31.01411,
- // type:"执法记录仪",
- // url:"http://10.107.31.215:50080/dispatch-ms/#/conference/single_url?ipc_live=1&key=643e6591-a489-4648-ba35-c15c39c64022&gbids=31000000001320003271&nmediaid=121"
- // }
- // ]
- // if(id){
- // this.addMarker(arr, "enforcement-dynamic");
- // }
- },
- selectArray(id) {
- this.checkedArray.checkedData[0] = 4;
- let data = this.checkedSelectArray.filter((val) => {
- if (val.value == id) {
- return val.label;
- }
- });
- this.checkedSelectLabel = data[0].label;
- this.sadianSelect(data[0].value);
- this.anbaoSDUWG()//疏导区网格
- },
- /**
- *
- */
- goBack() {
- this.category = true;
- },
- /**
- * categoryClick echarts 点击事件
- */
- categoryClick() {
- this.category = false;
- },
- /* 各站点执勤实力分页 */
- async getFireSiteDuty() {
- await this.$axios
- .get(
- this.$api.fireSite.page +
- "?" +
- this.$qs.stringify({
- current: 1,
- size: 100,
- })
- )
- .then((res) => {
- if (res.data.records.length > 0) {
- let arr = res.data.records;
- let data = arr.filter((item) => {
- let data = [];
- if (item.name == "华漕站" || item.name == "新虹站" || item.name == "七宝站" || item.name == "申虹站") {
- data.push(item);
- return data;
- }
- });
- for (let i = 0; i < data.length; i++) {
- data[i].cheliang = {};
- data[i].personnel = undefined;
- data[i].car = undefined;
- this.$axios
- .get(
- this.$api.fireSite.list +
- "?" +
- this.$qs.stringify({
- zdCode: data[i].xfjgId,
- })
- )
- .then((Response) => {
- if (Response.data.length > 0) {
- let children = Response.data;
- data[i].cheliang = children;
- data[i].car = children.length;
- data[i].children = [];
- data[i].personnel = 0;
- for (let a = 0; a < children.length; a++) {
- children[a].renyuan = "";
- children[a].renyuanNum = 0;
- if (children[a].zhy) {
- children[a].renyuan = children[a].zhy + ",";
- }
- if (children[a].jsy) {
- children[a].renyuan += children[a].jsy + ",";
- }
- if (children[a].txy) {
- children[a].renyuan += children[a].txy + ",";
- }
- if (children[a].zsry) {
- children[a].renyuan += children[a].zsry + ",";
- }
- data[i].children.push(children[a]);
- if (children[a].renyuan.indexOf(",") > -1) {
- children[a].renyuanNum += children[a].renyuan.match(/,/g).length;
- }
- data[i].personnel += children[a].renyuanNum;
- }
- for (let i = 0; i < data.length; i++) {
- if (data[i].name == "闵行支队") {
- data[i].name = "支队";
- } else {
- data[i].name = data[i].name.slice(0, 2);
- }
- }
- setTimeout(() => {
- this.cldt = data;
- }, 1500);
- }
- });
- }
- setTimeout(() => {
- this.tableData2 = data;
- }, 1000);
- } else {
- this.dataNo = "暂未数据";
- }
- });
- },
- /**
- * 撒点类型选择
- */
- checkboxChange(id) {
- this.checkedArray.checkedData[0] = id;
- if (id == 15) {
- this.gridStatus = id;
- this.anbao(1, 1);
- // this.anbaoMap()
- this.grid(id);
- this.hzzxtb()
- this.anbaoSDUWG()//疏导区网格
- } else if (id == 16) {
- this.gridStatus = id;
- this.grid(16, null, null, 1);
- // this.anbaoMap()
- // this.anbao(1, 2);
- this.hzzxtb()
- this.anbaoSDUWG()//疏导区网格
- } else if (id == 17) {
- this.surveillance()
- this.hzzxtb()
- this.anbaoSDUWG()//疏导区网格
- } else if (id == 18) {
- this.gridStatus = id;
- this.sadianSelect(id);
- this.hzzxtb()
- this.anbaoSDUWG()//疏导区网格
- } else if (id == 19) {
- this.gridStatus = id;
- this.anbao(1, 3);
- this.dwgjcmcAndhzzx()
- this.anbaoSDUWG()//疏导区网格
- } else if (id == 20) {
- this.gridStatus = id;
- this.selectVideo(1)
- this.anbaoSDUWG()//疏导区网格
- } else {
- this.sadianSelect(id);
- this.hzzxtb()
- this.anbaoSDUWG()//疏导区网格
- }
- },
- /* 历史警情 */
- async historicalWarning() {
- let monthDay = dayjs().subtract(30, "day").format("YYYY-MM-DD HH:mm:ss");
- let today = dayjs().subtract(0, "day").format("YYYY-MM-DD HH:mm:ss");
- return await this.$axios.get(
- this.$api.jqzhcz.page2 +
- "?" +
- this.$qs.stringify({
- // streetTown: this.stroes.$state.streetTown, //街镇
- current: 1,
- size: 150,
- startTime: monthDay,
- endTime: today,
- })
- );
- },
- /**
- * 撒点测绘院、高德
- */
- sadianSelect(id) {
- let type = undefined
- for(let i =0;i<this.checkedArray.checkedList.length;i++){
- if(id ==this.checkedArray.checkedList[i].value ){
- type = this.checkedArray.checkedList[i].label
- // this.checkedSelectLabel = type
- }
- }
- let that = this;
- let arr = [];
- if (this.stroes.$state.mapBool == 1) {
- if (id == 0) {
- this.initMarkers(arr.slice(0, 500), "security-plan", type);
- } else if (id == 1 || id == 2) {
- this.historicalWarning()
- .then((res) => {
- if (res) {
- let data = res.data.records;
- arr = data;
- arr = data.filter((item) => item.zhongdui === "华漕" || item.zhongdui === "新虹" || item.zhongdui === "七宝" || item.zhongdui === "虹桥");
- if (id == 2) {
- arr = arr.filter((item) => {
- return item.ajlxdm == 1;
- });
- }
- }
- })
- .then((res) => {
- this.initMarkers(arr.slice(0, 500), "security-plan", type);
- });
- } else {
- this.initMarkers([], "security-plan", type);
- }
- } else {
- if (id == 0) {
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data);
- this.sadian(arr, "security-plan", type);
- }
- if (id == 1 || id == 2) {
- this.historicalWarning()
- .then((res) => {
- if (res) {
- let data = res.data.records;
- arr = data;
- arr = data.filter((item) => item.zhongdui === "华漕" || item.zhongdui === "新虹" || item.zhongdui === "七宝" || item.zhongdui === "虹桥");
- if (id == 2) {
- arr = arr.filter((item) => {
- return item.ajlxdm == 1;
- });
- }
- }
- })
- .then((res) => {
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data);
- this.sadian(arr, "security-plan", type);
- });
- }
- if (this.checkedArray.checkedData[0] == 40) {
- this.$axios
- .post(this.$api.fireSite.demFireStationList, {
- stationType: [1, 2, 3, 4],
- })
- .then((res) => {
- for (let i = 0; i < res.data.length; i++) {
- if (
- res.data[i].streetTown.indexOf("华漕") > -1 ||
- res.data[i].streetTown.indexOf("新虹") > -1 ||
- res.data[i].streetTown.indexOf("七宝") > -1 ||
- res.data[i].streetTown.indexOf("虹桥") > -1
- ) {
- res.data[i].type = "消防站";
- arr.push(res.data[i]);
- }
- }
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data);
- this.addMarker(arr, "rescue-station", "消防站");
- });
- }
- if (id == 41) {
- this.$axios
- .post(this.$api.fireSite.demFireStationList, {
- stationType: [4],
- })
- .then((res) => {
- for (let i = 0; i < res.data.length; i++) {
- if (
- res.data[i].streetTown.indexOf("华漕") > -1 ||
- res.data[i].streetTown.indexOf("新虹") > -1 ||
- res.data[i].streetTown.indexOf("七宝") > -1 ||
- res.data[i].streetTown.indexOf("虹桥") > -1
- ) {
- res.data[i].type = "专职队";
- arr.push(res.data[i]);
- }
- }
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data);
- this.addMarker(arr, "rescue-station", "专职队");
- });
- }
- if (id == 42) {
- this.$axios.get(this.$api.fireSite.demStreetMicroStationList + "?" + this.$qs.stringify({})).then((res) => {
- for (let i = 0; i < res.data.length; i++) {
- if (
- res.data[i].streetTown.indexOf("华漕") > -1 ||
- res.data[i].streetTown.indexOf("新虹") > -1 ||
- res.data[i].streetTown.indexOf("七宝") > -1 ||
- res.data[i].streetTown.indexOf("虹桥") > -1
- ) {
- res.data[i].stationType = 5;
- arr.push(res.data[i]);
- }
- }
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data);
- this.addMarker(arr, "rescue-station", "微型消防站");
- });
- }
- if (id == 44) {
- this.$axios
- .post(this.$api.water.baseGgpFacilityList, {
- facilityType: [13, 14],
- })
- .then((res) => {
- for (let i = 0; i < res.data.length; i++) {
- if (
- res.data[i].streetTown.indexOf("华漕") > -1 ||
- res.data[i].streetTown.indexOf("新虹") > -1 ||
- res.data[i].streetTown.indexOf("七宝") > -1 ||
- res.data[i].streetTown.indexOf("虹桥") > -1
- ) {
- res.data[i].stationType = 112;
- arr.push(res.data[i]);
- }
- }
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data);
- this.addMarker(arr, "rescue-station", "企业消防");
- });
- }
- if (id == 45) {
- this.$axios
- .post(this.$api.water.baseGgpFacilityList, {
- facilityType: [15, 16],
- })
- .then((res) => {
- for (let i = 0; i < res.data.length; i++) {
- if (
- res.data[i].streetTown.indexOf("华漕") > -1 ||
- res.data[i].streetTown.indexOf("新虹") > -1 ||
- res.data[i].streetTown.indexOf("七宝") > -1 ||
- res.data[i].streetTown.indexOf("虹桥") > -1
- ) {
- res.data[i].stationType = 112;
- arr.push(res.data[i]);
- }
- }
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data);
- this.addMarker(arr, "rescue-station", "社区消防");
- });
- }
- if (id == 46) {
- this.$axios
- .post(this.$api.water.baseGgpFacilityList, {
- facilityType: [17],
- })
- .then((res) => {
- for (let i = 0; i < res.data.length; i++) {
- if (
- res.data[i].streetTown.indexOf("华漕") > -1 ||
- res.data[i].streetTown.indexOf("新虹") > -1 ||
- res.data[i].streetTown.indexOf("七宝") > -1 ||
- res.data[i].streetTown.indexOf("虹桥") > -1
- ) {
- res.data[i].stationType = 17;
- arr.push(res.data[i]);
- }
- }
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data);
- this.addMarker(arr, "rescue-station", "一级微型消防站");
- });
- }
- if (id == 47) {
- this.$axios
- .post(this.$api.water.baseGgpFacilityList, {
- facilityType: [18],
- })
- .then((res) => {
- for (let i = 0; i < res.data.length; i++) {
- if (
- res.data[i].streetTown.indexOf("华漕") > -1 ||
- res.data[i].streetTown.indexOf("新虹") > -1 ||
- res.data[i].streetTown.indexOf("七宝") > -1 ||
- res.data[i].streetTown.indexOf("虹桥") > -1
- ) {
- res.data[i].stationType = 18;
- arr.push(res.data[i]);
- }
- }
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data);
- this.addMarker(arr, "rescue-station", "街镇专职消防队");
- });
- }
- if (id == 18) {
- this.$axios
- .get(this.$api.fire.fireSafetyInspectionScatter)
- .then((res) => {
- for(let i =0;i<res.data.length;i++){
- res.data[i].type = "监督检查"
- arr.push(res.data[i])
- }
- let data = {
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- };
- arr.push(data);
- this.addMarker(arr, "security-plan", "监督检查");
- });
- }
- }
- },
- /**
- * 撒点
- */
- sadian(data, pageType, type) {
- if (this.stroes.$state.mapBool == 1) {
- if (data.length > 0) {
- this.initMarkers(data.slice(0, 500), pageType, type);
- } else {
- this.initMarkers([], pageType, type);
- }
- } else {
- // this.anbaoMapNew(); //安保区域
- if (data.length > 0) {
- this.addMarker(data.slice(0, 500), pageType, type);
- } else {
- this.addMarker([], pageType, type);
- }
- }
- },
- /**
- * 网格人员
- * id 15中网格
- * area 区域名称
- * position 坐标
- * query 查询居委会名称
- */
- grid(id, area, position, query) {
- let querySearch = {};
- let hzzx =[{
- gisX: 121.302183,
- gisY: 31.189991,
- type: "国家会展中心",
- }];
- // this.sadian(hzzx, "security-plan", "国家会展中心");
- if (id == 15) {
- this.rightArray.headerData2 = [
- { prop: "gridArea", name: "网格区域" },
- { prop: "streetTown", name: "街道" },
- { prop: "type1", name: "安监所人员" },
- { prop: "type2", name: "城运中心人员" },
- { prop: "type3", name: "消防助理员" },
- ];
- querySearch = {
- gridArea: area,
- gridGrade: 2,
- };
- }
- if (id == 16) {
- this.rightArray.headerData2 = [
- { prop: "gridArea", name: "网格区域" },
- { prop: "streetTown", name: "街道" },
- { prop: "type1", name: "小网格人员" },
- { prop: "type2", name: "小网格长" },
- ];
- querySearch = {
- mapGridName: area,
- gridGrade: 3,
- };
- }
- this.$axios.get(this.$api.fireSite.gridMemberScatter + "?" + this.$qs.stringify(querySearch)).then((res) => {
- let data = res.data;
- let gridData = [];
- if (data.length > 0) {
- for (let i = 0; i < data.length; i++) {
- if (data[i].gridMemderViceList && data[i].gridMemderViceList.length > 0) {
- gridData[i] = {
- gridArea: data[i].gridArea,
- streetTown: data[i].streetTown,
- mapGridName: data[i].mapGridName,
- seniorGrid: data[i].seniorGrid,
- type1: undefined,
- type2: undefined,
- type3: undefined,
- };
- if (data[i].gridMemderViceList) {
- for (let ii = 0; ii < data[i].gridMemderViceList.length; ii++) {
- if (id == 15) {
- if (data[i].gridMemderViceList[ii].personnelType == 7) {
- if (gridData[i].type1) {
- gridData[i].type1 = `${gridData[i].type1}</br>${data[i].gridMemderViceList[ii].personnelName} ${data[i].gridMemderViceList[ii].phone}`;
- } else {
- gridData[i].type1 = `${data[i].gridMemderViceList[ii].personnelName} ${data[i].gridMemderViceList[ii].phone}`;
- }
- }
- if (data[i].gridMemderViceList[ii].personnelType == 8) {
- if (gridData[i].type2) {
- gridData[i].type2 = `${gridData[i].type2}</br>${data[i].gridMemderViceList[ii].personnelName} ${data[i].gridMemderViceList[ii].phone}`;
- } else {
- gridData[i].type2 = `${data[i].gridMemderViceList[ii].personnelName} ${data[i].gridMemderViceList[ii].phone}`;
- }
- }
- if (data[i].gridMemderViceList[ii].personnelType == 9) {
- if (gridData[i].type3) {
- gridData[i].type3 = `${gridData[i].type3}</br>${data[i].gridMemderViceList[ii].personnelName} ${data[i].gridMemderViceList[ii].phone}`;
- } else {
- gridData[i].type3 = `${data[i].gridMemderViceList[ii].personnelName} ${data[i].gridMemderViceList[ii].phone}`;
- }
- }
- }
- if (id == 16) {
- if (data[i].gridMemderViceList[ii].personnelType == 10) {
- if (gridData[i].type1) {
- gridData[i].type1 = `${gridData[i].type1}</br>${data[i].gridMemderViceList[ii].personnelName} ${data[i].gridMemderViceList[ii].phone}`;
- } else {
- gridData[i].type1 = `${data[i].gridMemderViceList[ii].personnelName} ${data[i].gridMemderViceList[ii].phone}`;
- }
- }
- if (data[i].gridMemderViceList[ii].personnelType == 11) {
- if (gridData[i].type2) {
- gridData[i].type2 = `${gridData[i].type2}</br>${data[i].gridMemderViceList[ii].personnelName} ${data[i].gridMemderViceList[ii].phone}`;
- } else {
- gridData[i].type2 = `${data[i].gridMemderViceList[ii].personnelName} ${data[i].gridMemderViceList[ii].phone}`;
- }
- }
- }
- }
- }
- }
- }
- if (position) {
- let arr = {};
- arr.type = id;
- arr.name = area;
- arr.position = position;
- arr.content = gridData;
- this.anbaoPopup(arr);
- this.superiorGrid(gridData[0].seniorGrid, id == 15 ? 1 : id == 16 ? 2 : "");
- } else {
- }
- this.rightArray.tableData = gridData;
- } else {
- this.dataNo2 = "暂无数据";
- }
- //用于地图居委会区块查询
- if (query && id == 16) {
- var queryData = [];
- let qw = []
- for (let i = 0; i < gridData.length; i++) {
- if (gridData[i].mapGridName) {
- queryData.push(gridData[i]);
- }else{
- qw.push(gridData[i])
- }
-
- }
- this.anbao(1, 2, queryData);
- }
- });
- },
- /**
- * 上级网格
- * @param {*网格上级id} id
- * @param {*等级} type 1镇级 2片区
- */
- superiorGrid(id, type) {
- this.$axios
- .get(
- this.$api.fireSite.gridMemberScatter +
- "?" +
- this.$qs.stringify({
- seniorGrid: id,
- })
- )
- .then((res) => {
- this.diversionArea = [];
- if (res.data.length > 0) {
- let data = res.data[0];
- if (type == 1) {
- //镇级
- this.diversionArea[0] = {
- name: `${data.gridArea}面积`,
- value: data.gridArea == "华漕镇" ? 61.46 : data.gridArea == "新虹街道" ? "19.26" : data.gridArea == "七宝镇" ? "7" : data.gridArea == "虹桥镇" ? "17" : "",
- unit: "km²",
- color: "#7DD807",
- };
- this.diversionArea[1] = {
- name: "分管领导",
- value: 0,
- unit: "人",
- color: "#01C3B4",
- };
- this.diversionArea[2] = {
- name: "城运中心主任",
- value: 0,
- unit: "人",
- color: "#FD843A",
- };
- this.diversionArea[3] = {
- name: "安监所所长",
- value: 0,
- unit: "人",
- color: "#7DD807",
- };
- this.diversionArea[4] = {
- name: "支队外勤参谋",
- value: 0,
- unit: "人",
- color: "#058DFE",
- };
- this.diversionArea[5] = {
- name: "中网格",
- value: data.gridArea == "华漕镇" ? 5 : data.gridArea == "新虹街道" ? "4" : data.gridArea == "七宝镇" ? "3" : data.gridArea == "虹桥镇" ? "2" : "",
- unit: "个",
- color: "#058DFE",
- };
- this.diversionArea[6] = {
- name: "小网格",
- value: data.gridArea == "华漕镇" ? 36 : data.gridArea == "新虹街道" ? "22" : data.gridArea == "七宝镇" ? "34" : data.gridArea == "虹桥镇" ? "11" : "",
- unit: "个",
- color: "#058DFE",
- };
- for (let i = 0; i < data.gridMemderViceList.length; i++) {
- if (data.gridMemderViceList[i].personnelType == 3) {
- //分管领导
- this.diversionArea[1].value++;
- }
- if (data.gridMemderViceList[i].personnelType == 4) {
- //城运中心主任
- this.diversionArea[2].value++;
- }
- if (data.gridMemderViceList[i].personnelType == 5) {
- //安监所所长
- this.diversionArea[3].value++;
- }
- if (data.gridMemderViceList[i].personnelType == 6) {
- //支队外勤参谋
- this.diversionArea[4].value++;
- }
- }
- }
- if (type == 2) {
- //片区
- this.diversionArea[0] = {
- name: "",
- value: data.gridArea,
- unit: "",
- color: "#7DD807",
- };
- this.diversionArea[1] = {
- name: "安监所人员",
- value: 0,
- unit: "人",
- color: "#01C3B4",
- };
- this.diversionArea[2] = {
- name: "城运中心人员",
- value: 0,
- unit: "人",
- color: "#FD843A",
- };
- this.diversionArea[3] = {
- name: "消防助理员",
- value: 0,
- unit: "人",
- color: "#7DD807",
- };
- this.diversionArea[4] = {
- name: "小网格",
- value:
- data.gridArea == "闵S1-1(纪王西网格)"
- ? "4"
- : data.gridArea == "闵S1-2(纪王东网格)"
- ? "6"
- : data.gridArea == "闵S1-3(诸翟北网格)"
- ? "12"
- : data.gridArea == "闵S1-4(诸翟南网格)"
- ? "8"
- : data.gridArea == "闵S1-5(老华漕网格)"
- ? "6"
- : data.gridArea == "闵S2-1(爱博网格)"
- ? "4"
- : data.gridArea == "闵S2-2(华美网格)"
- ? "6"
- : data.gridArea == "闵S2-3(枢纽网格)"
- ? "6"
- : data.gridArea == "闵S2-4(航华网格)"
- ? "6"
- : data.gridArea == "闵S3-1(七宝北片网格)"
- ? "10"
- : data.gridArea == "闵S3-2(七宝吴宝路网格)"
- ? "9"
- : data.gridArea == "闵S3-3(七宝航华网格)"
- ? "15"
- : data.gridArea == "闵S4-1(紫藤红松网格)"
- ? "6"
- : data.gridArea == "闵S4-2(虹梅网格)"
- ? "5"
- : "0",
- unit: "个",
- color: "#7DD807",
- };
- for (let i = 0; i < data.gridMemderViceList.length; i++) {
- if (data.gridMemderViceList[i].personnelType == 7) {
- //安监所人员
- this.diversionArea[1].value++;
- }
- if (data.gridMemderViceList[i].personnelType == 8) {
- //城运中心人员
- this.diversionArea[2].value++;
- }
- if (data.gridMemderViceList[i].personnelType == 9) {
- //消防助理员
- this.diversionArea[3].value++;
- }
- }
- }
- }
- // diversionArea:[
- // {name:"疏导区总面积",value:61.46,unit:"km²",color:"#7DD807"},
- // {name:"华漕镇",value:28.2,unit:"km²",color:"#01C3B4"},
- // {name:"新虹街道",value:19.26,unit:"km²",color:"#01C3B4"},
- // {name:"七宝镇",value:7,unit:"㎡",color:"#01C3B4"},
- // {name:"虹桥镇",value:7,unit:"km²",color:"#01C3B4"},
- // {name:"大网格",value:4,unit:"个",color:"#FC0609 "},
- // {name:"中网格",value:14,unit:"个",color:"#FD843A"},
- // {name:"小网格",value:103,unit:"个",color:"#7DD807"},
- // {name:"分管领导",value:20,unit:"人",color:"#058DFE"},
- // {name:"增援干部",value:11,unit:"人",color:"#058DD1"},
- // ],//疏导区基本情况
- });
- },
- },
- watch: {
- "stores.$state.gridData": function (newValue, oldValue) {
-
- if (this.gridStatus == 15) {
- this.grid(15, newValue.name, newValue.position);
- }
- if (this.gridStatus == 16) {
- this.grid(16, newValue.name, newValue.position);
- }
- },
- "stores.$state.jkspData": function (newValue, oldValue) {
- this.jkspStatus = true
- this.Message.name = newValue.children[0][1]
- this.Message.videoId = newValue.id
- this.Message.videoUrl = newValue.url
- // "http://videocdn.didano.com/school765class0channelId2761namedingdangm/playlist.m3u8"
- this.play()
- },
-
- },
- // watch: {
- // "stores.$state.jkspData": function (newValue, oldValue) {
- // console.log(123,newValue,this.stores.$state.jkspData)
- // this.jkspStatus = true
- // console.log(this.jkspStatus)
- // this.Message.name = newValue.children[0][1]
- // this.Message.videoId = newValue.id
- // this.Message.videoUrl = "http://videocdn.didano.com/school765class0channelId2761namedingdangm/playlist.m3u8"
- // // this.Message.videoUrl = newValue.url
-
- // this.play()
- // },
- // },
- };
- </script>
- <style lang="scss" scoped>
- @import "@/assets/scss/color.scss";
- .contentBox {
- .return{
- position: absolute;
- top:0px;
- right:0px;
- margin-top:0!important;
- .returnText {
- width: 0.5rem;
- text-align: center;
- height: 0.3rem;
- line-height: 0.3rem;
- box-shadow: inset 0 0 0.05rem 0.05rem #1b4f90;
- background: rgba(19, 42, 90, 0.2) !important;
- color: #fff;
- float: right;
- margin-top: 0;
- }
- }
- .leftBox {
- .leftTop {
- height: 43%;
- max-height: 43%;
- justify-content: center;
- align-items: center;
- box-sizing: border-box;
- .leftTopContent {
- color: #ffffff;
- height: calc(100% - 0.4375rem);
- display: flex;
- > .el-row {
- width: 100%;
- > .el-col {
- display: flex;
- > div {
- margin: auto;
- > .title {
- width: 1.075rem;
- height: 0.225rem;
- font-size: 0.175rem;
- padding-left: 0.1625rem;
- margin: 0.0625rem 0 0.0625rem 0;
- position: relative;
- background-image: url(~@a/img/securityPlan/fhxcqk.png);
- background-size: 100% 100%;
- > div {
- position: absolute;
- bottom: 0.0625rem;
- width: 150%;
- }
- }
- > .content {
- > span:nth-child(1) {
- font-size: 0.3rem;
- padding: 0 0.5625rem 0 0.1625rem;
- color: #73fbfd;
- }
- > span:nth-child(2) {
- font-size: 0.175rem;
- margin-right: 0.125rem;
- }
- > span:nth-child(3) {
- font-size: 0.175rem;
- }
- }
- }
- }
- }
- }
- .leftTopContent2 {
- color: #fff;
- font-size: 0.175rem;
- .sdqBasicInfo{
- .basicItem{
- width:19%; margin: 4px 0; box-sizing: border-box;
- .nameBox{
- background-image: url(~@a/img/securityPlan/sdTextBg.png);
- background-size: contain;
- width: 100%;
- display: inline-block
- }
- }
- .basicItem:not(:last-child){
- margin-right:.07rem
- }
-
-
- }
- .sdqBasicInfo.sdline2{
- .basicItem{
- margin:0 .4rem;
- }
- }
- .sdline3 {
- margin-top:.25rem;
-
- .basicItem{
- cursor:pointer;
- width:25% !important; margin: 0px 0; box-sizing: border-box;
- position:relative;
- }
- // .basicItem::after {
- // position: absolute; /*绝对定位*/
- // top: 50%; /*Y轴方向偏移自身高度的50%*/
- // transform: translatey(-40%); /*Y轴方向偏移微调*/
- // right: 0; /*紧靠容器左边缘*/
- // content: ''; /*伪元素需要有内容才能显示*/
- // width: 1px; /*伪元素宽度*/
- // height: 40px; /*伪元素高度*/
- // background-color: rgba(168, 164, 164,.4); /*伪元素颜色*/
- // }
-
- }
- .sdline3 .basicItem:last-child{
- width:auto
- }
- .el-row {
- > div {
- width: 20%;
- margin-top: 40px;
- p:nth-child(2) {
- // text-align: center;
- strong {
- font-size: 0.2rem;
- }
- }
- }
- }
- }
- }
- .leftCenter {
- height: 32%;
- max-height: 32%;
- margin-top: 0.125rem;
- width: 100%;
- justify-content: center;
- align-items: center;
- // box-sizing: border-box;
- color: #ffffff;
- .leftCenterContent {
- width: 100%;
- height: calc(100% - 0.4375rem);
- display: flex;
- .content1,
- .content2,
- .content3 {
- width: 33.33%;
- overflow: hidden;
- margin: auto 0;
- > div:nth-child(1) {
- display: flex;
- > img {
- width: 1.17rem; //大屏
- height: 1.08rem; //大屏
- margin: auto;
- }
- }
- > div:nth-child(2) {
- font-size: 0.2rem;
- text-align: center;
- & > span {
- b {
- margin-right: 0.0625rem;
- font-size: 0.3rem;
- line-height: 0.5rem;
- }
- }
- p {
- margin-top: 0.1rem;
- color: #fff;
- }
- }
- }
- }
- }
- .rightCenter {
- color: #ffffff;
- height: calc(35% - 0.125rem);
- max-height: calc(35% - 0.125rem);
- margin-top: 0.125rem;
- .rightTopContent {
- width: 100%;
- padding: 0.25rem 0 10px 0;
- height: calc(100% - 0.8125rem);
- .content {
- height: 100%;
- overflow: scroll;
- position: relative;
- & > .el-row {
- overflow: hidden;
- width: 100%;
- height: auto;
- & > .title {
- width: 100%;
- height: 0.4375rem;
- line-height: 0.4375rem;
- font-size: 0.175rem;
- padding: 0 0.125rem;
- background: rgba(115, 251, 253, 0.3) !important;
- margin-bottom: 0.025rem;
- }
- & > .data {
- width: 100%;
- font-size: 0.175rem;
- padding: 0 0.125rem;
- background: rgba(115, 251, 253, 0.1) !important;
- margin-bottom: 0.025rem;
- white-space: initial;
- .el-col {
- line-height: 0.35rem;
- span {
- color: #73fbfd;
- }
- }
- }
- }
- &::-webkit-scrollbar {
- display: none;
- }
- }
- }
- }
- }
- .rightBox {
- color: #ffffff;
- .rightTop {
- height: 30%;
- max-height: 30%;
- .rightTopContent {
- width: 100%;
- height: calc(100% - 0.4375rem);
- display: flex;
- > .el-row {
- > .el-col {
- display: flex;
- margin: auto 0;
- > div {
- display: flex;
- .left {
- width: 1.375rem;
- margin-right: 0.25rem;
- div {
- text-align: center;
- font-size: 0.175rem;
- overflow: hidden !important;
- white-space: nowrap !important;
- text-overflow: ellipsis !important;
- }
- img {
- width: 0.675rem;
- height: 0.675rem;
- display: flex;
- margin: auto auto 0.0625rem auto;
- }
- }
- .right {
- overflow: hidden !important;
- white-space: nowrap !important;
- text-overflow: ellipsis !important;
- .el-col:nth-child(1) {
- display: flex;
- margin: auto 0 0 0;
- font-size: 0.175rem;
- }
- .el-col:nth-child(2) {
- display: flex;
- margin: auto 0 0 0;
- font-size: 0.3rem;
- font-weight: bold;
- }
- }
- }
- }
- }
- }
- }
- .rightTop3 {
- height: 30%;
- max-height: 30%;
- position:relative;
-
- .rightTopContent {
- width: 100%;
- height: calc(100% - 0.4375rem);
- display: flex;
- > .el-row {
- > .el-col {
- display: flex;
- margin: auto 0;
- > div {
- display: flex;
- .left {
- width: 1.375rem;
- margin-right: 0.25rem;
- div {
- text-align: center;
- font-size: 0.175rem;
- overflow: hidden !important;
- white-space: nowrap !important;
- text-overflow: ellipsis !important;
- }
- img {
- width: 0.675rem;
- height: 0.675rem;
- display: flex;
- margin: auto auto 0.0625rem auto;
- }
- }
- .right {
- overflow: hidden !important;
- white-space: nowrap !important;
- text-overflow: ellipsis !important;
- .el-col:nth-child(1) {
- font-size: 0.3rem;
- margin-top:14px;
- vertical-align: bottom;
- }
- // .el-col:nth-child(2) {
- // display: flex;
- // margin: auto 0 0 0;
- // font-size: 0.3rem;
- // font-weight: bold;
- // }
- }
- }
- }
- }
- }
-
- }
- .leftTopContent {
- color: #ffffff;
- height: calc(100% - 0.4375rem);
- display: flex;
- > .el-row {
- width: 100%;
- > .el-col {
- display: flex;
- > div {
- margin: auto;
- > .title {
- width: 1.075rem;
- height: 0.225rem;
- font-size: 0.175rem;
- padding-left: 0.1625rem;
- margin: 0.0625rem 0 0.0625rem 0;
- position: relative;
- background-image: url(~@a/img/securityPlan/fhxcqk.png);
- background-size: 100% 100%;
- > div {
- position: absolute;
- bottom: 0.0625rem;
- width: 150%;
- }
- }
- > .content {
- > span:nth-child(1) {
- font-size: 0.3rem;
- padding: 0 0.5625rem 0 0.1625rem;
- color: #73fbfd;
- }
- > span:nth-child(2) {
- font-size: 0.175rem;
- margin-right: 0.125rem;
- }
- > span:nth-child(3) {
- font-size: 0.175rem;
- }
- }
- }
- }
- }
- }
- .leftBot {
- height: calc(35% - 0.125rem);
- max-height: calc(35% - 0.125rem);
- margin-top: 0.125rem;
- width: 100%;
- .leftBotContent {
- padding: 0.25rem 0 0 0;
- height: calc(100% - 0.6875rem);
- }
- }
- .rightBot {
- height: calc(39% - 0.125rem);
- max-height: calc(35% - 0.125rem);
- margin-top: 0.125rem;
- .rightBotContent {
- padding: 0.25rem 0 0 0;
- height: 100%;
- }
- }
- .dailyNewSec{
- height:18%;
- .dailyItemLeft{
- margin-top:.2rem;
- line-height:.375rem;
- font-size:.175rem;
- width:39%;
- display: inline-block;
- vertical-align: middle;
- height:60%;
- overflow-y:scroll;
- overflow: hidden;
- white-space: nowrap;
- text-overflow: ellipsis;
- .el-col::after {
- content: '|';
- margin-left: .15rem;
- }
- }
- .dailyItemRight{
- vertical-align: middle;
- margin-left:.15rem;
- margin-top:.2rem;
- line-height:.375rem;
- font-size:.175rem;
- width:58%;
- height:60%;
- overflow-y:scroll;
- display: inline-block;
- a{
- color:#fff;
- text-decoration: none;
- }
- }
- }
- .girdCheckSec{
- height:38%;
- .girdCheckItem{
- p{
- font-size:0.225rem;
- margin:.1875rem 0 .125rem;
- color:rgb(234, 183, 147);
- font-weight:700;
- span{
- font-size: 0.175rem;
- color:#fff;
-
- }
- }
- .row_g{
- display:flex;
- align-items: center;
- margin-top:10px;
- width:100%;
- div{
- // min-width:18% !important;
- display: inline-block;
- font-size:.155rem;
- margin:.125rem .182rem 0 0;
- text-align: left;
- vertical-align: top;
-
- }
- }
-
-
-
-
-
-
-
- }
- }
- .ssfjSec{
- height:20%;
- .girdCheckItem{
- .row_g2{
- margin-top:0px;
- width:100%;
- div:first-child{
- width:1.5rem
- }
- div{
- display: inline-block;
- font-size:.155rem;
- margin:.125rem .3rem .125rem 0;
- text-align: left;
- // vertical-align: top;
- }
- }
- .row_g3{
- margin-top:-10px;
- width:100%;
- div{
- width:16% !important;
- display: inline-block;
- font-size:.155rem;
- margin:.125rem 0;
- text-align: left;
- vertical-align: top;
- }
- }
-
-
-
-
-
- }
- }
-
- }
- }
- .leftBotContent2 {
- height: 23%;
- margin-top: -35%;
- }
- .rightTop2 {
- > .el-col {
- > div {
- > div:nth-child(1) {
- margin: 0.3rem 0;
- }
- > div:nth-child(3) {
- width: 50%;
- margin: 0.2rem auto;
- padding: 0.075rem;
- border-radius: 0.25rem;
- box-shadow: inset 0 0 0.05rem 0.05rem rgba(27, 79, 144, 1);
- background: rgba(#132a5a, 0.2) !important;
- span {
- margin-left: 0.075rem;
- }
- }
- }
- }
- }
- .monitor-list {
- overflow: hidden;
- margin-top:0.25rem;
- > .list {
- border: 1px solid #3a7e8e;
- position: relative;
- width:48%;
- height:16.5vh;
- box-sizing: border-box;
- .videoSelect {
- position: absolute;
- width: 100%;
- }
- img{
- width:100%;
- height:192px;
- overflow: hidden;
- }
- }
- .list:nth-child(2){
- margin-left:4%;
- }
- }
- iframe {
- border: none;
- width:100%;
- }
- .tableTooltipwt {
- position: fixed;
- top:120px;left:39%;
- max-height:500px;
- overflow-y: scroll;
- background:none;
- width:400px;
- bottom:auto;
- padding:10px 10px 5px 10px !important;
- border-radius: 0.05rem;
- border:1px solid rgba(115, 251, 253, 1);
- box-shadow: inset 0 0 1px 0.0125rem rgba(115, 251, 253, 1);
- background:rgba(0, 0, 0, 0.6);
- z-index: 10000;
- .close {
- width: 20px;
- height: 20px;
- position: absolute;
- right: 10px;
- top: 10px;
- z-index: 10000;
- display: block;
- }
- .tableContent {
- p {
- @include color_primary($color-primary1);
- font-size: 0.2rem;
- }
- .el-col {
- margin-top: 0.05rem;
- line-height: 0.3rem;
- text-overflow: ellipsis !important;
- white-space: normal !important;
- font-size: 0.18rem;
- }
- .mk {
- margin-top: 0px;
- .color1 {
- @include color_primary($color-primary3);
- }
- .color2 {
- @include color_primary($color-primary1);
- }
- }
- .video{
- width:100%;
- margin:10px 0;
- }
- }
- }
- .videoCloseBtn{
- position: absolute;
- z-index: 10;
- bottom:0;
- left:0;
- cursor: pointer;
- .returnText{
- width: 0.5rem;
- text-align: center;
- height: 0.3rem;
- line-height: 0.3rem;
- box-shadow: inset 0 0 0.05rem 0.05rem #1b4f90;
- background: rgba(19, 42, 90, 0.2) !important;
- color: #fff;
- float: right;
- margin-top: 0;
- }
- }
- </style>
- <style>
- .el-tooltip__popper {
- width: 200px;
- }
- .table-tooltip {
- max-width: 200px;
- }
- .table-style .cell {
- width: 200px;
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
- }
- .el-popper {
- max-width: 30%;
- padding-bottom: 5px !important;
- display: -webkit-box;
- overflow: hidden;
- text-overflow: ellipsis;
- -webkit-line-clamp: 15;
- -webkit-box-orient: vertical;
- }
- </style>
|