Newer
Older
urbanLifeline_YanAn / src / views / oneMap / components / ZHHM.vue
@wudi wudi on 8 Oct 34 KB 1
<template>
  <div id="ZHHM">
    <div
            :class="[
        'LeftBox',
        'animate__animated',
        showPanel ? 'animate__fadeOutLeft' : 'animate__fadeInLeft',
      ]"
    >
      <div class="ComBox LeftBox1_1">
        <div class="Box_header" style="cursor: pointer" @click="TuChengMoRenClick('00')">
          空间格局 <span class="Box_header_miniFont">(一心三轴多组团)</span>
        </div>
        <div class="Box_Body">
          <div class="KJGJ_List1">
            <div class="KJGJ_List1_List">
              <span class="KJGJ_List1_List_yuan color_yellow"></span>
              <span class="KJGJ_List1_List_name">平均海拔</span>
              <span class="KJGJ_List1_List_value">1200</span>
              <span class="KJGJ_List1_List_unit">m</span>
            </div>
            <div class="KJGJ_List1_List">
              <span class="KJGJ_List1_List_yuan color_lime"></span>
              <span class="KJGJ_List1_List_name">最高海拔</span>
              <span class="KJGJ_List1_List_value">1809</span>
              <span class="KJGJ_List1_List_unit">m</span>
            </div>
          </div>
          <div class="KJGJ_List1">
            <div class="KJGJ_List1_List">
              <span class="KJGJ_List1_List_yuan color_yellow"></span>
              <span class="KJGJ_List1_List_name">最低海拔</span>
              <span class="KJGJ_List1_List_value">388</span>
              <span class="KJGJ_List1_List_unit">m</span>
            </div>
            <div class="KJGJ_List1_List">
              <span class="KJGJ_List1_List_yuan color_lime"></span>
              <span class="KJGJ_List1_List_name">西南高东北低</span>
            </div>
          </div>
          <div class="KJGJ_List2">
            <div class="KJGJ_List2_XH">01</div>
            <div class="KJGJ_List2_WFont">一心</div>
            <div class="KJGJ_List2_Font">以山体公园形成的自然生态中心</div>
          </div>
          <div class="KJGJ_List2">
            <div class="KJGJ_List2_XH">02</div>
            <div class="KJGJ_List2_WFont">三轴</div>
            <div class="KJGJ_List2_Font">以东川、南川、西北川为发展轴</div>
          </div>
          <div class="KJGJ_List2">
            <div class="KJGJ_List2_XH">03</div>
            <div class="KJGJ_List2_WFont">一环</div>
            <div class="KJGJ_List2_Font">由山体公园形成的海绵生态发展环</div>
          </div>
          <div class="KJGJ_List2">
            <div class="KJGJ_List2_XH">04</div>
            <div class="KJGJ_List2_WFont">三廊</div>
            <div class="KJGJ_List2_Font">北川、沿河和南川组成Y型走廊</div>
          </div>
          <div class="KJGJ_List2">
            <div class="KJGJ_List2_XH">05</div>
            <div class="KJGJ_List2_WFont">绿楔</div>
            <div class="KJGJ_List2_Font">以山体林地为骨架的生态绿楔</div>
          </div>
        </div>
      </div>
      <div class="ComBox LeftBox1_2">
        <div class="Box_header">
          降雨特征
          <div class="head-right" style="">
            <div
                    class="head-item"
                    v-for="(item, index) in yearList"
                    :key="item"
                    :class="activedname == item.name ? 'activedright' : ''"
                    @click="yearclick(item, index)"
            >
              {{ item.name }}
            </div>
          </div>
        </div>
        <div class="Box_Body">
          <div class="HeadContent" v-if="activedname == '年际降雨变化'">
            丰、枯年交替出现,且降雨量变化幅度大
          </div>
          <div class="HeadContent" v-else>年内降雨量分配不均匀,冬季干旱,雨雪稀少</div>
          <div class="box-body">
            <div style="height: 100%">
              <RainfallEcharts
                      :data="chartData2"
                      :refresh="chartData2.refresh"
                      v-if="activedname == '年际降雨变化'"
              ></RainfallEcharts>
              <RainfallLegend
                      :data="chartData3"
                      :refresh1="chartData3.refresh1"
                      v-else
              ></RainfallLegend>
            </div>
          </div>
        </div>
      </div>
      <div class="ComBox LeftBox1_3">
        <div
                class="Box_header"
                style="cursor: pointer"
                @click="AllData.WTShow = !AllData.WTShow"
        >
          问题识别
          <!-- <img
            class="Box_headerIcon"
            src="@/assets/images/Sponge_screen/HaiMian/HaiMian_FangAn.png"
            alt=""
            @click="AllData.WTShow = !AllData.WTShow"
          /> -->
        </div>
        <div class="Box_Body">
          <div
                  class="WTSBList"
                  v-for="item in AllData.WTSBData"
                  @click="TuChengMoRenClick(item.num)"
          >
            <div class="WTSBList_num">{{ item.num }}</div>
            <div class="WTSBList_font">{{ item.font }}</div>
          </div>
        </div>
      </div>
    </div>
    <div
            :class="[
        'RightBox',
        'animate__animated',
        showPanel ? 'animate__fadeOutRight' : 'animate__fadeInRight',
      ]"
    >
      <div class="ComBox RightBox1_1">
        <div class="Box_header">城市排涝体系提升</div>
        <div class="Box_Body">
          <div class="SCPLTX_changeBox">
            <div
                    class="SCPLTX_changeBox_List"
                    :class="AllData.SCPLTX_changeId == item.id ? 'SCPLTX_changeBox_Check' : ''"
                    v-for="item in AllData.SCPLTX_changeData"
                    @click="SCPLTX_change(item)"
            >
              {{ item.name }}
            </div>
          </div>

          <div class="CSPLTXBox" id="CSPLTXBox1" v-if="AllData.SCPLTX_changeId == 1">
            <img
                    class="SCPLTXImg"
                    src="@/assets/images/Sponge_screen/HaiMian/HaiMian_jiatu2.png"
                    alt=""
            />
            <div class="ClickDiv ClickDiv1" @click="ClickDiv(1)"></div>
            <div class="ClickDiv ClickDiv2" @click="ClickDiv(2)"></div>
            <div class="ClickDiv ClickDiv3" @click="ClickDiv(3)"></div>
            <div class="ClickDiv ClickDiv4" @click="ClickDiv(4)"></div>
            <div class="ClickDiv ClickDiv5" @click="ClickDiv(5)"></div>
          </div>
          <div
                  class="CSPLTXBox"
                  id="CSPLTXBox2"
                  v-if="AllData.SCPLTX_changeId == 2"
          ></div>
          <div class="CSPLTXBox" v-if="AllData.SCPLTX_changeId == 3">
            <div id="CSPLTXBox3"></div>
            <div id="lengedBox">
              <div class="LengedList" v-for="(item, index) in AllData.Echarts3Data">
                <span class="LengedListSK" :class="`LengedListSK` + index"></span>
                <div class="LengedListName">{{ item.name }}</div>
                <div class="LengedListValue">{{ item.value }}%</div>
              </div>
            </div>
          </div>
        </div>
      </div>
      <div class="ComBox RightBox1_2">
        <div class="Box_header">城市排涝保障提升</div>
        <div class="Box_Body">
          <!-- <div class="SCPLBZ_changeBox">
            <div
              class="SCPLBZ_changeBox_List"
              :class="AllData.SCPLBZ_changeId == item.id ? 'SCPLBZ_changeBox_Check' : ''"
              v-for="item in AllData.SCPLBZ_changeData"
              @click="AllData.SCPLBZ_changeId = item.id"
            >
              {{ item.name }}
            </div>
          </div> -->
          <img
                  class="SCPBZXImg"
                  src="@/assets/images/Sponge_screen/HaiMian/HaiMian_jiatu1.png"
                  alt=""
          />
          <div class="ClickDiv_2 ClickDiv_21" @click="ClickDiv(21)"></div>
          <div class="ClickDiv_2 ClickDiv_22" @click="ClickDiv(22)"></div>
          <div class="ClickDiv_2 ClickDiv_23" @click="ClickDiv(23)"></div>
          <div class="ClickDiv_2 ClickDiv_24" @click="ClickDiv(24)"></div>
          <div class="ClickDiv_2 ClickDiv_25" @click="ClickDiv(25)"></div>
        </div>
      </div>
      <div class="ComBox RightBox1_3">
        <div class="Box_header">水环境改善提升</div>
        <div class="Box_Body SHJGS">
          <img
                  class="SHJGSImg"
                  src="@/assets/images/Sponge_screen/HaiMian/HaiMian_jiatu5.png"
                  alt=""
          />
          <img
                  class="SHJGSImg"
                  src="@/assets/images/Sponge_screen/HaiMian/HaiMian_jiatu6.png"
                  alt=""
          />
          <img
                  class="SHJGSImg"
                  src="@/assets/images/Sponge_screen/HaiMian/HaiMian_jiatu4.png"
                  alt=""
          />
        </div>
      </div>
    </div>
    <Transition name="slideWT">
      <div class="XFK" v-show="AllData.WTShow">
        <img
                class="XFKImg"
                src="@/assets/images/Sponge_screen/HaiMian/HaiMian_jiatu3.png"
                alt=""
        />
      </div>
    </Transition>
  </div>
</template>

<script setup name="ZHHM">
  import { ref, reactive, toRefs, onMounted, nextTick } from "vue";
  import * as echarts from "echarts";
  const AllData = reactive({
    // 问题识别
    WTSBData: [
      {
        num: "01",
        font: "新区雨水入老城,雨季内涝积水频发",
      },
      {
        num: "02",
        font: "水资源严重短缺,雨水资源利用难度大",
      },
      {
        num: "03",
        font: "排水系统不完善,雨季延河水质不稳定",
      },
      {
        num: "04",
        font: "山体沟道人居环境较差,局部存在安全隐患",
      },
      // {
      //   num: '05',
      //   font: '湖泊面积萎缩,城市海绵体受损',
      // },
    ],
    // 城市排涝体系提升
    SCPLTX_changeData: [
      {
        id: 1,
        name: "源头减排",
      },
      {
        id: 2,
        name: "过程控制",
      },
      {
        id: 3,
        name: "系统治理",
      },
    ],
    SCPLTX_changeId: 1,
    Charts1: null,
    Charts2: null,
    Charts3: null,
    Echarts3Data: [
      { value: 48, name: "沿河" },
      { value: 22, name: "西川河" },
      { value: 13, name: "王瑶水库" },
      { value: 10, name: "杜甫川河" },
      { value: 7, name: "南川河" },
    ],
    // 城市排涝保障提升
    SCPLBZ_changeData: [
      {
        id: 1,
        name: "上栏",
      },
      {
        id: 2,
        name: "中滞",
      },
      {
        id: 3,
        name: "下排",
      },
    ],
    SCPLBZ_changeId: 1,
    // 问题识别弹窗
    WTShow: false,
  });
  const showPanel = ref(true); //面板展开收起
  const chartData2 = ref({
    xAxis: [1985, 1990, 1995, 2000, 2005, 2010, 2015, 2020, 2021],
    yAxis: [650, 800, 502, 630, 820, 800, 510, 805, 1203],
    refresh: 1,
  });
  const chartData3 = ref({
    XName: ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"],
    data1: [8, 15, 24, 36, 58, 63, 165, 125, 72, 30, 23, 10],
    data: [
      {
        coords: [
          ["1", 8],
          ["2", 15],
          ["3", 24],
          ["4", 36],
          ["5", 58],
          ["6", 63],
          ["7", 165],
          ["8", 125],
          ["9", 72],
          ["10", 30],
          ["11", 23],
          ["12", 10],
        ],
      },
    ],
    refresh1: 1,
  });
  const activedname = ref("年际降雨变化");
  const weatherTimer = ref(null);
  const yearList = ref([
    { name: "年际降雨变化", value: 1 },
    { name: "年内降雨量", value: 2 },
  ]);
  import RainfallEcharts from "@/views/oneMap/Echarts/RainfallEcharts.vue"; //年际降雨变化
  import RainfallLegend from "@/views/oneMap/Echarts/RainfallLegend.vue"; //年内降雨量
  import { onBeforeUnmount } from "vue";
  import bus from "@/bus";
  import yanAnProjection from "@/assets/yanAnProjection.json";
  import mapBoxVectorLayer from "@/utils/GISdocument/mapboxVectorLayer.js";
  // 面板内容展开收起控制
  const props = defineProps({
    showPanel: {
      type: Boolean,
    },
  });
  watch(
          () => props.showPanel,
          () => {
            showPanel.value = props.showPanel;
          },
          { immediate: true }
  );
  //添加海绵项目
  const addProjectionLayer = () => {
    let projectionList = [
      {
        layername: "HMJZYSQ",
        data: turf.featureCollection(
                yanAnProjection.features.filter((i) =>
                        i.properties.projectionType.includes("建筑")
                )
        ),
      },
      {
        layername: "HMXGYLD",
        data: turf.featureCollection(
                yanAnProjection.features.filter((i) =>
                        i.properties.projectionType.includes("公园")
                )
        ),
      },
      {
        layername: "HMXDLGC",
        data: turf.featureCollection(
                yanAnProjection.features.filter((i) =>
                        i.properties.projectionType.includes("道路")
                )
        ),
      },
      {
        layername: "HMXSX",
        data: turf.featureCollection(
                yanAnProjection.features.filter((i) =>
                        i.properties.projectionType.includes("水系")
                )
        ),
      },
      {
        layername: "GWPCYXF",
        data: turf.featureCollection(
                yanAnProjection.features.filter((i) =>
                        i.properties.projectionType.includes("管网")
                )
        ),
      },
      // 'HMXSX', 'GWPCYXF', 'GWJBZ', 'GIS', 'other'
    ];
    console.log("projectionList---", projectionList);
    projectionList.forEach((item) => {
      bus.emit("setGeoJSON", { json: item.data, key: item.layername });
    });
    //bus.emit('setLegendData', projectionList);
  };
  const yearclick = (val) => {
    activedname.value = val.name;
    bus.emit("checkRainL", val.value);
    // bus.emit("checkLandXDM", false);
  };

  const TuChengMoRenClick = (num) => {
    // 先清空
    bus.emit("clearAllLayer");
    switch (num) {
      case "00":
        // 再显示
        bus.emit("SetLayerShow", ["空间格局"]);
        break;
      case "01":
        // 再显示
        bus.emit("SetLayerShow", ["雨水分区", "中心城区"]);
        break;
      case "02":
        // 再显示
        bus.emit("SetLayerShow", ["河流水系"]);
        break;
      case "03":
        // 再显示
        bus.emit("SetLayerShow", ["河流水系", "排水分区"]);
        break;
      case "04":
        // 再显示
        bus.emit("SetLayerShow", ["山体修复"]);
        break;
    }
  };
  const ClickDiv = (num) => {
    switch (num) {
      case 1:
        bus.emit("setLayerVisible", { layername: "HMJZYSQ", isCheck: true }); //建筑
        bus.emit("setLayerVisible", { layername: "HMXDLGC", isCheck: false }); //道路
        bus.emit("setLayerVisible", { layername: "HMXGYLD", isCheck: false }); //公园
        bus.emit("setLayerVisible", { layername: "GWPCYXF", isCheck: false }); //管网
        bus.emit("setLayerVisible", { layername: "HMXSX", isCheck: false }); //水系
        break;
      case 2:
        bus.emit("setLayerVisible", { layername: "HMJZYSQ", isCheck: false }); //建筑
        bus.emit("setLayerVisible", { layername: "HMXDLGC", isCheck: true }); //道路
        bus.emit("setLayerVisible", { layername: "HMXGYLD", isCheck: false }); //公园
        bus.emit("setLayerVisible", { layername: "GWPCYXF", isCheck: false }); //管网
        bus.emit("setLayerVisible", { layername: "HMXSX", isCheck: false }); //水系
        break;
      case 3:
        bus.emit("setLayerVisible", { layername: "HMJZYSQ", isCheck: false }); //建筑
        bus.emit("setLayerVisible", { layername: "HMXDLGC", isCheck: false }); //道路
        bus.emit("setLayerVisible", { layername: "HMXGYLD", isCheck: true }); //公园
        bus.emit("setLayerVisible", { layername: "GWPCYXF", isCheck: false }); //管网
        bus.emit("setLayerVisible", { layername: "HMXSX", isCheck: false }); //水系
        break;
      case 4:
        bus.emit("setLayerVisible", { layername: "HMJZYSQ", isCheck: false }); //建筑
        bus.emit("setLayerVisible", { layername: "HMXDLGC", isCheck: false }); //道路
        bus.emit("setLayerVisible", { layername: "HMXGYLD", isCheck: false }); //公园
        bus.emit("setLayerVisible", { layername: "GWPCYXF", isCheck: true }); //管网
        bus.emit("setLayerVisible", { layername: "HMXSX", isCheck: false }); //水系
        break;
      case 5:
        bus.emit("setLayerVisible", { layername: "HMJZYSQ", isCheck: false }); //建筑
        bus.emit("setLayerVisible", { layername: "HMXDLGC", isCheck: false }); //道路
        bus.emit("setLayerVisible", { layername: "HMXGYLD", isCheck: false }); //公园
        bus.emit("setLayerVisible", { layername: "GWPCYXF", isCheck: false }); //管网
        bus.emit("setLayerVisible", { layername: "HMXSX", isCheck: true }); //水系
        break;
      case 21:
        bus.emit("SetLayerShow", ["防洪河道"]);
        break;
      case 22:
        bus.emit("SetLayerShow", ["河堤加固"]);
        break;
      case 23:
        bus.emit("SetLayerShow", ["河堤治理"]);
        break;
      case 24:
        bus.emit("SetLayerShow", ["河堤疏浚"]);
        break;
      case 25:
        break;
    }
  };
  const SCPLTX_change = (item) => {
    AllData.SCPLTX_changeId = item.id;
    if (AllData.SCPLTX_changeId == 1) {
    } else if (AllData.SCPLTX_changeId == 2) {
      ClearAllProjectMap();
      nextTick(() => {
        initEcharts2();
      });
    } else {
      ClearAllProjectMap();
      nextTick(() => {
        initEcharts3();
      });
    }
  };
  const initEcharts2 = () => {
    if (!!AllData.Charts2) {
      AllData.Charts2.dispose();
    }
    AllData.Charts2 = echarts.init(document.getElementById("CSPLTXBox2"));
    // AllData.Charts2.value.off("click");
    AllData.Charts2.setOption({
      color: ["#00F2FF"],
      tooltip: {
        trigger: "axis",
        axisPointer: {
          type: "shadow",
        },
      },
      legend: {},
      grid: {
        left: "3%",
        right: "4%",
        bottom: "3%",
        top: "5%",
        containLabel: true,
      },
      xAxis: {
        type: "value",
        max: 120,
        axisPointer: {
          type: "shadow",
        },
        textStyle: {
          color: "aqua",
        },
        axisLine: {
          lineStyle: {
            color: "aqua",
            type: "dashed",
          },
        },
      },
      yAxis: {
        type: "category",
        data: ["沿河北岸", "沿河南岸", "水库水面", "南川河西岸", "杜甫川河", "李渠-姚店"],

        axisLabel: {
          formatter: "{value}",
        },
        axisLine: {
          lineStyle: {
            color: "white",
          },
        },
        splitLine: {
          lineStyle: {
            // 使用深浅的间隔色
            color: ["#184E5A"],
          },
        },
      },
      series: [
        {
          type: "bar",
          data: [90, 78, 50, 42, 68, 61],
          barWidth: "12px",
          showBackground: true,
          itemStyle: {
            // borderRadius: 10, // 统一设置四个角的圆角大小
            borderRadius: [10, 10, 10, 10], //(顺时针左上,右上,右下,左下)
          },
        },
      ],
    });
    // AllData.Charts2.on("click", (param) => {
    //   console.log(param);
    //   let data = {
    //     title: "风险监测",
    //     comIDs: ["RQ_FengXianJianCe"],
    //   };
    //   bus.emit("publicDialog", data);
    // });
  };
  const initEcharts3 = () => {
    if (!!AllData.Charts3) {
      AllData.Charts3.dispose();
    }
    AllData.Charts3 = echarts.init(document.getElementById("CSPLTXBox3"));
    // AllData.Charts3.value.off("click");
    AllData.Charts3.setOption({
      color: ["#159AFF", "#34FFBD", "#68BEFF", "#BC6DFF", "#F17777"],
      // tooltip: {
      //   trigger: "item",
      // },
      legend: {
        type: "scroll",
        orient: "vertical",
        right: 10,
        top: 20,
        bottom: 20,
        textStyle: {
          color: "#fffd", // 图例文字颜色
        },
        show: false,
      },
      series: [
        {
          type: "pie",
          radius: ["70%", "90%"],
          center: ["30%", "50%"],
          avoidLabelOverlap: false,
          itemStyle: {
            borderRadius: 10,
            borderColor: "#fff",
            borderWidth: 0,
          },
          label: {
            show: false,
            position: "center",
          },
          emphasis: {
            label: {
              show: true,
              fontSize: 40,
              fontWeight: "bold",
            },
          },
          labelLine: {
            show: false,
          },
          data: AllData.Echarts3Data,
        },
      ],
    });
    // AllData.Charts3.on("click", (param) => {
    //   console.log(param);
    //   let data = {
    //     title: "风险监测",
    //     comIDs: ["RQ_FengXianJianCe"],
    //   };
    //   bus.emit("publicDialog", data);
    // });
  };
  // 清除地图上所有的海绵项目
  const ClearAllProjectMap = () => {
    bus.emit("setLayerVisible", { layername: "HMJZYSQ", isCheck: false }); //建筑
    bus.emit("setLayerVisible", { layername: "HMXDLGC", isCheck: false }); //道路
    bus.emit("setLayerVisible", { layername: "HMXGYLD", isCheck: false }); //公园
    bus.emit("setLayerVisible", { layername: "GWPCYXF", isCheck: false }); //管网
    bus.emit("setLayerVisible", { layername: "HMXSX", isCheck: false }); //水系
  };
  onMounted(() => {
    addProjectionLayer();
    //mapBoxVectorLayer.addGeojsonPolygonWithLabel('yanAnPaiShuiArea', yanAnPaiShuiArea);
  });

  onBeforeUnmount(() => {
    clearInterval(weatherTimer.value);
    weatherTimer.value = null;
    ClearAllProjectMap();
    // mapBoxVectorLayer.removeByIds(['yanAnPaiShuiArea', 'yanAnPaiShuiArea__label']);
  });
</script>

<style lang="scss" scoped>
  #ZHHM {
    .LeftBox {
      width: 450px;
      height: calc(100% - 98px);
      position: absolute;
      left: 10px;
      top: 70px;
      background: linear-gradient(
                      0deg,
                      rgba(0, 43, 67, 0.8) 0%,
                      rgba(0, 69, 108, 0.8) 100%
      );
      border-radius: 6px;
      border: 1px solid #47eef3;
      box-sizing: border-box;
      padding: 10px;
      box-shadow: inset 0 0 5px 5px #47eef38a;
      z-index: 120;

      .LeftBox1_1 {
        height: 348px;
        .KJGJ_List1 {
          width: 100%;
          height: 36px;
          background: linear-gradient(
                          0deg,
                          rgba(0, 180, 255, 0.2) 0%,
                          rgba(0, 180, 255, 0) 100%
          );
          margin-top: 10px;
          display: flex;
          .KJGJ_List1_List {
            width: 50%;
            height: 36px;
            position: relative;

            .KJGJ_List1_List_yuan {
              float: left;
              width: 7px;
              height: 7px;
              clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
              transition: 1s clip-path;
              margin: 16px 13px;
            }
            .KJGJ_List1_List_name {
              float: left;
              font-family: Source Han Sans CN;
              font-weight: 400;
              font-size: 16px;
              color: #b8ecff;
              height: 36px;
              line-height: 36px;
            }

            .KJGJ_List1_List_value {
              float: left;
              font-family: Myriad Pro;
              font-weight: 400;
              font-size: 18px;
              color: #ffed52;
              height: 36px;
              line-height: 36px;
              margin-left: 10px;
            }

            .KJGJ_List1_List_unit {
              float: left;
              font-family: Source Han Sans CN;
              font-weight: 400;
              font-size: 12px;
              color: #b8ecff;
              height: 36px;
              line-height: 36px;
              margin-left: 10px;
            }
          }
        }
        .KJGJ_List2 {
          width: 100%;
          height: 30px;
          margin-top: 10px;
          background: rgba(35, 173, 245, 0.16);

          .KJGJ_List2_XH {
            width: 30px;
            height: 30px;
            line-height: 28px;
            border: 2px solid #33d1ff;
            font-family: DIN;
            font-weight: 500;
            font-size: 18px;
            color: #d1dff7;
            text-align: center;
            float: left;
            box-sizing: border-box;
            background: url("@/assets/images/Sponge_screen/HaiMian/HaiMian_hezi.png")
            no-repeat center;
          }
          .KJGJ_List2_WFont {
            float: left;
            font-family: Source Han Sans CN;
            font-weight: 500;
            font-size: 16px;
            color: #42e2ff;
            height: 30px;
            line-height: 30px;
            margin: 0 10px;
          }
          .KJGJ_List2_Font {
            float: left;
            font-family: Source Han Sans CN;
            font-weight: 400;
            font-size: 14px;
            color: #b8ecff;
            height: 30px;
            line-height: 30px;
          }
        }
      }
      .LeftBox1_2 {
        height: calc(100% - 348px - 310px);
        .HeadContent {
          width: 100%;
          height: 30px;
          background: rgba(34, 112, 255, 0.4);
          text-align: center;
          line-height: 30px;
          color: #ffffff;
        }
        .box-body {
          height: calc(100% - 30px);
          padding-left: 5px;
          position: relative;
          overflow: auto;
        }
        .head-right {
          cursor: pointer;
          position: relative;
          font-size: 14px;
          left: 200px;
          top: -32px;
          color: #ffffff;
          display: flex;
          max-width: 200px;
          overflow: hidden;
          overflow-x: auto;
          line-height: 18px;

          .head-item {
            margin-left: 10px;
            padding: 2px 3px;
            border: 1px solid transparent;
            background: #013a73;
            height: 23px;
            text-align: center;
            min-width: 42px;
            border: 1px solid #2270ff;
          }

          .activedright {
            border: 1px solid #2cfce9;
            color: #e4f5ff;
            background: #166f84;
          }
        }
      }
      .LeftBox1_3 {
        height: 310px;
        .Box_headerIcon {
          width: 24px;
          height: 26px;
          position: absolute;
          right: 10px;
          top: 10px;
          cursor: pointer;
        }

        .WTSBList {
          width: 100%;
          height: 44px;
          background: url("@/assets/images/Sponge_screen/HaiMian/HaiMian_ListBack.png");
          margin-top: 9px;
          cursor: pointer;

          .WTSBList_num {
            width: 44px;
            height: 44px;
            line-height: 44px;
            font-family: Source Han Sans CN;
            font-weight: bold;
            font-size: 20px;
            color: #00f2ff;
            text-align: center;
            float: left;
          }
          .WTSBList_font {
            font-family: Source Han Sans CN;
            font-weight: 500;
            font-size: 16px;
            color: #a5d2ff;
            height: 44px;
            line-height: 44px;
            float: left;
            margin-left: 30px;
          }
        }
      }
    }
    .RightBox {
      width: 450px;
      height: calc(100% - 98px);
      position: absolute;
      right: 10px;
      top: 70px;
      background: linear-gradient(
                      0deg,
                      rgba(0, 43, 67, 0.8) 0%,
                      rgba(0, 69, 108, 0.8) 100%
      );
      border-radius: 6px;
      border: 1px solid #47eef3;
      box-sizing: border-box;
      padding: 10px;
      box-shadow: inset 0 0 5px 5px #47eef38a;

      .RightBox1_1 {
        height: 302px;

        .SCPLTX_changeBox {
          width: 100%;
          height: 26px;
          display: flex;
          flex-direction: row;
          flex-wrap: nowrap;
          justify-content: space-around;
          align-items: center;
          margin: 10px 0;

          .SCPLTX_changeBox_List {
            width: 136px;
            height: 26px;
            line-height: 26px;
            text-align: center;
            background: #00344f;
            border-radius: 2px;
            font-family: Source Han Sans CN;
            font-weight: 500;
            font-size: 14px;
            color: #c1d3d4;
            cursor: pointer;
          }
          .SCPLTX_changeBox_Check {
            background: #002d44;
            border-radius: 2px;
            border: 1px solid #1cf5fc;
            font-family: Source Han Sans CN;
            font-weight: bold;
            font-size: 14px;
            color: #ebfeff;
          }
        }
        .CSPLTXBox {
          width: 100%;
          height: calc(100% - 70px);
          margin-top: 5px;
          position: relative;
          #CSPLTXBox3 {
            width: 100%;
            height: 100%;
          }

          #lengedBox {
            width: 180px;
            height: 100%;
            position: absolute;
            right: 0;
            top: 0;
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            justify-content: space-evenly;
            align-items: center;

            .LengedList {
              width: 180px;
              height: 24px;
              line-height: 24px;
              background: #ffffff33;
              display: flex;
              flex-direction: row;
              flex-wrap: nowrap;
              justify-content: flex-start;
              align-items: center;

              .LengedListSK {
                display: inline-block;
                width: 12px;
                height: 12px;
                margin-left: 10px;
              }
              .LengedListSK0 {
                background: #159aff;
              }
              .LengedListSK1 {
                background: #34ffbd;
              }
              .LengedListSK2 {
                background: #68beff;
              }
              .LengedListSK3 {
                background: #bc6dff;
              }
              .LengedListSK4 {
                background: #f17777;
              }
              .LengedListName {
                font-family: Source Han Sans CN;
                font-weight: 400;
                font-size: 12px;
                color: #f4f4f4;
                display: inline-block;
                width: 100px;
                text-align: left;
                box-sizing: border-box;
                padding-left: 10px;
              }

              .LengedListValue {
                font-family: TeXGyreAdventor;
                font-weight: normal;
                font-size: 16px;
                color: #f4f4f4;
              }
            }
          }

          .ClickDiv {
            // background: #4f20004d;
            width: 100%;
            height: 34px;
            position: absolute;
            cursor: pointer;
          }
          .ClickDiv1 {
            left: 0;
            top: 0;
          }
          .ClickDiv2 {
            left: 0;
            top: 34px;
          }
          .ClickDiv3 {
            left: 0;
            top: 68px;
          }
          .ClickDiv4 {
            left: 0;
            top: 102px;
          }
          .ClickDiv5 {
            left: 0;
            top: 136px;
          }
        }
        .SCPLTXImg {
          width: 100%;
          height: 100%;
        }
      }
      .RightBox1_2 {
        height: calc(100% - 632px);
        // .SCPLBZ_changeBox {
        //   width: 100%;
        //   height: 26px;
        //   display: flex;
        //   flex-direction: row;
        //   flex-wrap: nowrap;
        //   justify-content: space-around;
        //   align-items: center;
        //   margin: 10px 0;

        //   .SCPLBZ_changeBox_List {
        //     width: 136px;
        //     height: 26px;
        //     line-height: 26px;
        //     text-align: center;
        //     background: #00344f;
        //     border-radius: 2px;
        //     font-family: Source Han Sans CN;
        //     font-weight: 500;
        //     font-size: 14px;
        //     color: #c1d3d4;
        //     cursor: pointer;
        //   }
        //   .SCPLBZ_changeBox_Check {
        //     background: #002d44;
        //     border-radius: 2px;
        //     border: 1px solid #1cf5fc;
        //     font-family: Source Han Sans CN;
        //     font-weight: bold;
        //     font-size: 14px;
        //     color: #ebfeff;
        //   }
        // }
        .SCPBZXImg {
          width: 100%;
          height: calc(100% - 10px);
          margin-top: 5px;
        }
        .ClickDiv_2 {
          width: 60px;
          height: 100%;
          position: absolute;
          cursor: pointer;
        }
        .ClickDiv_21 {
          top: 0;
          left: 50px;
        }
        .ClickDiv_22 {
          top: 0;
          left: 120px;
        }
        .ClickDiv_23 {
          top: 0;
          left: 195px;
        }
        .ClickDiv_24 {
          top: 0;
          left: 270px;
        }
        .ClickDiv_25 {
          top: 0;
          left: 345px;
        }
      }
      .RightBox1_3 {
        height: 330px;
        .SHJGS {
          display: flex;
          flex-direction: row;
          flex-wrap: nowrap;
          /* align-content: center; */
          justify-content: space-around;
          align-items: center;
          .SHJGSImg {
            width: 136px;
            height: 266px;
            cursor: pointer;
          }
        }
      }
    }

    .XFK {
      width: 885px;
      height: 125px;
      position: absolute;
      left: 50%;
      margin-left: -442px;
      bottom: 170px;

      .XFKImg {
        width: 100%;
        height: 100%;
      }
    }
    // 左右两侧展示板块公共样式
    .ComBox {
      width: 100%;
      box-sizing: border-box;
      .Box_header {
        width: 100%;
        height: 43px;
        background: url("@/assets/images/Sponge_screen/Box_HeaderBackground.png") no-repeat
        center;
        background-size: cover;
        font-family: PangMenZhengDao;
        font-weight: 400;
        font-size: 23px;
        color: #ebfeff;
        line-height: 43px;
        box-sizing: border-box;
        padding-left: 35px;
        position: relative;

        .Box_header_miniFont {
          font-size: 16px;
        }
      }

      .Box_Body {
        width: 100%;
        height: calc(100% - 43px);
        box-sizing: border-box;
        position: relative;
        overflow: auto;
      }
    }
    .color_red {
      color: #ff3f3f !important;
    }
    .color_yellow {
      background: #ffed52 !important;
    }
    .color_lime {
      background: #18e87a !important;
    }

    // 动画
    /*
    进入和离开动画可以使用不同
    持续时间和速度曲线。
  */
    .slideWT-enter-active,
    .slideWT-leave-active {
      transition: all 0.3s ease-out;
    }

    .slideWT-enter-from,
    .slideWT-leave-to {
      transform: translateY(200px);
      opacity: 0;
    }
  }
</style>