Commit 38bd48ea authored by 张博's avatar 张博

bug

parent 6cafbc87
...@@ -67,7 +67,7 @@ export default { ...@@ -67,7 +67,7 @@ export default {
search: require('../assets/convertor/3dview/datapanel/search.png'), search: require('../assets/convertor/3dview/datapanel/search.png'),
smilingFace: require('../assets/convertor/3dview/datapanel/smilingFace.png'), smilingFace: require('../assets/convertor/3dview/datapanel/smilingFace.png'),
user: require('../assets/convertor/3dview/datapanel/user.png'), user: require('../assets/convertor/3dview/datapanel/user.png'),
searchPane: require('../assets/convertor/3dview/actionbars/chaxun.png'), searchPane: require('../assets/convertor/3dview/actionbars/chaxun.png')
}, },
markers: { markers: {
riskSource_0: require('../assets/convertor/3dview/markers/risk-0.png'), riskSource_0: require('../assets/convertor/3dview/markers/risk-0.png'),
......
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
.carousel-img { .carousel-img {
width: 100%; width: 100%;
height: 100%; height: 100%;
padding: 5px padding: 5px;
} }
.carousel-indicators { .carousel-indicators {
...@@ -138,9 +138,7 @@ ...@@ -138,9 +138,7 @@
float: left; float: left;
width: 131px;//9.84%; width: 131px;//9.84%;
height: 40px; height: 40px;
//background: $biz-table-title-color;//#333;
background: rgba(25, 86, 147, 1); background: rgba(25, 86, 147, 1);
// border-left: 1px solid $core-border-color;
box-sizing: border-box; box-sizing: border-box;
flex: 1; flex: 1;
} }
......
...@@ -56,7 +56,7 @@ class MaskContent extends Component { ...@@ -56,7 +56,7 @@ class MaskContent extends Component {
this.setState({ activeAction: type }); this.setState({ activeAction: type });
} }
this.props.onActionItemClick && this.props.onActionItemClick(type, label, showLabel); this.props.onActionItemClick && this.props.onActionItemClick(type, label, showLabel);
if(type === "search"){ if (type === 'search'){
this.changeSearchPaneVisible(); this.changeSearchPaneVisible();
} }
} }
...@@ -69,6 +69,7 @@ class MaskContent extends Component { ...@@ -69,6 +69,7 @@ class MaskContent extends Component {
handleExceptModel =(type)=>{ handleExceptModel =(type)=>{
this.initViewModel(); this.initViewModel();
this.props.handleExceptModel && this.props.handleExceptModel(type); this.props.handleExceptModel && this.props.handleExceptModel(type);
this.props.focusPosition(this.toCameraPosition(record.position));
} }
initViewModel = ()=>{ initViewModel = ()=>{
......
...@@ -136,12 +136,18 @@ class PointsPool extends Component { ...@@ -136,12 +136,18 @@ class PointsPool extends Component {
markers={markers.pool} markers={markers.pool}
onCreated={(val) => this.onMarkersCreated('pool', val)} onCreated={(val) => this.onMarkersCreated('pool', val)}
isEditMode={this.props.isEditMode} isEditMode={this.props.isEditMode}
addMarker={this.addMarker}
stagePilot={this.props.stagePilot}
selectPoints={this.props.selectPoints}
/> />
<FireResourcePoint <FireResourcePoint
{...rest} {...rest}
markers={markers.hydrant} markers={markers.hydrant}
onCreated={(val) => this.onMarkersCreated('hydrant', val)} onCreated={(val) => this.onMarkersCreated('hydrant', val)}
isEditMode={this.props.isEditMode} isEditMode={this.props.isEditMode}
addMarker={this.addMarker}
stagePilot={this.props.stagePilot}
selectPoints={this.props.selectPoints}
/> />
<FireResourcePoint <FireResourcePoint
{...rest} {...rest}
...@@ -157,12 +163,18 @@ class PointsPool extends Component { ...@@ -157,12 +163,18 @@ class PointsPool extends Component {
markers={markers.fireChamber} markers={markers.fireChamber}
onCreated={(val) => this.onMarkersCreated('fireChamber', val)} onCreated={(val) => this.onMarkersCreated('fireChamber', val)}
isEditMode={this.props.isEditMode} isEditMode={this.props.isEditMode}
addMarker={this.addMarker}
stagePilot={this.props.stagePilot}
selectPoints={this.props.selectPoints}
/> />
<FireResourcePoint <FireResourcePoint
{...rest} {...rest}
markers={markers.fireFoamRoom} markers={markers.fireFoamRoom}
onCreated={(val) => this.onMarkersCreated('fireFoamRoom', val)} onCreated={(val) => this.onMarkersCreated('fireFoamRoom', val)}
isEditMode={this.props.isEditMode} isEditMode={this.props.isEditMode}
addMarker={this.addMarker}
stagePilot={this.props.stagePilot}
selectPoints={this.props.selectPoints}
/> />
{!hideDetector ? {!hideDetector ?
<FireResourcePoint <FireResourcePoint
...@@ -204,6 +216,9 @@ class PointsPool extends Component { ...@@ -204,6 +216,9 @@ class PointsPool extends Component {
markers={markers.fireCar} markers={markers.fireCar}
onCreated={(val) => this.onMarkersCreated('fireCar', val)} onCreated={(val) => this.onMarkersCreated('fireCar', val)}
isEditMode={this.props.isEditMode} isEditMode={this.props.isEditMode}
addMarker={this.addMarker}
stagePilot={this.props.stagePilot}
selectPoints={this.props.selectPoints}
/> />
<PointStatistics <PointStatistics
{...rest} {...rest}
......
import React, { Component } from 'react'; import React, { Component } from 'react';
import { Modal ,Button} from 'amos-framework'; import { Modal } from 'amos-framework';
class PromptModal extends Component { class PromptModal extends Component {
constructor(props) { constructor(props) {
super(props); super(props);
this.state = { this.state = {};
};
}
cancel = ()=>{
const {isback} =this.props.promptData
this.props.closePromptModal()
if(isback){
this.props.handleOutExceptModel()
}
} }
saveData=()=>{ cancel = () => {
const {isback,type} =this.props.promptData const { isback } = this.props.promptData;
if(isback){ this.props.closePromptModal();
this.props.handleOutExceptModel() if (isback) {
this.props.handleOutExceptModel();
} }
this.props.closePromptModal() };
if(type=='region') saveData = () => {
{ const { isback, type } = this.props.promptData;
this.props.saveAreaData() if (isback) {
}else{ this.props.handleOutExceptModel();
this.props.savePointData()
} }
this.props.closePromptModal();
if (type === 'region') {
this.props.saveAreaData();
} else {
this.props.savePointData();
} }
};
render() { render() {
const {promptData} =this.props const { promptData } = this.props;
return ( return (
<Modal <Modal
visible={promptData.promptvisible} visible={promptData.promptvisible}
className={'pormpt-modal'} className={'pormpt-modal'}
content={<div className ='prompt-content'> content={
<div className="prompt-content">
<div>{promptData.promptContent}</div> <div>{promptData.promptContent}</div>
{promptData.btnType =='isOk'? {promptData.btnType == 'isOk' ? (
<div className='prompt-buttons'> <div className="prompt-buttons">
<span className={'promptOk'} onClick={this.saveData} /> <span className={'promptOk'} onClick={this.saveData} />
<span className={'promptNo'} onClick={this.cancel} /> <span className={'promptNo'} onClick={this.cancel} />
</div>: </div>
<div className='prompt-buttons'> ) : (
<div className="prompt-buttons">
<span className={'promptSave'} onClick={this.saveData} /> <span className={'promptSave'} onClick={this.saveData} />
<span className={'promptCancel'} onClick={this.cancel} /> <span className={'promptCancel'} onClick={this.cancel} />
</div> </div>
} )}
</div> </div>
} }
noDefaultFooter noDefaultFooter
......
...@@ -98,7 +98,8 @@ class View3D extends Component { ...@@ -98,7 +98,8 @@ class View3D extends Component {
fireChamber: [], fireChamber: [],
fireCar: [], fireCar: [],
fire: [], fire: [],
fireDetection: [] fireDetection: [],
fireFoamRoom: []
}, },
markerType: null, markerType: null,
planStarted: false, planStarted: false,
...@@ -510,7 +511,7 @@ class View3D extends Component { ...@@ -510,7 +511,7 @@ class View3D extends Component {
const me = this; const me = this;
if (!obj.isForceParent) { if (!obj.isForceParent) {
obj.on('click', evt => { obj.on('click', evt => {
if (this.state.isEditMode == false) { if (this.state.isEditMode === false) {
console.log('obj click:', evt); console.log('obj click:', evt);
// this.focusPosition(evt.pickedPosition); // this.focusPosition(evt.pickedPosition);
me.outlineFactory.toggleOutline(evt.object); me.outlineFactory.toggleOutline(evt.object);
...@@ -575,8 +576,22 @@ class View3D extends Component { ...@@ -575,8 +576,22 @@ class View3D extends Component {
getPointList = (pointType,treeData) => { getPointList = (pointType,treeData) => {
this.clearMarkers(); this.clearMarkers();
if (treeData){ if (treeData){
let markers = {}; let markers = {
markers[pointType] = []; riskSource: [],//风险点
patrol: [],//巡检点
impEquipment: [],//重点设备
monitorEquipment: [],//探测器
video: [],//摄像头
fireEquipment: [],//消防设备
person: [],
pool: [],
hydrant: [],
fireChamber: [],
fireCar: [],
fire: [],
fireDetection: [],
fireFoamRoom: []
};
this.getPointLoop( { markers }, pointType, treeData); this.getPointLoop( { markers }, pointType, treeData);
this.setState({ markers }); this.setState({ markers });
} }
...@@ -909,8 +924,29 @@ class View3D extends Component { ...@@ -909,8 +924,29 @@ class View3D extends Component {
//保存点绑定 //保存点绑定
savePointData = () => { savePointData = () => {
let { markers, pointType, isPointSave } = this.state; let { markers, pointType } = this.state;
this.setState({ isPointSave: false }); this.setState({ isPointSave: false });
if (pointType === 'fireEquipment') {
let typeArr = ['fireEquipment','pool','hydrant','fireChamber','fireCar','fireFoamRoom'];
for (let i = 0;i < typeArr.length;i++){
let paramsArr = [];
if (markers[typeArr[i]].length > 0){
paramsArr = markers[typeArr[i]].filter(e=> e.isEdit).map(item=>{
return {
pointId: item.id,
pointType: item.type,
position3d: item.position.length > 1 ? `${item.position[0]},${item.position[1]},${item.position[2]}` : null
};
});
if (i === 0){
this.savePointList(pointType,paramsArr);
} else {
this.savePointList(pointType,paramsArr,true);
}
}
}
} else {
let paramsArr = []; let paramsArr = [];
paramsArr = markers[pointType].filter(e=> e.isEdit).map(item=>{ paramsArr = markers[pointType].filter(e=> e.isEdit).map(item=>{
return { return {
...@@ -921,8 +957,9 @@ class View3D extends Component { ...@@ -921,8 +957,9 @@ class View3D extends Component {
}); });
this.savePointList(pointType,paramsArr); this.savePointList(pointType,paramsArr);
} }
}
savePointList = (pointType,paramsArr) => { savePointList = (pointType,paramsArr,isfirst = true) => {
savePointListAction(paramsArr).then( savePointListAction(paramsArr).then(
data => { data => {
getPointTreeAction(pointType).then( getPointTreeAction(pointType).then(
...@@ -934,8 +971,12 @@ class View3D extends Component { ...@@ -934,8 +971,12 @@ class View3D extends Component {
}); });
} }
); );
message.success('保存成功'); isfirst && message.success('保存成功');
},error => message.error('保存失败')
},error =>{
isfirst && message.error('保存失败');
}
); );
} }
...@@ -1190,7 +1231,7 @@ class View3D extends Component { ...@@ -1190,7 +1231,7 @@ class View3D extends Component {
id: dragItem.id, id: dragItem.id,
type: dragItem.type type: dragItem.type
}; };
markers[`${type}`] = markers[`${type}`].filter(e => e.id !== dragItem.id ); markers[`${type}`] = markers[`${type}`] && markers[`${type}`].filter(e => e.id !== dragItem.id );
markers[`${type}`].push(addPointParam); markers[`${type}`].push(addPointParam);
this.setState({ this.setState({
markers: deepCopy(markers), markers: deepCopy(markers),
...@@ -1572,7 +1613,7 @@ class View3D extends Component { ...@@ -1572,7 +1613,7 @@ class View3D extends Component {
addMarker=({ extData, position })=>{ addMarker=({ extData, position })=>{
const me = this; const me = this;
const { markers } = me.state; const { markers } = me.state;
const isInside = me.polygonRegion && extData.parentId && me.polygonRegion[extData.parentId].pointInPolygon([position.x,position.y,position.z]); //const isInside = me.polygonRegion && extData.parentId && me.polygonRegion[extData.parentId].pointInPolygon([position.x,position.y,position.z]);
// if (isInside){ // if (isInside){
markers[extData.type].forEach(e => { markers[extData.type].forEach(e => {
if (e.id === extData.id){ if (e.id === extData.id){
...@@ -1716,7 +1757,7 @@ class View3D extends Component { ...@@ -1716,7 +1757,7 @@ class View3D extends Component {
<FlameFire position={firePosition} width={10} height={20} depth={8} sliceSpacing={1} visible={planStarted} /> <FlameFire position={firePosition} width={10} height={20} depth={8} sliceSpacing={1} visible={planStarted} />
{isEditMode && this.renderAreas()} {isEditMode && this.renderAreas()}
{this.renderPolygonRegion(exceptionAreas)} {this.renderPolygonRegion(exceptionAreas)}
{startLoadExceptionArea && <ExceptionArea markers={exceptionMarkers} handleExceptModel={this.handleExceptModel} />} {startLoadExceptionArea && <ExceptionArea markers={exceptionMarkers} handleExceptModel={this.handleExceptModel} focusPosition={this.focusPosition} />}
</A3DDesigner> </A3DDesigner>
</div> </div>
{ isEditMode && { isEditMode &&
......
...@@ -44,10 +44,13 @@ class ExceptionArea extends Component { ...@@ -44,10 +44,13 @@ class ExceptionArea extends Component {
} }
onMarkerClick = (marker) => { onMarkerClick = (marker) => {
console.log(marker);
const { extData } = marker; const { extData } = marker;
this.props.handleExceptModel && this.props.handleExceptModel('into_except_model',extData.id); this.props.handleExceptModel && this.props.handleExceptModel('into_except_model',extData.id);
this.props.focusPosition(this.toCameraPosition(extData.position));
} }
setTopCardConf = (obj,{ safetyIndex })=>{ setTopCardConf = (obj,{ safetyIndex })=>{
obj.baseObjHelper.titleConfig = { obj.baseObjHelper.titleConfig = {
// 顶牌平面参数 // 顶牌平面参数
...@@ -71,6 +74,16 @@ class ExceptionArea extends Component { ...@@ -71,6 +74,16 @@ class ExceptionArea extends Component {
obj.baseObjHelper.title = safetyIndex; obj.baseObjHelper.title = safetyIndex;
} }
toCameraPosition = (item) => {
if (item && item.x){
return { x: item.x , y: item.y + 200 , z: item.z + 200 };
} else if (item && item[0]){
return { x: item[0] , y: item[1] + 200 , z: item[2] + 200 };
} else {
return;
}
}
markerCreated = ({ markersCache }) => { markerCreated = ({ markersCache }) => {
this.markersCache = markersCache; this.markersCache = markersCache;
markersCache.eachValue(item=>{ markersCache.eachValue(item=>{
...@@ -97,7 +110,8 @@ class ExceptionArea extends Component { ...@@ -97,7 +110,8 @@ class ExceptionArea extends Component {
ExceptionArea.propTypes = { ExceptionArea.propTypes = {
markers: PropTypes.array, markers: PropTypes.array,
handleExceptModel: PropTypes.func handleExceptModel: PropTypes.func,
focusPosition: PropTypes.func
}; };
export default ExceptionArea; export default ExceptionArea;
...@@ -28,7 +28,7 @@ const createMarkerLabel = text => { ...@@ -28,7 +28,7 @@ const createMarkerLabel = text => {
}; };
const urlMapper = { const urlMapper = {
fireCar: { file: 'fire-car', label: '消防车' }, fireCar: { file: 'fire-car', label: '消防车' },
fireEquipment: { file: 'fireEquip', label: '消防车' }, fireEquipment: { file: 'pool', label: '消防' },
fireFoamRoom: { file: 'fireFoam', label: '泡沫间' }, fireFoamRoom: { file: 'fireFoam', label: '泡沫间' },
fireChamber: { file: 'fireChamber', label: '消防室' }, fireChamber: { file: 'fireChamber', label: '消防室' },
hydrant: { file: 'hydrant', label: '消防栓' }, hydrant: { file: 'hydrant', label: '消防栓' },
......
...@@ -20,73 +20,73 @@ const getColumns = (self,retrieveType) => { ...@@ -20,73 +20,73 @@ const getColumns = (self,retrieveType) => {
switch (retrieveType) { switch (retrieveType) {
case 'riskSource': case 'riskSource':
return [ return [
{title: '编号',dataIndex: 'code',key: 'code',width: '25%'}, { title: '编号',dataIndex: 'code',key: 'code',width: '25%' },
{title: '名称',dataIndex: 'label',key: 'label',width: '25%'}, { title: '名称',dataIndex: 'label',key: 'label',width: '25%' },
{title: '等级',dataIndex: 'levelStr',key: 'level',width: '25%'}, { title: '等级',dataIndex: 'levelStr',key: 'level',width: '25%' },
{title: '类别',dataIndex: 'typeName',key: 'typeName',width: '25%'} { title: '类别',dataIndex: 'typeName',key: 'typeName',width: '25%' }
]; ];
case 'patrol': case 'patrol':
return [ return [
{title: '编号',dataIndex: 'code',key: 'code',width: '16.5%'}, { title: '编号',dataIndex: 'code',key: 'code',width: '16.5%' },
{title: '名称',dataIndex: 'label',key: 'label',width: '16.5%'}, { title: '名称',dataIndex: 'label',key: 'label',width: '16.5%' },
{title: '路线',dataIndex: 'routeName',key: 'level',width: '16.5%'}, { title: '路线',dataIndex: 'routeName',key: 'level',width: '16.5%' },
{title: '状态',dataIndex: 'title',key: 'level',width: '16.5%'}, { title: '状态',dataIndex: 'title',key: 'level',width: '16.5%' },
{title: '责任人',dataIndex: 'person',key: 'level',width: '16.5%'}, { title: '责任人',dataIndex: 'person',key: 'level',width: '16.5%' },
{title: '类别',dataIndex: 'typeName',key: 'typeName',width: '16.5%'} { title: '类别',dataIndex: 'typeName',key: 'typeName',width: '16.5%' }
]; ];
case 'monitorEquipment': case 'monitorEquipment':
return [ return [
{title: '编号',dataIndex: 'code',key: 'code',width: '25%'}, { title: '编号',dataIndex: 'code',key: 'code',width: '25%' },
{title: '名称',dataIndex: 'label',key: 'label',width: '25%'}, { title: '名称',dataIndex: 'label',key: 'label',width: '25%' },
{title: '监控对象',dataIndex: 'level',key: 'protectObjName',width: '25%'}, { title: '监控对象',dataIndex: 'level',key: 'protectObjName',width: '25%' },
{title: '类别',dataIndex: 'typeName',key: 'typeName',width: '25%'} { title: '类别',dataIndex: 'typeName',key: 'typeName',width: '25%' }
] ];
case 'video': case 'video':
return [ return [
{title: '编号',dataIndex: 'code',key: 'code',width: '25%'}, { title: '编号',dataIndex: 'code',key: 'code',width: '25%' },
{title: '名称',dataIndex: 'label',key: 'label',width: '25%'}, { title: '名称',dataIndex: 'label',key: 'label',width: '25%' },
{title: '监控对象',dataIndex: 'level',key: 'protectObjName',width: '25%'}, { title: '监控对象',dataIndex: 'level',key: 'protectObjName',width: '25%' },
{title: '类别',dataIndex: 'typeName',key: 'typeName',width: '25%'} { title: '类别',dataIndex: 'typeName',key: 'typeName',width: '25%' }
] ];
default: default:
return [ return [
{title: '编号',dataIndex: 'code',key: 'code',width: '33%'}, { title: '编号',dataIndex: 'code',key: 'code',width: '33%' },
{title: '名称',dataIndex: 'label',key: 'label',width: '33%'}, { title: '名称',dataIndex: 'label',key: 'label',width: '33%' },
{title: '类别',dataIndex: 'typeName',key: 'typeName',width: '33%'} { title: '类别',dataIndex: 'typeName',key: 'typeName',width: '33%' }
]; ];
} }
}; };
const getMsgColumns = () => { const getMsgColumns = () => {
return [ return [
{title: '标题',dataIndex: 'title',key: 'title',width: '15%'}, { title: '标题',dataIndex: 'title',key: 'title',width: '15%' },
{title: '类型',dataIndex: 'type',key: 'type',width: '15%'}, { title: '类型',dataIndex: 'type',key: 'type',width: '15%' },
{title: '时间',dataIndex: 'timeStr',key: 'timeStr',width: '15%'}, { title: '时间',dataIndex: 'timeStr',key: 'timeStr',width: '15%' },
{title: '内容',dataIndex: 'content',key: 'content',width: '55%'} { title: '内容',dataIndex: 'content',key: 'content',width: '55%' }
] ];
} };
const getRecordColumns = () => { const getRecordColumns = () => {
return [ return [
{title: '名称',dataIndex: 'fire_Equipment_Name',key: 'name',width: '33%'}, { title: '名称',dataIndex: 'fire_Equipment_Name',key: 'name',width: '33%' },
{title: '时间',dataIndex: 'create_time',key: 'create_time',width: '33%'}, { title: '时间',dataIndex: 'create_time',key: 'create_time',width: '33%' },
{title: '重点设备',dataIndex: 'equipment_Name',key: 'equipment_Name',width: '33%'} { title: '重点设备',dataIndex: 'equipment_Name',key: 'equipment_Name',width: '33%' }
] ];
} };
const getTrajectoryColumns = () => { const getTrajectoryColumns = () => {
return [ return [
{title: '巡检人',dataIndex: 'userName',key: 'userName',width: '33%'}, { title: '巡检人',dataIndex: 'userName',key: 'userName',width: '33%' },
{title: '时间',dataIndex: 'checkTime',key: 'checkTime',width: '33%'}, { title: '时间',dataIndex: 'checkTime',key: 'checkTime',width: '33%' },
{title: '轨迹',dataIndex: 'pointName',key: 'pointName',width: '33%'} { title: '轨迹',dataIndex: 'pointName',key: 'pointName',width: '33%' }
] ];
} };
const tabs = [ const tabs = [
{ id: '1', key: 'search', closable: false, title: '检索' }, { id: '1', key: 'search', closable: false, title: '检索' },
{ id: '2', key: 'message', closable: false, title: '消息' }, { id: '2', key: 'message', closable: false, title: '消息' },
{ id: '3', key: 'record', closable: false, title: '步骤' }, { id: '3', key: 'record', closable: false, title: '步骤' },
{ id: '4', key: 'trajectory', closable: false, title: '轨迹' }, { id: '4', key: 'trajectory', closable: false, title: '轨迹' }
]; ];
class SearchPane extends Component { class SearchPane extends Component {
...@@ -110,21 +110,19 @@ class SearchPane extends Component { ...@@ -110,21 +110,19 @@ class SearchPane extends Component {
} }
componentDidMount() { componentDidMount() {
const { type } = this.props;
const { activeKey } = this.state;
this.fetchRetrieveData(); this.fetchRetrieveData();
} }
paramsOnChange = (filter) => { paramsOnChange = (filter) => {
const {activeKey} = this.state; const { activeKey } = this.state;
if(activeKey === 'search'){ if (activeKey === 'search'){
this.setState({filter},this.fetchRetrieveData); this.setState({ filter },this.fetchRetrieveData);
}else if(activeKey === 'message'){ } else if (activeKey === 'message'){
this.setState({filter},this.fetchMsgData); this.setState({ filter },this.fetchMsgData);
}else if(activeKey === 'record'){ } else if (activeKey === 'record'){
this.setState({filter},this.fetchRecordData); this.setState({ filter },this.fetchRecordData);
}else if(activeKey === 'trajectory'){ } else if (activeKey === 'trajectory'){
this.setState({filter},this.fetchTrajectoryData); this.setState({ filter },this.fetchTrajectoryData);
} }
} }
...@@ -146,16 +144,16 @@ class SearchPane extends Component { ...@@ -146,16 +144,16 @@ class SearchPane extends Component {
onTabClick = (value) =>{ onTabClick = (value) =>{
this.pageConfig.current = 0; this.pageConfig.current = 0;
if(value === 'search'){ if (value === 'search'){
this.fetchRetrieveData(); this.fetchRetrieveData();
}else if(value === 'message'){ } else if (value === 'message'){
this.fetchMsgData(); this.fetchMsgData();
}else if(value === 'record'){ } else if (value === 'record'){
this.fetchRecordData(); this.fetchRecordData();
}else if(value === 'trajectory'){ } else if (value === 'trajectory'){
this.fetchTrajectoryData() this.fetchTrajectoryData();
} }
this.setState({ activeKey:value ,filter: []}); this.setState({ activeKey: value ,filter: [] });
} }
getPanelHeight = () => { getPanelHeight = () => {
...@@ -165,14 +163,14 @@ class SearchPane extends Component { ...@@ -165,14 +163,14 @@ class SearchPane extends Component {
fetchTrajectoryData = () => { fetchTrajectoryData = () => {
const { filter } = this.state; const { filter } = this.state;
recordAction(filter, this.pageConfig.current, this.pageConfig.pageSize).then(d => { recordAction(filter, this.pageConfig.current, this.pageConfig.pageSize).then(d => {
this.setState({trajectoryDataList:d.content,totalCount: d.totalElements}); this.setState({ trajectoryDataList: d.content,totalCount: d.totalElements });
}); });
} }
//步骤 //步骤
fetchRecordData = () => { fetchRecordData = () => {
const { filter } = this.state; const { filter } = this.state;
exeRecordAction(filter, this.pageConfig.current, this.pageConfig.pageSize).then(d => { exeRecordAction(filter, this.pageConfig.current, this.pageConfig.pageSize).then(d => {
this.setState({recordDataList:d.content,totalCount: d.totalElements}); this.setState({ recordDataList: d.content,totalCount: d.totalElements });
}); });
} }
//消息 //消息
...@@ -189,7 +187,7 @@ class SearchPane extends Component { ...@@ -189,7 +187,7 @@ class SearchPane extends Component {
} }
}); });
msgAction(searchParam, this.pageConfig.current, this.pageConfig.pageSize).then(d => { msgAction(searchParam, this.pageConfig.current, this.pageConfig.pageSize).then(d => {
this.setState({msgDataList:d.content,totalCount: d.totalElements}); this.setState({ msgDataList: d.content,totalCount: d.totalElements });
}); });
} }
//检索 //检索
...@@ -205,7 +203,7 @@ class SearchPane extends Component { ...@@ -205,7 +203,7 @@ class SearchPane extends Component {
( filter || [] ).forEach((item, i) => { ( filter || [] ).forEach((item, i) => {
if (item.name === 'type') { if (item.name === 'type') {
type = item.value; type = item.value;
this.setState({ retrieveType: type }) this.setState({ retrieveType: type });
} else if (item.name === 'dataLevel') { } else if (item.name === 'dataLevel') {
dataLevel = item.value; dataLevel = item.value;
} else if (item.name === 'nodeState') { } else if (item.name === 'nodeState') {
...@@ -222,8 +220,8 @@ class SearchPane extends Component { ...@@ -222,8 +220,8 @@ class SearchPane extends Component {
searchAction(inputText, dataLevel, orgCode, nodeState, protectObjName, routeName, type, this.pageConfig.current, this.pageConfig.pageSize).then(d => { searchAction(inputText, dataLevel, orgCode, nodeState, protectObjName, routeName, type, this.pageConfig.current, this.pageConfig.pageSize).then(d => {
this.setState({ this.setState({
dataList: d.content , dataList: d.content ,
totalCount: d.totalElements, totalCount: d.totalElements
}) });
}); });
} }
...@@ -239,8 +237,8 @@ class SearchPane extends Component { ...@@ -239,8 +237,8 @@ class SearchPane extends Component {
onRetrieveRowDoubleClick = (record) => { onRetrieveRowDoubleClick = (record) => {
// 更新视图数据 // 更新视图数据
let views = new Array(); let views = new Array();
if(record.position){ if (record.position){
record.id = record.id.replace( record.type + '-' ,'' ); record.id = record.id.replace( `${record.type}-` ,'' );
views.push(record); views.push(record);
let args = { let args = {
target: views, target: views,
...@@ -248,20 +246,27 @@ class SearchPane extends Component { ...@@ -248,20 +246,27 @@ class SearchPane extends Component {
}; };
update3DViewData(args); update3DViewData(args);
this.props.focusPosition(this.toCameraPosition(record.position)); this.props.focusPosition(this.toCameraPosition(record.position));
}else{ } else {
message.danger('坐标未绑定!!!'); message.danger('坐标未绑定!!!');
} }
} }
toCameraPosition = (item) => { toCameraPosition = (item) => {
return { x: item.x , y: item.y + 200 , z: item.z + 200 } if (item && item.x){
return { x: item.x , y: item.y + 200 , z: item.z + 200 };
} else if (item && item[0]){
return { x: item[0] , y: item[1] + 200 , z: item[2] + 200 };
} else {
return;
}
} }
render() { render() {
const { dataList,activeKey,retrieveType,totalCount,msgDataList,recordDataList,trajectoryDataList } = this.state; const { dataList,activeKey,retrieveType,totalCount,msgDataList,recordDataList,trajectoryDataList } = this.state;
return ( return (
<div> <div>
{ this.props.visible && <div className="search-pane-bg"/> } { this.props.visible && <div className="search-pane-bg" /> }
{ this.props.visible && <SidePane className="search-pane"> { this.props.visible && <SidePane className="search-pane">
<div className="search-pane-close" onClick={this.props.changeSearchPaneVisible()}> <div className="search-pane-close" onClick={this.props.changeSearchPaneVisible()}>
<Icon icon="close" /> <Icon icon="close" />
...@@ -276,7 +281,7 @@ class SearchPane extends Component { ...@@ -276,7 +281,7 @@ class SearchPane extends Component {
<Tab key={item.key} activeKey={item.key} closable={item.closable}>{item.title}</Tab>) <Tab key={item.key} activeKey={item.key} closable={item.closable}>{item.title}</Tab>)
)} )}
</TabList> </TabList>
<ParamsHeader paramsOnChange={this.paramsOnChange} activeKey={activeKey}/> <ParamsHeader paramsOnChange={this.paramsOnChange} activeKey={activeKey} />
<TabPanel activeKey="search"> <TabPanel activeKey="search">
{/* <div className="search-pane-table"> */} {/* <div className="search-pane-table"> */}
<AmosGridTable <AmosGridTable
...@@ -284,9 +289,9 @@ class SearchPane extends Component { ...@@ -284,9 +289,9 @@ class SearchPane extends Component {
columns={getColumns(this,retrieveType)} columns={getColumns(this,retrieveType)}
getTableDataAction={()=>{}} getTableDataAction={()=>{}}
callBack={this.reload} callBack={this.reload}
isPageable = {true} isPageable
setPageConfig={this.setPageConfig} setPageConfig={this.setPageConfig}
isChecked = {false} isChecked={false}
// getPanelHeight={this.getPanelHeight} // getPanelHeight={this.getPanelHeight}
dataList={dataList} dataList={dataList}
totals={totalCount} totals={totalCount}
...@@ -300,9 +305,9 @@ class SearchPane extends Component { ...@@ -300,9 +305,9 @@ class SearchPane extends Component {
columns={getMsgColumns()} columns={getMsgColumns()}
getTableDataAction={()=>{}} getTableDataAction={()=>{}}
callBack={this.reload} callBack={this.reload}
isPageable = {true} isPageable
setPageConfig={this.setPageConfig} setPageConfig={this.setPageConfig}
isChecked = {false} isChecked={false}
dataList={msgDataList} dataList={msgDataList}
totals={totalCount} totals={totalCount}
getTableDataAction={this.fetchMsgData} getTableDataAction={this.fetchMsgData}
...@@ -313,9 +318,9 @@ class SearchPane extends Component { ...@@ -313,9 +318,9 @@ class SearchPane extends Component {
columns={getRecordColumns()} columns={getRecordColumns()}
getTableDataAction={()=>{}} getTableDataAction={()=>{}}
callBack={this.reload} callBack={this.reload}
isPageable = {true} isPageable
setPageConfig={this.setPageConfig} setPageConfig={this.setPageConfig}
isChecked = {false} isChecked={false}
dataList={recordDataList} dataList={recordDataList}
totals={totalCount} totals={totalCount}
getTableDataAction={this.fetchRecordData} getTableDataAction={this.fetchRecordData}
...@@ -326,9 +331,9 @@ class SearchPane extends Component { ...@@ -326,9 +331,9 @@ class SearchPane extends Component {
columns={getTrajectoryColumns()} columns={getTrajectoryColumns()}
getTableDataAction={()=>{}} getTableDataAction={()=>{}}
callBack={this.reload} callBack={this.reload}
isPageable = {true} isPageable
setPageConfig={this.setPageConfig} setPageConfig={this.setPageConfig}
isChecked = {false} isChecked={false}
dataList={trajectoryDataList} dataList={trajectoryDataList}
totals={totalCount} totals={totalCount}
getTableDataAction={this.fetchTrajectoryData} getTableDataAction={this.fetchTrajectoryData}
......
...@@ -4,7 +4,7 @@ import { Button, Input, Select, Group } from 'amos-framework'; ...@@ -4,7 +4,7 @@ import { Button, Input, Select, Group } from 'amos-framework';
import { SingleQueryEnum } from 'amos-processor/lib/config/queryEnum'; import { SingleQueryEnum } from 'amos-processor/lib/config/queryEnum';
import { trim } from 'amos-tool'; import { trim } from 'amos-tool';
import { DatePicker } from 'amos-antd'; import { DatePicker } from 'amos-antd';
import moment from "moment"; import moment from 'moment';
import imgStatic from './../../consts/imgStatic'; import imgStatic from './../../consts/imgStatic';
import { import {
getImpEquipmentAction, getImpEquipmentAction,
...@@ -16,9 +16,9 @@ const Option = Select.Option; ...@@ -16,9 +16,9 @@ const Option = Select.Option;
const MsgTypeEnum = [{ id: 'protal', name: '巡检' }, { id: 'equiment', name: '设备' }, { id: 'risk', name: '风险' }]; const MsgTypeEnum = [{ id: 'protal', name: '巡检' }, { id: 'equiment', name: '设备' }, { id: 'risk', name: '风险' }];
const groupStyle = { display: 'unset', width: '100%' }; const groupStyle = { display: 'unset', width: '100%' };
const selectStyle = { width: '25%', minWidth: '20%', marginRight:'14px' }; const selectStyle = { width: '25%', minWidth: '20%', marginRight: '14px' };
const inputStyle = { width: '30%', minWidth: '20%', height: '28px', marginRight:'14px' }; const inputStyle = { width: '30%', minWidth: '20%', height: '28px', marginRight: '14px' };
const datePickerStyle = { width: '30%', minWidth: '20%', height: '28px', marginRight:'14px' }; const datePickerStyle = { width: '30%', minWidth: '20%', height: '28px', marginRight: '14px' };
const enterkey = 13; const enterkey = 13;
/** /**
* *
...@@ -45,7 +45,7 @@ class paramsHeader extends Component { ...@@ -45,7 +45,7 @@ class paramsHeader extends Component {
impEquiList: [], impEquiList: [],
filter: [], filter: [],
recordFilter: [], recordFilter: [],
statusList: [], statusList: []
}; };
} }
...@@ -61,10 +61,10 @@ class paramsHeader extends Component { ...@@ -61,10 +61,10 @@ class paramsHeader extends Component {
msgTextValue: undefined, msgTextValue: undefined,
recordTextValue: undefined, recordTextValue: undefined,
filter: [], filter: [],
recordFilter: [], recordFilter: []
}) });
}
} }
}
onChange = (e) => { onChange = (e) => {
this.setState({ value: e.target.value }); this.setState({ value: e.target.value });
...@@ -74,9 +74,9 @@ class paramsHeader extends Component { ...@@ -74,9 +74,9 @@ class paramsHeader extends Component {
let showRiskLevel = false; let showRiskLevel = false;
let showImpEquiList = false; let showImpEquiList = false;
if(value === 'riskSource'){ if (value === 'riskSource'){
showRiskLevel = true; showRiskLevel = true;
}else if(value === 'monitorEquipment'){ } else if (value === 'monitorEquipment'){
showImpEquiList = true; showImpEquiList = true;
} }
this.setState({ showRiskLevel, showImpEquiList }); this.setState({ showRiskLevel, showImpEquiList });
...@@ -85,8 +85,8 @@ class paramsHeader extends Component { ...@@ -85,8 +85,8 @@ class paramsHeader extends Component {
onPamarmsChange = (name,value) => { onPamarmsChange = (name,value) => {
let { filter } = this.state; let { filter } = this.state;
if(name === 'time'){ if (name === 'time'){
value = value == null ? '' : moment(value).format("YYYY-MM-DD"); value = value == null ? '' : moment(value).format('YYYY-MM-DD');
} }
if (value) { if (value) {
const flag = filter.some(e => { const flag = filter.some(e => {
...@@ -99,19 +99,19 @@ class paramsHeader extends Component { ...@@ -99,19 +99,19 @@ class paramsHeader extends Component {
} else { } else {
filter = filter.filter(e => e.name !== name); filter = filter.filter(e => e.name !== name);
} }
if(name === 'inputText'){ if (name === 'inputText'){
this.setState({ textValue: value,filter }); this.setState({ textValue: value,filter });
}else if(name === 'title'){ } else if (name === 'title'){
this.setState({ msgTextValue: value,filter }); this.setState({ msgTextValue: value,filter });
}else{ } else {
this.setState({ filter }, this.props.paramsOnChange(filter)); this.setState({ filter }, this.props.paramsOnChange(filter));
} }
} }
paramsTypeonChange = (name,value,type,key) => { paramsTypeonChange = (name,value,type,key) => {
let {recordFilter} = this.state; let { recordFilter } = this.state;
if(name === 'checkTime'){ if (name === 'checkTime'){
value = value == null ? '' : moment(value).format("YYYY-MM-DD"); value = value == null ? '' : moment(value).format('YYYY-MM-DD');
} }
if (value) { if (value) {
const flag = recordFilter.some(e => { const flag = recordFilter.some(e => {
...@@ -125,16 +125,15 @@ class paramsHeader extends Component { ...@@ -125,16 +125,15 @@ class paramsHeader extends Component {
} else { } else {
recordFilter = recordFilter.filter(e => e.name !== name); recordFilter = recordFilter.filter(e => e.name !== name);
} }
debugger; if (name === 'contingencyName'){
if(name === 'contingencyName'){ this.setState({ recordTextValue: value,recordFilter });
this.setState({recordTextValue:value,recordFilter}) } else if (name === 'pointName'){
}else if(name === 'pointName'){ if (key === 'record'){
if(key === 'record'){ this.setState({ recordTextValue: value,recordFilter });
this.setState({ recordTextValue:value,recordFilter }); } else {
}else{
this.setState({ trajectoryTextValue: value,recordFilter }); this.setState({ trajectoryTextValue: value,recordFilter });
} }
}else{//不为input时直接查询 } else {//不为input时直接查询
this.setState({ recordFilter }, this.props.paramsOnChange(recordFilter)); this.setState({ recordFilter }, this.props.paramsOnChange(recordFilter));
} }
} }
...@@ -142,8 +141,8 @@ class paramsHeader extends Component { ...@@ -142,8 +141,8 @@ class paramsHeader extends Component {
//检索 //检索
getSearchContent = () => { getSearchContent = () => {
const { showRiskLevel, showImpEquiList, impEquiList,filter } = this.state; const { showRiskLevel, showImpEquiList, impEquiList,filter } = this.state;
let levelStyle = { width: '20%', minWidth: '15%', height: '28px', marginRight:'14px' }; let levelStyle = { width: '20%', minWidth: '15%', height: '28px', marginRight: '14px' };
let implStyle = { width: '35%', minWidth: '20%', height: '28px', marginRight:'14px' }; let implStyle = { width: '35%', minWidth: '20%', height: '28px', marginRight: '14px' };
return (<Group style={groupStyle}> return (<Group style={groupStyle}>
<Select <Select
key="searchType" key="searchType"
...@@ -160,7 +159,7 @@ class paramsHeader extends Component { ...@@ -160,7 +159,7 @@ class paramsHeader extends Component {
onChange={(e) => this.onPamarmsChange('inputText',e.target.value)} onChange={(e) => this.onPamarmsChange('inputText',e.target.value)}
placeholder="输入关键字" placeholder="输入关键字"
/> />
<img className="params-input-img" src={imgStatic.datapane.searchPane} alt="" onClick={() => this.props.paramsOnChange(filter)}/> <img className="params-input-img" src={imgStatic.datapane.searchPane} alt="" onClick={() => this.props.paramsOnChange(filter)} />
</div> </div>
{ {
showRiskLevel && showRiskLevel &&
...@@ -207,7 +206,7 @@ class paramsHeader extends Component { ...@@ -207,7 +206,7 @@ class paramsHeader extends Component {
onChange={(e) => this.onPamarmsChange('title',e.target.value)} onChange={(e) => this.onPamarmsChange('title',e.target.value)}
placeholder="输入关键字" placeholder="输入关键字"
/> />
<img className="params-input-img1" src={imgStatic.datapane.searchPane} alt="" onClick={() => this.props.paramsOnChange(filter)}/> <img className="params-input-img1" src={imgStatic.datapane.searchPane} alt="" onClick={() => this.props.paramsOnChange(filter)} />
</div> </div>
<DatePicker <DatePicker
key="time" key="time"
...@@ -230,7 +229,7 @@ class paramsHeader extends Component { ...@@ -230,7 +229,7 @@ class paramsHeader extends Component {
key="recordImpl" key="recordImpl"
style={selectStyle} style={selectStyle}
data={impEquiList} data={impEquiList}
renderOption={item => <Option key={item.id+item.name} value={item.id}>{item.name}</Option>} renderOption={item => <Option key={item.id + item.name} value={item.id}>{item.name}</Option>}
defaultOption={<Option>重点设备</Option>} defaultOption={<Option>重点设备</Option>}
onChange={(v) => this.paramsTypeonChange('equipmentId', v , SingleQueryEnum.EQUAL)} onChange={(v) => this.paramsTypeonChange('equipmentId', v , SingleQueryEnum.EQUAL)}
/> />
...@@ -241,7 +240,7 @@ class paramsHeader extends Component { ...@@ -241,7 +240,7 @@ class paramsHeader extends Component {
onChange={(e) => this.paramsTypeonChange('contingencyName', e.target.value, SingleQueryEnum.LIKE,'record')} onChange={(e) => this.paramsTypeonChange('contingencyName', e.target.value, SingleQueryEnum.LIKE,'record')}
placeholder="输入关键字" placeholder="输入关键字"
/> />
<img className="params-input-img1" src={imgStatic.datapane.searchPane} alt="" onClick={()=> this.props.paramsOnChange(recordFilter)}/> <img className="params-input-img1" src={imgStatic.datapane.searchPane} alt="" onClick={()=> this.props.paramsOnChange(recordFilter)} />
</div> </div>
<DatePicker <DatePicker
key="createTime" key="createTime"
...@@ -273,7 +272,7 @@ class paramsHeader extends Component { ...@@ -273,7 +272,7 @@ class paramsHeader extends Component {
onChange={(e) => this.paramsTypeonChange('pointName', e.target.value, SingleQueryEnum.LIKE)} onChange={(e) => this.paramsTypeonChange('pointName', e.target.value, SingleQueryEnum.LIKE)}
placeholder="输入关键字" placeholder="输入关键字"
/> />
<img className="params-input-img1" src={imgStatic.datapane.searchPane} alt="" onClick={()=>this.props.paramsOnChange(recordFilter)}/> <img className="params-input-img1" src={imgStatic.datapane.searchPane} alt="" onClick={()=>this.props.paramsOnChange(recordFilter)} />
</div> </div>
<DatePicker <DatePicker
key="createTime" key="createTime"
...@@ -288,13 +287,13 @@ class paramsHeader extends Component { ...@@ -288,13 +287,13 @@ class paramsHeader extends Component {
getContent = () =>{ getContent = () =>{
const { activeKey } = this.props; const { activeKey } = this.props;
if(activeKey === 'search'){ if (activeKey === 'search'){
return this.getSearchContent(); return this.getSearchContent();
}else if(activeKey === 'message'){ } else if (activeKey === 'message'){
return this.getMessageContent(); return this.getMessageContent();
}else if(activeKey === 'record'){ } else if (activeKey === 'record'){
return this.getRecordContent(); return this.getRecordContent();
}else{ } else {
return this.getTrajectoryContent(); return this.getTrajectoryContent();
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment