riku
2025-07-04 d6e6f8b5b31e132e4597eb531168d3e88f3bda72
src/views/sourcetrace/component/PollutedExceptionItem.vue
@@ -10,34 +10,43 @@
  <BaseCard v-if="item" v-show="item.showMore">
    <template #content>
      <el-scrollbar class="clue-card">
        <el-row justify="space-between">
          <!-- <el-tag v-if="index == 0" type="danger">最新</el-tag> -->
          <el-text type="primary">{{
            '切片时间:' +
            item.pollutedData.startTime +
            ' - ' +
            item.pollutedData.endTime
          }}</el-text>
        <el-row justify="space-between" align="bottom">
          <el-text type="warning" size="large"> 典型切片 </el-text>
          <el-link
            type="primary"
            :underline="true"
            @click="showMarksAndPolygon(item)"
          >
            {{ item.showMore ? '收起异常' : '定位异常' }}
            {{ item.showMore ? '收起' : '定位' }}
            <el-icon size="large"><CircleClose /></el-icon>
          </el-link>
        </el-row>
        <div>
          <el-text type="primary">
            污染区域:{{ item.pollutedArea.address }}
            <el-icon><Timer /></el-icon>
            {{
              '切片时段:' +
              item.pollutedData._startTime +
              ' - ' +
              item.pollutedData._endTime
            }}
          </el-text>
        </div>
        <div>
          <el-text type="primary">
            <el-icon><MapLocation /></el-icon>
            {{ '风险区域:' + item.pollutedArea.address }}
          </el-text>
        </div>
        <!-- <div>
          <el-text type="primary">
            溯源距离:{{ formatDistanceType(item.pollutedArea.distanceType) }}
          </el-text>
        </div>
        </div> -->
        <div>
          <el-text type="primary">
            <el-icon><Bell /></el-icon>
            异常类型:{{ item.pollutedData.exception }}
          </el-text>
        </div>
@@ -92,10 +101,12 @@
          :key="index1"
          :model-value="item1"
          chart-height="80px"
          :y-min-interval="20"
        ></RealTimeLineChart>
        <!-- </div> -->
        <div class="border-dashed">
          <el-text type="" tag="mark">
          <el-icon color="#ffbc58" size="20"><WarningFilled /></el-icon>
          <el-text type="primary" tag="b">
            {{ item.pollutedSource.conclusion }}
          </el-text>
        </div>
@@ -103,57 +114,6 @@
          :show-marks="item.showMore"
          :scene-list="item.pollutedSource.sceneList"
        ></SceneTable>
        <!-- <el-space gap="4">
                  <el-tag :type="item.status == 1 ? 'danger' : 'info'">{{
                    item._statusStr
                  }}</el-tag>
                  <el-text type="default">{{ item.exception }}</el-text>
                </el-space>
                <el-row gap="4">
                  <el-text type="primary">发生时间:</el-text>
                  <el-text type="primary">{{
                    item.startTime + ' 至 '
                  }}</el-text>
                  <el-text type="primary">{{
                    item.status == 1 ? '当前' : item.endTime
                  }}</el-text>
                </el-row>
                <el-row>
                  <el-col :span="6">
                    <el-statistic title="因子" :value="item.factorName" />
                  </el-col>
                  <el-col :span="6">
                    <el-statistic title="均值" :value="item.avg" />
                  </el-col>
                  <el-col :span="6">
                    <el-statistic title="峰值" :value="item.max" />
                  </el-col>
                  <el-col :span="6">
                    <el-statistic title="谷值" :value="item.min" />
                  </el-col>
                </el-row>
                <el-row justify="space-between">
                  <el-link
                    type="primary"
                    @click="item.showMore = !item.showMore"
                  >
                    {{
                      (item.showMore ? '收起溯源场景' : '查看溯源场景') +
                      '(' +
                      item.relatedSceneList.length +
                      ')'
                    }}
                  </el-link>
                  <el-link type="primary" @click="drawSector(item)">
                    查看异常
                  </el-link>
                </el-row>
                <SceneTable
                  v-show="item.showMore"
                  :scene-list="item.relatedSceneList"
                ></SceneTable>
                <el-divider /> -->
      </el-scrollbar>
    </template>
  </BaseCard>
@@ -223,13 +183,15 @@
  padding: 0 4px;
  /* margin-right: 2px; */
  width: 340px;
  height: 35vh;
  border-right: 1px solid white;
  height: 400px;
  /* border-right: 1px solid white; */
  border-radius: 2px;
}
.border-dashed {
  /* border: 1px dashed white; */
  display: flex;
  /* align-items: center; */
  border: 1px dashed #ffbc58;
  padding: 0px 1px;
  margin-bottom: 4px;