Newer
Older
KaiFengPC / src / views / sponeScreen / waterFlood / PsssCount.vue
@zhangdeliang zhangdeliang 21 days ago 5 KB update
<template>
  <!-- 一张图 排水设施统计 -->
  <div class="partTitleHM">
    排水设施统计
    <el-button size="small" style="float: right; margin: 8px 45px 0px 0px; background: #18b1f3; border: none" @click="goOtherP">
      跳转市防汛平台
    </el-button>
  </div>
  <div class="ppssCount">
    <Vue3SeamlessScroll :hover="true" :list="tableData" :limitScrollNum="5" class="scrolla" direction="left">
      <div class="cenPart">
        <div class="part" v-for="(item, index) in tableData" :key="index" @click="changeLayer(item)">
          <div class="top">
            <div class="upper"><img :src="item.Imgurl" class="upImg" /></div>
            <div class="Major">{{ item.name }}</div>
            <div class="lower">{{ item.num }}</div>
          </div>
          <div class="below">
            <div class="handIn">{{ item.gm }}</div>
            <div class="oflower">{{ item.gmsj }}</div>
          </div>
        </div>
      </div>
    </Vue3SeamlessScroll>
  </div>
</template>

<script setup>
import { Vue3SeamlessScroll } from 'vue3-seamless-scroll';
import gsc from '@/assets/newImgs/HMScreen/gsc.png'; //供水厂
import hjbz from '@/assets/newImgs/HMScreen/hjbz.png'; //合建泵站
import hlgw from '@/assets/newImgs/HMScreen/hlgw.png'; //合流管网
import wsbz from '@/assets/newImgs/HMScreen/wsbz.png'; //污水泵站
import wsclz from '@/assets/newImgs/HMScreen/wsclz.png'; //污水处理厂
import wsgw from '@/assets/newImgs/HMScreen/wsgw.png'; //污水管网
import ysbz from '@/assets/newImgs/HMScreen/ysbz.png'; //雨水泵站
import ysgw from '@/assets/newImgs/HMScreen/ysgw.png'; //雨水管网
import bus from '@/bus/index';

const { proxy } = getCurrentInstance();
const isOpenIniteLayer = ref(true);
const tableData = ref([
  { name: '雨水泵站', num: '28座', gm: '总规模', gmsj: '167.32m³/s', Imgurl: ysbz, layername: 'YSBZ' },
  { name: '污水泵站', num: '8个', gm: '总规模', gmsj: '67.36m³/s', Imgurl: wsbz, layername: 'WSBZ' },
  { name: '合建泵站', num: '2个', gm: '总规模', gmsj: '17.41m³/s', Imgurl: hjbz, layername: 'combineBengZhan' },
  { name: '雨水管网', num: '', gm: '总长度', gmsj: '357km', Imgurl: ysgw, layername: 'ysLine1' },
  { name: '污水管网', num: '', gm: '总长度', gmsj: '275km', Imgurl: wsgw, layername: 'wsLine1' },
  { name: '合流管网', num: '', gm: '总长度', gmsj: '150km', Imgurl: hlgw, layername: 'hsLine1' },
  { name: '污水处理厂', num: '5座', gm: '总规模', gmsj: '41.82万吨/日', Imgurl: wsclz, layername: 'sewageFactory' },
  { name: '供水厂', num: '3座', gm: '总规模', gmsj: '68.7万吨/日', Imgurl: gsc, layername: 'waterFactory' },
]);
let legendList = [
  { layername: 'YSBZ', show: true }, //雨水泵站
  { layername: 'combineBengZhan', show: true }, //合流泵站
  { layername: 'sewageFactory', show: true }, //污水处理厂
  { layername: 'ysLine1', show: true }, //雨水管网
  { layername: 'hsLine1', show: true }, //合流管网
  { layername: 'pipeline_info_flow', show: true }, //管网流向
  { layername: 'waterCourse', show: true }, //河道水位计
  { layername: 'pipeMonitor', show: true }, //管网监测点
  { layername: 'spongeFacility', show: true }, //海绵设施图层
  { layername: 'origine', show: true }, //典型项目图层
];
const changeLayer = item => {
  console.log('item---', item);
  isOpenIniteLayer.value = !isOpenIniteLayer.value;
  if (!isOpenIniteLayer.value) {
    legendList.forEach(element => {
      element.show = true;
      if (element.layername == item.layername) {
        element.show = false;
      }
    });
  } else {
    legendList.forEach(element => {
      element.show = false;
    });
  }

  bus.emit('setIniteLayer', legendList);
};

// 跳转开封自己做的防汛平台 账号密码:MK  JY06mYDC43Ua
function goOtherP() {
  window.open('http://117.158.107.107:22191/map');
}

onMounted(() => {});
</script>

<style lang="scss" scoped>
.ppssCount {
  width: 460px;
  background: #004565;
  padding: 10px 15px 0px;
  margin-top: -3px;
  .scrolla {
    width: 100%;
    height: 230px;
    overflow: hidden;
    display: inline-block;
  }
  .cenPart {
    width: 100%;
    // background: red;
    display: flex;

    .part {
      width: 100px;
      height: 231px;
      margin-bottom: 10px;
      margin-right: 10px;
      align-items: center;
      background: url('@/assets/newImgs/HMScreen/beijing.png') no-repeat;
      background-size: 100% 100%;
      .top {
        height: 140px;
        .upper {
          height: 91px;
          .upImg {
            width: 26px;
            height: 26px;
            position: relative;
            top: 45px;
            left: 38px;
          }
        }
        .Major {
          height: 28px;
          font-family: Source Han Sans CN;
          font-weight: 400;
          font-size: 16px;
          color: #ffffff;
          display: flex;
          align-items: center;
          justify-content: center;
        }
        .lower {
          height: 28px;
          font-family: YouSheBiaoTiHei;
          font-weight: bold;
          font-size: 24px;
          color: #ffffff;
          line-height: 23px;
          background: linear-gradient(0deg, #1698f3 0%, #ffffff 100%);
          background-clip: text;
          -webkit-text-fill-color: transparent;
          display: flex;
          align-items: center;
          justify-content: center;
        }
      }
      .below {
        margin-top: 25px;
        height: 50px;
        // background: red;
        .handIn {
          height: 25px;
          font-family: Source Han Sans CN;
          font-weight: 400;
          font-size: 14px;
          color: #b8ecff;
          display: flex;
          align-items: center;
          justify-content: center;
        }
        .oflower {
          height: 25px;
          font-family: Source Han Sans CN;
          font-weight: 400;
          font-size: 14px;
          color: #b8ecff;
          display: flex;
          align-items: center;
          justify-content: center;
        }
      }
    }
  }
}
</style>