Browse Source

功能修改20250327-01

zhiyuan-007 1 month ago
parent
commit
7080f6a6ba

+ 1 - 1
index.html

@@ -4,7 +4,7 @@
     <meta charset="UTF-8">
     <link rel="icon" href="/favicon.ico">
     <meta name="viewport" content="width=device-width, initial-scale=1.0">
-    <title>杨浦低空经济运营管理平台</title>
+    <title>智能无人机管理服务系统</title>
 
     <style>
       * {

+ 175 - 169
src/assets/styles/index.scss

@@ -9,206 +9,212 @@
 @tailwind utilities;
 
 /* 自定义字体引入 */
-@font-face {
-  font-family: 'PingFang';
-  src: url('../fonts/PingFangSC-Regular.woff2') format('woff2');
-}
-@font-face {
-  font-family: 'ShuHei';
-  src: url('../fonts/AlimamaShuHeiTi-Bold.woff2') format('woff2');
-}
-@font-face {
-  font-family: 'SF-Regular';
-  src: url('../fonts/SF-Pro-Display-Regular.otf') format("opentype");
-}
-@font-face {
-  font-family: 'SF-Light';
-  src: url('../fonts/SF-Pro-Display-Light.otf') format("opentype");
-}
-@font-face {
-  font-family: 'SF-Bold';
-  src: url('../fonts/SF-Pro-Display-Bold.otf') format("opentype");
-}
-@font-face {
-  font-family: 'BarlowMedium';
-  src: url('../fonts/Barlow-Medium.ttf') format("truetype");
-}
-
+//@font-face {
+//  font-family: 'PingFang';
+//  src: url('../fonts/PingFangSC-Regular.woff2') format('woff2');
+//}
+//@font-face {
+//  font-family: 'ShuHei';
+//  src: url('../fonts/AlimamaShuHeiTi-Bold.woff2') format('woff2');
+//}
+//@font-face {
+//  font-family: 'SF-Regular';
+//  src: url('../fonts/SF-Pro-Display-Regular.otf') format("opentype");
+//}
+//@font-face {
+//  font-family: 'SF-Light';
+//  src: url('../fonts/SF-Pro-Display-Light.otf') format("opentype");
+//}
+//@font-face {
+//  font-family: 'SF-Bold';
+//  src: url('../fonts/SF-Pro-Display-Bold.otf') format("opentype");
+//}
+//@font-face {
+//  font-family: 'BarlowMedium';
+//  src: url('../fonts/Barlow-Medium.ttf') format("truetype");
+//}
 
 /* 滚动条样式 */
 ::-webkit-scrollbar {
-  width : 4px;
-  height: 4px;
+	width: 4px;
+	height: 4px;
 }
 ::-webkit-scrollbar-thumb {
-  border-radius: 12px;
-  background   : #1d63b3;
+	border-radius: 12px;
+	background: #1d63b3;
 }
 ::-webkit-scrollbar-track {
-  border-radius: 12px;
-  background   : #20466a;
+	border-radius: 12px;
+	background: #20466a;
 }
 
 .text-ellipsis {
-  overflow: hidden;
-  text-overflow: ellipsis;
-  white-space: nowrap;
+	overflow: hidden;
+	text-overflow: ellipsis;
+	white-space: nowrap;
 }
 
 .title-main {
-  position: relative;
-  height: 40px;
-  padding: 0 0 10px 55px;
-  font-size: 22px;
-  color: rgba(238,245,255,0.96);
-  text-shadow: 8px -6px 10px rgba(106,175,255,0.42), 0px 3px 0px rgba(0,2,3,0.22);
-  line-height: 22px;
-  
-  &::after {
-    content: '';
-    display: block;
-    position: absolute;
-    left: 0;
-    top: 0;
-    width: 100%;
-    height: 100%;
-    background: url('../images/page/bg-title.png');
-    background-size: cover;
-    z-index: -1;
-  }
-
-  &.rtl {
-    padding: 0 55px 10px 0;
-    text-align: right;
-    &::after {
-      transform: rotateY(180deg);
-    }
-  }
+	position: relative;
+	height: 40px;
+	padding: 0 0 10px 55px;
+	font-size: 22px;
+	color: rgba(238, 245, 255, 0.96);
+	text-shadow:
+		8px -6px 10px rgba(106, 175, 255, 0.42),
+		0px 3px 0px rgba(0, 2, 3, 0.22);
+	line-height: 22px;
+
+	&::after {
+		content: '';
+		display: block;
+		position: absolute;
+		left: 0;
+		top: 0;
+		width: 100%;
+		height: 100%;
+		//background: url('../images/page/bg-title.png');
+		//background-size: cover;
+		z-index: -1;
+	}
+
+	&.rtl {
+		padding: 0 55px 10px 0;
+		text-align: right;
+		&::after {
+			transform: rotateY(180deg);
+		}
+	}
 }
 
 .title-sub {
-  display: flex;
-  align-items: center;
-  font-size: 16px;
-  text-shadow: 0px 5px 5px rgba(127,191,255,0.32);
-  &::before {
-    content: '';
-    display: block;
-    width: 38px;
-    height: 38px;
-    margin-right: 4px;
-    background: url('../images/page/bg-title-2.png');
-    background-size: 100%;
-    background-position: center 2px;
-  }
+	display: flex;
+	align-items: center;
+	font-size: 16px;
+	text-shadow: 0px 5px 5px rgba(127, 191, 255, 0.32);
+	&::before {
+		content: '';
+		display: block;
+		width: 38px;
+		height: 38px;
+		margin-right: 4px;
+		//background: url('../images/page/bg-title-2.png');
+		//background-size: 100%;
+		//background-position: center 2px;
+	}
 }
 
 // 左侧面板内部容器样式
 .aside-left-inner {
-  position: absolute;
-  left: 20px;
-  top: 15px;
-  height: calc(100% - 35px);
-  width: calc(100% - 40px);
+	position: absolute;
+	left: 20px;
+	top: 15px;
+	height: calc(100% - 35px);
+	width: calc(100% - 40px);
 }
 
 // 默认表格样式
 .table-default {
-  width: 100%;
-  border-collapse: collapse;
-
-  tr {
-    width: 100%;
-    height: 50px;
-    background: url('../../assets/images/page/bg-table-row.png') no-repeat;
-    background-size: contain;
-    background-position: bottom;
-    table-layout: fixed;
-    display: table;
-  }
-  th, td {
-    border: none;
-    line-height: 43px;
-    padding: 7px 5px 0;
-    font-size: 16px;
-    &:first-child {
-      padding-left: 15px;
-    }
-  }
-  thead {
-    th {
-      text-align: left;
-      color: #FFFFFF;
-    }
-  }
-  tbody {
-    display: block;
-    overflow-y: auto;
-    tr {
-      td {
-        color: #ccc;
-        color: #A6D2FF;
-        overflow: hidden;
-        text-overflow: ellipsis;
-        white-space: nowrap;
-      }
-    }
-  }
-
-  &.stripe {
-    tr {
-      background: rgba(95,103,131,0.1);
-    }
-    thead tr,
-    tbody tr:nth-child(2n) {
-      background: rgba(169,180,218,0.15);
-      box-shadow: 0 1px 2px 0 rgba(120, 147, 236, 0.5);
-    }
-    th, td {
-      padding-top: 0;
-    }
-  }
+	width: 100%;
+	border-collapse: collapse;
+
+	tr {
+		width: 100%;
+		height: 50px;
+		background: url('../../assets/images/page/bg-table-row.png') no-repeat;
+		background-size: contain;
+		background-position: bottom;
+		table-layout: fixed;
+		display: table;
+	}
+	th,
+	td {
+		border: none;
+		line-height: 43px;
+		padding: 7px 5px 0;
+		font-size: 16px;
+		&:first-child {
+			padding-left: 15px;
+		}
+	}
+	thead {
+		th {
+			text-align: left;
+			color: #ffffff;
+		}
+	}
+	tbody {
+		display: block;
+		overflow-y: auto;
+		tr {
+			td {
+				color: #ccc;
+				color: #a6d2ff;
+				overflow: hidden;
+				text-overflow: ellipsis;
+				white-space: nowrap;
+			}
+		}
+	}
+
+	&.stripe {
+		tr {
+			background: rgba(95, 103, 131, 0.1);
+		}
+		thead tr,
+		tbody tr:nth-child(2n) {
+			background: rgba(169, 180, 218, 0.15);
+			box-shadow: 0 1px 2px 0 rgba(120, 147, 236, 0.5);
+		}
+		th,
+		td {
+			padding-top: 0;
+		}
+	}
 }
 
 .btn-main {
-  font-size: 20px;
-  width: 123px;
-  height: 40px;
-  text-align: center;
-  background: url('../images/buttons/btn-main.png') !important;
-  background-size: 100%;
-  border: none;
-  .is-disabled {
-    opacity: 0.4;
-  }
+	font-size: 20px;
+	width: 123px;
+	height: 40px;
+	text-align: center;
+	background: url('../images/buttons/btn-main.png') !important;
+	background-size: 100%;
+	border: none;
+	.is-disabled {
+		opacity: 0.4;
+	}
 }
 
 .btn-secondary {
-  font-size: 18px;
-  min-width: 80px;
-  height: 40px;
-  padding: 0 15px 4px;
-  background: url('../images/buttons/btn-secondary.png') no-repeat !important;
-  background-size: 100% 100% !important;
-  border: none;
-  .is-disabled {
-    opacity: 0.4;
-  }
-  &.small {
-    font-size: 16px;
-    height: 34px;
-  }
+	font-size: 18px;
+	min-width: 80px;
+	height: 40px;
+	padding: 0 15px 4px;
+	background: url('../images/buttons/btn-secondary.png') no-repeat !important;
+	background-size: 100% 100% !important;
+	border: none;
+	.is-disabled {
+		opacity: 0.4;
+	}
+	&.small {
+		font-size: 16px;
+		height: 34px;
+	}
 }
 
 // 左上浮动面板通用样式
 .f-panel-left {
-  position: absolute;
-  left: var(--panel-left);
-  top: var(--panel-gap);
-  visibility: visible;
-  transition: opacity 0.3s ease, transform 0.3s ease-out, left 0.5s ease-out;
-  
-  &.collapse {
-    left: var(--panel-gap);
-  }
-}
+	position: absolute;
+	left: var(--panel-left);
+	top: var(--panel-gap);
+	visibility: visible;
+	transition:
+		opacity 0.3s ease,
+		transform 0.3s ease-out,
+		left 0.5s ease-out;
+
+	&.collapse {
+		left: var(--panel-gap);
+	}
+}

+ 1 - 1
src/views/home/Home.vue

@@ -42,7 +42,7 @@ onMounted(() => {})
 		width: var(--aside-width);
 		padding: 15px 20px 20px;
 		transition: all 0.5s ease;
-		background: linear-gradient(to bottom, rgba(0, 10, 30, 0.1) 0%, rgba(0, 10, 30, 0.3) 5%);
+		background: linear-gradient(to bottom, rgba(0, 0, 255, 0.1) 50%, rgba(0, 10, 30, 0.3) 100%);
 		border-radius: 0px 0px 12px 12px;
 		z-index: 3;
 	}

+ 7 - 7
src/views/home/cpns/PanelSgzy.vue

@@ -1,15 +1,15 @@
 <!-- 栅格占用查询 -->
 <template>
 	<div class="flex flex-col aside-left-inner">
-		<div class="title-main">立体空域网格占用查询</div>
+		<div class="title-main">网格查询</div>
 
 		<el-form ref="formRef" class="p-form mt-7" :model="form" :rules="rules" label-position="left" size="large">
-			<el-form-item label="计算层级" prop="level">
-				<el-select v-model="form.level" placeholder="">
-					<el-option label="23级" value="23" />
-					<el-option label="24级" value="24" />
-				</el-select>
-			</el-form-item>
+			<!--			<el-form-item label="计算层级" prop="level">-->
+			<!--				<el-select v-model="form.level" placeholder="">-->
+			<!--					<el-option label="23级" value="23" />-->
+			<!--					<el-option label="24级" value="24" />-->
+			<!--				</el-select>-->
+			<!--			</el-form-item>-->
 			<el-form-item label="高度" prop="height">
 				<el-input v-model="form.minZ" :max="form.maxZ" type="number" class="flex-1"></el-input>
 				<div class="mx-2">--</div>

+ 6 - 11
src/views/home/cpns/PanelSjwg.vue

@@ -1,9 +1,7 @@
 <template>
 	<div class="panel-sjwg flex flex-col aside-left-inner">
-		<div class="title-main shrink-0">数据网格可视化</div>
-
 		<div class="title-sub my-4 shrink-0">
-			底板数据
+			基础数据
 			<i @click="toggleContentShow('b1')" class="drop-down" :class="{ reverse: contentShow.b1 }"></i>
 		</div>
 
@@ -53,15 +51,12 @@ function basicCheckAll(item) {
 
 const basicList = ref([
 	{
-		label: '地形',
+		label: '服务',
 		show: true,
-		children: [{ label: '影像', alias: '影像底图', icon: 'dxing', active: false }],
-	},
-	{
-		label: '低空障碍物',
-		show: false,
-		active: false,
-		children: [{ label: '全市建筑物', alias: '全市白模', icon: 'qsjzwu', active: false }],
+		children: [
+			{ label: '影像', alias: '影像底图', icon: 'dxing', active: false },
+			{ label: '全市建筑物', alias: '全市白模', icon: 'qsjzwu', active: false },
+		],
 	},
 ])
 

+ 2 - 6
src/views/home/cpns/ToolList.vue

@@ -23,7 +23,6 @@
 					@mouseleave="handleToolSubAutoHide(item)"
 					@mouseenter="handleToolSubAutoHide(item, true)">
 					<li v-for="(sub, index) in item.children" @click.stop="handleToolClick(item, index)">
-						<img :src="getAssetsFile('buttons/' + item.icon + (sub.active ? '-h.png' : '.png'))" alt="" />
 						<span :class="{ active: sub.active }">{{ sub.name }}</span>
 					</li>
 				</ul>
@@ -55,10 +54,7 @@ const toolsData = ref([
 		name: '栅格占用',
 		icon: 'tool-sgzy',
 		showSub: false,
-		children: [
-			{ id: 'sgzy', name: '栅格占用查询', icon: 'tool2-sgzy', active: false, leftPanel: true },
-			{ id: 'kypm', name: '空域剖面分析', icon: 'tool2-kypm', active: false, leftPanel: true },
-		],
+		children: [{ id: 'sgzy', name: '网格查询', active: false, leftPanel: true }],
 	},
 	{ id: 'tsjs', name: '态势监视', icon: 'tool-tsjs', active: false },
 ])
@@ -261,7 +257,7 @@ function handleMapAutoHide(type) {
 		padding: 0 15px;
 
 		li {
-			width: 170px;
+			width: 80px;
 			height: 22px;
 			margin: 20px 0;
 			display: flex;

+ 1 - 0
src/views/layout/Index.vue

@@ -7,6 +7,7 @@
 			<div class="m-right" :class="{ collapse: layoutStore.rightCollapse }"></div>
 		</div>
 
+		<header class="header" />
 		<HomePage class="page" />
 
 		<MapView v-if="layoutStore.sceneType === 'gis'" class="scene" />

+ 2 - 2
src/views/layout/cpns/Header.vue

@@ -9,7 +9,7 @@
 		</div>
 		<div class="h-title">
 			<img src="@/assets/images/layout/logo.png" alt="" />
-			<h1 class="title-text">低空飞行综合监管服务系统</h1>
+			<h1 class="title-text">智能无人机管理服务系统</h1>
 		</div>
 		<div class="h-right flex justify-end items-center shrink-0">
 			<img
@@ -61,7 +61,7 @@ const currentWeather = computed(() => {
 	position: absolute;
 	top: 0;
 	width: 100%;
-	height: var(--header-height);
+	height: 100px;
 	display: flex;
 	justify-content: space-between;
 	align-items: center;