Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-station-module-view
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
station
amos-station-module-view
Commits
6c1be8a6
Commit
6c1be8a6
authored
Jun 05, 2020
by
单奇雲
Browse files
Options
Browse Files
Download
Plain Diff
冲突
parents
5f3c0611
23356c33
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
273 additions
and
211 deletions
+273
-211
imgStatic.js
mods/components/3dviewConvertor/consts/imgStatic.js
+6
-1
moduleEdit.scss
mods/components/3dviewConvertor/styles/moduleEdit.scss
+1
-0
PointsPool.js
mods/components/3dviewConvertor/view/PointsPool.js
+1
-0
View3D.js
mods/components/3dviewConvertor/view/View3D.js
+123
-81
conf.js
mods/components/3dviewConvertor/view/conf.js
+4
-0
AreaLeftTree.js
.../3dviewConvertor/view/moduleEditComponent/AreaLeftTree.js
+57
-46
PointLeftTree.js
...3dviewConvertor/view/moduleEditComponent/PointLeftTree.js
+60
-61
RightEditRegionPanel.js
...onvertor/view/moduleEditComponent/RightEditRegionPanel.js
+3
-3
EquipStatusList.js
...ewConvertor/view/panoramic/statistical/EquipStatusList.js
+6
-1
marker3DFactory.js
...components/3dviewConvertor/view/points/marker3DFactory.js
+12
-18
No files found.
mods/components/3dviewConvertor/consts/imgStatic.js
View file @
6c1be8a6
...
...
@@ -245,5 +245,10 @@ export const safetyIndexIconMapper = {
};
export
const
markerTitleBgMapper
=
{
base
:
require
(
'../assets/convertor/3dview/markers/markerTitle.png'
)
base
:
'/mods/components/3dviewConvertor/assets/convertor/3dview/markers/markerTitle.png'
};
export
const
equipStatusIconMapper
=
{
equip_false
:
'/mods/components/3dviewConvertor/assets/convertor/3dview/markers/pa-0.png'
,
equip_true
:
'/mods/components/3dviewConvertor/assets/convertor/3dview/markers/pa-1.png'
};
mods/components/3dviewConvertor/styles/moduleEdit.scss
View file @
6c1be8a6
...
...
@@ -112,6 +112,7 @@
line-height
:
31px
;
padding
:
5px
;
color
:
#F0DF2D
;
}
.leftSearch
{
height
:
33px
;
...
...
mods/components/3dviewConvertor/view/PointsPool.js
View file @
6c1be8a6
...
...
@@ -114,6 +114,7 @@ class PointsPool extends Component {
onCreated
=
{(
val
)
=>
this
.
onMarkersCreated
(
'riskSource'
,
val
)}
isEditMode
=
{
this
.
props
.
isEditMode
}
addMarker
=
{
this
.
addMarker
}
stagePilot
=
{
this
.
props
.
stagePilot
}
selectPoints
=
{
this
.
props
.
selectPoints
}
/
>
{
/* <PatrolPoint
...
...
mods/components/3dviewConvertor/view/View3D.js
View file @
6c1be8a6
...
...
@@ -2,11 +2,10 @@ import React, { Component } from 'react';
import
PropTypes
from
'prop-types'
;
import
{
utils
,
UUID
,
deepCopy
}
from
'amos-tool'
;
import
{
PubSub
}
from
'ray-eventpool'
;
import
{
Connect
as
UIConnect
,
Modal
,
message
,
AmosAlert
,
Toas
t
}
from
'amos-framework'
;
import
{
Connect
as
UIConnect
,
message
,
AmosAler
t
}
from
'amos-framework'
;
import
{
FatLine
}
from
'amos-3d/lib/advanced'
;
import
A3DDesigner
,
{
Connect
,
FireObject
,
DESIGNER_CONSTS
,
PolygonRegion
}
from
'amos-3d/lib/designer'
;
import
WorkerObjContent
from
'amos-3d/lib/worker/WorkerObjContent'
;
import
{
transitionHelper
}
from
'amos-3d/lib/helpers'
;
import
*
as
endConf
from
'amos-processor/lib/config/endconf'
;
import
{
LensJumpFactory
}
from
'base-r3d/lib/factory'
;
import
{
CONSTS
}
from
'../consts/storageConsts'
;
...
...
@@ -123,6 +122,7 @@ class View3D extends Component {
positionxyz
:
''
,
rightHeight
:
1
,
isPointSave
:
true
,
treeDataList
:[],
};
getObjFromNet
(
view3dFile
,
(
objs
,
asyncModels
)
=>
{
...
...
@@ -284,8 +284,8 @@ class View3D extends Component {
let
fireEquipmentPosition
=
data
.
contingencyRo
.
fireEquipmentPosition
.
split
(
','
);
this
.
setState
({
fireEquipmentPosition
});
}
assembleTroubleView
(
this
,
data
,
this
.
state
.
markers
);
this
.
handleExceptModel
(
'out_except_model'
);
assembleTroubleView
(
this
,
data
,
this
.
state
.
markers
);
break
;
case
'base3d.fromws.mapArea_action1-2'
:
//镜头切换(旋转+推进)
changeGoodView
(
this
,
data
);
...
...
@@ -778,7 +778,6 @@ class View3D extends Component {
}
//选中点变化
selectPointChange
=
(
selectPoints
)
=>
{
if
(
selectPoints
.
isRegion
){
this
.
setState
({
selectArea
:
selectPoints
})
}
else
{
...
...
@@ -866,7 +865,7 @@ class View3D extends Component {
changeRoutePath
=
(
routePathNode
)
=>
{
this
.
state
.
routePathData
.
push
(
routePathNode
);
}
}
//保存区域绑定
saveAreaData
=
()
=>
{
let
{
routePathData
}
=
this
.
state
;
...
...
@@ -908,16 +907,20 @@ class View3D extends Component {
}
}
}
savePointListAction
(
paramsArr
).
then
(
data
=>
{
message
.
success
(
"保存成功"
);
getPointTreeAction
(
pointType
).
then
(
data
=>
{
this
.
setState
({
treeData
:
data
||
[],
pageType
:
'point'
,
showRightPanel
:
false
});
});
})
savePointListAction
(
paramsArr
).
then
(
data
=>
{
getPointTreeAction
(
pointType
).
then
(
data
=>
{
this
.
setState
({
treeData
:
data
||
[],
pageType
:
'point'
,
showRightPanel
:
false
});
}
);
message
.
success
(
'保存成功'
);
},
error
=>
message
.
error
(
'保存失败'
)
);
}
...
...
@@ -951,9 +954,9 @@ class View3D extends Component {
fireDetection
:[]
}
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
){
newMarkers
[
data
[
i
].
type
].
push
(
data
[
i
])
newMarkers
[
data
[
i
].
type
].
push
(
data
[
i
])
;
}
this
.
setState
(
{
markers
:
newMarkers
})
this
.
setState
(
{
markers
:
newMarkers
});
})
this
.
setState
({
...
...
@@ -965,40 +968,49 @@ class View3D extends Component {
})
}
}
toastWarningInfo
=
(
content
)
=>
{
Toast
.
warning
({
title
:
'警告'
,
content
,
placement
:
'topMiddle'
,
})
}
//删除区域
deleteAreaBind
=
()
=>
{
let
{
selectArea
,
treeData
}
=
this
.
state
;
if
(
selectArea
)
{
getPointsByRegionIdAction
(
selectArea
.
id
).
then
(
d
=>
{
if
(
d
&&
d
.
length
==
0
){
this
.
state
.
routePathData
.
push
({
riskSourceId
:
selectArea
.
id
,
routePath
:
''
,
})
var
tree
=
new
Object
();
tree
.
children
=
treeData
;
this
.
removeTreeDataRoutePathByChildId
(
selectArea
.
id
,
tree
);
this
.
getAreas
(
tree
.
children
);
this
.
setState
({
routePathData
:
this
.
state
.
routePathData
,
treeData
:
tree
.
children
,
});
}
else
{
this
.
toastWarningInfo
(
'请先清除点的绑定再进行删除!'
)
getPointsByRegionIdAction
(
selectArea
.
id
).
then
(
d
=>
{
if
(
d
&&
d
.
length
==
0
){
this
.
state
.
routePathData
.
push
({
riskSourceId
:
selectArea
.
id
,
routePath
:
''
});
var
tree
=
new
Object
();
tree
.
children
=
treeData
;
this
.
removeTreeDataRoutePathByChildId
(
selectArea
.
id
,
tree
);
this
.
getAreas
(
tree
.
children
);
this
.
setState
({
routePathData
:
this
.
state
.
routePathData
,
treeData
:
tree
.
children
});
}
else
{
message
.
danger
(
'请先清除点的绑定再进行删除!'
);
}
});
}
}
/**
* 处理数据
*/
generateList
=
data
=>
{
let
{
treeDataList
}
=
this
.
state
;
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
const
node
=
data
[
i
];
const
key
=
node
.
id
;
const
title
=
node
.
name
;
treeDataList
.
push
({
key
,
title
});
if
(
node
.
children
.
length
>
0
)
{
this
.
generateList
(
node
.
children
);
}
});
}
this
.
setState
({
treeDataList
})
}
removeTreeDataRoutePathByChildId
=
(
areaId
,
obj
)
=>
{
let
oldSize
=
obj
.
children
.
length
;
let
flag
=
false
;
if
(
oldSize
>
0
){
...
...
@@ -1021,23 +1033,26 @@ class View3D extends Component {
}
}
/**
* 切换区域和点页面
*/
changeAreaPoint
=
(
type
)
=>
{
let
{
pointTypeArr
}
=
this
.
state
;
this
.
setState
({
treeDataList
:[]})
if
(
type
===
'region'
)
{
getAreaTreeAction
().
then
(
data
=>
{
this
.
generateList
(
data
)
this
.
setState
({
treeData
:
data
||
[],
pageType
:
'region'
,
showRightPanel
:
false
});
});
this
.
disabledCamera
();
}
else
{
getPointTreeAction
(
pointTypeArr
[
0
].
code
||
''
).
then
(
data
=>
{
this
.
getPointList
(
pointTypeArr
[
0
].
code
,
data
);
this
.
generateList
(
data
);
this
.
setState
({
pointType
:
pointTypeArr
[
0
].
code
||
''
,
treeData
:
data
||
[],
...
...
@@ -1045,16 +1060,17 @@ class View3D extends Component {
showRightPanel
:
false
});
});
this
.
enableCamera
();
}
}
pointTypeChange
=
(
pointType
)
=>
{
let
{
isPointSave
}
=
this
.
state
if
(
!
isPointSave
){
this
.
showConfirm
()
let
{
isPointSave
}
=
this
.
state
;
if
(
!
isPointSave
){
this
.
showConfirm
()
;
}
this
.
setState
({
pointType
,
treeData
:[]
treeData
:
[]
});
getPointTreeAction
(
pointType
).
then
(
data
=>
{
this
.
getPointList
(
pointType
,
data
);
...
...
@@ -1067,10 +1083,10 @@ class View3D extends Component {
showConfirm
=
()
=>
{
AmosAlert
.
confirm
(
'提示'
,
'有未保存数据,是否保存?'
,
{
callback
:
(
flag
)
=>
{
if
(
flag
){
this
.
savePointData
()
if
(
flag
){
this
.
savePointData
();
}
else
{
this
.
setState
({
isPointSave
:
true
})
this
.
setState
({
isPointSave
:
true
});
}
}
});
...
...
@@ -1095,11 +1111,11 @@ class View3D extends Component {
drop
=
(
event
)
=>
{
console
.
log
(
'drop'
);
event
.
preventDefault
();
this
.
setState
({
isPointSave
:
false
})
this
.
setState
({
isPointSave
:
false
});
let
{
dragItem
,
markers
}
=
this
.
state
;
if
(
dragItem
)
{
if
(
dragItem
.
isBind
)
{
this
.
toastWarningInfo
(
'只能放置未绑定的标记点'
)
message
.
danger
(
'只能放置未绑定的标记点'
);
return
false
;
}
...
...
@@ -1113,7 +1129,7 @@ class View3D extends Component {
console
.
log
(
isInside
);
if
(
dragItem
)
{
if
(
isInside
===
false
)
{
this
.
toastWarningInfo
(
'只能放置在当前区域'
)
message
.
danger
(
'只能放置在当前区域'
);
return
false
;
}
let
uid
=
UUID
.
uuidFast
();
...
...
@@ -1159,6 +1175,7 @@ class View3D extends Component {
this
.
setState
({
isEditMode
});
if
(
isEditMode
===
true
)
{
getAreaTreeAction
().
then
(
treeData
=>
{
this
.
generateList
(
treeData
)
this
.
setState
({
treeData
:
treeData
||
[]
});
...
...
@@ -1335,6 +1352,7 @@ class View3D extends Component {
onActionItemClick
=
(
actionType
,
label
,
showLabel
)
=>
{
const
{
pageType
}
=
this
.
state
;
this
.
clearMarkers
();
this
.
props
.
editModelChange
(
false
);
this
.
setState
({
...
...
@@ -1355,6 +1373,10 @@ class View3D extends Component {
}
else
if
(
actionType
===
'editMode'
){
this
.
editButtonClick
();
this
.
props
.
editModelChange
(
true
);
if
(
pageType
===
'region'
){
this
.
disabledCamera
();
}
this
.
setState
({
isShowActionBar
:
false
,
//隐藏工具栏
startLoadExceptionArea
:
false
,
//隐藏marker
...
...
@@ -1383,6 +1405,18 @@ class View3D extends Component {
}
disabledCamera
=
()
=>
{
this
.
stagePilot
.
cameraFactory
.
orbitControl
.
maxPolarAngle
=
0
;
//不能旋转
this
.
stagePilot
.
cameraFactory
.
orbitControl
.
minPolarAngle
=
0
;
//不能旋转
this
.
cameraFactory
.
fitView
(
desigerHelperConfig
.
verticalCameraEffect
);
//视角调整为平面视角
}
enableCamera
=
()
=>
{
this
.
stagePilot
.
cameraFactory
.
orbitControl
.
maxPolarAngle
=
desigerConf
.
cameraOptions
.
builtInOrbit
.
maxPolarAngle
;
//恢复正常视角
this
.
stagePilot
.
cameraFactory
.
orbitControl
.
minPolarAngle
=
desigerConf
.
cameraOptions
.
builtInOrbit
.
minPolarAngle
;
//恢复正常视角
this
.
executeOperate
({
key
:
'fitview'
});
//初始视角
}
onRectCreated
=
(
polygonRegion
,
area
,
index
)
=>
{
polygonRegion
.
visible
=
false
;
const
{
regionHeigth
=
10
}
=
area
.
routePath
;
...
...
@@ -1428,7 +1462,7 @@ class View3D extends Component {
}
handleExceptModel
=
(
type
,
areaId
)
=>
{
let
{
isPointSave
}
=
this
.
state
let
{
isPointSave
}
=
this
.
state
;
this
.
clearMarkers
();
if
(
type
===
'into_except_model'
){
//进入耳朵模式
this
.
props
.
editModelChange
(
true
);
//隐藏全景统计
...
...
@@ -1440,26 +1474,29 @@ class View3D extends Component {
errorAreaId
:
areaId
});
}
else
if
(
type
===
'out_except_model'
){
if
(
!
isPointSave
){
if
(
!
isPointSave
){
AmosAlert
.
confirm
(
'提示'
,
'有未保存数据,是否保存?'
,
{
callback
:
(
flag
)
=>
{
if
(
flag
){
this
.
savePointData
()
this
.
props
.
editModelChange
(
false
);
//显示全景统计
this
.
setState
({
treeData
:[],
sideControlShow
:
false
,
//隐藏耳朵
isShowActionBar
:
true
,
//显示工具栏
startLoadExceptionArea
:
true
,
//显示marker,
headerName
:
''
,
//设置头名称
isEditMode
:
false
,
//推出编辑模式
errorAreaId
:
''
});
if
(
flag
){
this
.
savePointData
();
this
.
executeOperate
({
key
:
'fitview'
});
//恢复正常视角
this
.
props
.
editModelChange
(
false
);
//显示全景统计
this
.
setState
({
treeData
:
[],
pageType
:
'region'
,
//区域
sideControlShow
:
false
,
//隐藏耳朵
isShowActionBar
:
true
,
//显示工具栏
startLoadExceptionArea
:
true
,
//显示marker,
headerName
:
''
,
//设置头名称
isEditMode
:
false
,
//推出编辑模式
errorAreaId
:
''
});
}
else
{
this
.
props
.
editModelChange
(
false
);
//显示全景统计
this
.
setState
({
isPointSave
:
true
,
treeData
:[],
isPointSave
:
true
,
treeData
:
[],
pageType
:
'region'
,
//区域
sideControlShow
:
false
,
//隐藏耳朵
isShowActionBar
:
true
,
//显示工具栏
startLoadExceptionArea
:
true
,
//显示marker,
...
...
@@ -1470,17 +1507,19 @@ class View3D extends Component {
}
}
});
}
else
{
}
else
{
this
.
props
.
editModelChange
(
false
);
//显示全景统计
this
.
enableCamera
();
//恢复相机
this
.
setState
({
treeData
:[],
sideControlShow
:
false
,
//隐藏耳朵
isShowActionBar
:
true
,
//显示工具栏
startLoadExceptionArea
:
true
,
//显示marker,
headerName
:
''
,
//设置头名称
isEditMode
:
false
,
//推出编辑模式
errorAreaId
:
''
});
treeData
:
[],
pageType
:
'region'
,
//区域
sideControlShow
:
false
,
//隐藏耳朵
isShowActionBar
:
true
,
//显示工具栏
startLoadExceptionArea
:
true
,
//显示marker,
headerName
:
''
,
//设置头名称
isEditMode
:
false
,
//推出编辑模式
errorAreaId
:
''
});
}
}
...
...
@@ -1500,7 +1539,6 @@ class View3D extends Component {
return
object
;
}
addMarker
=
({
extData
,
position
})
=>
{
console
.
log
(
'addMarker'
);
let
{
markers
}
=
this
.
state
;
for
(
let
i
=
0
;
i
<
markers
[
extData
.
type
].
length
;
i
++
)
{
...
...
@@ -1522,11 +1560,12 @@ class View3D extends Component {
type
:
extData
.
type
,
position3d
:
position
}
this
.
setState
({
selectPoints
,
markers
});
this
.
setState
({
selectPoints
,
markers
,
showRightPanel
:
true
});
// savePointListAction(paramsArr).then(data => {
// })
// this.setState({positionxyz: position})
}
render
()
{
const
{
...
...
@@ -1548,6 +1587,7 @@ class View3D extends Component {
errorAreaId
,
positionxyz
,
rightHeight
,
treeDataList
}
=
this
.
state
;
const
{
dimension
,
hiddenScreenSaver
,
editModelChange
}
=
this
.
props
;
const
graphicProps
=
{
...
...
@@ -1652,6 +1692,7 @@ class View3D extends Component {
selectItemChange
=
{
this
.
selectItemChange
}
// stopDrowing={this.stopDrowing}
pageType
=
{
pageType
}
treeDataList
=
{
treeDataList
}
pointTypeArr
=
{
pointTypeArr
}
pointTypeChange
=
{
this
.
pointTypeChange
}
dragItemChange
=
{
this
.
dragItemChange
}
...
...
@@ -1663,6 +1704,7 @@ class View3D extends Component {
selectPointChange
=
{
this
.
selectPointChange
}
// stopDrowing={this.stopDrowing}
pageType
=
{
pageType
}
treeDataList
=
{
treeDataList
}
// pointType={pointType}
pointTypeArr
=
{
pointTypeArr
}
pointTypeChange
=
{
this
.
pointTypeChange
}
...
...
mods/components/3dviewConvertor/view/conf.js
View file @
6c1be8a6
...
...
@@ -362,6 +362,10 @@ export const desigerHelperConfig = {
},
objAnchor
:
{
position
:
[
0
,
5
,
0
]
},
verticalCameraEffect
:
{
position
:
[
2.3815615940156256
,
419.57425506421896
,
11.965199740306224
],
target
:
[
2.408441971875859
,
1.3271790975878637
,
3.918674823963386
]
}
};
...
...
mods/components/3dviewConvertor/view/moduleEditComponent/AreaLeftTree.js
View file @
6c1be8a6
...
...
@@ -7,7 +7,20 @@ import { getAreaTreeAction,saveAreaDataAction } from '../../services/moduleEditS
const
eventConnect
=
Connect
.
eventConnect
;
const
TreeNode
=
Tree
.
TreeNode
;
const
Option
=
Select
.
Option
;
const
getParentKey
=
(
key
,
tree
)
=>
{
let
parentKey
;
for
(
let
i
=
0
;
i
<
tree
.
length
;
i
++
)
{
const
node
=
tree
[
i
];
if
(
node
.
children
&&
node
.
children
.
length
>
0
)
{
if
(
node
.
children
.
some
(
item
=>
item
.
id
===
key
))
{
parentKey
=
node
.
id
;
}
else
if
(
getParentKey
(
key
,
node
.
children
))
{
parentKey
=
getParentKey
(
key
,
node
.
children
);
}
}
}
return
parentKey
;
};
@
eventConnect
class
AreaLeftTree
extends
Component
{
...
...
@@ -22,29 +35,34 @@ class AreaLeftTree extends Component {
selectedKeys
:
[],
treeData
:[],
pointTypeArr
:[],
pointType
:
''
pointType
:
''
,
treeDataList
:
[],
searchValue
:
''
};
}
componentDidMount
()
{
let
{
treeData
,
pointTypeArr
}
=
this
.
props
;
let
{
treeData
,
pointTypeArr
,
treeDataList
}
=
this
.
props
;
this
.
setState
({
treeData
,
treeDataList
,
pointTypeArr
,
pointType
:
pointTypeArr
[
0
]?
pointTypeArr
[
0
].
code
:
''
})
}
componentWillUnmount
()
{
}
componentWillReceiveProps
(
nextProps
)
{
console
.
log
(
nextProps
,
'nextProps'
)
let
{
treeData
,
pointTypeArr
}
=
nextProps
;
console
.
log
(
nextProps
)
let
{
treeData
,
pointTypeArr
,
pageType
,
treeDataList
}
=
nextProps
;
this
.
setState
({
treeData
,
pointTypeArr
,
treeDataList
,
pointType
:
pointTypeArr
[
0
]?
pointTypeArr
[
0
].
code
:
''
})
}
...
...
@@ -54,10 +72,23 @@ class AreaLeftTree extends Component {
// this.state.pointType = value;
// this.props.pointTypeChange(value);
// }
onSearchChange
=
(
e
,
value
)
=>
{
console
.
log
(
e
,
value
);
onSearchChange
=
e
=>
{
const
{
treeDataList
,
treeData
}
=
this
.
state
const
value
=
e
.
target
.
value
;
const
expandedKeys
=
treeDataList
.
map
(
item
=>
{
if
(
item
.
title
.
indexOf
(
value
)
>
-
1
)
{
return
getParentKey
(
item
.
key
,
treeData
);
}
return
null
;
})
.
filter
((
item
,
i
,
self
)
=>
item
&&
self
.
indexOf
(
item
)
===
i
);
this
.
setState
({
value
expandedKeys
,
searchValue
:
value
,
autoExpandParent
:
true
});
}
...
...
@@ -105,9 +136,23 @@ class AreaLeftTree extends Component {
}
// onClick={(e)=>{e.nativeEvent.stopImmediatePropagation();e.stopPropagation();console.log(123123);}}
renderTreeNodes
=
(
data
)
=>
{
let
{
searchValue
}
=
this
.
state
// console.log(data);
if
(
data
.
length
>
0
)
{
return
data
.
map
((
item
)
=>
{
const
index
=
item
.
name
.
indexOf
(
searchValue
);
const
beforeStr
=
item
.
name
.
substr
(
0
,
index
);
const
afterStr
=
item
.
name
.
substr
(
index
+
searchValue
.
length
);
const
title
=
index
>
-
1
?
(
<
span
>
{
beforeStr
}
<
span
style
=
{{
color
:
'#f50'
}}
>
{
searchValue
}
<
/span
>
{
afterStr
}
<
/span
>
)
:
(
<
span
>
{
item
.
name
}
<
/span
>
);
if
(
item
.
children
)
{
return
(
<
TreeNode
...
...
@@ -115,7 +160,7 @@ class AreaLeftTree extends Component {
<
div
>
{
<
span
>
{
item
.
nam
e
}
{
titl
e
}
<
span
className
=
'icon'
>
{
item
.
isBind
?
''
:
...
...
@@ -145,48 +190,14 @@ class AreaLeftTree extends Component {
<
/TreeNode
>
);
}
return
<
TreeNode
key
=
{
item
.
id
}
title
=
{
<
div
>
{
<
span
>
{
item
.
name
}
<
span
className
=
'icon'
>
{
item
.
isBind
?
''
:
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/editBtn.png'
onClick
=
{(
e
)
=>
{
e
.
nativeEvent
.
stopImmediatePropagation
();
e
.
stopPropagation
();
this
.
props
.
startDrow
(
item
);
}}
/
>
}
{
item
.
isBind
?
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/bindedTip.png'
/>
:
item
.
routePath
?
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/noSaveTip.png'
/>
:
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/nobindTip.png'
/>
}
<
/span
>
<
/span
>
}
<
/div
>
}
dataRef
=
{
item
}
{...
item
}
/>
;
});
}
}
render
()
{
let
{
treeData
,
checkedKeys
,
pointTypeArr
,
pointType
}
=
this
.
state
;
let
{
treeData
,
checkedKeys
,
pointTypeArr
,
pointType
}
=
this
.
state
;
let
{
pageType
}
=
this
.
props
;
return
(
return
(
<
div
className
=
"leftTree"
>
<
div
className
=
'leftContainer'
>
<
div
className
=
'topForm'
>
...
...
@@ -199,7 +210,7 @@ class AreaLeftTree extends Component {
selectable
=
{
true
}
onExpand
=
{
this
.
onExpand
}
expandedKeys
=
{
this
.
state
.
expandedKeys
}
autoExpandParent
=
{
t
his
.
state
.
autoExpandParent
}
autoExpandParent
=
{
t
rue
}
// onCheck={this.onCheck}
// checkedKeys={checkedKeys}
onSelect
=
{
this
.
onTreeSelect
}
...
...
mods/components/3dviewConvertor/view/moduleEditComponent/PointLeftTree.js
View file @
6c1be8a6
...
...
@@ -7,7 +7,20 @@ import { getAreaTreeAction,saveAreaDataAction } from '../../services/moduleEditS
const
eventConnect
=
Connect
.
eventConnect
;
const
TreeNode
=
Tree
.
TreeNode
;
const
Option
=
Select
.
Option
;
const
getParentKey
=
(
key
,
tree
)
=>
{
let
parentKey
;
for
(
let
i
=
0
;
i
<
tree
.
length
;
i
++
)
{
const
node
=
tree
[
i
];
if
(
node
.
children
)
{
if
(
node
.
children
.
some
(
item
=>
item
.
name
===
key
))
{
parentKey
=
node
.
id
;
}
else
if
(
getParentKey
(
key
,
node
.
children
))
{
parentKey
=
getParentKey
(
key
,
node
.
children
);
}
}
}
return
parentKey
;
};
@
eventConnect
class
PointLeftTree
extends
Component
{
...
...
@@ -22,15 +35,18 @@ class PointLeftTree extends Component {
selectedKeys
:
[],
treeData
:[],
pointTypeArr
:[],
pointType
:
''
pointType
:
''
,
treeDataList
:
[],
searchValue
:
''
};
}
componentDidMount
()
{
let
{
treeData
,
pointTypeArr
}
=
this
.
props
;
let
{
treeData
,
pointTypeArr
,
treeDataList
}
=
this
.
props
;
this
.
setState
({
treeData
,
treeDataList
,
pointTypeArr
,
pointType
:
pointTypeArr
[
0
]?
pointTypeArr
[
0
].
code
:
''
})
...
...
@@ -42,11 +58,12 @@ class PointLeftTree extends Component {
}
componentWillReceiveProps
(
nextProps
)
{
console
.
log
(
nextProps
)
let
{
treeData
,
pointTypeArr
}
=
nextProps
;
let
{
treeData
,
pointTypeArr
,
treeDataList
}
=
nextProps
;
this
.
setState
({
treeData
,
// pointTypeArr,
// pointType: pointTypeArr[0]?pointTypeArr[0].code:''
treeDataList
,
//pointTypeArr,
//pointType: pointTypeArr[0]?pointTypeArr[0].code:''
})
}
...
...
@@ -55,12 +72,23 @@ class PointLeftTree extends Component {
this
.
setState
({
pointType
:
value
})
this
.
props
.
pointTypeChange
(
value
);
}
onSearchChange
=
(
e
,
value
)
=>
{
console
.
log
(
e
,
value
);
onSearchChange
=
e
=>
{
const
{
treeDataList
,
treeData
}
=
this
.
state
const
value
=
e
.
target
.
value
;
const
expandedKeys
=
treeDataList
.
map
(
item
=>
{
if
(
item
.
title
.
indexOf
(
value
)
>
-
1
)
{
return
getParentKey
(
item
.
title
,
treeData
);
}
return
null
;
})
.
filter
((
item
,
i
,
self
)
=>
item
&&
self
.
indexOf
(
item
)
===
i
);
this
.
setState
({
value
});
}
expandedKeys
,
searchValue
:
value
,
autoExpandParent
:
true
});
}
onExpand
=
(
expandedKeys
)
=>
{
//console.log('onExpand', arguments);
...
...
@@ -80,9 +108,23 @@ class PointLeftTree extends Component {
}
renderTreeNodes
=
(
data
)
=>
{
let
{
searchValue
}
=
this
.
state
// console.log(data);
if
(
data
.
length
>
0
)
{
return
data
.
map
((
item
)
=>
{
const
index
=
item
.
name
.
indexOf
(
searchValue
);
const
beforeStr
=
item
.
name
.
substr
(
0
,
index
);
const
afterStr
=
item
.
name
.
substr
(
index
+
searchValue
.
length
);
const
title
=
index
>
-
1
?
(
<
span
>
{
beforeStr
}
<
span
style
=
{{
color
:
'#f50'
}}
>
{
searchValue
}
<
/span
>
{
afterStr
}
<
/span
>
)
:
(
<
span
>
{
item
.
name
}
<
/span
>
);
if
(
item
.
children
)
{
return
(
<
TreeNode
...
...
@@ -90,7 +132,7 @@ class PointLeftTree extends Component {
<
div
>
{
item
.
isRegion
?
<
span
>
{
item
.
nam
e
}
{
titl
e
}
<
span
className
=
'icon'
>
{
item
.
isRegion
?
item
.
isBind
?
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/bindedTip.png'
/>
:
...
...
@@ -107,7 +149,7 @@ class PointLeftTree extends Component {
this
.
props
.
dragItemChange
(
item
)
}}
>
{
item
.
nam
e
}
{
titl
e
}
<
span
className
=
'icon'
>
{
item
.
isRegion
?
item
.
isBind
?
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/bindedTip.png'
/>
:
...
...
@@ -129,46 +171,6 @@ class PointLeftTree extends Component {
<
/TreeNode
>
);
}
return
<
TreeNode
key
=
{
item
.
id
}
title
=
{
<
div
>
{
item
.
isRegion
?
<
span
>
{
item
.
name
}
<
span
className
=
'icon'
>
{
item
.
isRegion
?
item
.
isBind
?
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/bindedTip.png'
/>
:
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/nobindTip.png'
/>
:
item
.
isBind
?
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/bindedTip.png'
/>
:
item
.
position3d
?
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/noSaveTip.png'
/>
:
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/nobindTip.png'
/>
}
<
/span
>
<
/span>
:
<
span
draggable
=
{
true
}
onDragStart
=
{()
=>
{
this
.
props
.
dragItemChange
(
item
)
}}
>
{
item
.
name
}
<
span
className
=
'icon'
>
{
item
.
isRegion
?
item
.
isBind
?
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/bindedTip.png'
/>
:
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/nobindTip.png'
/>
:
item
.
isBind
?
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/bindedTip.png'
/>
:
item
.
position3d
?
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/noSaveTip.png'
/>
:
<
img
src
=
'/mods/components/3dviewConvertor/assets/convertor/moduleEdit/nobindTip.png'
/>
}
<
/span
>
<
/span>
}
<
/div
>
}
dataRef
=
{
item
}
{...
item
}
// onClick={() => {console.log('aaa')}}
/>
;
});
}
...
...
@@ -181,19 +183,14 @@ class PointLeftTree extends Component {
this
.
setState
({
selectedKeys
});
this
.
props
.
selectPointChange
(
selectItem
)
}
render
()
{
let
{
treeData
,
checkedPointsKeys
,
pointTypeArr
,
pointType
}
=
this
.
state
;
let
{
pageType
}
=
this
.
props
;
console
.
log
(
treeData
)
console
.
log
(
this
.
props
)
return
(
return
(
<
div
className
=
"leftTree"
>
<
div
className
=
'leftContainer'
>
<
div
className
=
'topForm'
>
{(
pointType
!=
''
)
&&
<
Select
onChange
=
{
this
.
onSelectChange
}
defaultValue
=
{
pointType
}
value
=
{
pointType
}
className
=
'leftSelect'
>
{
pointTypeArr
.
map
(
item
=>
{
...
...
@@ -201,7 +198,9 @@ class PointLeftTree extends Component {
})
}
<
/Select
>
<
Search
className
=
'leftSearch'
icon
=
"search"
value
=
{
''
}
onChange
=
{
this
.
onSearchChange
}
onIconClick
=
{
this
.
onSearchChange
}
/
>
}
<
Search
className
=
'leftSearch'
icon
=
"search"
onChange
=
{
this
.
onSearchChange
}
onIconClick
=
{
this
.
onSearchChange
}
/
>
<
/div
>
<
div
className
=
'treeBox'
>
<
Tree
...
...
mods/components/3dviewConvertor/view/moduleEditComponent/RightEditRegionPanel.js
View file @
6c1be8a6
...
...
@@ -87,7 +87,7 @@ class RightEditRegionPanel extends Component {
routePath
:
JSON
.
parse
(
detailData
.
routePath
).
routePath
,
regionHeigth
:
parseFloat
(
dataValues
.
positionZ
)
})}]
// this.props.saveRoutePath(routePathData)
let
routePathDataNode
=
{
riskSourceId
:
detailData
.
id
,
...
...
@@ -184,8 +184,8 @@ class RightEditRegionPanel extends Component {
</div> */
}
<
div
className
=
'positionItem'
>
<
FormItem
label
=
"高"
field
=
"positionZ"
{...
formItemLayout
}
>
<
Input
placeholder
=
{
detailData
.
routePath
&&
JSON
.
parse
(
detailData
.
routePath
).
regionHeigth
||
rightHeight
}
<
Input
placeholder
=
{
detailData
.
routePath
&&
JSON
.
parse
(
detailData
.
routePath
).
regionHeigth
||
rightHeight
}
value
=
{
heightInput
}
onChange
=
{(
e
)
=>
this
.
onChange
(
'positionZ'
,
e
)}
/
>
{
/* <Input value={detailData.ue4Location && detailData.ue4Location[2]} /> */
}
...
...
mods/components/3dviewConvertor/view/panoramic/statistical/EquipStatusList.js
View file @
6c1be8a6
import
React
,
{
Component
}
from
'react'
;
import
{
equipStatusListAction
}
from
'./../../../services/panoramicService'
;
import
{
equipStatusIconMapper
}
from
'./../../../consts/imgStatic'
;
const
getIcon
=
(
status
)
=>
{
return
equipStatusIconMapper
[
`equip_
${
status
}
`
];
};
/**
* 设备状态消息
*/
...
...
@@ -32,7 +37,7 @@ export default class EquipStatusList extends Component {
return
(
<
div
key
=
{
item
.
id
}
className
=
"title-child"
>
<
div
className
=
"title-date"
>
{
item
.
changeDate
}
<
/div
>
<
div
className
=
"title-text"
>
{
item
.
label
}
<
/div
>
<
div
className
=
"title-text"
>
{
item
.
label
}
&
nbsp
;
&
nbsp
;
<
img
src
=
{
getIcon
(
item
.
status
)}
alt
=
""
/>
<
/div
>
<
/div
>
);
})
...
...
mods/components/3dviewConvertor/view/points/marker3DFactory.js
View file @
6c1be8a6
...
...
@@ -78,22 +78,16 @@ export default function marker3DFactory(WrappedComponent = 'div', options){
}
componentWillReceiveProps
=
nextProps
=>
{
// if(nextProps.isEditMode){
// this.markersCache.eachValue(obj=>{
// if(nextProps.selectPoints.type == obj.extData.type && nextProps.selectPoints.id ==obj.extData.id ){
// this.setTwinkleConf(obj);
// }
// });
// }
if
(
nextProps
.
isEditMode
){
this
.
markersCache
.
eachValue
(
obj
=>
{
// this.setTopCardConf(obj, obj.extData);
if
(
nextProps
.
selectPoints
.
type
==
obj
.
extData
.
type
&&
nextProps
.
selectPoints
.
id
==
obj
.
extData
.
id
){
this
.
setTwinkleConf
(
obj
);
}
});
}
this
.
setState
({
planStarted
:
nextProps
.
planStarted
});
}
// onEditorChangeDone = (evt) => {
// if (evt && evt.target && evt.target.object){
// const marker = evt.target.object;
// //alert(marker.position.toArray());//(marker.extData
// this.props.addMarker(marker)
// }
// }
componentWillUnmount
()
{
this
.
objAnchorHelper
&&
this
.
objAnchorHelper
.
destroy
();
}
...
...
@@ -172,17 +166,17 @@ export default function marker3DFactory(WrappedComponent = 'div', options){
obj
.
baseObjHelper
.
titleConfig
=
{
// 顶牌平面参数
planeOptions
:
{
width
:
3
0
,
height
:
15
,
width
:
4
0
,
height
:
20
,
position
:
[
0
,
20
,
0
],
doubleSide
:
true
},
canvasOptions
:
{
font
:
'
34
px Microsoft YaHei'
,
font
:
'
28
px Microsoft YaHei'
,
fillStyle
:
'white'
,
textBaseline
:
'middle'
,
textAlign
:
'center'
,
textX
:
128
,
textX
:
128
},
imgWidth
:
256
,
imgHeight
:
128
,
...
...
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