Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
CivManage
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ReactWeb5
CivManage
Commits
5448ff80
Commit
5448ff80
authored
Feb 17, 2025
by
张志伟
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
perf:地图支持设置底图设置范围
parent
f8d3d6df
Pipeline
#95622
waiting for manual action with stages
Changes
8
Pipelines
1
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
130 additions
and
250 deletions
+130
-250
AddModal.jsx
...s/platformCenter/gis/schemeConfig/TileConfig/AddModal.jsx
+42
-33
AddProjectModal.jsx
...ormCenter/gis/schemeConfig/TileConfig/AddProjectModal.jsx
+31
-96
BaseMap.jsx
...es/platformCenter/gis/schemeConfig/TileConfig/BaseMap.jsx
+11
-56
NewEditModal.jsx
...atformCenter/gis/schemeConfig/TileConfig/NewEditModal.jsx
+0
-0
TileConfig.jsx
...platformCenter/gis/schemeConfig/TileConfig/TileConfig.jsx
+6
-28
card.jsx
...pages/platformCenter/gis/schemeConfig/TileConfig/card.jsx
+3
-24
card.jsx
...enter/gis/schemeConfig/projectMessage/components/card.jsx
+0
-13
utils.js
src/utils/utils.js
+37
-0
No files found.
src/pages/platformCenter/gis/schemeConfig/TileConfig/AddModal.jsx
View file @
5448ff80
...
@@ -38,6 +38,7 @@ import {
...
@@ -38,6 +38,7 @@ import {
GetGridSetList
,
GetGridSetList
,
GetCustomBaseMapByName
,
GetCustomBaseMapByName
,
}
from
'@/services/webConfig/api'
;
}
from
'@/services/webConfig/api'
;
import
{
handleMapMaxZoom
}
from
'@/utils/utils'
;
const
{
Item
}
=
Form
;
const
{
Item
}
=
Form
;
const
{
Option
}
=
Select
;
const
{
Option
}
=
Select
;
...
@@ -71,6 +72,7 @@ const AddModal = props => {
...
@@ -71,6 +72,7 @@ const AddModal = props => {
const
[
radio1
,
setRadio1
]
=
useState
();
const
[
radio1
,
setRadio1
]
=
useState
();
const
[
keepJsonData
,
setKeepJsonData
]
=
useState
([]);
const
[
keepJsonData
,
setKeepJsonData
]
=
useState
([]);
const
[
maplayer
,
setMaplayer
]
=
useState
([]);
const
[
maplayer
,
setMaplayer
]
=
useState
([]);
const
[
baseMapMaxZoom
,
setBaseMapMaxZoom
]
=
useState
(
handleMapMaxZoom
(
'amap-v'
))
const
arr
=
[
const
arr
=
[
'assets/images/thumbnail/thumbnail_1.jpg'
,
'assets/images/thumbnail/thumbnail_1.jpg'
,
'assets/images/thumbnail/thumbnail_2.jpg'
,
'assets/images/thumbnail/thumbnail_2.jpg'
,
...
@@ -85,7 +87,6 @@ const AddModal = props => {
...
@@ -85,7 +87,6 @@ const AddModal = props => {
setLoading
(
true
);
setLoading
(
true
);
let
obj
=
form
.
getFieldsValue
();
let
obj
=
form
.
getFieldsValue
();
let
arr
=
{};
let
arr
=
{};
console
.
log
(
obj
.
url
);
// 连点
// 连点
if
(
obj
.
servicename
)
{
if
(
obj
.
servicename
)
{
if
(
mapType
==
1
)
{
if
(
mapType
==
1
)
{
...
@@ -114,6 +115,8 @@ const AddModal = props => {
...
@@ -114,6 +115,8 @@ const AddModal = props => {
m_User
:
obj
.
User
||
'admin'
,
m_User
:
obj
.
User
||
'admin'
,
m_Pwd
:
obj
.
Pwd
||
'panda_server@2023'
,
m_Pwd
:
obj
.
Pwd
||
'panda_server@2023'
,
gsAppName
:
obj
.
gis
,
gsAppName
:
obj
.
gis
,
baseMaxZoom
:
obj
.
baseMaxZoom
,
baseMinZoom
:
obj
.
baseMinZoom
,
}),
}),
};
};
}
else
{
}
else
{
...
@@ -122,17 +125,6 @@ const AddModal = props => {
...
@@ -122,17 +125,6 @@ const AddModal = props => {
if
(
list
)
{
if
(
list
)
{
url
=
list
.
url
;
url
=
list
.
url
;
}
}
// if (obj.type == 'streetPurplishBlue') {
// url = '//map.geoq.cn/ArcGIS/rest/services/ChinaOnlineStreetPurplishBlue/MapServer';
// } else if (obj.type == 'streetGray') {
// url = '//map.geoq.cn/ArcGIS/rest/services/ChinaOnlineStreetGray/MapServer';
// } else if (obj.type == 'streetWarm') {
// url = '//map.geoq.cn/ArcGIS/rest/services/ChinaOnlineStreetWarm/MapServer';
// } else if (obj.type == 'mapbox-i-ia') {
// url = '//api.mapbox.com/v4/mapbox.satellite';
// } else if (obj.type == 'tianditu-arcgis-i') {
// url = '//services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer';
// }
arr
=
{
arr
=
{
servicename
:
obj
.
servicename
,
servicename
:
obj
.
servicename
,
terminalType
:
'base'
,
terminalType
:
'base'
,
...
@@ -146,6 +138,8 @@ const AddModal = props => {
...
@@ -146,6 +138,8 @@ const AddModal = props => {
type
:
obj
.
type
,
type
:
obj
.
type
,
isTainDiTu
:
obj
.
isTainDiTu
,
isTainDiTu
:
obj
.
isTainDiTu
,
levelEnd
:
obj
.
levelEnd
,
levelEnd
:
obj
.
levelEnd
,
baseMaxZoom
:
obj
.
baseMaxZoom
,
baseMinZoom
:
obj
.
baseMinZoom
,
}),
}),
};
};
}
}
...
@@ -221,6 +215,8 @@ const AddModal = props => {
...
@@ -221,6 +215,8 @@ const AddModal = props => {
Pwd
:
'panda_server@2023'
,
Pwd
:
'panda_server@2023'
,
isTainDiTu
:
0
,
isTainDiTu
:
0
,
levelEndEnlarge
:
false
,
levelEndEnlarge
:
false
,
baseMinZoom
:
1
,
baseMaxZoom
:
handleMapMaxZoom
(
'amap-v'
)
});
});
break
;
break
;
...
@@ -282,12 +278,15 @@ const AddModal = props => {
...
@@ -282,12 +278,15 @@ const AddModal = props => {
};
};
const
handleChange
=
(
value
,
label
)
=>
{
const
handleChange
=
(
value
,
label
)
=>
{
let
str
=
label
[
0
].
split
(
'('
);
let
str
=
label
[
0
].
split
(
'('
);
let
maxZoom
=
handleMapMaxZoom
(
value
)
setAdvanced
(
0
);
setAdvanced
(
0
);
setCurrent
(
false
);
setCurrent
(
false
);
form
.
setFieldsValue
({
form
.
setFieldsValue
({
label
:
str
[
0
],
label
:
str
[
0
],
servicename
:
str
[
0
],
servicename
:
str
[
0
],
baseMaxZoom
:
maxZoom
});
});
setBaseMapMaxZoom
(
maxZoom
)
if
(
value
==
'google-user'
||
value
==
'pipenet-tile'
)
{
if
(
value
==
'google-user'
||
value
==
'pipenet-tile'
)
{
setMapType
(
1
);
setMapType
(
1
);
}
else
{
}
else
{
...
@@ -570,21 +569,37 @@ const AddModal = props => {
...
@@ -570,21 +569,37 @@ const AddModal = props => {
<
Item
label=
"标签"
name=
"label"
rules=
{
[{
required
:
true
,
message
:
'请输入标签'
}]
}
>
<
Item
label=
"标签"
name=
"label"
rules=
{
[{
required
:
true
,
message
:
'请输入标签'
}]
}
>
<
Input
placeholder=
"请输入标签名"
allowClear
/>
<
Input
placeholder=
"请输入标签名"
allowClear
/>
</
Item
>
</
Item
>
{
/* <Item label="URL" name="url">
<
Item
label=
"缩放级别"
>
<Input placeholder="请输入URL" allowClear />
<
Row
>
</Item> */
}
<
Col
span=
{
5
}
>
{
/* <Item label="透明度" name="alpha">
<
Item
name=
"baseMinZoom"
rules=
{
[{
required
:
true
,
message
:
'请输入最小级别'
}]
}
>
<Slider
<
InputNumber
min=
{
1
}
max=
{
baseMapMaxZoom
}
/>
marks={marks}
</
Item
>
min={0}
</
Col
>
max={100}
<
Col
span=
{
1
}
>
onChange={onChange}
<
div
style=
{
{
marginTop
:
'4px'
}
}
>
~
</
div
>
// step={0.1}
</
Col
>
tipFormatter={tipFormatter}
<
Col
span=
{
10
}
>
// tooltipVisible
<
Item
defaultValue={100}
name=
"baseMaxZoom"
/>
rules=
{
[
</Item> */
}
{
validator
:
(
rule
,
value
)
=>
{
const
obj
=
form
.
getFieldsValue
().
baseMinZoom
;
const
objmax
=
form
.
getFieldsValue
().
baseMaxZoom
;
if
(
objmax
<
obj
)
{
return
Promise
.
reject
(
'最大级别不能小于最小级别'
);
}
return
Promise
.
resolve
();
},
},
]
}
>
<
InputNumber
min=
{
1
}
max=
{
baseMapMaxZoom
}
/>
</
Item
>
</
Col
>
</
Row
>
</
Item
>
<
Item
<
Item
label=
"选择缩略图"
label=
"选择缩略图"
name=
"icon"
name=
"icon"
...
@@ -608,9 +623,6 @@ const AddModal = props => {
...
@@ -608,9 +623,6 @@ const AddModal = props => {
form
.
setFieldsValue
({
icon
:
arr
[
index
]
});
form
.
setFieldsValue
({
icon
:
arr
[
index
]
});
}
}
}
}
/>
/>
{
/* <Radio.Group options={item} onChange={radioChange} value={radio}>
<Radio value={arr[index]} />
</Radio.Group> */
}
</
div
>
</
div
>
))
}
))
}
</
div
>
</
div
>
...
@@ -638,9 +650,6 @@ const AddModal = props => {
...
@@ -638,9 +650,6 @@ const AddModal = props => {
</
Item
>
</
Item
>
</>
</>
)
}
)
}
{
/* <Item label="缩略图" name="icon" rules={[{ required: true, message: '请选择缩略图' }]}>
<Input placeholder="请输入URL" disabled />
</Item> */
}
{
mapType
===
1
?
(
{
mapType
===
1
?
(
<>
<>
<
Item
label=
"ip地址"
name=
"IP"
rules=
{
[{
required
:
true
,
message
:
'请输入ip地址'
}]
}
>
<
Item
label=
"ip地址"
name=
"IP"
rules=
{
[{
required
:
true
,
message
:
'请输入ip地址'
}]
}
>
...
...
src/pages/platformCenter/gis/schemeConfig/TileConfig/AddProjectModal.jsx
View file @
5448ff80
...
@@ -9,13 +9,17 @@ import {
...
@@ -9,13 +9,17 @@ import {
bindSchemeBaseMap
,
bindSchemeBaseMap
,
SetBaseMapschemeName
,
SetBaseMapschemeName
,
}
from
'@/services/webConfig/api'
;
}
from
'@/services/webConfig/api'
;
import
{
InfoCircleOutlined
}
from
'@ant-design/icon
s'
;
import
{
handleMapMaxZoom
}
from
'@/utils/util
s'
;
const
{
Item
}
=
Form
;
const
{
Item
}
=
Form
;
const
{
Option
}
=
Select
;
const
{
Option
}
=
Select
;
const
AddProjectModal
=
props
=>
{
const
AddProjectModal
=
props
=>
{
const
{
callBackSubmit
=
()
=>
{},
type
,
formObj
,
visible
,
serviceList
,
cardData
,
all
}
=
props
;
const
{
callBackSubmit
=
()
=>
{},
type
,
formObj
,
visible
,
serviceList
,
cardData
,
all
,
allBaseMap
}
=
props
;
const
[
loading
,
setLoading
]
=
useState
(
false
);
const
[
loading
,
setLoading
]
=
useState
(
false
);
const
[
baseMap
,
setBaseMap
]
=
useState
([]);
const
[
baseMap
,
setBaseMap
]
=
useState
([]);
const
[
baseMapZoomRange
,
setBaseMapZoomRange
]
=
useState
({
max
:
20
,
min
:
1
})
const
[
pipeArr
,
setPipeArr
]
=
useState
([]);
const
[
pipeArr
,
setPipeArr
]
=
useState
([]);
const
[
arr
,
setArr
]
=
useState
([]);
const
[
arr
,
setArr
]
=
useState
([]);
...
@@ -26,35 +30,7 @@ const AddProjectModal = props => {
...
@@ -26,35 +30,7 @@ const AddProjectModal = props => {
if
(
validate
)
{
if
(
validate
)
{
setLoading
(
true
);
setLoading
(
true
);
let
obj
=
form
.
getFieldsValue
();
let
obj
=
form
.
getFieldsValue
();
if
(
type
===
'add'
)
{
if
(
type
===
'add'
)
{
// let aa = cardData.find(i => i.schemename == formObj.schemename);
// aa.baseMap.push(obj.serverName);
// aa.baseMapDetail.push({ servicename: obj.serverName, zoom: obj.zoom });
// let query = {
// schemename: formObj.schemename,
// terminalType: 'baseMapscheme',
// isBaseMap: 'false',
// jsonCfg: JSON.stringify({
// baseMap: aa.baseMap,
// baseMapDetail: aa.baseMapDetail,
// }),
// };
// SetServiceConfig(query)
// .then(res => {
// setLoading(false);
// if (res.msg === 'Ok') {
// form.resetFields();
// callBackSubmit();
// prompt('success', '瓦片新增成功');
// } else {
// prompt('fail', '瓦片新增失败');
// }
// })
// .catch(err => {
// setLoading(false);
// });
let
data
=
{
let
data
=
{
schemename
:
formObj
.
schemename
,
schemename
:
formObj
.
schemename
,
servicename
:
obj
.
serverName
,
servicename
:
obj
.
serverName
,
...
@@ -98,19 +74,12 @@ const AddProjectModal = props => {
...
@@ -98,19 +74,12 @@ const AddProjectModal = props => {
};
};
const
handleEdit
=
()
=>
{
const
handleEdit
=
()
=>
{
let
obj
=
form
.
getFieldsValue
();
let
obj
=
form
.
getFieldsValue
();
// let query = {
let
currentMap
=
allBaseMap
.
find
(
i
=>
i
.
servicename
===
obj
.
baseMap
)
// schemename: obj.schemename,
// terminalType: 'baseMapscheme',
// isBaseMap: 'false',
// jsonCfg: JSON.stringify({
// baseMap: [obj.baseMap],
// alpha: 1,
// }),
// };
let
data
=
{
let
data
=
{
schemename
:
obj
.
schemename
,
schemename
:
obj
.
schemename
,
servicename
:
obj
.
baseMap
,
servicename
:
obj
.
baseMap
,
zoom
:
0
,
zoom
:
currentMap
.
baseMinZoom
,
maxZoom
:
currentMap
.
baseMaxZoom
,
};
};
SetBaseMapschemeName
(
data
)
SetBaseMapschemeName
(
data
)
.
then
(
res
=>
{
.
then
(
res
=>
{
...
@@ -126,25 +95,10 @@ const AddProjectModal = props => {
...
@@ -126,25 +95,10 @@ const AddProjectModal = props => {
.
catch
(
err
=>
{
.
catch
(
err
=>
{
setLoading
(
false
);
setLoading
(
false
);
});
});
// SetServiceConfig(query)
// .then(res => {
// setLoading(false);
// if (res.msg === 'Ok') {
// form.resetFields();
// callBackSubmit();
// prompt('success', '方案新增成功');
// } else {
// prompt('fail', '方案新增失败');
// }
// })
// .catch(err => {
// setLoading(false);
// });
};
};
const
onFinish
=
value
=>
{};
const
onFinish
=
value
=>
{};
useEffect
(()
=>
{
useEffect
(()
=>
{
console
.
log
(
type
);
switch
(
type
)
{
switch
(
type
)
{
case
'add'
:
case
'add'
:
addTile
();
addTile
();
...
@@ -164,10 +118,16 @@ const AddProjectModal = props => {
...
@@ -164,10 +118,16 @@ const AddProjectModal = props => {
aa
.
baseMapDetail
.
map
(
i
=>
{
aa
.
baseMapDetail
.
map
(
i
=>
{
arrNew
.
push
(
i
.
zoom
);
arrNew
.
push
(
i
.
zoom
);
});
});
console
.
log
(
arrNew
);
setArr
(
arrNew
);
setArr
(
arrNew
);
let
_baseMapMaxZoom
=
handleMapMaxZoom
(
all
[
0
].
servicename
)
setBaseMapZoomRange
({
max
:
_baseMapMaxZoom
<
all
[
0
].
baseMaxZoom
?
_baseMapMaxZoom
:
all
[
0
].
baseMaxZoom
,
min
:
all
[
0
].
baseMinZoom
<
1
?
1
:
all
[
0
].
baseMinZoom
})
form
.
setFieldsValue
({
form
.
setFieldsValue
({
serverName
:
serviceList
[
0
],
serverName
:
all
[
0
].
servicename
,
zoom
:
1
,
maxzoom
:
_baseMapMaxZoom
,
});
});
};
};
// 获取管网及默认底图
// 获取管网及默认底图
...
@@ -206,18 +166,18 @@ const AddProjectModal = props => {
...
@@ -206,18 +166,18 @@ const AddProjectModal = props => {
};
};
// 选择服务名
// 选择服务名
const
handleChange
=
()
=>
{};
const
handleChange
=
(
name
)
=>
{
// 选择管网
const
currentMapInfo
=
all
.
find
(
i
=>
i
.
servicename
===
name
)
const
handleService
=
value
=>
{
form
.
setFieldsValue
({
form
.
setFieldsValue
({
zoom
:
currentMapInfo
.
baseMinZoom
,
label
:
value
,
maxzoom
:
currentMapInfo
.
baseMaxZoom
// url: `http://{IP}/PandaGIS/MapServer/Export?mapServerName=${value}`,
})
url
:
`http://{IP}/CityInterface/rest/services/MapServer.svc/
${
value
}
`
,
});
};
};
// 选择底图
// 选择底图
const
handleBaseMap
=
()
=>
{};
const
handleBaseMap
=
()
=>
{};
return
(
return
(
<
Modal
<
Modal
title=
{
`${type === 'add' ? '添加基础底图' : '添加分级底图'}`
}
title=
{
`${type === 'add' ? '添加基础底图' : '添加分级底图'}`
}
...
@@ -242,37 +202,12 @@ const AddProjectModal = props => {
...
@@ -242,37 +202,12 @@ const AddProjectModal = props => {
<
Row
>
<
Row
>
<
Col
span=
{
7
}
>
<
Col
span=
{
7
}
>
<
Item
<
Item
// label=
{
// <div>
//
{
/* <Tooltip title="同一分级底图中的不同基础底图级别不能相同">
// <InfoCircleOutlined
// style={{
// color: 'rgb(24, 144, 255)',
// marginLeft: '0px',
// marginRight: '5px',
// }}
// />
// </Tooltip> */
}
// <span>最小级别</span>
// </div>
//
}
name=
"zoom"
name=
"zoom"
rules=
{
[
rules=
{
[
{
required
:
true
,
message
:
'请输入最小级别'
},
{
required
:
true
,
message
:
'请输入最小级别'
},
//
{
// validator: (rule, value) =>
{
// const obj = form.getFieldsValue().zoom;
// console.log(obj);
// if (arr.indexOf(obj) != -1)
{
// console.log(111);
// return Promise.reject('已存在该级别的基础底图');
//
}
// return Promise.resolve();
//
},
//
},
]
}
]
}
>
>
<
InputNumber
min=
{
0
}
max=
{
99
}
/>
<
InputNumber
min=
{
baseMap
.
min
}
max=
{
baseMapZoomRange
.
max
}
/>
</
Item
>
</
Item
>
</
Col
>
</
Col
>
<
Col
span=
{
2
}
>
<
Col
span=
{
2
}
>
...
@@ -295,7 +230,7 @@ const AddProjectModal = props => {
...
@@ -295,7 +230,7 @@ const AddProjectModal = props => {
},
},
]
}
]
}
>
>
<
InputNumber
min=
{
0
}
max=
{
99
}
/>
<
InputNumber
min=
{
baseMap
.
min
}
max=
{
baseMapZoomRange
.
max
}
/>
</
Item
>
</
Item
>
</
Col
>
</
Col
>
</
Row
>
</
Row
>
...
@@ -306,10 +241,10 @@ const AddProjectModal = props => {
...
@@ -306,10 +241,10 @@ const AddProjectModal = props => {
rules=
{
[{
required
:
true
,
message
:
'请输入基础底图'
}]
}
rules=
{
[{
required
:
true
,
message
:
'请输入基础底图'
}]
}
>
>
<
Select
onChange=
{
handleChange
}
>
<
Select
onChange=
{
handleChange
}
>
{
serviceList
.
length
{
all
.
length
?
serviceList
.
map
((
item
,
index
)
=>
(
?
all
.
map
((
item
,
index
)
=>
(
<
Option
key=
{
index
}
value=
{
item
}
>
<
Option
key=
{
index
}
value=
{
item
.
servicename
}
>
{
item
}
{
item
.
servicename
}
</
Option
>
</
Option
>
))
))
:
''
}
:
''
}
...
...
src/pages/platformCenter/gis/schemeConfig/TileConfig/BaseMap.jsx
View file @
5448ff80
...
@@ -19,22 +19,26 @@ import { InfoCircleOutlined } from '@ant-design/icons';
...
@@ -19,22 +19,26 @@ import { InfoCircleOutlined } from '@ant-design/icons';
const
{
Item
}
=
Form
;
const
{
Item
}
=
Form
;
const
{
Option
}
=
Select
;
const
{
Option
}
=
Select
;
const
BaseMap
=
props
=>
{
const
BaseMap
=
props
=>
{
const
{
visible
,
onCancel
,
keepItem
,
keepProject
,
callBackSubmit
=
()
=>
{}
}
=
props
;
const
{
visible
,
onCancel
,
keepItem
,
keepProject
,
callBackSubmit
=
()
=>
{}
,
allBaseMap
}
=
props
;
const
[
arr
,
setArr
]
=
useState
([]);
const
[
arr
,
setArr
]
=
useState
([]);
const
[
form
]
=
Form
.
useForm
();
const
[
form
]
=
Form
.
useForm
();
const
[
baseMapZoomRange
,
setBaseMapZoomRange
]
=
useState
({
max
:
20
,
min
:
1
})
// 删除瓦片
// 删除瓦片
useEffect
(()
=>
{
useEffect
(()
=>
{
console
.
log
(
keepItem
);
console
.
log
(
keepProject
);
if
(
visible
)
{
if
(
visible
)
{
let
list
=
[];
let
list
=
[];
keepItem
.
baseMapDetail
.
map
(
i
=>
{
keepItem
.
baseMapDetail
.
map
(
i
=>
{
list
.
push
(
i
.
zoom
);
list
.
push
(
i
.
zoom
);
});
});
setArr
(
list
);
setArr
(
list
);
let
aa
=
keepItem
.
baseMapDetail
.
find
(
i
=>
i
.
servicename
==
keepProject
);
let
findMap
=
keepItem
.
baseMapDetail
.
find
(
i
=>
i
.
servicename
==
keepProject
);
form
.
setFieldsValue
({
zoom
:
aa
.
zoom
,
maxzoom
:
aa
.
maxzoom
});
let
currentBaseMap
=
allBaseMap
.
find
(
i
=>
i
.
servicename
==
keepProject
)
setBaseMapZoomRange
({
max
:
currentBaseMap
.
baseMaxZoom
,
min
:
currentBaseMap
.
baseMinZoom
})
form
.
setFieldsValue
({
zoom
:
findMap
.
zoom
,
maxzoom
:
findMap
.
maxzoom
});
}
else
{
}
else
{
form
.
resetFields
();
form
.
resetFields
();
}
}
...
@@ -44,29 +48,6 @@ const BaseMap = props => {
...
@@ -44,29 +48,6 @@ const BaseMap = props => {
form
.
validateFields
().
then
(
validate
=>
{
form
.
validateFields
().
then
(
validate
=>
{
if
(
validate
)
{
if
(
validate
)
{
let
obj
=
form
.
getFieldsValue
();
let
obj
=
form
.
getFieldsValue
();
// let aa = keepItem.baseMapDetail.find(i => i.servicename == keepProject);
// console.log(aa);
// aa.zoom = obj.zoom;
// let query = {
// schemename: keepItem.schemename,
// terminalType: 'baseMapscheme',
// isBaseMap: 'false',
// jsonCfg: JSON.stringify({
// baseMap: keepItem.baseMap,
// baseMapDetail: keepItem.baseMapDetail,
// }),
// };
// SetServiceConfig(query)
// .then(res => {
// if (res.msg === 'Ok') {
// form.resetFields();
// callBackSubmit();
// prompt('success', '编辑成功');
// } else {
// prompt('fail', '编辑失败');
// }
// })
// .catch(err => {});
let
data
=
{
let
data
=
{
schemename
:
keepItem
.
schemename
,
schemename
:
keepItem
.
schemename
,
servicename
:
keepProject
,
servicename
:
keepProject
,
...
@@ -137,38 +118,12 @@ const BaseMap = props => {
...
@@ -137,38 +118,12 @@ const BaseMap = props => {
<
Row
>
<
Row
>
<
Col
span=
{
8
}
>
<
Col
span=
{
8
}
>
<
Item
<
Item
// label={
// <div>
// <Tooltip title="同一分级底图中的不同基础底图级别不能相同">
// <InfoCircleOutlined
// style={{
// color: 'rgb(24, 144, 255)',
// marginLeft: '0px',
// marginRight: '5px',
// }}
// />
// </Tooltip>
// <span>最小级别</span>
// </div>
// }
name=
"zoom"
name=
"zoom"
rules=
{
[
rules=
{
[
{
required
:
true
,
message
:
'请输入级别'
},
{
required
:
true
,
message
:
'请输入级别'
},
//
{
// validator: (rule, value) =>
{
// const obj = form.getFieldsValue().zoom;
// console.log(obj);
// if (arr.indexOf(obj) != -1)
{
// console.log(111);
// return Promise.reject('已存在该级别的基础底图');
//
}
// return Promise.resolve();
//
},
//
},
]
}
]
}
>
>
<
InputNumber
min=
{
0
}
/>
<
InputNumber
min=
{
baseMapZoomRange
.
min
}
max=
{
baseMapZoomRange
.
max
}
/>
</
Item
>
</
Item
>
</
Col
>
</
Col
>
<
Col
span=
{
3
}
>
<
Col
span=
{
3
}
>
...
@@ -190,7 +145,7 @@ const BaseMap = props => {
...
@@ -190,7 +145,7 @@ const BaseMap = props => {
},
},
]
}
]
}
>
>
<
InputNumber
min=
{
0
}
max=
{
99
}
/>
<
InputNumber
min=
{
baseMapZoomRange
.
min
}
max=
{
baseMapZoomRange
.
max
}
/>
</
Item
>
</
Item
>
</
Col
>
</
Col
>
</
Row
>
</
Row
>
...
...
src/pages/platformCenter/gis/schemeConfig/TileConfig/NewEditModal.jsx
View file @
5448ff80
This diff is collapsed.
Click to expand it.
src/pages/platformCenter/gis/schemeConfig/TileConfig/TileConfig.jsx
View file @
5448ff80
...
@@ -61,13 +61,6 @@ const TileData = props => {
...
@@ -61,13 +61,6 @@ const TileData = props => {
key
:
'type'
,
key
:
'type'
,
align
:
'center'
,
align
:
'center'
,
},
},
// {
// title: '透明度',
// dataIndex: 'alpha',
// key: 'alpha',
// align: 'center',
// render: (text, record) => <span>{`${(text * 100).toFixed()}%`}</span>,
// },
{
{
title
:
'编辑'
,
title
:
'编辑'
,
align
:
'center'
,
align
:
'center'
,
...
@@ -102,13 +95,13 @@ const TileData = props => {
...
@@ -102,13 +95,13 @@ const TileData = props => {
];
];
useEffect
(()
=>
{
useEffect
(()
=>
{
if
(
!
flagAdd
)
return
setTreeLoading
(
true
);
setTreeLoading
(
true
);
GetMaplayerByTerminalType
({
GetMaplayerByTerminalType
({
terminalType
:
'baseMapscheme'
,
terminalType
:
'baseMapscheme'
,
isBaseMap
:
false
,
isBaseMap
:
false
,
})
})
.
then
(
res
=>
{
.
then
(
res
=>
{
console
.
log
(
'res'
,
res
);
if
(
res
.
code
==
'0'
)
{
if
(
res
.
code
==
'0'
)
{
setTreeLoading
(
false
);
setTreeLoading
(
false
);
setCardData
(
res
.
data
.
optionalLayer
.
layers
);
setCardData
(
res
.
data
.
optionalLayer
.
layers
);
...
@@ -162,8 +155,6 @@ const TileData = props => {
...
@@ -162,8 +155,6 @@ const TileData = props => {
setFlagAdd
(
flagAdd
+
1
);
setFlagAdd
(
flagAdd
+
1
);
setTreeLoading
(
false
);
setTreeLoading
(
false
);
if
(
res
.
code
==
'0'
)
{
if
(
res
.
code
==
'0'
)
{
// form.resetFields();
// callBackSubmit();
notification
.
success
({
notification
.
success
({
message
:
'提示'
,
message
:
'提示'
,
duration
:
3
,
duration
:
3
,
...
@@ -183,17 +174,8 @@ const TileData = props => {
...
@@ -183,17 +174,8 @@ const TileData = props => {
});
});
};
};
const
handleAdd
=
()
=>
{
const
handleAdd
=
()
=>
{
// console.log(baseMap);
// if (baseMap.length) {
setType
(
'add'
);
setType
(
'add'
);
setAddVisible
(
true
);
setAddVisible
(
true
);
// } else {
// notification.warning({
// message: '提示',
// duration: 3,
// description: '地图类型已都存在,可编辑修改',
// });
// }
};
};
useEffect
(()
=>
{
useEffect
(()
=>
{
renderTile
();
renderTile
();
...
@@ -251,6 +233,8 @@ const TileData = props => {
...
@@ -251,6 +233,8 @@ const TileData = props => {
baseMapData
.
splice
(
index
,
1
);
baseMapData
.
splice
(
index
,
1
);
}
}
});
});
let
_cardLayers
=
res
.
data
.
specific
.
baseMapscheme
.
optionalLayer
.
layers
setCardData
(
_cardLayers
)
setName
(
data
);
setName
(
data
);
setBaseMap
(
baseMapData
);
setBaseMap
(
baseMapData
);
}
else
{
}
else
{
...
@@ -287,6 +271,7 @@ const TileData = props => {
...
@@ -287,6 +271,7 @@ const TileData = props => {
const
onDeletebaseMap
=
value
=>
{
const
onDeletebaseMap
=
value
=>
{
setFlagAdd
(
flagAdd
+
1
);
setFlagAdd
(
flagAdd
+
1
);
};
};
return
(
return
(
<
div
className=
{
styles
.
tileContainer
}
>
<
div
className=
{
styles
.
tileContainer
}
>
<
div
>
<
div
>
...
@@ -329,13 +314,6 @@ const TileData = props => {
...
@@ -329,13 +314,6 @@ const TileData = props => {
</
div
>
{
' '
}
</
div
>
{
' '
}
</
Divider
>
</
Divider
>
<
div
className=
{
styles
.
cardsList1
}
>
<
div
className=
{
styles
.
cardsList1
}
>
{
/* <AutoResponsive
itemMargin="10"
containerWidth="100%"
itemClassName="item"
gridWidth="100"
transitionDuration=".5"
> */
}
{
cardData
&&
cardData
.
length
?
(
{
cardData
&&
cardData
.
length
?
(
cardData
.
map
((
item
,
index
)
=>
(
cardData
.
map
((
item
,
index
)
=>
(
<
div
<
div
...
@@ -345,13 +323,12 @@ const TileData = props => {
...
@@ -345,13 +323,12 @@ const TileData = props => {
offset=
{
2
}
offset=
{
2
}
style=
{
{
marginBottom
:
'1rem'
}
}
style=
{
{
marginBottom
:
'1rem'
}
}
>
>
<
Cards
item=
{
item
}
deletebaseMaps=
{
onDeletebaseMap
}
cardData=
{
cardData
}
/>
<
Cards
item=
{
item
}
deletebaseMaps=
{
onDeletebaseMap
}
cardData=
{
cardData
}
allBaseMap=
{
tileData
}
/>
</
div
>
</
div
>
))
))
)
:
(
)
:
(
<
Empty
image=
{
Empty
.
PRESENTED_IMAGE_SIMPLE
}
style=
{
{
margin
:
'auto'
}
}
/>
<
Empty
image=
{
Empty
.
PRESENTED_IMAGE_SIMPLE
}
style=
{
{
margin
:
'auto'
}
}
/>
)
}
)
}
{
/* </AutoResponsive> */
}
</
div
>
</
div
>
<
AddModal
<
AddModal
...
@@ -388,6 +365,7 @@ const TileData = props => {
...
@@ -388,6 +365,7 @@ const TileData = props => {
callBackSubmit=
{
onSubmitProject
}
callBackSubmit=
{
onSubmitProject
}
type=
{
type1
}
type=
{
type1
}
formObj=
{
formObj
}
formObj=
{
formObj
}
allBaseMap=
{
tileData
}
/>
/>
</
Spin
>
</
Spin
>
</
div
>
</
div
>
...
...
src/pages/platformCenter/gis/schemeConfig/TileConfig/card.jsx
View file @
5448ff80
...
@@ -16,7 +16,7 @@ import { createGuid } from '@/utils/transformUtil';
...
@@ -16,7 +16,7 @@ import { createGuid } from '@/utils/transformUtil';
import
BaseMap
from
'./BaseMap'
;
import
BaseMap
from
'./BaseMap'
;
import
styles
from
'../SchemeConfig.less'
;
import
styles
from
'../SchemeConfig.less'
;
const
CardData
=
props
=>
{
const
CardData
=
props
=>
{
const
{
deletebaseMaps
=
()
=>
{},
item
,
cardData
}
=
props
;
const
{
deletebaseMaps
=
()
=>
{},
item
,
cardData
,
allBaseMap
}
=
props
;
const
[
visible
,
setVisible
]
=
useState
(
false
);
// 弹窗
const
[
visible
,
setVisible
]
=
useState
(
false
);
// 弹窗
const
[
flag
,
setFlag
]
=
useState
(
0
);
// 状态更新
const
[
flag
,
setFlag
]
=
useState
(
0
);
// 状态更新
const
[
type
,
setType
]
=
useState
(
''
);
// 弹窗类型
const
[
type
,
setType
]
=
useState
(
''
);
// 弹窗类型
...
@@ -29,9 +29,7 @@ const CardData = props => {
...
@@ -29,9 +29,7 @@ const CardData = props => {
const
[
keepProject
,
setKeepProject
]
=
useState
(
''
);
const
[
keepProject
,
setKeepProject
]
=
useState
(
''
);
// 删除瓦片
// 删除瓦片
useEffect
(()
=>
{
console
.
log
(
props
.
item
);
},
[]);
const
deletebaseMap
=
(
item
,
baseMapItem
)
=>
{
const
deletebaseMap
=
(
item
,
baseMapItem
)
=>
{
DeletMapServicename
({
schemename
:
item
.
schemename
,
servicename
:
baseMapItem
}).
then
(
res
=>
{
DeletMapServicename
({
schemename
:
item
.
schemename
,
servicename
:
baseMapItem
}).
then
(
res
=>
{
if
(
res
.
code
==
'0'
)
{
if
(
res
.
code
==
'0'
)
{
...
@@ -86,9 +84,6 @@ const CardData = props => {
...
@@ -86,9 +84,6 @@ const CardData = props => {
GettMaplayer
({
terminalType
:
'base'
,
isBaseMap
:
true
}).
then
(
res
=>
{
GettMaplayer
({
terminalType
:
'base'
,
isBaseMap
:
true
}).
then
(
res
=>
{
if
(
res
.
code
==
'0'
)
{
if
(
res
.
code
==
'0'
)
{
res
.
data
.
general
.
baseMap
.
layers
.
map
(
item
=>
{
res
.
data
.
general
.
baseMap
.
layers
.
map
(
item
=>
{
console
.
log
(
value
);
console
.
log
(
value
.
baseMap
);
console
.
log
(
item
.
servicename
);
if
(
value
.
baseMap
.
indexOf
(
item
.
servicename
)
==
-
1
)
{
if
(
value
.
baseMap
.
indexOf
(
item
.
servicename
)
==
-
1
)
{
serverList
.
push
(
item
.
servicename
);
serverList
.
push
(
item
.
servicename
);
}
}
...
@@ -183,18 +178,6 @@ const CardData = props => {
...
@@ -183,18 +178,6 @@ const CardData = props => {
}
}
style=
{
{
width
:
360
}
}
style=
{
{
width
:
360
}
}
>
>
{
/* <p>
<span className={styles.schemeName}>管网</span> {props.item.servicename}
</p> */
}
{
/* <div>
<span className={styles.schemeName}>范围</span>
<Button
style={{ width: '12rem', marginBottom: '0.5rem' }}
onClick={() => setMapScopeVisible(true)}
>
选择范围
</Button>
</div> */
}
<
div
className=
{
styles
.
schemeItem
}
>
<
div
className=
{
styles
.
schemeItem
}
>
<
span
className=
{
styles
.
schemeName
}
>
基础底图
</
span
>
<
span
className=
{
styles
.
schemeName
}
>
基础底图
</
span
>
<
Button
className=
{
styles
.
schemeBtn1
}
onClick=
{
()
=>
addTile
(
props
.
item
)
}
>
<
Button
className=
{
styles
.
schemeBtn1
}
onClick=
{
()
=>
addTile
(
props
.
item
)
}
>
...
@@ -208,11 +191,6 @@ const CardData = props => {
...
@@ -208,11 +191,6 @@ const CardData = props => {
?
props
.
item
.
baseMapDetail
.
map
((
baseMapItem
,
baseindex
)
=>
(
?
props
.
item
.
baseMapDetail
.
map
((
baseMapItem
,
baseindex
)
=>
(
<
div
className=
{
styles
.
mapItem1
}
key=
{
baseindex
}
>
<
div
className=
{
styles
.
mapItem1
}
key=
{
baseindex
}
>
<
div
<
div
// onClick=
{()
=
>
pick(props.item.schemename, baseindex)}
// className=
{
classnames
({
// [styles.defaultTile]: true,
// [styles.activeTile]: baseindex == props.item.defaultBaseMap,
//
})
}
className=
{
styles
.
defaultTile1
}
className=
{
styles
.
defaultTile1
}
>
>
{
baseMapItem
.
maxzoom
===
0
{
baseMapItem
.
maxzoom
===
0
...
@@ -272,6 +250,7 @@ const CardData = props => {
...
@@ -272,6 +250,7 @@ const CardData = props => {
callBackSubmit=
{
onSubmit
}
callBackSubmit=
{
onSubmit
}
keepItem=
{
keepItem
}
keepItem=
{
keepItem
}
keepProject=
{
keepProject
}
keepProject=
{
keepProject
}
allBaseMap=
{
allBaseMap
}
/>
/>
</
div
>
</
div
>
);
);
...
...
src/pages/platformCenter/gis/schemeConfig/projectMessage/components/card.jsx
View file @
5448ff80
...
@@ -37,26 +37,13 @@ const CardData = props => {
...
@@ -37,26 +37,13 @@ const CardData = props => {
// 删除瓦片
// 删除瓦片
useEffect
(()
=>
{
useEffect
(()
=>
{
// GettMaplayer({ terminalType: 'base', isBaseMap: true }).then(res => {
// if (res.msg === 'Ok') {
// let arr = [];
// res.data.general.baseMap.layers.map(i => {
// arr.push(i.servicename);
// });
// }
// });
setCardData
(
keepData
);
setCardData
(
keepData
);
console
.
log
(
props
.
item
);
console
.
log
(
props
.
item
);
},
[
cardFlag
]);
},
[
cardFlag
]);
const
deletebaseMap
=
(
item
,
baseMapItem
)
=>
{
const
deletebaseMap
=
(
item
,
baseMapItem
)
=>
{
console
.
log
(
item
);
console
.
log
(
props
.
item
.
defaultOldBaseMap
);
console
.
log
(
baseMapItem
);
let
j
=
props
.
item
.
defaultOldBaseMap
.
indexOf
(
baseMapItem
);
let
j
=
props
.
item
.
defaultOldBaseMap
.
indexOf
(
baseMapItem
);
let
i
=
props
.
item
.
defaultBaseMap
;
let
i
=
props
.
item
.
defaultBaseMap
;
console
.
log
(
j
);
console
.
log
(
i
);
if
(
item
.
baseMap
.
length
>
1
)
{
if
(
item
.
baseMap
.
length
>
1
)
{
unbindSchemeBaseMap
({
schemename
:
item
.
schemename
,
basemapName
:
baseMapItem
}).
then
(
res
=>
{
unbindSchemeBaseMap
({
schemename
:
item
.
schemename
,
basemapName
:
baseMapItem
}).
then
(
res
=>
{
if
(
res
.
code
==
'0'
)
{
if
(
res
.
code
==
'0'
)
{
...
...
src/utils/utils.js
View file @
5448ff80
import
{
get
}
from
'@/services/index'
;
import
{
get
}
from
'@/services/index'
;
import
{
mapConfig
}
from
'@wisdom-map/gis-utils'
;
export
function
compress
(
export
function
compress
(
base64
,
// 源图片
base64
,
// 源图片
rate
,
// 缩放比例
rate
,
// 缩放比例
...
@@ -46,3 +47,39 @@ export function checkInternalNetwork() {
...
@@ -46,3 +47,39 @@ export function checkInternalNetwork() {
}
}
})
})
}
}
export
function
handleMapMaxZoom
(
layerType
)
{
let
configName
=
''
;
switch
(
layerType
)
{
case
'amap-v'
:
case
'amap-i'
:
case
'amap-ia'
:
case
'amap-v2'
:
case
'amap-i2'
:
case
'googlemap-v'
:
case
'googlemap-i'
:
case
'amap-ia2'
:
case
'amap-i-ia'
:
case
'amap-i2-ia2'
:
case
'amap-v-va'
:
configName
=
'gaoDe'
;
break
;
case
'tianditu-v'
:
case
'tianditu-va'
:
case
'tianditu-i'
:
case
'tianditu-ia'
:
case
'tianditu-t'
:
case
'tianditu-ta'
:
case
'tianditu-v-va'
:
case
'tianditu-i-ia'
:
configName
=
'tianDiTu'
;
break
;
case
'mapbox-i-ia'
:
configName
=
'mapBox'
;
break
;
default
:
configName
=
'default'
;
break
;
}
return
mapConfig
.
baseMapMaxLevel
[
configName
];
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment