冲突解决
commit
94e5911303
|
|
@ -1,274 +1,316 @@
|
|||
<template>
|
||||
<div class="statistical" id="bg-pan">
|
||||
|
||||
<Map
|
||||
@onload="handlerOnMapLoad"
|
||||
@handlerGetDetails="handlerGetDetails"
|
||||
style="position: absolute; top: 0px; left: 0px;height: calc( 100vh - 80px);width:100%;z-index:0;"
|
||||
<template>
|
||||
<div class="statistical" id="bg-pan">
|
||||
<Map
|
||||
@onload="handlerOnMapLoad"
|
||||
@handlerGetDetails="handlerGetDetails"
|
||||
style="
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
height: calc(100vh - 80px);
|
||||
width: 100%;
|
||||
z-index: 0;
|
||||
"
|
||||
ref="MapboxComponent"
|
||||
@showMonitor="showMonitor"
|
||||
@handlerQueryIntersectTif="handlerQueryIntersectTif"
|
||||
></Map>
|
||||
|
||||
|
||||
|
||||
<div style="position: absolute; left:60px; bottom: 20px; z-index:1;">
|
||||
<div :class="`button-item ${buttonSelect == 1? 'button-select': ''}`" style="margin-bottom: 10px" @click="changeLayer(1)">导航地图</div>
|
||||
<div :class="`button-item ${buttonSelect == 2? 'button-select': ''}`" style="margin-bottom: 10px" @click="changeLayer(2)">卫星地图</div>
|
||||
<div :class="`button-item ${buttonSelect == 3? 'button-select': ''}`" @click="changeLayer(3)">白板地图</div>
|
||||
</div>
|
||||
|
||||
<div class="legend">
|
||||
<div class="legend-item" v-for="(item,index) in legends" :key="index">
|
||||
<div class="legend-dot" :style="{background:item.color}"></div>
|
||||
<div class="legend-label">{{item.label}}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<a-modal
|
||||
style="width: 100vw; top: 0px; left: 0px; margin: 0px; padding: 0px"
|
||||
wrap-class-name="full-modal"
|
||||
v-model:open="showInfoOpen"
|
||||
title="详情"
|
||||
:footer="null"
|
||||
:maskClosable="true"
|
||||
:destroyOnClose="true"
|
||||
@cancel="showInfoOpen = false"
|
||||
>
|
||||
<div class="modal-content">
|
||||
<ShowInfoModal v-if="showInfoOpen" :showInfoData="showInfoData" />
|
||||
</div>
|
||||
</a-modal>
|
||||
|
||||
|
||||
<!-- 图层控制 视频监控-->
|
||||
|
||||
<div class="layer-center-container">
|
||||
<LayerCenter
|
||||
@drawPolygon="drawPolygon"
|
||||
@cancleDrawPolygon="cancleDrawPolygon"
|
||||
@changeTifLayer="changeTifLayer"
|
||||
ref="LayerCenterComponent"></LayerCenter>
|
||||
</div>
|
||||
|
||||
<div class="TC-videoi-container" v-if="showTCLPlayer" v-drag>
|
||||
<div class="close-button" @click="showTCLPlayer = false;">
|
||||
<CloseOutlined></CloseOutlined>
|
||||
</div>
|
||||
<Monitor v-if="showTCLPlayer" :play-url="playUrl"></Monitor>
|
||||
</div>
|
||||
:layer="layerSettings"
|
||||
/>
|
||||
|
||||
<div style="position: absolute; left: 60px; bottom: 20px; z-index: 1">
|
||||
<div
|
||||
:class="`button-item ${buttonSelect == 1 ? 'button-select' : ''}`"
|
||||
style="margin-bottom: 10px"
|
||||
@click="changeLayer(1)"
|
||||
>导航地图</div
|
||||
>
|
||||
<div
|
||||
:class="`button-item ${buttonSelect == 2 ? 'button-select' : ''}`"
|
||||
style="margin-bottom: 10px"
|
||||
@click="changeLayer(2)"
|
||||
>卫星地图</div
|
||||
>
|
||||
<div
|
||||
:class="`button-item ${buttonSelect == 3 ? 'button-select' : ''}`"
|
||||
@click="changeLayer(3)"
|
||||
>白板地图</div
|
||||
>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { ref, onMounted, onUnmounted, computed } from 'vue';
|
||||
import Map from './Converge/index.vue';
|
||||
import layerButton from './mapComponent/left_layerButton.vue';
|
||||
import statisticalType from './mapComponent/left_statisticalType.vue';
|
||||
import county from './mapComponent/left_county.vue';
|
||||
import DataScreen from './dataScreen/index.vue'
|
||||
import Header from './mapComponent/top_title.vue'
|
||||
import ShowInfoModal from '@/views/demo/tiankongdi/curbspotcity/MapList/ShowInfoModal/index.vue';
|
||||
import { getLoadDroneCaseInfoDetail, getCaseInfoById } from '@/api/tiankongdi/index';
|
||||
// details
|
||||
const showInfoOpen = ref<Boolean>(false);
|
||||
const showInfoData = ref();
|
||||
const buttonSelect = ref(2)
|
||||
|
||||
const getInfoList = (id) => {
|
||||
getCaseInfoById({id:id}).then(res => {
|
||||
if(res){
|
||||
showInfoData.value = res
|
||||
showInfoOpen.value = true;
|
||||
}else{
|
||||
|
||||
}
|
||||
})
|
||||
};
|
||||
|
||||
const MapboxComponent = ref();
|
||||
const countyId = ref();
|
||||
|
||||
const legends = ref([
|
||||
{
|
||||
label:"违法",
|
||||
color:"#F70303",
|
||||
},{
|
||||
label:"合法",
|
||||
color:"#0AF703",
|
||||
},{
|
||||
label:"其他",
|
||||
color:"#0382F7",
|
||||
},{
|
||||
label:"补办手续",
|
||||
color:"#AD04F4",
|
||||
},{
|
||||
label:"拆除复耕",
|
||||
color:"#F4E004",
|
||||
},
|
||||
])
|
||||
|
||||
function handlerOnMapLoad(){
|
||||
|
||||
}
|
||||
|
||||
function handlerGetDetails(e){
|
||||
getInfoList(e.Id);
|
||||
}
|
||||
|
||||
// 选择区县
|
||||
const currentCounty = ref({ name: '', code: '' });
|
||||
function countyClick(data) {
|
||||
countyId.value = data.id;
|
||||
currentCounty.value = { name: data['name'], code: data['id'] };
|
||||
MapboxComponent.value.handlerChangeCounty(currentCounty.value);
|
||||
}
|
||||
|
||||
// 图例点击
|
||||
function handlerChangePolygonType(data) {
|
||||
MapboxComponent.value.handlerLoadPolygon(currentCounty.value['code'], data);
|
||||
}
|
||||
|
||||
|
||||
// 切换图斑类型
|
||||
function changeLandType(type):void{
|
||||
MapboxComponent.value.handlerLoadPolygon(currentCounty.value['code'], "",type);
|
||||
}
|
||||
const changeLayer = (value) => {
|
||||
buttonSelect.value = value
|
||||
switch(value){
|
||||
case 1:
|
||||
MapboxComponent.value.handlerChangeLayerVisible('tdt-img-tiles',false)
|
||||
MapboxComponent.value.handlerChangeLayerVisible('tdt-vec-tiles',true)
|
||||
MapboxComponent.value.handlerChangeLayerVisible('countyPanelLayer',false)
|
||||
break;
|
||||
case 2:
|
||||
MapboxComponent.value.handlerChangeLayerVisible('tdt-img-tiles',true)
|
||||
MapboxComponent.value.handlerChangeLayerVisible('tdt-vec-tiles',false)
|
||||
MapboxComponent.value.handlerChangeLayerVisible('countyPanelLayer',false)
|
||||
break;
|
||||
case 3:
|
||||
MapboxComponent.value.handlerChangeLayerVisible('tdt-img-tiles',false)
|
||||
MapboxComponent.value.handlerChangeLayerVisible('tdt-vec-tiles',false)
|
||||
MapboxComponent.value.handlerChangeLayerVisible('countyPanelLayer',true)
|
||||
break;
|
||||
<div class="legend">
|
||||
<div class="legend-item" v-for="(item, index) in legends" :key="index">
|
||||
<div class="legend-dot" :style="{ background: item.color }"></div>
|
||||
<div class="legend-label">{{ item.label }}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<a-modal
|
||||
style="width: 100vw; top: 0px; left: 0px; margin: 0px; padding: 0px"
|
||||
wrap-class-name="full-modal"
|
||||
v-model:open="showInfoOpen"
|
||||
title="详情"
|
||||
:footer="null"
|
||||
:maskClosable="true"
|
||||
:destroyOnClose="true"
|
||||
@cancel="showInfoOpen = false"
|
||||
>
|
||||
<div class="modal-content">
|
||||
<ShowInfoModal v-if="showInfoOpen" :showInfoData="showInfoData" />
|
||||
</div>
|
||||
</a-modal>
|
||||
|
||||
<!-- 图层控制 视频监控-->
|
||||
|
||||
<div class="layer-center-container">
|
||||
<LayerCenter
|
||||
@drawPolygon="drawPolygon"
|
||||
@cancleDrawPolygon="cancleDrawPolygon"
|
||||
@changeTifLayer="changeTifLayer"
|
||||
ref="LayerCenterComponent"
|
||||
></LayerCenter>
|
||||
</div>
|
||||
|
||||
<div class="TC-videoi-container" v-if="showTCLPlayer" v-drag>
|
||||
<div class="close-button" @click="showTCLPlayer = false">
|
||||
<CloseOutlined></CloseOutlined>
|
||||
</div>
|
||||
<Monitor v-if="showTCLPlayer" :play-url="playUrl"></Monitor>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { ref, onMounted, onUnmounted, computed } from 'vue';
|
||||
import Map from './Converge/index.vue';
|
||||
import layerButton from './mapComponent/left_layerButton.vue';
|
||||
import statisticalType from './mapComponent/left_statisticalType.vue';
|
||||
import county from './mapComponent/left_county.vue';
|
||||
import DataScreen from './dataScreen/index.vue';
|
||||
import Header from './mapComponent/top_title.vue';
|
||||
import ShowInfoModal from '@/views/demo/tiankongdi/curbspotcity/MapList/ShowInfoModal/index.vue';
|
||||
import { getLoadDroneCaseInfoDetail, getCaseInfoById } from '@/api/tiankongdi/index';
|
||||
import { useRoute } from 'vue-router';
|
||||
import { getConfig } from '@/api/sys/layerManagement';
|
||||
|
||||
const route: any = useRoute();
|
||||
const subject = ref(route.params.id);
|
||||
const legends: any = ref([]);
|
||||
const layerSettings = ref();
|
||||
// details
|
||||
const showInfoOpen = ref<Boolean>(false);
|
||||
const showInfoData = ref();
|
||||
const buttonSelect = ref(2);
|
||||
|
||||
const getInfoList = (id) => {
|
||||
getCaseInfoById({ id: id }).then((res) => {
|
||||
if (res) {
|
||||
showInfoData.value = res;
|
||||
showInfoOpen.value = true;
|
||||
} else {
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
const MapboxComponent = ref();
|
||||
const countyId = ref();
|
||||
|
||||
/*图层控制 视频监控*/
|
||||
import LayerCenter from './mapComponent/layers/index.vue';
|
||||
function getLayerSettings() {
|
||||
let title = '';
|
||||
switch (subject.value) {
|
||||
case '违法用地':
|
||||
title = 'Subject_WFYD';
|
||||
break;
|
||||
case '非法采矿':
|
||||
title = 'Subject_FFCK';
|
||||
break;
|
||||
case '耕地非粮化':
|
||||
title = 'Subject_GDFLH';
|
||||
break;
|
||||
case '重点问题':
|
||||
title = 'Subject_ZDWT';
|
||||
break;
|
||||
case '巡察审计':
|
||||
title = 'Subject_XCSJ';
|
||||
break;
|
||||
case '生态保护红线监管':
|
||||
title = 'Subject_STBHHXJG';
|
||||
break;
|
||||
case '生态修复':
|
||||
title = 'Subject_STXF';
|
||||
break;
|
||||
}
|
||||
getConfig({
|
||||
code: title,
|
||||
}).then((res) => {
|
||||
let obj = JSON.parse(res.codeValue);
|
||||
layerSettings.value = obj[0];
|
||||
let legend = layerSettings.value.legend[0];
|
||||
for (const key in legend) {
|
||||
legends.value.push({
|
||||
label: key,
|
||||
color: legend[key].colour,
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
function handlerOnMapLoad() {}
|
||||
|
||||
// 视频监控
|
||||
import Monitor from './mapComponent/monitor/index.vue';
|
||||
import {CloseOutlined} from "@ant-design/icons-vue"
|
||||
function handlerGetDetails(e) {
|
||||
getInfoList(e.Id);
|
||||
}
|
||||
|
||||
const showTCLPlayer = ref(false);
|
||||
const playUrl = ref("");
|
||||
function showMonitor(info){
|
||||
playUrl.value = info.playUrl
|
||||
showTCLPlayer.value = true;
|
||||
}
|
||||
|
||||
// 历史影像
|
||||
// 选择区县
|
||||
const currentCounty = ref({ name: '', code: '' });
|
||||
function countyClick(data) {
|
||||
countyId.value = data.id;
|
||||
currentCounty.value = { name: data['name'], code: data['id'] };
|
||||
MapboxComponent.value.handlerChangeCounty(currentCounty.value);
|
||||
}
|
||||
|
||||
function drawPolygon(state){
|
||||
// 调用Map控件中的绘图方法
|
||||
MapboxComponent.value.handlerDrawPolygon();
|
||||
}
|
||||
// 图例点击
|
||||
function handlerChangePolygonType(data) {
|
||||
MapboxComponent.value.handlerLoadPolygon(currentCounty.value['code'], data);
|
||||
}
|
||||
|
||||
function cancleDrawPolygon(){
|
||||
MapboxComponent.value.handlerDeletePolygon();
|
||||
// 切换图斑类型
|
||||
function changeLandType(type): void {
|
||||
MapboxComponent.value.handlerLoadPolygon(currentCounty.value['code'], '', type);
|
||||
}
|
||||
const changeLayer = (value) => {
|
||||
buttonSelect.value = value;
|
||||
switch (value) {
|
||||
case 1:
|
||||
MapboxComponent.value.handlerChangeLayerVisible('tdt-img-tiles', false);
|
||||
MapboxComponent.value.handlerChangeLayerVisible('tdt-vec-tiles', true);
|
||||
MapboxComponent.value.handlerChangeLayerVisible('countyPanelLayer', false);
|
||||
break;
|
||||
case 2:
|
||||
MapboxComponent.value.handlerChangeLayerVisible('tdt-img-tiles', true);
|
||||
MapboxComponent.value.handlerChangeLayerVisible('tdt-vec-tiles', false);
|
||||
MapboxComponent.value.handlerChangeLayerVisible('countyPanelLayer', false);
|
||||
break;
|
||||
case 3:
|
||||
MapboxComponent.value.handlerChangeLayerVisible('tdt-img-tiles', false);
|
||||
MapboxComponent.value.handlerChangeLayerVisible('tdt-vec-tiles', false);
|
||||
MapboxComponent.value.handlerChangeLayerVisible('countyPanelLayer', true);
|
||||
break;
|
||||
}
|
||||
};
|
||||
|
||||
const LayerCenterComponent = ref();
|
||||
function handlerQueryIntersectTif(wktStr){
|
||||
LayerCenterComponent.value.handlerQueryIntersectTif(wktStr);
|
||||
}
|
||||
/*图层控制 视频监控*/
|
||||
import LayerCenter from './mapComponent/layers/index.vue';
|
||||
|
||||
|
||||
function changeTifLayer(layer){
|
||||
console.log("layer",layer);
|
||||
// 视频监控
|
||||
import Monitor from './mapComponent/monitor/index.vue';
|
||||
import { CloseOutlined } from '@ant-design/icons-vue';
|
||||
|
||||
MapboxComponent.value.handlerChangeTifLayer(layer);
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.button-item{
|
||||
width: 96px;
|
||||
height: 32px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
font-family: Microsoft YaHei;
|
||||
font-weight: 400;
|
||||
font-size: 11px;
|
||||
color: #7EBBFF;
|
||||
background: url('@/assets/statistical/blue_bg.png') no-repeat;
|
||||
background-size: cover;
|
||||
}
|
||||
.button-select{
|
||||
color: #06EBB7;
|
||||
background: url('@/assets/statistical/green_bg.png') no-repeat;
|
||||
background-size: cover;
|
||||
|
||||
}
|
||||
.statistical {
|
||||
// position: relative;
|
||||
// 页面不能被选中
|
||||
-webkit-user-select: none; /* Safari */
|
||||
-moz-user-select: none; /* Firefox */
|
||||
-ms-user-select: none; /* IE/Edge */
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
#bg-pan{
|
||||
|
||||
}
|
||||
#alertOverlay::before,#alertOverlay::after {
|
||||
content: "";
|
||||
const showTCLPlayer = ref(false);
|
||||
const playUrl = ref('');
|
||||
function showMonitor(info) {
|
||||
playUrl.value = info.playUrl;
|
||||
showTCLPlayer.value = true;
|
||||
}
|
||||
|
||||
// 历史影像
|
||||
|
||||
function drawPolygon(state) {
|
||||
// 调用Map控件中的绘图方法
|
||||
MapboxComponent.value.handlerDrawPolygon();
|
||||
}
|
||||
|
||||
function cancleDrawPolygon() {
|
||||
MapboxComponent.value.handlerDeletePolygon();
|
||||
}
|
||||
|
||||
const LayerCenterComponent = ref();
|
||||
function handlerQueryIntersectTif(wktStr) {
|
||||
LayerCenterComponent.value.handlerQueryIntersectTif(wktStr);
|
||||
}
|
||||
|
||||
function changeTifLayer(layer) {
|
||||
console.log('layer', layer);
|
||||
|
||||
MapboxComponent.value.handlerChangeTifLayer(layer);
|
||||
}
|
||||
onMounted(() => {
|
||||
getLayerSettings();
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.button-item {
|
||||
width: 96px;
|
||||
height: 32px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
font-family: Microsoft YaHei;
|
||||
font-weight: 400;
|
||||
font-size: 11px;
|
||||
color: #7ebbff;
|
||||
background: url('@/assets/statistical/blue_bg.png') no-repeat;
|
||||
background-size: cover;
|
||||
}
|
||||
.button-select {
|
||||
color: #06ebb7;
|
||||
background: url('@/assets/statistical/green_bg.png') no-repeat;
|
||||
background-size: cover;
|
||||
}
|
||||
.statistical {
|
||||
// position: relative;
|
||||
// 页面不能被选中
|
||||
-webkit-user-select: none; /* Safari */
|
||||
-moz-user-select: none; /* Firefox */
|
||||
-ms-user-select: none; /* IE/Edge */
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
#bg-pan {
|
||||
}
|
||||
#alertOverlay::before,
|
||||
#alertOverlay::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
width: 50px;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
#alertOverlay div::before,#alertOverlay div::after {
|
||||
content: "";
|
||||
|
||||
#alertOverlay div::before,
|
||||
#alertOverlay div::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 50px;
|
||||
}
|
||||
|
||||
|
||||
#alertOverlay::before {
|
||||
background: linear-gradient(to right, rgba(0, 0, 0,0.8), transparent);
|
||||
background: linear-gradient(to right, rgba(0, 0, 0, 0.8), transparent);
|
||||
top: 0;
|
||||
left: 0;
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
|
||||
#alertOverlay::after {
|
||||
background: linear-gradient(to left, rgba(0, 0, 0,0.8), transparent);
|
||||
background: linear-gradient(to left, rgba(0, 0, 0, 0.8), transparent);
|
||||
top: 0%;
|
||||
left: 100%;
|
||||
transform: rotate(0deg) translate(calc(-1 * 50px), 0px);
|
||||
}
|
||||
|
||||
|
||||
#alertOverlay div::before {
|
||||
background: linear-gradient(to top, rgba(0, 0, 0,0.8), transparent);
|
||||
background: linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent);
|
||||
top: 0;
|
||||
left: 0;
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
|
||||
|
||||
#alertOverlay div::after {
|
||||
background: linear-gradient(to top, rgba(0, 0, 0,0.8), transparent);
|
||||
background: linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent);
|
||||
top: 100%;
|
||||
left: 0;
|
||||
transform: rotate(0deg) translate(0px, calc(-1 * 50px));
|
||||
}
|
||||
|
||||
|
||||
#alertOverlay {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
|
|
@ -281,11 +323,11 @@
|
|||
pointer-events: none;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.alert-active{
|
||||
|
||||
.alert-active {
|
||||
animation: blink 0s infinite;
|
||||
}
|
||||
|
||||
|
||||
@keyframes blink {
|
||||
0% {
|
||||
opacity: 0;
|
||||
|
|
@ -297,83 +339,79 @@
|
|||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.legend{
|
||||
width:200px;
|
||||
padding:10px;
|
||||
position:absolute;
|
||||
bottom:20px;
|
||||
right:20px;
|
||||
display:flex;
|
||||
|
||||
.legend {
|
||||
width: 200px;
|
||||
padding: 10px;
|
||||
position: absolute;
|
||||
bottom: 20px;
|
||||
right: 20px;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
column-gap: 30px;
|
||||
border-radius: 8px;
|
||||
background-image:url("/statistical/left_statistical.png");
|
||||
background-size:100% 100%;
|
||||
.legend-item{
|
||||
padding:5px 0px;
|
||||
font-size:14px;
|
||||
color:#666666;
|
||||
display:flex;
|
||||
background-image: url('/statistical/left_statistical.png');
|
||||
background-size: 100% 100%;
|
||||
.legend-item {
|
||||
padding: 5px 0px;
|
||||
font-size: 14px;
|
||||
color: #666666;
|
||||
display: flex;
|
||||
flex: 48% 48%;
|
||||
color:#7ebbff;
|
||||
.legend-dot{
|
||||
width:14px;
|
||||
height:14px;
|
||||
color: #7ebbff;
|
||||
.legend-dot {
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
}
|
||||
.legend-label{
|
||||
margin-left:12px;
|
||||
.legend-label {
|
||||
margin-left: 12px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**图层控制 视频监控**/
|
||||
.layer-center-container{
|
||||
width:208px;
|
||||
position:absolute;
|
||||
bottom:0px;
|
||||
left:20px;
|
||||
z-index:99999;
|
||||
}
|
||||
|
||||
.TC-videoi-container{
|
||||
/**图层控制 视频监控**/
|
||||
.layer-center-container {
|
||||
width: 208px;
|
||||
position: absolute;
|
||||
bottom:48px;
|
||||
right:38px;
|
||||
width:418px;
|
||||
height:300px;
|
||||
.close-button{
|
||||
width:28px;
|
||||
height:28px;
|
||||
background:rgba(0, 0, 0, 0.6);
|
||||
bottom: 0px;
|
||||
left: 20px;
|
||||
z-index: 99999;
|
||||
}
|
||||
|
||||
.TC-videoi-container {
|
||||
position: absolute;
|
||||
bottom: 48px;
|
||||
right: 38px;
|
||||
width: 418px;
|
||||
height: 300px;
|
||||
.close-button {
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
background: rgba(0, 0, 0, 0.6);
|
||||
text-align: center;
|
||||
line-height:28px;
|
||||
position:absolute;
|
||||
top:4px;
|
||||
right:4px;
|
||||
z-index:999999;
|
||||
color:#fff;
|
||||
cursor:pointer;
|
||||
line-height: 28px;
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
right: 4px;
|
||||
z-index: 999999;
|
||||
color: #fff;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
.selection-button{
|
||||
position:absolute;
|
||||
cursor:pointer;
|
||||
top:20px;
|
||||
left:220px;
|
||||
width:140px;
|
||||
height:40px;
|
||||
margin-left:20px;
|
||||
.selection-button {
|
||||
position: absolute;
|
||||
cursor: pointer;
|
||||
top: 20px;
|
||||
left: 220px;
|
||||
width: 140px;
|
||||
height: 40px;
|
||||
margin-left: 20px;
|
||||
background-image: url(/map/change-view-btn.png);
|
||||
background-size:100% 100%;
|
||||
color:#efefef;
|
||||
background-size: 100% 100%;
|
||||
color: #efefef;
|
||||
text-align: center;
|
||||
line-height:46px;
|
||||
font-size:14px;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
line-height: 46px;
|
||||
font-size: 14px;
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,66 @@
|
|||
// vite.config.ts
|
||||
import { defineApplicationConfig } from "file:///F:/%E9%A1%B9%E7%9B%AE/%E8%B4%A2%E6%BA%90%E4%B8%80%E4%BD%93%E5%8C%96/CaiYuanYiTiHua/internal/vite-config/dist/index.mjs";
|
||||
var vite_config_default = defineApplicationConfig({
|
||||
overrides: {
|
||||
optimizeDeps: {
|
||||
include: [
|
||||
"echarts/core",
|
||||
"echarts/charts",
|
||||
"echarts/components",
|
||||
"echarts/renderers",
|
||||
"qrcode",
|
||||
"@iconify/iconify",
|
||||
"ant-design-vue/es/locale/zh_CN",
|
||||
"ant-design-vue/es/locale/en_US",
|
||||
"@/../lib/vform/designer.umd.js"
|
||||
]
|
||||
},
|
||||
build: {
|
||||
/* 其他build生产打包配置省略 */
|
||||
//...
|
||||
target: "esnext",
|
||||
commonjsOptions: {
|
||||
include: /node_modules|lib/
|
||||
//这里记得把lib目录加进来,否则生产打包会报错!!
|
||||
}
|
||||
},
|
||||
server: {
|
||||
proxy: {
|
||||
"/basic-api": {
|
||||
target: "http://localhost:3000",
|
||||
changeOrigin: true,
|
||||
ws: true,
|
||||
rewrite: (path) => path.replace(new RegExp(`^/basic-api`), "")
|
||||
// only https
|
||||
// secure: false
|
||||
},
|
||||
"/upload": {
|
||||
target: "http://localhost:3300/upload",
|
||||
changeOrigin: true,
|
||||
ws: true,
|
||||
rewrite: (path) => path.replace(new RegExp(`^/upload`), "")
|
||||
}
|
||||
},
|
||||
warmup: {
|
||||
clientFiles: ["./index.html", "./src/{views,components}/*"]
|
||||
}
|
||||
},
|
||||
define: {
|
||||
"process.env": {
|
||||
BASE_URL: "/"
|
||||
}
|
||||
},
|
||||
css: {
|
||||
preprocessorOptions: {
|
||||
less: {
|
||||
javascriptEnabled: true
|
||||
}
|
||||
}
|
||||
},
|
||||
plugins: []
|
||||
}
|
||||
});
|
||||
export {
|
||||
vite_config_default as default
|
||||
};
|
||||
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJGOlxcXFxcdTk4NzlcdTc2RUVcXFxcXHU4RDIyXHU2RTkwXHU0RTAwXHU0RjUzXHU1MzE2XFxcXENhaVl1YW5ZaVRpSHVhXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCJGOlxcXFxcdTk4NzlcdTc2RUVcXFxcXHU4RDIyXHU2RTkwXHU0RTAwXHU0RjUzXHU1MzE2XFxcXENhaVl1YW5ZaVRpSHVhXFxcXHZpdGUuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9GOi8lRTklQTElQjklRTclOUIlQUUvJUU4JUI0JUEyJUU2JUJBJTkwJUU0JUI4JTgwJUU0JUJEJTkzJUU1JThDJTk2L0NhaVl1YW5ZaVRpSHVhL3ZpdGUuY29uZmlnLnRzXCI7aW1wb3J0IHsgZGVmaW5lQXBwbGljYXRpb25Db25maWcgfSBmcm9tICdAdmJlbi92aXRlLWNvbmZpZyc7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZUFwcGxpY2F0aW9uQ29uZmlnKHtcbiAgb3ZlcnJpZGVzOiB7XG4gICAgb3B0aW1pemVEZXBzOiB7XG4gICAgICBpbmNsdWRlOiBbXG4gICAgICAgICdlY2hhcnRzL2NvcmUnLFxuICAgICAgICAnZWNoYXJ0cy9jaGFydHMnLFxuICAgICAgICAnZWNoYXJ0cy9jb21wb25lbnRzJyxcbiAgICAgICAgJ2VjaGFydHMvcmVuZGVyZXJzJyxcbiAgICAgICAgJ3FyY29kZScsXG4gICAgICAgICdAaWNvbmlmeS9pY29uaWZ5JyxcbiAgICAgICAgJ2FudC1kZXNpZ24tdnVlL2VzL2xvY2FsZS96aF9DTicsXG4gICAgICAgICdhbnQtZGVzaWduLXZ1ZS9lcy9sb2NhbGUvZW5fVVMnLFxuICAgICAgICAnQC8uLi9saWIvdmZvcm0vZGVzaWduZXIudW1kLmpzJyxcbiAgICAgIF0sXG4gICAgfSxcbiAgICBidWlsZDoge1xuICAgICAgLyogXHU1MTc2XHU0RUQ2YnVpbGRcdTc1MUZcdTRFQTdcdTYyNTNcdTUzMDVcdTkxNERcdTdGNkVcdTc3MDFcdTc1NjUgKi9cbiAgICAgIC8vLi4uXG4gICAgICB0YXJnZXQ6ICdlc25leHQnLFxuICAgICAgY29tbW9uanNPcHRpb25zOiB7XG4gICAgICAgIGluY2x1ZGU6IC9ub2RlX21vZHVsZXN8bGliLywgLy9cdThGRDlcdTkxQ0NcdThCQjBcdTVGOTdcdTYyOEFsaWJcdTc2RUVcdTVGNTVcdTUyQTBcdThGREJcdTY3NjVcdUZGMENcdTU0MjZcdTUyMTlcdTc1MUZcdTRFQTdcdTYyNTNcdTUzMDVcdTRGMUFcdTYyQTVcdTk1MTlcdUZGMDFcdUZGMDFcbiAgICAgIH0sXG4gICAgfSxcbiAgICBzZXJ2ZXI6IHtcbiAgICAgIHByb3h5OiB7XG4gICAgICAgICcvYmFzaWMtYXBpJzoge1xuICAgICAgICAgIHRhcmdldDogJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwMCcsXG4gICAgICAgICAgY2hhbmdlT3JpZ2luOiB0cnVlLFxuICAgICAgICAgIHdzOiB0cnVlLFxuICAgICAgICAgIHJld3JpdGU6IChwYXRoKSA9PiBwYXRoLnJlcGxhY2UobmV3IFJlZ0V4cChgXi9iYXNpYy1hcGlgKSwgJycpLFxuICAgICAgICAgIC8vIG9ubHkgaHR0cHNcbiAgICAgICAgICAvLyBzZWN1cmU6IGZhbHNlXG4gICAgICAgIH0sXG4gICAgICAgICcvdXBsb2FkJzoge1xuICAgICAgICAgIHRhcmdldDogJ2h0dHA6Ly9sb2NhbGhvc3Q6MzMwMC91cGxvYWQnLFxuICAgICAgICAgIGNoYW5nZU9yaWdpbjogdHJ1ZSxcbiAgICAgICAgICB3czogdHJ1ZSxcbiAgICAgICAgICByZXdyaXRlOiAocGF0aCkgPT4gcGF0aC5yZXBsYWNlKG5ldyBSZWdFeHAoYF4vdXBsb2FkYCksICcnKSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB3YXJtdXA6IHtcbiAgICAgICAgY2xpZW50RmlsZXM6IFsnLi9pbmRleC5odG1sJywgJy4vc3JjL3t2aWV3cyxjb21wb25lbnRzfS8qJ10sXG4gICAgICB9LFxuICAgIH0sXG4gICAgZGVmaW5lOiB7XG4gICAgICAncHJvY2Vzcy5lbnYnOiB7XG4gICAgICAgIEJBU0VfVVJMOiAnLycsXG4gICAgICB9LFxuICAgIH0sXG4gICAgY3NzOiB7XG4gICAgICBwcmVwcm9jZXNzb3JPcHRpb25zOiB7XG4gICAgICAgIGxlc3M6IHtcbiAgICAgICAgICBqYXZhc2NyaXB0RW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBwbHVnaW5zOiBbXSxcbiAgfSxcbn0pO1xuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUFnVSxTQUFTLCtCQUErQjtBQUV4VyxJQUFPLHNCQUFRLHdCQUF3QjtBQUFBLEVBQ3JDLFdBQVc7QUFBQSxJQUNULGNBQWM7QUFBQSxNQUNaLFNBQVM7QUFBQSxRQUNQO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxNQUNGO0FBQUEsSUFDRjtBQUFBLElBQ0EsT0FBTztBQUFBO0FBQUE7QUFBQSxNQUdMLFFBQVE7QUFBQSxNQUNSLGlCQUFpQjtBQUFBLFFBQ2YsU0FBUztBQUFBO0FBQUEsTUFDWDtBQUFBLElBQ0Y7QUFBQSxJQUNBLFFBQVE7QUFBQSxNQUNOLE9BQU87QUFBQSxRQUNMLGNBQWM7QUFBQSxVQUNaLFFBQVE7QUFBQSxVQUNSLGNBQWM7QUFBQSxVQUNkLElBQUk7QUFBQSxVQUNKLFNBQVMsQ0FBQyxTQUFTLEtBQUssUUFBUSxJQUFJLE9BQU8sYUFBYSxHQUFHLEVBQUU7QUFBQTtBQUFBO0FBQUEsUUFHL0Q7QUFBQSxRQUNBLFdBQVc7QUFBQSxVQUNULFFBQVE7QUFBQSxVQUNSLGNBQWM7QUFBQSxVQUNkLElBQUk7QUFBQSxVQUNKLFNBQVMsQ0FBQyxTQUFTLEtBQUssUUFBUSxJQUFJLE9BQU8sVUFBVSxHQUFHLEVBQUU7QUFBQSxRQUM1RDtBQUFBLE1BQ0Y7QUFBQSxNQUNBLFFBQVE7QUFBQSxRQUNOLGFBQWEsQ0FBQyxnQkFBZ0IsNEJBQTRCO0FBQUEsTUFDNUQ7QUFBQSxJQUNGO0FBQUEsSUFDQSxRQUFRO0FBQUEsTUFDTixlQUFlO0FBQUEsUUFDYixVQUFVO0FBQUEsTUFDWjtBQUFBLElBQ0Y7QUFBQSxJQUNBLEtBQUs7QUFBQSxNQUNILHFCQUFxQjtBQUFBLFFBQ25CLE1BQU07QUFBQSxVQUNKLG1CQUFtQjtBQUFBLFFBQ3JCO0FBQUEsTUFDRjtBQUFBLElBQ0Y7QUFBQSxJQUNBLFNBQVMsQ0FBQztBQUFBLEVBQ1o7QUFDRixDQUFDOyIsCiAgIm5hbWVzIjogW10KfQo=
|
||||
Loading…
Reference in New Issue