| | |
| | | <el-col :span="21"> |
| | | <el-row justify="space-between"> |
| | | <el-space> |
| | | <el-text type="primary" size="default"> |
| | | <el-text type="info" size="default"> |
| | | <el-icon><Timer /></el-icon> |
| | | {{ |
| | | item.pollutedData._startTime + |
| | |
| | | }} |
| | | </el-text> |
| | | </el-space> |
| | | <el-link type="primary" @click="emits('open', item)"> 详情 </el-link> |
| | | <el-link type="info" @click="emits('open', item)"> 详情 </el-link> |
| | | </el-row> |
| | | <div> |
| | | <el-tag |
| | |
| | | round |
| | | class="m-r-4" |
| | | > |
| | | <div v-html="formatFactorName(item.pollutedData.factorName)"></div> |
| | | <div |
| | | v-html="formatFactorName(item.pollutedData.statisticMap)" |
| | | ></div> |
| | | </el-tag> |
| | | <el-text type="primary"> |
| | | <el-text type="info"> |
| | | {{ item.pollutedData.exception + ',' }} |
| | | </el-text> |
| | | <el-text type="primary">{{ |
| | | <el-text type="info">{{ |
| | | formatDistanceType(item.pollutedArea.distanceType) |
| | | }}</el-text> |
| | | <el-text :type="noWarn ? 'primary' : 'warning'"> |
| | | <el-text :type="noWarn ? 'info' : 'warning'"> |
| | | {{ |
| | | item.pollutedSource.sceneList.length == 0 |
| | | ? '未找到风险源' |
| | |
| | | <div v-else-if="item._type == '2'"> |
| | | <el-row justify="space-between"> |
| | | <el-tag type="danger" effect="dark" size="small">线索</el-tag> |
| | | <el-link type="primary" @click="emits('open')"> 详情 </el-link> |
| | | <el-link type="info" @click="emits('open')"> 详情 </el-link> |
| | | </el-row> |
| | | <el-space> |
| | | <el-icon color="#F56C6C" :size="40"><WarnTriangleFilled /></el-icon> |
| | | <el-text type="primary">{{ item.advice }}</el-text> |
| | | <el-text type="info">{{ item.advice }}</el-text> |
| | | </el-space> |
| | | </div> |
| | | <el-row v-else-if="item._type == '3'"> |
| | |
| | | <el-col :span="21"> |
| | | <el-row justify="space-between"> |
| | | <el-space> |
| | | <el-text type="primary" size="default"> |
| | | <el-text type="info" size="default"> |
| | | <el-icon><Timer /></el-icon> |
| | | {{ |
| | | item.pollutedData._startTime + |
| | |
| | | }} |
| | | </el-text> |
| | | </el-space> |
| | | <!-- <el-link type="primary" @click="emits('open', item)"> 详情 </el-link> --> |
| | | <el-link type="info" @click="emits('open', item)"> 详情 </el-link> |
| | | </el-row> |
| | | <div> |
| | | <el-tag |
| | |
| | | round |
| | | class="m-r-4" |
| | | > |
| | | <div v-html="formatFactorName(item.pollutedData.factorName)"></div> |
| | | <div |
| | | v-html="formatFactorName(item.pollutedData.statisticMap)" |
| | | ></div> |
| | | </el-tag> |
| | | <el-text type="primary">{{ item.pollutedData.exception }}</el-text> |
| | | <el-text type="info">{{ item.pollutedData.exception }}</el-text> |
| | | </div> |
| | | <div v-if="item.pollutedSource.sceneList.length > 0"> |
| | | <div v-for="s in item.pollutedSource.sceneList" :key="s.guid"> |
| | |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <!-- <el-row justify="space-between"> |
| | | <el-space> |
| | | <el-tag type="primary" effect="dark" size="small">提醒</el-tag> |
| | | <el-text type="primary">{{ |
| | | item.pollutedData.startTime + ' - ' + item.pollutedData.endTime |
| | | }}</el-text> |
| | | </el-space> |
| | | <el-link type="primary" @click="emits('open', item)"> 详情 </el-link> |
| | | </el-row> |
| | | <el-col :span="24"> |
| | | <el-tag effect="plain" type="info" size="small" hit round class="m-r-4"> |
| | | <div v-html="formatFactorName(item.pollutedData.factorName)"></div> |
| | | </el-tag> |
| | | <el-text type="primary">{{ item.pollutedData.exception }}</el-text> |
| | | </el-col> --> |
| | | </el-row> |
| | | </div> |
| | | </template> |
| | |
| | | } |
| | | } |
| | | |
| | | function formatFactorName(name) { |
| | | switch (name) { |
| | | case 'PM25': |
| | | return 'PM<sub>2.5</sub>'; |
| | | // return '<span>PM2.5</span>'; |
| | | case 'PM10': |
| | | return 'PM<sub>10</sub>'; |
| | | case 'NO2': |
| | | return 'NO<sub>2</sub>'; |
| | | case 'H2S': |
| | | return 'H<sub>2</sub>S'; |
| | | case 'SO2': |
| | | return 'SO<sub>2</sub>'; |
| | | case 'O3': |
| | | return 'O<sub>3</sub>'; |
| | | case 'VOC': |
| | | return 'VOC<sub>s</sub>'; |
| | | |
| | | default: |
| | | break; |
| | | function formatFactorName(statisticMap) { |
| | | const mapName = (n) => { |
| | | switch (n) { |
| | | case 'PM25': |
| | | return 'PM<sub>2.5</sub>'; |
| | | case 'PM10': |
| | | return 'PM<sub>10</sub>'; |
| | | case 'NO2': |
| | | return 'NO<sub>2</sub>'; |
| | | case 'H2S': |
| | | return 'H<sub>2</sub>S'; |
| | | case 'SO2': |
| | | return 'SO<sub>2</sub>'; |
| | | case 'O3': |
| | | return 'O<sub>3</sub>'; |
| | | case 'VOC': |
| | | return 'VOC<sub>s</sub>'; |
| | | default: |
| | | return ''; |
| | | } |
| | | }; |
| | | let name = []; |
| | | for (const key in statisticMap) { |
| | | const value = statisticMap[key]; |
| | | name.push(mapName(value.factorName)); |
| | | } |
| | | return name.join('、'); |
| | | } |
| | | |
| | | function handleSetCenter(item, scene) { |