刘妍 2024-11-07 13:12:43 +08:00
commit 694352cfd1
5 changed files with 274 additions and 23 deletions

View File

@ -230,9 +230,9 @@
</template>
<script setup lang="ts">
import { defineProps, ref, watch, onMounted, defineEmits } from "vue"
import { PlusOutlined, CloseOutlined } from '@ant-design/icons-vue';
import { Upload, message } from 'ant-design-vue';
import { defineProps, ref, watch, onMounted, defineEmits, createVNode } from "vue"
import { PlusOutlined, CloseOutlined, ExclamationCircleOutlined } from '@ant-design/icons-vue';
import { Upload, message, Modal } from 'ant-design-vue';
import { uploadFile } from '@/api/formrender/index';
import { getAppEnvConfig } from '@/utils/env';
import { getLoad } from '@/api/sys/sysDataItemDetail';
@ -351,8 +351,7 @@ const handlerDelete = (index) => {
const handlerPreviewImage = (url,list) => {
}
const submit = () => {
const submitApi = () => {
let params = {
...props.infoData,
subject: props.type,
@ -365,6 +364,53 @@ const submit = () => {
}
})
}
const submit = () => {
Modal.confirm({
title: '确认审核通过吗?',
icon: createVNode(ExclamationCircleOutlined),
okText: '确认',
cancelText: '取消',
onOk: () => {
if(props.type != '违法用地'){
submitApi()
return
}
switch(props.infoData.typename){
case '农用地':
if(Number(props.infoData.nongyongdi_area) > 0){
submitApi()
return
}
Modal.confirm({
title: '农用地 类型时 占农用地面积 需大于0',
icon: createVNode(ExclamationCircleOutlined),
okText: '继续',
onOk() {
submitApi()
}
});
break
case '建设用地':
if(Number(props.infoData.nongyongdi_area) == 0){
submitApi()
return
}
Modal.confirm({
title: '建设用地 类型时 占农用地面积 需为0',
icon: createVNode(ExclamationCircleOutlined),
okText: '继续',
onOk() {
submitApi()
}
})
break
default:
submitApi()
}
}
});
}
const reSubmit = () => {
emits('reSubmit',props.infoData.original_case_no)
}

View File

@ -266,9 +266,9 @@
</template>
<script setup lang="ts">
import { defineProps, ref, watch, onMounted, defineEmits } from "vue"
import { PlusOutlined, CloseOutlined } from '@ant-design/icons-vue';
import { Upload, message } from 'ant-design-vue';
import { defineProps, ref, watch, onMounted, defineEmits, createVNode } from "vue"
import { PlusOutlined, CloseOutlined, ExclamationCircleOutlined } from '@ant-design/icons-vue';
import { Upload, message, Modal } from 'ant-design-vue';
import { uploadFile } from '@/api/formrender/index';
import { getAppEnvConfig } from '@/utils/env';
import { getLoad } from '@/api/sys/sysDataItemDetail';
@ -387,15 +387,22 @@ const handlerPreviewImage = (url,list) => {
}
const submit = () => {
let params = {
...props.infoData,
subject: '非法采矿',
}
console.log(params)
UpdateCaseInfoBySubject(params).then(res => {
if(res){
emits('handleOk')
Modal.confirm({
title: '确认审核通过吗?',
icon: createVNode(ExclamationCircleOutlined),
okText: '确认',
cancelText: '取消',
onOk: () => {
let params = {
...props.infoData,
subject: '非法采矿',
}
console.log(params)
UpdateCaseInfoBySubject(params).then(res => {
if(res){
emits('handleOk')
}
})
}
})
}

View File

@ -414,7 +414,7 @@
}}</a-descriptions-item>
</a-descriptions>
</a-tab-pane>
<a-tab-pane key="6" tab="查处审核">
<!-- <a-tab-pane key="6" tab="查处审核">
<a-divider>县级审核</a-divider>
<a-descriptions
:column="2"
@ -461,7 +461,7 @@
caseInfo.shishenhetime_punish
}}</a-descriptions-item>
</a-descriptions>
</a-tab-pane>
</a-tab-pane> -->
<a-tab-pane key="7" tab="整改">
<a-descriptions
:column="2"

View File

@ -247,4 +247,170 @@ export const defaultPaint = {
'#7a0403',
],
'fill-outline-color': '#232323',
};
};
export const defaultPaint2 = {
'fill-opacity': 0.1,
'fill-color': '#ffffff',
'fill-outline-color': '#ffff30',
};
export const geoserverCodeValue = [
{
code: '0307',
value: '其他林地',
},
{
code: '0602',
value: '采矿用地',
},
{
code: '08H1',
value: '机关团体新闻出版用地',
},
{
code: '1109',
value: '水工建筑用地',
},
{
code: '0701',
value: '城镇住宅用地',
},
{
code: '1104',
value: '坑塘水面',
},
{
code: '1103',
value: '水库水面',
},
{
code: '1104A',
value: '养殖坑塘',
},
{
code: '1107A',
value: '干渠',
},
{
code: '0102',
value: '水浇地',
},
{
code: '1107',
value: '沟渠',
},
{
code: '0201',
value: '果园',
},
{
code: '1003',
value: '公路用地',
},
{
code: '08H2',
value: '科教文卫用地',
},
{
code: '1101',
value: '河流水面',
},
{
code: '1004',
value: '城镇村道路用地',
},
{
code: '09',
value: '特殊用地',
},
{
code: '0809',
value: '公用设施用地',
},
{
code: '0702',
value: '农村宅基地',
},
{
code: '1202',
value: '设施农用地',
},
{
code: '1006',
value: '农村道路',
},
{
code: '1005',
value: '交通服务场站用地',
},
{
code: '0301',
value: '乔木林地',
},
{
code: '0404',
value: '其他草地',
},
{
code: '0305',
value: '灌木林地',
},
{
code: '1001',
value: '铁路用地',
},
{
code: '0204',
value: '其他园地',
},
{
code: '0101',
value: '水田',
},
{
code: '0103',
value: '旱地',
},
{
code: '1106',
value: '内陆滩涂',
},
{
code: '0601',
value: '工业用地',
},
{
code: '1007',
value: '机场用地',
},
{
code: '0508',
value: '物流仓储用地',
},
{
code: '0810A',
value: '广场用地',
},
{
code: '1206',
value: '裸土地',
},
{
code: '08H2A',
value: '高教用地',
},
{
code: '05H1',
value: '商业服务业设施用地',
},
{
code: '0302',
value: '竹林地',
},
{
code: '0810',
value: '公园与绿地',
},
];

View File

@ -7,7 +7,7 @@
import { WktToGeojson } from '@/components/MapboxMaps/src/WktGeojsonTransform';
import mapboxgl, { Map, Popup } from 'mapbox-gl';
import { getGeomData } from '@/api/demo/system';
import { MAPBOX_TOKEN, TINADITU_TOKEN, defaultPaint } from './clound.data';
import { MAPBOX_TOKEN, TINADITU_TOKEN, defaultPaint, geoserverCodeValue } from './clound.data';
import { getAppEnvConfig } from '@/utils/env';
import axios from 'axios';
@ -169,7 +169,7 @@
layout: {
'text-field': ['get', 'xzqmc'],
'text-font': ['Open Sans Bold', 'Arial Unicode MS Bold'],
'text-size': 12,
'text-size': ['interpolate', ['linear'], ['zoom'], 10, 0, 10.1, 12],
'text-anchor': 'center',
},
paint: {
@ -206,6 +206,9 @@
if (isMove) {
handlerLocation(lngLat, zoom);
}
// match
const matchInput = geoserverCodeValue.flatMap(({ code, value }) => [code, value]);
chooseRows?.forEach((chooseRow) => {
map.addSource(chooseRow.dataTable, {
type: 'vector',
@ -221,6 +224,7 @@
// console.log(chooseRow.style);
//
map.addLayer({
id: chooseRow.dataTable,
type: 'fill',
@ -228,6 +232,31 @@
'source-layer': chooseRow.dataTable,
paint: chooseRow.style ? JSON.parse(chooseRow.style) : defaultPaint,
});
//
map.addLayer({
id: chooseRow.dataTable + '-text',
type: 'symbol',
source: chooseRow.dataTable,
'source-layer': chooseRow.dataTable,
layout: {
'text-field': ['match', ['get', 'dlbm'], ...matchInput, ''],
'text-font': ['Open Sans Bold', 'Arial Unicode MS Bold'],
'text-size': ['interpolate', ['linear'], ['zoom'], 12, 0, 12.1, 12],
// 'text-size': 12,
'text-anchor': 'center',
'symbol-placement': 'point',
'text-allow-overlap': false,
'text-padding': 20,
'text-letter-spacing': 0.1,
visibility: 'visible',
},
paint: {
'text-color': '#ffffff', //
'text-halo-color': '#000000', //
'text-halo-width': 1, //
},
});
map.on('click', chooseRow.dataTable, function (e) {
//
if (e.features.length > 0) {
@ -254,7 +283,7 @@
chooseRows?.forEach((chooseRow, index) => {
let tiles: any = [];
let tile =
'http://192.168.10.131:8080/geoserver/my_workspace/wms?service=WMS&version=1.1.0&request=GetMap&layers=my_workspace:' +
'http://192.168.10.141:8080/geoserver/my_workspace/wms?service=WMS&version=1.1.0&request=GetMap&layers=my_workspace:' +
chooseRow.layerName +
'&styles=&bbox={bbox-epsg-3857}&width=256&height=256&srs=EPSG:3857' +
'&format=image/png&TRANSPARENT=TRUE';
@ -422,6 +451,9 @@
// map.removeLayer('unclustered-point');
// }
}
if (map.getLayer(layerName + '-text')) {
map.removeLayer(layerName + '-text');
}
}
//
if (map.getSource(layerName)) {