Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
W
whp-xl
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
lizhichao
whp-xl
Commits
a298ff55
Commit
a298ff55
authored
Jun 23, 2021
by
yaqizhang
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
ssh://111.61.77.35:15/lizhichao/whp-xl
into master
parents
f3d5a835
a4fb5136
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
551 additions
and
469 deletions
+551
-469
package-lock.json
dcit-hcsystem-hcsystem-master/package-lock.json
+5
-0
package.json
dcit-hcsystem-hcsystem-master/package.json
+1
-0
mapUtil.js
dcit-hcsystem-hcsystem-master/src/utils/mapUtil.js
+324
-326
methods.ts
dcit-hcsystem-hcsystem-master/src/utils/methods.ts
+1
-0
tongji.vue
...hcsystem-hcsystem-master/src/views/Enterprises/tongji.vue
+2
-2
PlansMg.vue
dcit-hcsystem-hcsystem-master/src/views/Plans/PlansMg.vue
+6
-27
PlansMgCheck.vue
...hcsystem-hcsystem-master/src/views/Plans/PlansMgCheck.vue
+24
-112
PlansMgEdit.vue
...-hcsystem-hcsystem-master/src/views/Plans/PlansMgEdit.vue
+1
-1
PlansMgGovernment.vue
...tem-hcsystem-master/src/views/Plans/PlansMgGovernment.vue
+184
-0
SafetyDeviceMgEdit.vue
...stem-master/src/views/SafetyDevice/SafetyDeviceMgEdit.vue
+3
-1
No files found.
dcit-hcsystem-hcsystem-master/package-lock.json
View file @
a298ff55
...
...
@@ -12218,6 +12218,11 @@
"vue-demi"
:
"^0.7.4"
}
},
"vue-ellipse-progress"
:
{
"version"
:
"1.3.0"
,
"resolved"
:
"https://registry.nlark.com/vue-ellipse-progress/download/vue-ellipse-progress-1.3.0.tgz"
,
"integrity"
:
"sha1-2UJs6s9XUVC+IjhD2BZQp8s5Iis="
},
"vue-hot-reload-api"
:
{
"version"
:
"2.3.4"
,
"resolved"
:
"https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz"
,
...
...
dcit-hcsystem-hcsystem-master/package.json
View file @
a298ff55
...
...
@@ -18,6 +18,7 @@
"vue-amap"
:
"^0.5.10"
,
"vue-class-component"
:
"^7.2.2"
,
"vue-echarts"
:
"^6.0.0-rc.5"
,
"vue-ellipse-progress"
:
"^1.3.0"
,
"vue-property-decorator"
:
"^8.3.0"
,
"vue-router"
:
"^3.1.5"
,
"vuex"
:
"^3.1.2"
,
...
...
dcit-hcsystem-hcsystem-master/src/utils/mapUtil.js
View file @
a298ff55
import
"ol/ol.css"
;
import
{
Map
,
View
Map
,
View
}
from
"ol"
;
import
{
OverviewMap
,
defaults
OverviewMap
,
defaults
}
from
"ol/control"
;
import
TileLayer
from
"ol/layer/Tile"
;
import
XYZ
from
"ol/source/XYZ"
;
...
...
@@ -29,299 +29,321 @@ import { toSize } from 'ol/size';
import
axios
from
"axios"
;
export
default
class
Mutil
{
constructor
(
divId
,
option
=
{})
{
this
.
divId
=
divId
;
this
.
option
=
option
;
this
.
MAP
=
this
.
initMap
()
}
//初始化地图
initMap
()
{
/* 天地图 */
let
MAP
,
tianSlA
=
new
TileLayer
({
className
:
"mapTypeC"
,
source
:
new
XYZ
({
// url:
// "http://t{0-7}.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=c8df739f047ce17cfe41b63cbeae6997",
//url: "https://t{0-7}.tianditu.gov.cn/DataServer?T=img_w&x={x}&y={y}&l={z}&tk=c8df739f047ce17cfe41b63cbeae6997",
constructor
(
divId
,
option
=
{})
{
this
.
divId
=
divId
;
this
.
option
=
option
;
this
.
MAP
=
this
.
initMap
()
}
//初始化地图
initMap
()
{
/* 天地图 */
let
MAP
,
tianSlA
=
new
TileLayer
({
className
:
"mapTypeC"
,
source
:
new
XYZ
({
// url:
// "http://t{0-7}.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=c8df739f047ce17cfe41b63cbeae6997",
//url: "https://t{0-7}.tianditu.gov.cn/DataServer?T=img_w&x={x}&y={y}&l={z}&tk=c8df739f047ce17cfe41b63cbeae6997",
url
:
"http://wprd0{1-4}.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scl=1&style=6"
}),
visible
:
true
,
name
:
"天地图矢量底图影像"
,
});
let
tianSlB
=
new
TileLayer
({
className
:
"mapTypeC"
,
source
:
new
XYZ
({
//
url: "https://t{0-7}.tianditu.gov.cn/DataServer?T=cva_w&x={x}&y={y}&l={z}&tk=c8df739f047ce17cfe41b63cbeae6997",
}),
visible
:
true
,
name
:
"天地图矢量底图影像"
,
});
let
tianSlB
=
new
TileLayer
({
className
:
"mapTypeC"
,
source
:
new
XYZ
({
//
url: "https://t{0-7}.tianditu.gov.cn/DataServer?T=cva_w&x={x}&y={y}&l={z}&tk=c8df739f047ce17cfe41b63cbeae6997",
url
:
" http://wprd0{1-4}.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scl=1&style=7"
,
}),
visible
:
false
,
name
:
"天地图标注(不含路网)"
,
});
let
tianSlC
=
new
TileLayer
({
className
:
"mapTypeC"
,
source
:
new
XYZ
({
//
url: "https://t{0-7}.tianditu.gov.cn/DataServer?T=cia_w&x={x}&y={y}&l={z}&tk=c8df739f047ce17cfe41b63cbeae6997",
}),
visible
:
false
,
name
:
"天地图标注(不含路网)"
,
});
let
tianSlC
=
new
TileLayer
({
className
:
"mapTypeC"
,
source
:
new
XYZ
({
//
url: "https://t{0-7}.tianditu.gov.cn/DataServer?T=cia_w&x={x}&y={y}&l={z}&tk=c8df739f047ce17cfe41b63cbeae6997",
url
:
"http://webst0{1-4}.is.autonavi.com/appmaptile?style=8&x={x}&y={y}&z={z}"
,
}),
visible
:
true
,
name
:
"天地图标注"
,
});
let
that
=
this
;
const
ShiJiaZhuang
=
fromLonLat
([
114.514793
,
38.042225
]);
const
BeiJing
=
fromLonLat
([
116.322056
,
39.89491
]);
const
VIEW
=
new
View
({
center
:
ShiJiaZhuang
,
zoom
:
12
,
maxZoom
:
18
,
});
/*
鹰眼
*/
// const overiewControl = new OverviewMap({
// className: "ol-overviewmap ol-custom-overviewmap",
// layers: [tianSlC, tianSlB, tianSlA],
// collapseLabel: "\u00BB",
// label: "\u00AB",
// collapsed: false,
// });
MAP
=
new
Map
({
projection
:
"EPSG:4326"
,
target
:
that
.
divId
,
layers
:
[],
view
:
VIEW
,
});
MAP
.
setLayerGroup
(
new
LayerGroup
({
id
:
'mapGroup'
,
layers
:
[
tianSlA
,
tianSlB
,
tianSlC
],
})
);
MAP
.
on
(
"pointermove"
,
function
(
evt
)
{
MAP
.
getTargetElement
().
style
.
cursor
=
that
.
MAP
.
hasFeatureAtPixel
(
evt
.
pixel
)
?
"pointer"
:
""
;
});
return
MAP
}
//设置地图view
setViewF
(
option
)
{
let
that
=
this
,
view
=
that
.
MAP
.
getView
();
if
(
option
.
center
)
view
.
setCenter
(
fromLonLat
(
option
.
center
));
if
(
option
.
zoom
)
view
.
setZoom
(
option
.
zoom
);
}
/*标注到地图
* type为是标注类型 在设备标注中为标注类型- layClassName
* scale, id可以为空
*/
addMarkerToMap
(
type
,
name
,
imgageUrl
,
lnglat
,
scale
,
id
)
{
let
that
=
this
,
feature
=
new
Feature
({
geometry
:
new
Point
(
fromLonLat
(
lnglat
)),
});
let
style
=
new
Style
({
image
:
new
Icon
({
anchor
:
[.
5
,
1
],
src
:
imgageUrl
,
scale
:
scale
?
scale
:
1
,
}),
text
:
new
Text
({
textAlign
:
"center"
,
//位置
textBaseline
:
"bottom"
,
//基准线
offsetY
:
-
44
,
font
:
"normal 14px 微软雅黑"
,
//文字样式
text
:
name
,
//文本内容
placement
:
"point"
,
fill
:
new
Fill
({
color
:
"#efeb54"
,
}),
backgroundFill
:
new
Fill
({
color
:
"#5f636a"
,
}),
padding
:
[
2
,
2
,
2
,
2
],
}),
});
let
iconFeatureArr
=
[];
feature
.
setStyle
(
style
);
if
(
id
)
feature
.
set
(
'did'
,
id
);
iconFeatureArr
.
push
(
feature
);
var
vectorSource
=
new
VectorSource
({
features
:
iconFeatureArr
,
});
var
vectorLayer
=
new
VectorLayer
({
source
:
vectorSource
,
});
vectorLayer
.
set
(
'layClassName'
,
type
)
if
([
"1"
,
"2"
,
"3"
,
"4"
,
"5"
,
"6"
].
indexOf
(
type
)
>
-
1
)
{
vectorLayer
.
set
(
'layClassMark'
,
'Maker'
);
if
(
id
)
vectorLayer
.
set
(
'did'
,
id
);
}
that
.
MAP
.
addLayer
(
vectorLayer
)
}),
visible
:
true
,
name
:
"天地图标注"
,
});
let
that
=
this
;
const
ShiJiaZhuang
=
fromLonLat
([
114.514793
,
38.042225
]);
const
BeiJing
=
fromLonLat
([
116.322056
,
39.89491
]);
const
VIEW
=
new
View
({
center
:
ShiJiaZhuang
,
zoom
:
12
,
maxZoom
:
18
,
});
/*
鹰眼
*/
// const overiewControl = new OverviewMap({
// className: "ol-overviewmap ol-custom-overviewmap",
// layers: [tianSlC, tianSlB, tianSlA],
// collapseLabel: "\u00BB",
// label: "\u00AB",
// collapsed: false,
// });
MAP
=
new
Map
({
projection
:
"EPSG:4326"
,
target
:
that
.
divId
,
layers
:
[],
view
:
VIEW
,
});
MAP
.
setLayerGroup
(
new
LayerGroup
({
id
:
'mapGroup'
,
layers
:
[
tianSlA
,
tianSlB
,
tianSlC
],
})
);
MAP
.
on
(
"pointermove"
,
function
(
evt
)
{
MAP
.
getTargetElement
().
style
.
cursor
=
that
.
MAP
.
hasFeatureAtPixel
(
evt
.
pixel
)
?
"pointer"
:
""
;
});
return
MAP
}
//设置地图view
setViewF
(
option
)
{
let
that
=
this
,
view
=
that
.
MAP
.
getView
();
if
(
option
.
center
)
view
.
setCenter
(
fromLonLat
(
option
.
center
));
if
(
option
.
zoom
)
view
.
setZoom
(
option
.
zoom
);
}
/*标注到地图
* type为是标注类型 在设备标注中为标注类型- layClassName
* scale, id可以为空
*/
addMarkerToMap
(
type
,
name
,
imgageUrl
,
lnglat
,
scale
,
id
)
{
let
that
=
this
,
feature
=
new
Feature
({
geometry
:
new
Point
(
fromLonLat
(
lnglat
)),
});
let
style
=
new
Style
({
image
:
new
Icon
({
anchor
:
[.
5
,
1
],
src
:
imgageUrl
,
scale
:
scale
?
scale
:
1
,
}),
text
:
new
Text
({
textAlign
:
"center"
,
//位置
textBaseline
:
"bottom"
,
//基准线
offsetY
:
-
44
,
font
:
"normal 14px 微软雅黑"
,
//文字样式
text
:
name
,
//文本内容
placement
:
"point"
,
fill
:
new
Fill
({
color
:
"#efeb54"
,
}),
backgroundFill
:
new
Fill
({
color
:
"#5f636a"
,
}),
padding
:
[
2
,
2
,
2
,
2
],
}),
});
let
iconFeatureArr
=
[];
feature
.
setStyle
(
style
);
if
(
id
)
feature
.
set
(
'did'
,
id
);
iconFeatureArr
.
push
(
feature
);
var
vectorSource
=
new
VectorSource
({
features
:
iconFeatureArr
,
});
var
vectorLayer
=
new
VectorLayer
({
source
:
vectorSource
,
});
vectorLayer
.
set
(
'layClassName'
,
type
)
if
([
"1"
,
"2"
,
"3"
,
"4"
,
"5"
,
"6"
].
indexOf
(
type
)
>
-
1
)
{
vectorLayer
.
set
(
'layClassMark'
,
'Maker'
);
if
(
id
)
vectorLayer
.
set
(
'did'
,
id
);
}
that
.
MAP
.
addLayer
(
vectorLayer
)
}
/*
*获取layer根据-layClassName 属性移除
*/
getLayerByClass
(
ClassName
){
let
that
=
this
,
layerarr
=
that
.
MAP
.
getLayers
().
getArray
(),
formerLayer
=
layerarr
.
filter
((
e
)
=>
e
.
get
(
"layClassName"
)
==
ClassName
);
return
formerLayer
}
/*
*移除某类型标注 根据-layClassName 属性移除
*/
removeSearchm
(
type
)
{
let
that
=
this
,
layerarr
=
that
.
MAP
.
getLayers
().
getArray
(),
formerLayer
=
layerarr
.
filter
((
e
)
=>
e
.
get
(
"layClassName"
)
==
type
);
if
(
formerLayer
)
{
formerLayer
.
forEach
((
ele
)
=>
{
that
.
MAP
.
removeLayer
(
ele
);
});
}
}
//隐藏显示某类型标注 type:Boolean 是否显示
visibleMarks
(
type
,
datatype
)
{
let
that
=
this
,
layerarr
=
that
.
MAP
.
getLayers
().
getArray
(),
formerLayer
=
layerarr
.
filter
((
e
)
=>
e
.
get
(
"layClassName"
)
==
datatype
);
if
(
formerLayer
)
{
formerLayer
.
forEach
((
ele
)
=>
{
ele
.
setVisible
(
type
)
});
}
}
//增加标注弹窗
addPopup
(
popConHtml
,
id
,
longitude
,
latitude
)
{
let
that
=
this
;
let
newDiv
=
document
.
createElement
(
'div'
);
newDiv
.
setAttribute
(
'id'
,
`popup
${
id
}
`
);
newDiv
.
setAttribute
(
'class'
,
`popup`
);
newDiv
.
innerHTML
=
`<div class="pop-con"></div>
${
popConHtml
}
<div class="pop-close" id="pop-close
${
id
}
" data-id="
${
id
}
">×</div>`
let
mapdiv
=
document
.
getElementById
(
'mapbox'
);
mapdiv
.
appendChild
(
newDiv
);
let
hei
=
newDiv
.
offsetHeight
,
kuan
=
newDiv
.
offsetWidth
;
let
overlay
=
new
Overlay
({
id
:
id
,
element
:
document
.
getElementById
(
`popup
${
id
}
`
),
autoPan
:
true
,
offset
:
[
-
(
kuan
/
2
+
10
),
-
(
hei
+
50
)],
position
:
fromLonLat
([
longitude
,
latitude
]),
autoPanAnimation
:
{
duration
:
250
,
},
})
that
.
MAP
.
addOverlay
(
overlay
);
document
.
getElementById
(
`pop-close
${
id
}
`
).
onclick
=
function
()
{
overlay
.
setPosition
(
undefined
)
}
}
mapSelectBind
(
callbcak
)
{
//地图绑定选中feature事件
let
se
=
new
Select
({
style
:
null
,
hitTolerance
:
0
,
multi
:
false
,
});
se
.
on
(
"select"
,
function
(
evt
)
{
if
(
evt
.
selected
.
length
>
0
)
{
callbcak
(
evt
)
}
})
this
.
MAP
.
addInteraction
(
se
)
}
/*
*绘制多边形 callbcak-drawend触发事件 mapView:Object
*/
drawPloygon
(
mapView
,
callbcak
)
{
let
that
=
this
;
let
obj
=
{
type
:
'Feature'
,
geometry
:
{
type
:
'MultiPolygon'
,
coordinates
:
mapView
?
mapView
.
polygoncoorArr
:
null
}
}
let
source
=
mapView
?
new
VectorSource
({
wrapX
:
false
,
features
:
new
GeoJSON
().
readFeatures
(
obj
)
})
:
new
VectorSource
({
wrapX
:
false
});
let
vector
=
new
VectorLayer
({
source
:
source
,
style
:
new
Style
({
fill
:
new
Fill
({
color
:
'rgba(212, 220, 29, 0.1)'
}),
stroke
:
new
Stroke
({
color
:
'#ec0d0d'
,
width
:
2
})
})
});
vector
.
set
(
'layClassName'
,
'boundary'
)
//已有图形填充到地图
if
(
mapView
)
{
let
view
=
that
.
MAP
.
getView
();
view
.
setCenter
(
mapView
.
center
);
view
.
setZoom
(
mapView
.
zoom
);
that
.
MAP
.
addLayer
(
vector
)
return
}
//绘制
let
drawPoly
=
new
Draw
({
source
:
source
,
type
:
'Polygon'
}),
drawPoint
=
new
Draw
({
source
:
source
,
type
:
'Point'
,
style
:
new
Style
({
stroke
:
new
Stroke
({
color
:
'#08d527'
,
width
:
2
})
})
});
that
.
MAP
.
addLayer
(
vector
)
that
.
MAP
.
addInteraction
(
drawPoly
)
drawPoly
.
on
(
'drawend'
,
function
(
evt
)
{
callbcak
(
evt
.
feature
,
evt
.
target
)
that
.
MAP
.
removeInteraction
(
drawPoly
);
})
}
}
/*
*获取layer根据-layClassName 属性移除
*/
getLayerByClass
(
ClassName
){
let
that
=
this
,
layerarr
=
that
.
MAP
.
getLayers
().
getArray
(),
formerLayer
=
layerarr
.
filter
((
e
)
=>
e
.
get
(
"layClassName"
)
==
ClassName
);
return
formerLayer
}
/*
*移除某类型标注 根据-layClassName 属性移除
*/
removeSearchm
(
type
)
{
let
that
=
this
,
layerarr
=
that
.
MAP
.
getLayers
().
getArray
(),
formerLayer
=
layerarr
.
filter
((
e
)
=>
e
.
get
(
"layClassName"
)
==
type
);
if
(
formerLayer
)
{
formerLayer
.
forEach
((
ele
)
=>
{
that
.
MAP
.
removeLayer
(
ele
);
});
}
}
//隐藏显示某类型标注 type:Boolean 是否显示
visibleMarks
(
type
,
datatype
)
{
let
that
=
this
,
layerarr
=
that
.
MAP
.
getLayers
().
getArray
(),
formerLayer
=
layerarr
.
filter
((
e
)
=>
e
.
get
(
"layClassName"
)
==
datatype
);
if
(
formerLayer
)
{
formerLayer
.
forEach
((
ele
)
=>
{
ele
.
setVisible
(
type
)
});
}
}
//增加标注弹窗
addPopup
(
popConHtml
,
id
,
longitude
,
latitude
)
{
let
that
=
this
;
let
newDiv
=
document
.
createElement
(
'div'
);
newDiv
.
setAttribute
(
'id'
,
`popup
${
id
}
`
);
newDiv
.
setAttribute
(
'class'
,
`popup`
);
newDiv
.
innerHTML
=
`<div class="pop-con"></div>
${
popConHtml
}
<div class="pop-close" id="pop-close
${
id
}
" data-id="
${
id
}
">×</div>`
let
mapdiv
=
document
.
getElementById
(
'mapbox'
);
mapdiv
.
appendChild
(
newDiv
);
let
hei
=
newDiv
.
offsetHeight
,
kuan
=
newDiv
.
offsetWidth
;
let
overlay
=
new
Overlay
({
id
:
id
,
element
:
document
.
getElementById
(
`popup
${
id
}
`
),
autoPan
:
true
,
offset
:
[
-
(
kuan
/
2
+
10
),
-
(
hei
+
50
)],
position
:
fromLonLat
([
longitude
,
latitude
]),
autoPanAnimation
:
{
duration
:
250
,
},
})
that
.
MAP
.
addOverlay
(
overlay
);
document
.
getElementById
(
`pop-close
${
id
}
`
).
onclick
=
function
()
{
overlay
.
setPosition
(
undefined
)
}
}
mapSelectBind
(
callbcak
)
{
//地图绑定选中feature事件
let
se
=
new
Select
({
style
:
null
,
hitTolerance
:
0
,
multi
:
false
,
});
se
.
on
(
"select"
,
function
(
evt
)
{
if
(
evt
.
selected
.
length
>
0
)
{
callbcak
(
evt
)
}
})
this
.
MAP
.
addInteraction
(
se
)
}
/*
*绘制多边形 callbcak-drawend触发事件 mapView:Object
*/
drawPloygon
(
mapView
,
callbcak
)
{
let
that
=
this
;
let
obj
=
{
type
:
'Feature'
,
geometry
:
{
type
:
'MultiPolygon'
,
coordinates
:
mapView
?
mapView
.
polygoncoorArr
:
null
}
}
let
source
=
mapView
?
new
VectorSource
({
wrapX
:
false
,
features
:
new
GeoJSON
().
readFeatures
(
obj
)
})
:
new
VectorSource
({
wrapX
:
false
});
let
vector
=
new
VectorLayer
({
source
:
source
,
style
:
new
Style
({
fill
:
new
Fill
({
color
:
'rgba(212, 220, 29, 0.1)'
}),
stroke
:
new
Stroke
({
color
:
'#ec0d0d'
,
width
:
2
})
})
});
vector
.
set
(
'layClassName'
,
'boundary'
)
//已有图形填充到地图
if
(
mapView
)
{
let
view
=
that
.
MAP
.
getView
();
view
.
setCenter
(
mapView
.
center
);
view
.
setZoom
(
mapView
.
zoom
);
that
.
MAP
.
addLayer
(
vector
)
return
}
//绘制
let
drawPoly
=
new
Draw
({
source
:
source
,
type
:
'Polygon'
}),
drawPoint
=
new
Draw
({
source
:
source
,
type
:
'Point'
,
style
:
new
Style
({
stroke
:
new
Stroke
({
color
:
'#08d527'
,
width
:
2
})
})
});
that
.
MAP
.
addLayer
(
vector
)
that
.
MAP
.
addInteraction
(
drawPoly
)
drawPoly
.
on
(
'drawend'
,
function
(
evt
)
{
callbcak
(
evt
.
feature
,
evt
.
target
)
that
.
MAP
.
removeInteraction
(
drawPoly
);
})
}
tianSlA
()
{
this
.
MAP
.
getLayers
().
getArray
()[
0
].
setVisible
(
true
);
this
.
MAP
.
getLayers
().
getArray
()[
1
].
setVisible
(
false
);
this
.
MAP
.
getLayers
().
getArray
()[
2
].
setVisible
(
true
);
};
tianSlB
()
{
this
.
MAP
.
getLayers
().
getArray
()[
0
].
setVisible
(
false
);
this
.
MAP
.
getLayers
().
getArray
()[
1
].
setVisible
(
true
);
this
.
MAP
.
getLayers
().
getArray
()[
2
].
setVisible
(
false
);
};
tianSlC
()
{
this
.
MAP
.
getLayers
().
getArray
()[
0
].
setVisible
(
false
);
this
.
MAP
.
getLayers
().
getArray
()[
1
].
setVisible
(
false
);
this
.
MAP
.
getLayers
().
getArray
()[
2
].
setVisible
(
true
);
}
tianSlA
()
{
this
.
MAP
.
getLayers
().
getArray
()[
0
].
setVisible
(
true
);
this
.
MAP
.
getLayers
().
getArray
()[
1
].
setVisible
(
false
);
this
.
MAP
.
getLayers
().
getArray
()[
2
].
setVisible
(
true
);
};
tianSlB
()
{
this
.
MAP
.
getLayers
().
getArray
()[
0
].
setVisible
(
false
);
this
.
MAP
.
getLayers
().
getArray
()[
1
].
setVisible
(
true
);
this
.
MAP
.
getLayers
().
getArray
()[
2
].
setVisible
(
false
);
};
tianSlC
()
{
this
.
MAP
.
getLayers
().
getArray
()[
0
].
setVisible
(
false
);
this
.
MAP
.
getLayers
().
getArray
()[
1
].
setVisible
(
false
);
this
.
MAP
.
getLayers
().
getArray
()[
2
].
setVisible
(
true
);
}
drawArea
(
json
)
{
let
pointsz
=
[];
//存储点坐标
let
points
=
json
.
polyline
.
split
(
";"
);
//获取点坐标
//对获取的点坐标数据进行处理,重构,得到我们需要的数据结构
for
(
let
i
=
0
;
i
<
points
.
length
;
i
++
)
{
let
region
=
points
[
i
];
//单个面
//let pointArr = region.split(',');
//let p = pointArr[j];
let
pArr
=
region
.
split
(
','
);
let
pos
=
fromLonLat
(
pArr
);
//将坐标转为默认投影,默认投影是EPSG:3857
let
hdms
=
transform
(
pos
,
'EPSG:3857'
,
'EPSG:4326'
);
//坐标系间坐标转换,由前面的坐标转为后面坐标系坐标
pointsz
.
push
(
pArr
)
//将转化格式后的点坐标存储起来
};
//自己造的地图数据(GeoJSON数据)
let
geojsonObject
=
{
'type'
:
'FeatureCollection'
,
//要素集合
'crs'
:
{
'type'
:
'name'
,
'properties'
:
{
//特性
'name'
:
'EPSG:3857'
}
},
drawArea
(
json
)
{
let
pointsz
=
[];
//存储点坐标
let
points
=
json
.
polyline
.
split
(
";"
);
//获取点坐标
//对获取的点坐标数据进行处理,重构,得到我们需要的数据结构
for
(
let
i
=
0
;
i
<
points
.
length
;
i
++
)
{
let
region
=
points
[
i
];
//单个面
let
pArr
=
region
.
split
(
','
);
let
pos
=
fromLonLat
(
pArr
);
//将坐标转为默认投影,默认投影是EPSG:3857
//let hdms = transform(pos, 'EPSG:3857', 'EPSG:4326'); //坐标系间坐标转换,由前面的坐标转为后面坐标系坐标
pointsz
.
push
(
pos
)
//将转化格式后的点坐标存储起来
};
//自己造的地图数据(GeoJSON数据)
let
geojsonObject
=
this
.
structureGeojson
(
pointsz
);
let
vectorSource
=
new
VectorSource
({
//提供矢量图层的数据
features
:
(
new
GeoJSON
().
readFeatures
(
geojsonObject
))
});
let
vectorLayer
=
new
VectorLayer
({
source
:
vectorSource
,
//来源
style
:
new
Style
({
stroke
:
new
Stroke
({
color
:
'#08d527'
,
width
:
4
}),
fill
:
new
Fill
({
color
:
'rgba(212, 220, 29, 0.1)'
})
})
});
if
(
this
.
tempLayer
!=
' '
)
{
this
.
MAP
.
removeLayer
(
this
.
tempLayer
);
}
this
.
MAP
.
addLayer
(
vectorLayer
);
this
.
tempLayer
=
vectorLayer
;
}
structureGeojson
(
pointsz
){
let
geojsonObject
=
{
'type'
:
'FeatureCollection'
,
//要素集合
'crs'
:
{
'type'
:
'name'
,
'properties'
:
{
//特性
'name'
:
'EPSG:3857'
}
},
'features'
:
[{
//要素
'type'
:
'Feature'
,
'geometry'
:
{
//几何图形
...
...
@@ -332,41 +354,17 @@ export default class Mutil {
}]
}
}]
};
let
vectorSource
=
new
VectorSource
({
//提供矢量图层的数据
features
:
(
new
GeoJSON
().
readFeatures
(
geojsonObject
))
});
let
vectorLayer
=
new
VectorLayer
({
source
:
vectorSource
,
//来源
style
:
new
Style
({
stroke
:
new
Stroke
({
color
:
'yellow'
,
width
:
6
}),
fill
:
new
Fill
({
color
:
'rgba(255,255,0,0.1)'
})
})
});
if
(
this
.
tempLayer
!=
' '
)
{
this
.
MAP
.
removeLayer
(
this
.
tempLayer
);
}
this
.
MAP
.
addLayer
(
vectorLayer
);
this
.
tempLayer
=
vectorLayer
;
}
};
return
geojsonObject
;
}
changeCenter
(
name
)
{
//根据name传参
axios
.
get
(
'https://restapi.amap.com/v3/config/district?key=cb087c0fb3b8bc56a4af064630495bb9&subdistrict=0&extensions=all&keywords='
+
name
).
then
(
res
=>
{
getBoundaries
(
name
)
{
//根据name传参
axios
.
get
(
'https://restapi.amap.com/v3/config/district?key=cb087c0fb3b8bc56a4af064630495bb9&subdistrict=0&extensions=all&keywords='
+
name
).
then
(
res
=>
{
let
local
=
res
.
data
.
districts
[
0
].
center
.
split
(
","
);
let
view
=
new
View
({
center
:
transform
(
fromLonLat
(
local
),
'EPSG:3857'
,
'EPSG:4326'
),
//将中心点坐标转为EPSG:4326
projection
:
get
(
'EPSG:4326'
),
//投影坐标系 EPSG:4326
zoom
:
10
});
this
.
MAP
.
setView
(
view
);
this
.
drawArea
(
res
.
data
.
districts
[
0
])
})
}
let
view
=
this
.
MAP
.
getView
();
view
.
setCenter
(
fromLonLat
(
local
));
view
.
setZoom
(
10
);
this
.
drawArea
(
res
.
data
.
districts
[
0
])
})
}
}
dcit-hcsystem-hcsystem-master/src/utils/methods.ts
View file @
a298ff55
...
...
@@ -12,6 +12,7 @@ export default {
tongji
:
'Enterprises'
,
HazardsListMg
:
'Hazards'
,
PlansMg
:
'Plans'
,
PlansMgGovernment
:
'Plans'
,
qyMap
:
'qyMap'
,
qystatistics
:
'qystatistics'
,
SafetyDeviceMg
:
'SafetyDevice'
,
...
...
dcit-hcsystem-hcsystem-master/src/views/Enterprises/tongji.vue
View file @
a298ff55
...
...
@@ -41,9 +41,9 @@
<el-form-item>
<el-input
v-model=
"searchData.orgCode"
placeholder=
"请输入统一社会信用代码"
></el-input>
</el-form-item>
<el-form-item>
<
!--
<
el-form-item>
<City
@
changeFun=
"changeFun"
:valueqv=
"cityval"
></City>
</el-form-item>
</el-form-item>
-->
<el-form-item>
<el-button
type=
"primary"
@
click=
"searchFun()"
>
<i
class=
"el-icon-search"
></i>
搜索
...
...
dcit-hcsystem-hcsystem-master/src/views/Plans/PlansMg.vue
View file @
a298ff55
...
...
@@ -51,13 +51,13 @@
<el-table-column
prop=
"checkStatus"
label=
"审核状态"
>
<
template
slot-scope=
"scope"
>
<font
v-if=
"scope.row.checkStatus == 0"
class=
"colorP"
>
审核中
<i
class=
"iconfont iconshenhe"
></i>
审核中
</font>
<font
v-else-if=
"scope.row.checkStatus == 1"
class=
"colorM"
>
审核通过
<i
class=
"iconfont iconzhengchang"
></i>
审核通过
</font>
<font
v-else-if=
"scope.row.checkStatus == 2"
class=
"colorR"
>
审核未通过
<i
class=
"iconfont iconweitongguo"
></i>
审核未通过
</font>
</
template
>
</el-table-column>
...
...
@@ -81,14 +81,11 @@
</
template
>
</el-table-column>
<!-- <el-table-column prop="createTime" label="创建时间"></el-table-column> -->
<el-table-column
label=
"操作"
width=
"
30
0"
align=
"center"
>
<el-table-column
label=
"操作"
width=
"
22
0"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<el-button
@
click=
"editFun(scope.row)"
size=
"small"
v-if=
"qyvisble"
>
<i
class=
"el-icon-edit-outline"
></i>
编辑
</el-button>
<el-button
type=
"success"
@
click=
"checkFun(scope.row)"
size=
"small"
v-if=
"qyvisble"
:disabled=
"scope.row.checkStatus != 0?true:false"
>
<i
class=
"el-icon-key"
></i>
审核
</el-button>
<el-button
type=
"primary"
plain
@
click=
"editFun(scope.row)"
size=
"small"
v-if=
"!qyvisble"
>
查看详情
</el-button>
...
...
@@ -116,15 +113,6 @@
@
refreshTableData=
"getTableData"
:key=
"zjKey"
></PlansMgEdit>
<PlansMgCheck
v-if=
"dialogVisible2"
:dialogVisible=
"dialogVisible2"
:editForm=
"formData"
:title=
"dialogTit"
@
dialogFun=
"closeDialog"
@
refreshTableData=
"getTableData"
:key=
"chKey"
></PlansMgCheck>
</div>
</template>
<
script
lang=
"ts"
>
...
...
@@ -133,7 +121,7 @@ import PlansMgEdit from "./PlansMgEdit.vue";
import
PlansMgCheck
from
"./PlansMgCheck.vue"
;
import
METHOD
from
"@/utils/methods"
;
@
Component
({
components
:
{
PlansMgEdit
,
PlansMgCheck
}
components
:
{
PlansMgEdit
}
})
export
default
class
CamerasMg
extends
Vue
{
@
Provide
()
enterpriseId
:
String
=
""
;
...
...
@@ -144,15 +132,13 @@ export default class CamerasMg extends Vue {
@
Provide
()
loading
:
Boolean
=
false
;
//编辑组件
@
Provide
()
dialogVisible
:
Boolean
=
false
;
@
Provide
()
dialogVisible2
:
Boolean
=
false
;
@
Provide
()
dialogTit
:
String
=
"新增预案"
;
@
Provide
()
formData
:
Object
=
{};
@
Provide
()
zjKey
:
any
=
0
;
@
Provide
()
chKey
:
any
=
0
;
@
Provide
()
qyvisble
:
boolean
=
true
;
//政府端隐藏项
getTableData
()
{
let
that
=
this
,
param
=
Object
.
assign
({
enterpriseId
:
that
.
enterpriseId
,
isReported
:
that
.
enterpriseId
?
''
:
0
},
that
.
PAGE
,
that
.
searchData
);
param
=
Object
.
assign
({
enterpriseId
:
that
.
enterpriseId
},
that
.
PAGE
,
that
.
searchData
);
that
.
loading
=
true
;
METHOD
.
axiosPost
(
that
,
...
...
@@ -185,12 +171,6 @@ export default class CamerasMg extends Vue {
this
.
zjKey
++
;
this
.
dialogVisible
=
true
;
}
checkFun
(
row
:
any
){
this
.
dialogTit
=
"预案审核"
;
this
.
formData
=
Object
.
assign
({},
row
);
this
.
chKey
++
;
this
.
dialogVisible2
=
true
;
}
delFun
(
row
:
any
)
{
let
that
=
this
as
any
;
METHOD
.
deleteFun
(
...
...
@@ -212,7 +192,6 @@ export default class CamerasMg extends Vue {
closeDialog
()
{
//关闭窗口
this
.
dialogVisible
=
false
;
this
.
dialogVisible2
=
false
;
this
.
formData
=
{};
}
checkFile
(
url
:
any
)
{
...
...
dcit-hcsystem-hcsystem-master/src/views/Plans/PlansMgCheck.vue
View file @
a298ff55
...
...
@@ -11,55 +11,45 @@
<div>
<div
class=
"yatit"
>
预案基本信息
</div>
<el-form
ref=
"editForm"
:model=
"editForm"
:rules=
"rules"
label-width=
"100px"
>
<el-form-item
label=
"
预案标题"
prop=
"planTitle
"
>
<
el-input
v-model=
"editForm.planTitle"
></el-inpu
t>
<el-form-item
label=
"
所属公司:
"
>
<
font>
{{
editForm
.
enterpriseName
}}
</fon
t>
</el-form-item>
<el-form-item
label=
"预案
分类"
prop=
"planType
"
>
<
el-input
v-model=
"editForm.planType"
></el-inpu
t>
<el-form-item
label=
"预案
标题:
"
>
<
font>
{{
editForm
.
planTitle
}}
</fon
t>
</el-form-item>
<el-form-item
label=
"预案等级"
prop=
"planLevel"
>
<el-radio-group
v-model=
"editForm.planLevel"
>
<el-radio
label=
"Ⅰ"
>
Ⅰ级
</el-radio>
<el-radio
label=
"Ⅱ"
>
Ⅱ级
</el-radio>
<el-radio
label=
"Ⅲ"
>
Ⅲ级
</el-radio>
</el-radio-group>
<el-form-item
label=
"预案分类:"
>
<font>
{{
editForm
.
planType
}}
</font>
</el-form-item>
<el-form-item
label=
"预案等级:"
>
<font>
{{
editForm
.
planLevel
+
'级'
}}
</font>
</el-form-item>
<el-form-item
label=
"是否上报:"
>
<font>
{{
editForm
.
isReported
==
0
?
'已上报'
:
'未上报'
}}
</font>
</el-form-item>
<el-form-item
label=
"预案源文件:"
>
<span
class=
"dbtn sd qiCr"
@
click=
"checkFile(editForm.sourceFile)"
v-if=
"editForm.sourceFile != ''"
>
<i
class=
"el-icon el-icon-view"
></i>
{{
editForm
.
fileOriginalName
}}
</span>
</el-form-item>
<el-form-item
label=
"审核预案"
prop=
"checkStatus"
>
<el-radio-group
v-model=
"editForm.checkStatus"
>
<el-radio
label=
"0"
>
审核中
</el-radio>
<el-radio
label=
"1"
>
通过
</el-radio>
<el-radio
label=
"2"
>
未通过
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
label=
"预案源文件"
>
<el-upload
ref=
"uploaderB"
class=
"uploader"
:limit=
"1"
:action=
"actionUrl"
:on-success=
"(a,b,c) => onSuccess(a,b,c,'sourceFile')"
:on-error=
"onError"
:on-remove=
"handleRemove"
:before-remove=
"(a,b,c) => beforeRemove(a,b,c,'sourceFile')"
:on-exceed=
"onExceed"
:multiple=
"false"
list-type=
"picture"
:file-list=
"fileList"
>
<i
class=
"el-icon-plus"
></i>
<!--
<div
slot=
"tip"
class=
"el-upload__tip"
>
只能上传jpg/png文件,且不超过500kb
</div>
-->
</el-upload>
<!--
<div
v-if=
"fileList.length > 0"
>
<a
v-for=
"(i,ind) in fileList"
:key=
"ind"
:href=
"i.url"
target=
"_blank"
>
{{
i
.
name
}}
</a>
<i
class=
"btn el-icon-delete"
@
click=
"deleteList"
></i>
</div>
-->
</el-form-item>
</el-form>
</div>
</el-col>
<el-col
:span=
"12"
class=
"flcolum"
>
<div>
<div
class=
"yatit"
>
预案内容
</div>
<textarea
id=
"editorA"
v-model=
"editForm.planContents"
height=
"100%"
></textarea>
<div
v-html=
"editForm.planContents"
></div>
<font
v-if=
"editForm.planContents == ''"
>
暂无内容~
</font>
</div>
</el-col>
</el-row>
...
...
@@ -75,7 +65,6 @@ import { Component, Vue, Provide, Prop, Watch } from "vue-property-decorator";
import
{
State
,
Getter
,
Mutation
,
Action
}
from
"vuex-class"
;
import
City
from
"@/components/city.vue"
;
import
METHOD
from
"@/utils/methods"
;
import
ice
from
"@/utils/iceEditor-min.js"
;
let
uploadfile
=
require
(
"@/assets/uploadfile.png"
);
@
Component
({
components
:
{
City
},
...
...
@@ -154,91 +143,14 @@ export default class PlansMgEdit extends Vue {
}
});
}
/*
上传
*/
onSuccess
(
res
:
any
,
file
:
any
,
fileList
:
any
,
key
:
string
)
{
this
.
$data
[
key
]
=
fileList
;
}
onError
(
err
:
any
,
file
:
any
,
fileList
:
any
)
{
this
.
$message
.
error
(
"上传失败!"
);
}
handleRemove
(
file
:
any
,
fileList
:
any
,
key
:
string
)
{
this
.
$data
[
key
]
=
fileList
;
}
onExceed
(
file
:
any
,
fileList
:
any
)
{
this
.
$message
.
warning
(
"只允许上传一个文件,如需更改请先删除!"
);
}
beforeRemove
(
file
:
any
,
fileList
:
any
)
{
let
that
=
this
,
param
;
param
=
file
.
response
?
file
.
response
.
data
.
savePath
.
replace
(
/
\\
/g
,
"%"
)
:
file
.
url
.
replace
(
/
\\
/g
,
"%"
).
slice
(
9
);
METHOD
.
axiosGet
(
this
,
`/file/deleteFile?savePath=
${
param
}
`
,
function
(
res
:
any
)
{
if
(
res
.
code
==
0
)
that
.
$message
.
success
(
"删除成功"
);
else
return
false
;
});
}
//创建编辑器
creatEditor
()
{
this
.
editorA
=
new
ice
.
editor
(
"editorA"
);
this
.
editorA
.
menu
=
[
"fontSize"
,
"foreColor"
,
"bold"
,
"italic"
,
"underline"
,
"strikeThrough"
,
"line"
,
"justifyLeft"
,
"justifyCenter"
,
"justifyRight"
,
"line"
,
"table"
,
"insertImage"
,
"insertOrderedList"
,
"insertUnorderedList"
,
"indent"
,
];
this
.
editorA
.
height
=
"413px"
;
this
.
editorA
.
create
();
}
deleteList
()
{
this
.
fileList
=
[];
this
.
editForm
.
sourceFile
=
""
;
}
checkFile
(
url
:
any
)
{
window
.
open
(
METHOD
.
URL
+
url
,
"_blank"
);
}
created
()
{
let
that
=
this
;
that
.
enterpriseId
=
METHOD
.
enterpriseId
;
// if (that.enterpriseId) {
// that.qyvisble = true;
that
.
$nextTick
(()
=>
{
that
.
creatEditor
();
})
// } else {
// that.qyvisble = false;
// }
// if (that.editForm.id && that.enterpriseId) {
that
.
$nextTick
(()
=>
{
//编辑
if
(
that
.
editForm
.
planContents
)
{
that
.
editorA
.
setValue
(
that
.
editForm
.
planContents
);
}
if
(
that
.
editForm
.
fileOriginalName
)
{
that
.
fileList
.
push
({
name
:
that
.
editForm
.
fileOriginalName
,
url
:
uploadfile
,
});
}
});
// }
that
.
actionUrl
=
METHOD
.
URL
+
"/file/uploadFile"
;
}
}
</
script
>
...
...
dcit-hcsystem-hcsystem-master/src/views/Plans/PlansMgEdit.vue
View file @
a298ff55
...
...
@@ -175,7 +175,7 @@ export default class PlansMgEdit extends Vue {
that
.
editForm
.
planContents
=
that
.
editorA
.
getHTML
();
that
.
editForm
.
enterpriseId
=
that
.
enterpriseId
;
(
that
as
any
).
$refs
[
formName
].
validate
((
valid
:
boolean
)
=>
{
if
(
that
.
editorA
.
getText
()
==
false
&&
that
.
editForm
.
sourceFile
==
""
)
{
if
(
that
.
editorA
.
getText
()
==
false
&&
(
that
.
editForm
.
sourceFile
==
""
||
that
.
editForm
.
sourceFile
==
undefined
)
)
{
that
.
$message
.
error
(
"没有预案内容!"
);
return
;
}
...
...
dcit-hcsystem-hcsystem-master/src/views/Plans/PlansMgGovernment.vue
0 → 100644
View file @
a298ff55
<
template
>
<div
class=
"camerasMg"
>
<el-row
class=
"topBar"
>
<el-col>
<el-form
:inline=
"true"
:model=
"searchData"
>
<el-form-item
label
>
<el-input
v-model=
"searchData.planTitle"
placeholder=
"请输预案标题"
></el-input>
</el-form-item>
<el-form-item
label
>
<el-select
v-model=
"searchData.planLevel"
placeholder=
"请输预案等级"
>
<el-option
label=
"Ⅰ级"
value=
"Ⅰ"
></el-option>
<el-option
label=
"Ⅱ级"
value=
"Ⅱ"
></el-option>
<el-option
label=
"Ⅲ级"
value=
"Ⅲ"
></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
@
click=
"searchFun()"
>
<i
class=
"el-icon-search"
></i>
搜索
</el-button>
<el-button
type=
"primary"
@
click=
"resetFun()"
>
<i
class=
"el-icon-refresh"
></i>
重置
</el-button>
</el-form-item>
</el-form>
</el-col>
</el-row>
<el-table
:data=
"tableData.pageData"
stripe
border
style=
"width:100%;"
:loading=
"false"
>
<el-table-column
width=
"50"
type=
"index"
label=
"序号"
></el-table-column>
<el-table-column
prop=
"planTitle"
label=
"预案标题"
></el-table-column>
<el-table-column
prop=
"planLevel"
label=
"预案等级"
>
<template
slot-scope=
"scope"
>
<font>
{{
scope
.
row
.
planLevel
+
'级'
}}
</font>
</
template
>
</el-table-column>
<el-table-column
prop=
"planType"
label=
"预案分类"
></el-table-column>
<el-table-column
prop=
"isReported"
label=
"是否上报"
v-if=
"qyvisble"
>
<
template
slot-scope=
"scope"
>
<font
v-if=
"scope.row.isReported == 0"
class=
"colorM"
>
已上报
</font>
<font
v-else-if=
"scope.row.isReported != 0"
class=
"colorR"
>
未上报
</font>
</
template
>
</el-table-column>
<el-table-column
prop=
"checkStatus"
label=
"审核状态"
>
<
template
slot-scope=
"scope"
>
<font
v-if=
"scope.row.checkStatus == 0"
class=
"colorP"
>
<i
class=
"iconfont iconshenhe"
></i>
审核中
</font>
<font
v-else-if=
"scope.row.checkStatus == 1"
class=
"colorM"
>
<i
class=
"iconfont iconzhengchang"
></i>
审核通过
</font>
<font
v-else-if=
"scope.row.checkStatus == 2"
class=
"colorR"
>
<i
class=
"iconfont iconweitongguo"
></i>
审核未通过
</font>
</
template
>
</el-table-column>
<el-table-column
prop=
"sourceFile"
label=
"预案文件"
>
<
template
slot-scope=
"scope"
>
<span
class=
"dbtn sd qiCr"
@
click=
"checkFile(scope.row.sourceFile)"
v-if=
"scope.row.sourceFile != ''"
>
<i
class=
"el-icon el-icon-view"
></i>
查看/下载
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
width=
"220"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"success"
@
click=
"checkFun(scope.row)"
size=
"small"
:disabled=
"scope.row.checkStatus != 0?true:false"
>
<i
class=
"el-icon-key"
></i>
审核
</el-button>
<el-button
type=
"danger"
@
click=
"delFun(scope.row)"
size=
"small"
>
<i
class=
"el-icon-delete"
></i>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
<el-pagination
background
layout=
"total,sizes, prev, pager, next, jumper"
:total=
"tableData.total"
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"PAGE.page"
:page-size=
"PAGE.size"
></el-pagination>
<PlansMgCheck
:dialogVisible=
"dialogVisible"
:editForm=
"formData"
:title=
"dialogTit"
@
dialogFun=
"closeDialog"
@
refreshTableData=
"getTableData"
:key=
"zjKey"
></PlansMgCheck>
</div>
</template>
<
script
lang=
"ts"
>
import
{
Component
,
Vue
,
Provide
}
from
"vue-property-decorator"
;
import
PlansMgEdit
from
"./PlansMgEdit.vue"
;
import
PlansMgCheck
from
"./PlansMgCheck.vue"
;
import
METHOD
from
"@/utils/methods"
;
@
Component
({
components
:
{
PlansMgCheck
}
})
export
default
class
CamerasMg
extends
Vue
{
@
Provide
()
enterpriseId
:
String
=
""
;
@
Provide
()
signId
:
String
=
""
;
@
Provide
()
tableData
:
Object
=
{
pageData
:
[],
total
:
0
};
@
Provide
()
PAGE
:
any
=
{
page
:
1
,
size
:
10
};
@
Provide
()
searchData
:
any
=
{};
@
Provide
()
loading
:
Boolean
=
false
;
//编辑组件
@
Provide
()
dialogVisible
:
Boolean
=
false
;
@
Provide
()
dialogTit
:
String
=
"新增预案"
;
@
Provide
()
formData
:
Object
=
{};
@
Provide
()
zjKey
:
any
=
0
;
getTableData
()
{
let
that
=
this
,
param
=
Object
.
assign
({
isReported
:
0
},
that
.
PAGE
,
that
.
searchData
);
that
.
loading
=
true
;
METHOD
.
axiosPost
(
that
,
`/planInfo/selectPlanInfoList`
,
param
,
function
(
res
:
any
)
{
that
.
loading
=
false
;
if
(
res
.
code
==
0
)
{
that
.
tableData
=
res
.
data
;
}
}
);
}
searchFun
()
{
this
.
PAGE
=
{
page
:
1
,
size
:
10
};
this
.
getTableData
();
}
resetFun
()
{
this
.
PAGE
=
{
page
:
1
,
size
:
10
};
this
.
searchData
=
{};
this
.
getTableData
();
}
checkFun
(
row
:
any
){
this
.
dialogTit
=
"预案审核"
;
this
.
formData
=
Object
.
assign
({},
row
);
this
.
zjKey
++
;
this
.
dialogVisible
=
true
;
}
delFun
(
row
:
any
)
{
let
that
=
this
as
any
;
METHOD
.
deleteFun
(
that
,
`/planInfo/deletePlanInfoById/
${
row
.
id
}
`
,
function
()
{
that
.
getTableData
();
}
);
}
handleSizeChange
(
val
:
any
)
{
this
.
PAGE
.
size
=
val
;
this
.
getTableData
();
}
handleCurrentChange
(
val
:
any
)
{
this
.
PAGE
.
page
=
val
;
this
.
getTableData
();
}
closeDialog
()
{
//关闭窗口
this
.
dialogVisible
=
false
;
this
.
formData
=
{};
}
checkFile
(
url
:
any
)
{
window
.
open
(
METHOD
.
URL
+
url
,
'_blank'
)
}
created
()
{
this
.
getTableData
();
}
}
</
script
>
<
style
lang=
"scss"
>
@import
"@/utils/public.scss"
;
</
style
>
\ No newline at end of file
dcit-hcsystem-hcsystem-master/src/views/SafetyDevice/SafetyDeviceMgEdit.vue
View file @
a298ff55
...
...
@@ -180,7 +180,9 @@ export default class SafetyDeviceMgEdit extends Vue {
});
}
created
()
{
this
.
enterpriseId
=
METHOD
.
enterpriseId
;
if
(
METHOD
.
enterpriseId
){
this
.
enterpriseId
=
METHOD
.
enterpriseId
;
}
}
}
</
script
>
...
...
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