فهرست منبع

调整江河湖库的样式

hmm 11 ماه پیش
والد
کامیت
b73ad0c0a1

+ 0 - 8
src/types/components.d.ts

@@ -45,9 +45,6 @@ declare module 'vue' {
     ElMenuItem: typeof import('element-plus/es')['ElMenuItem']
     ElOption: typeof import('element-plus/es')['ElOption']
     ElPagination: typeof import('element-plus/es')['ElPagination']
-    ElPopover: typeof import('element-plus/es')['ElPopover']
-    ElRadio: typeof import('element-plus/es')['ElRadio']
-    ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup']
     ElRow: typeof import('element-plus/es')['ElRow']
     ElScrollbar: typeof import('element-plus/es')['ElScrollbar']
     ElSelect: typeof import('element-plus/es')['ElSelect']
@@ -60,14 +57,12 @@ declare module 'vue' {
     ElSwitch: typeof import('element-plus/es')['ElSwitch']
     ElTable: typeof import('element-plus/es')['ElTable']
     ElTableColumn: typeof import('element-plus/es')['ElTableColumn']
-    ElTableV2: typeof import('element-plus/es')['ElTableV2']
     ElTabPane: typeof import('element-plus/es')['ElTabPane']
     ElTabs: typeof import('element-plus/es')['ElTabs']
     ElTimeline: typeof import('element-plus/es')['ElTimeline']
     ElTimelineItem: typeof import('element-plus/es')['ElTimelineItem']
     ElTooltip: typeof import('element-plus/es')['ElTooltip']
     ElTree: typeof import('element-plus/es')['ElTree']
-    ElTreeSelect: typeof import('element-plus/es')['ElTreeSelect']
     ElUpload: typeof import('element-plus/es')['ElUpload']
     FileUpload: typeof import('./../components/FileUpload/index.vue')['default']
     FooterSection: typeof import('./../components/FooterSection/index.vue')['default']
@@ -78,7 +73,6 @@ declare module 'vue' {
     HikvisionPlayer: typeof import('./../components/HKVideo/hikvision-player.vue')['default']
     HKVideo: typeof import('./../components/HKVideo/index.vue')['default']
     IconSelect: typeof import('./../components/IconSelect/index.vue')['default']
-    IEpUploadFilled: typeof import('~icons/ep/upload-filled')['default']
     IFrame: typeof import('./../components/iFrame/index.vue')['default']
     ImagePreview: typeof import('./../components/ImagePreview/index.vue')['default']
     ImageUpload: typeof import('./../components/ImageUpload/index.vue')['default']
@@ -100,7 +94,6 @@ declare module 'vue' {
     RouterView: typeof import('vue-router')['RouterView']
     Screenfull: typeof import('./../components/Screenfull/index.vue')['default']
     ScrollTable: typeof import('./../components/ScrollTable/index.vue')['default']
-    SelectBox: typeof import('./../components/SelectBox.vue')['default']
     SizeSelect: typeof import('./../components/SizeSelect/index.vue')['default']
     SubmitVerify: typeof import('./../components/Process/submitVerify.vue')['default']
     SvgIcon: typeof import('./../components/SvgIcon/index.vue')['default']
@@ -111,7 +104,6 @@ declare module 'vue' {
     VideoContainer: typeof import('./../components/HKVideo/video-container.vue')['default']
     VideoContainer2: typeof import('./../components/HKVideo/video-container2.vue')['default']
     YMap: typeof import('./../components/Map/YMap.vue')['default']
-    YMapold: typeof import('./../components/Map/YMapold.vue')['default']
     YztMap: typeof import('./../components/Map/YztMap/index.vue')['default']
   }
   export interface ComponentCustomProperties {

+ 26 - 5
src/views/globalMap/RightMenu/Fireproofing.vue

@@ -2,11 +2,15 @@
   <div class="menu-content">
     <div class="container">
       <div class="gradient-text title">森林防火</div>
-      <div class="flex">
-        <el-input v-model="queryParams.keyword" :prefix-icon="Search" size="large" clearable />
-        <el-button type="primary" size="large" @click="initData" style="margin-left: 20px">搜索</el-button>
+      <div class="box-left">
+        <el-input v-model="queryParams.keyword" class="custom-input" placeholder="搜索" @input="initData">
+          <template #prefix>
+            <el-icon class="el-input__icon"><search /></el-icon>
+          </template>
+        </el-input>
+        <div class="btn" @click="handleCancel">取消</div>
       </div>
-      <div class="gradient-text">视频类型</div>
+<!--      <div class="gradient-text">视频类型</div>-->
       <div class="custom-table">
         <div class="th">
           <div class="td">
@@ -97,7 +101,7 @@ initData();
 .title {
   font-size: 60px;
   position: absolute;
-  top: 20px;
+  top: 30px;
   left: 160px;
 }
 .custom-table {
@@ -114,6 +118,7 @@ initData();
     display: flex;
   }
   .tr {
+
     height: 139px;
     background: url('@/assets/images/map/rightMenu/td.png') no-repeat;
     //margin-left: -23px;
@@ -151,4 +156,20 @@ initData();
     background-image: linear-gradient(to bottom, #ffffff 50%, #ff2f3c 100%);
   }
 }
+.box-left {
+  display: flex;
+  margin-top: 20px;
+  margin-bottom: 20px;
+  .btn {
+    width: 140px;
+    min-width: 140px;
+    height: 56px;
+    background: url('@/assets/images/map/rightMenu/potentialFloodHazard/btn.png') no-repeat;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    cursor: pointer;
+    margin-left: 20px;
+  }
+}
 </style>

+ 26 - 5
src/views/globalMap/RightMenu/Mitigation.vue

@@ -2,11 +2,15 @@
   <div class="menu-content">
     <div class="container">
       <div class="gradient-text title">防灾救援</div>
-      <div class="flex">
-        <el-input v-model="queryParams.keyword" :prefix-icon="Search" size="large" clearable />
-        <el-button type="primary" size="large" @click="initData" style="margin-left: 20px">搜索</el-button>
+      <div class="box-left">
+        <el-input v-model="queryParams.keyword" class="custom-input" placeholder="搜索" @input="initData">
+          <template #prefix>
+            <el-icon class="el-input__icon"><search /></el-icon>
+          </template>
+        </el-input>
+        <div class="btn" @click="handleCancel">取消</div>
       </div>
-      <div class="gradient-text">视频类型</div>
+<!--      <div class="gradient-text">视频类型</div>-->
       <div class="custom-table">
         <div class="th">
           <div class="td">
@@ -97,7 +101,7 @@ initData();
 .title {
   font-size: 60px;
   position: absolute;
-  top: 20px;
+  top: 30px;
   left: 160px;
 }
 .custom-table {
@@ -114,6 +118,7 @@ initData();
     display: flex;
   }
   .tr {
+
     height: 139px;
     background: url('@/assets/images/map/rightMenu/td.png') no-repeat;
     //margin-left: -23px;
@@ -151,4 +156,20 @@ initData();
     background-image: linear-gradient(to bottom, #ffffff 50%, #ff2f3c 100%);
   }
 }
+.box-left {
+  display: flex;
+  margin-top: 20px;
+  margin-bottom: 20px;
+  .btn {
+    width: 140px;
+    min-width: 140px;
+    height: 56px;
+    background: url('@/assets/images/map/rightMenu/potentialFloodHazard/btn.png') no-repeat;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    cursor: pointer;
+    margin-left: 20px;
+  }
+}
 </style>

+ 32 - 4
src/views/globalMap/RightMenu/PreventDrowning.vue

@@ -2,11 +2,15 @@
   <div class="menu-content">
     <div class="container">
       <div class="gradient-text title">防溺水</div>
-      <div class="flex">
-        <el-input v-model="queryParams.keyword" :prefix-icon="Search" size="large" clearable />
-        <el-button type="primary" size="large" style="margin-left: 20px" @click="initData">搜索</el-button>
+      <div class="box-left">
+        <el-input v-model="queryParams.keyword" class="custom-input" placeholder="搜索" @input="initData" >
+          <template #prefix>
+            <el-icon class="el-input__icon"><search /></el-icon>
+          </template>
+        </el-input>
+        <div class="btn" @click="handleCancel">取消</div>
       </div>
-      <div class="gradient-text">视频类型</div>
+<!--      <div class="gradient-text">视频类型</div>-->
       <div class="custom-table">
         <div class="th">
           <div class="td">
@@ -67,6 +71,12 @@ const handleShowDialog = (row) => {
     showDialog.value = true;
   });
 };
+
+const handleCancel = () => {
+  queryParams.keyword = '';
+  initData();
+};
+
 const initData = () => {
   let newQueryParams = deepClone(queryParams);
   newQueryParams.query = {
@@ -99,6 +109,24 @@ initData();
   top: 20px;
   left: 160px;
 }
+
+.box-left {
+  display: flex;
+  margin-top: 20px;
+  margin-bottom: 20px;
+  .btn {
+    width: 140px;
+    min-width: 140px;
+    height: 56px;
+    background: url('@/assets/images/map/rightMenu/potentialFloodHazard/btn.png') no-repeat;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    cursor: pointer;
+    margin-left: 20px;
+  }
+}
+
 .custom-table {
   width: 1499px;
   .table-content {

+ 1 - 1
src/views/globalMap/RightMenu/Reservoir.vue

@@ -10,7 +10,7 @@
         </el-input>
         <div class="btn" @click="handleCancel">取消</div>
       </div>
-      <div class="gradient-text">视频类型</div>
+<!--      <div class="gradient-text">视频类型</div>-->
       <div class="custom-table">
         <div class="th">
           <div class="td">

+ 115 - 33
src/views/globalMap/RightMenu/RoadNetworkVideo.vue

@@ -1,41 +1,55 @@
 <template>
   <div class="menu-content">
-    <div class="title">路网视频</div>
-    <div class="flex">
-      <el-input v-model="queryParams.keyword" :prefix-icon="Search" size="large" clearable />
-      <el-button type="primary" size="large" @click="initData" style="margin-left: 20px">搜索</el-button>
+    <div class="container">
+      <div class="gradient-text title">路网视频</div>
+      <div class="box-left">
+        <el-input v-model="queryParams.keyword" class="custom-input" placeholder="搜索" @input="initData">
+          <template #prefix>
+            <el-icon class="el-input__icon"><search /></el-icon>
+          </template>
+        </el-input>
+        <div class="btn" @click="handleCancel">取消</div>
+      </div>
     </div>
     <div>类型</div>
-    <el-checkbox-group v-model="queryParams.type" size="large">
-      <el-checkbox v-for="(item, index) in options" :key="index" :label="item.label" :value="item.value" />
-    </el-checkbox-group>
+    <div class="custom-table">
+      <div class="th">
+        <div class="td">
+          <el-checkbox-group v-model="queryParams.type" size="large">
+            <el-checkbox v-for="(item, index) in options" :key="index" :label="item.label" :value="item.value" >
+              {{ item.label }}
+            </el-checkbox>
+          </el-checkbox-group>
+          <div class="btn" @click="initData">确定</div>
+        </div>
+      </div>
+    </div>
     <div>视频类型</div>
-    <el-table :data="listData" border style="width: 100%">
-      <el-table-column prop="area" show-overflow-tooltip align="center">
-        <template #header>
-          <el-select v-model="queryParams.area" placeholder="全部" size="large" clearable @change="initData">
-            <el-option v-for="item in district_type" :key="item.value" :label="item.label" :value="item.value" />
+    <div class="custom-table">
+      <div class="th">
+        <div class="td">
+          <el-select
+            v-model="queryParams.area"
+            placeholder="所有区县"
+            size="large"
+            class="custom-select2"
+            popper-class="custom-select-popper2"
+            :teleported="false"
+            @change="initData"
+          >
+            <el-option v-for="item in district_type" :key="item.value" :label="item.label" :value="item.label" />
           </el-select>
-        </template>
-      </el-table-column>
-      <el-table-column prop="name" label="名称" show-overflow-tooltip align="center">
-        <template #default="scope">
-          <div style="color: #409eff; cursor: pointer" @click="handleShowDialog(scope.row)">
-            {{ scope.row.name }}
-          </div>
-        </template>
-      </el-table-column>
-    </el-table>
-    <pagination
-      v-show="total > queryParams.size"
-      v-model:page="queryParams.current"
-      v-model:limit="queryParams.size"
-      :total="total"
-      @pagination="initData"
-    />
-    <Dialog v-model="showDialog" title="路网视频" width="2500px" height="1200px">
-      <div style="width: 2500px; height: 1120px; display: flex; justify-content: center; align-items: center">
-        <HKVideo :dot_data="videoMonitorData" :width="2400" :height="1000" />
+        </div>
+        <div class="td">名称</div>
+      </div>
+      <div v-for="(item, index) in listData" :key="index" class="tr" @click="handleShowDialog(item)">
+        <div class="td">{{ item.area }}</div>
+        <div class="td">{{ item.name }}</div>
+      </div>
+    </div>
+    <Dialog v-if="showDialog" v-model="showDialog" title="江湖河库" width="2500px" height="1200px">
+      <div style="width: 100%; height: 100%; display: flex; justify-content: center; align-items: center">
+        <HKVideo :dot_data="videoMonitorData" />
       </div>
     </Dialog>
   </div>
@@ -53,7 +67,7 @@ const queryParams = reactive({
   current: 1,
   size: 10,
   keyword: '',
-  type: '检测站',
+  type: '',
   area: ''
 });
 let total = ref(0);
@@ -113,4 +127,72 @@ initData();
   top: 30px;
   left: 160px;
 }
+.custom-table {
+  width: 1499px;
+  .table-content {
+    height: 880px;
+    overflow-y: auto;
+    overflow-x: hidden;
+  }
+  .th {
+    width: 1499px;
+    height: 151px;
+    background: url('@/assets/images/map/rightMenu/th.png') no-repeat;
+    display: flex;
+  }
+  .tr {
+
+    height: 139px;
+    background: url('@/assets/images/map/rightMenu/td.png') no-repeat;
+    //margin-left: -23px;
+    display: flex;
+    padding-right: 20px;
+    &:hover {
+      background: url('@/assets/images/map/rightMenu/td_checked.png') no-repeat;
+    }
+  }
+  .td {
+    flex: 1;
+    color: #edfaff;
+    font-size: 38px;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    cursor: pointer;
+  }
+  .td-text {
+    /* 设置字体透明 */
+    color: transparent;
+    /* 使用 -webkit-background-clip 属性将背景剪裁至文本形状 */
+    -webkit-background-clip: text;
+    /* 非Webkit内核浏览器需要使用标准前缀 */
+    background-clip: text;
+    font-family: 'YouSheBiaoTiHei';
+    /* 设置线性渐变,从红色渐变到蓝色 */
+    background-image: linear-gradient(to bottom, #ffffff 50%, #3075d3 100%);
+    font-size: 48px;
+  }
+  .text-green {
+    background-image: linear-gradient(to bottom, #ffffff 50%, #40c75f 100%);
+  }
+  .text-danger {
+    background-image: linear-gradient(to bottom, #ffffff 50%, #ff2f3c 100%);
+  }
+}
+.box-left {
+  display: flex;
+  margin-top: 20px;
+  margin-bottom: 20px;
+  .btn {
+    width: 140px;
+    min-width: 140px;
+    height: 56px;
+    background: url('@/assets/images/map/rightMenu/potentialFloodHazard/btn.png') no-repeat;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    cursor: pointer;
+    margin-left: 20px;
+  }
+}
 </style>