riku
2025-07-16 c23ac06446a9a1edc41cc13723e5d0b8eabdfd63
src/views/sourcetrace/component/PollutedExceptionItem.vue
@@ -11,10 +11,12 @@
    <template #content>
      <el-scrollbar class="clue-card">
        <el-row justify="space-between" align="bottom">
          <el-text type="warning" size="large"> 典型切片 </el-text>
          <el-text type="warning" style="font-weight: 600" size="large">
            溯源切片
          </el-text>
          <el-link
            type="primary"
            type="info"
            :underline="true"
            @click="showMarksAndPolygon(item)"
          >
@@ -23,7 +25,7 @@
          </el-link>
        </el-row>
        <div>
          <el-text type="primary">
          <el-text type="info">
            <el-icon><Timer /></el-icon>
            {{
              '切片时段:' +
@@ -34,56 +36,55 @@
          </el-text>
        </div>
        <div>
          <el-text type="primary">
          <el-text type="info">
            <el-icon><MapLocation /></el-icon>
            {{ '风险区域:' + item.pollutedArea.address }}
          </el-text>
        </div>
        <!-- <div>
          <el-text type="primary">
          <el-text type="info">
            溯源距离:{{ formatDistanceType(item.pollutedArea.distanceType) }}
          </el-text>
        </div> -->
        <div>
          <el-text type="primary">
          <el-text type="info">
            <el-icon><Bell /></el-icon>
            异常类型:{{ item.pollutedData.exception }}
          </el-text>
        </div>
        <el-row style="border-top: 1px solid white">
          <el-col :span="6">
            <el-statistic
              title="突变因子"
              :value="item.pollutedData.factorName"
            />
          </el-col>
          <el-col :span="6">
            <el-statistic
              v-if="item.pollutedData.exceptionType == 4"
              title="变化幅度"
              :value="formatPercentage(item.pollutedData.avgPer)"
            />
            <el-statistic
              v-else-if="item.pollutedData.exceptionType == 9"
              title="变化速率"
              :value="formatChangeRate(item.pollutedData.avgRate)"
              suffix=""
            />
          </el-col>
          <el-col :span="6">
            <el-statistic title="发生次数" :value="item.pollutedData.times" />
          </el-col>
          <el-col :span="6">
            <el-statistic
              title="平均风速"
              :value="item.pollutedData.windSpeed"
              suffix="m/s"
            />
          </el-col>
        </el-row>
        <div v-for="s in item.pollutedData.statisticMap" :key="s">
          <el-row style="border-top: 1px solid white">
            <el-col :span="6">
              <el-statistic title="突变因子" :value="s.factorName" />
            </el-col>
            <el-col :span="6">
              <el-statistic
                v-if="item.pollutedData.exceptionType == 4"
                title="变化幅度"
                :value="formatPercentage(s.avgPer)"
              />
              <el-statistic
                v-else-if="item.pollutedData.exceptionType == 9"
                title="变化速率"
                :value="formatChangeRate(s.avgRate)"
                suffix=""
              />
            </el-col>
            <el-col :span="6">
              <el-statistic title="发生次数" :value="item.pollutedData.times" />
            </el-col>
            <el-col :span="6">
              <el-statistic
                title="平均风速"
                :value="item.pollutedData.windSpeed"
                suffix="m/s"
              />
            </el-col>
          </el-row>
        </div>
        <el-row justify="space-between">
          <!-- <el-link
                    type="primary"
                    type="info"
                    underline
                    @click="showMarksAndPolygon(item)"
                  >
@@ -106,7 +107,7 @@
        <!-- </div> -->
        <div class="border-dashed">
          <el-icon color="#ffbc58" size="20"><WarningFilled /></el-icon>
          <el-text type="primary" tag="b">
          <el-text type="info" tag="b">
            {{ item.pollutedSource.conclusion }}
          </el-text>
        </div>
@@ -159,7 +160,7 @@
}
</script>
<style scoped>
:deep(.el-statistic) {
/* :deep(.el-statistic) {
  --el-statistic-title-color: rgb(215, 215, 215);
  --el-statistic-content-color: white;
}
@@ -170,7 +171,7 @@
:deep(.el-link) {
  --el-link-text-color: #23dad1;
}
} */
.scrollbar {
  min-width: 300px;