Commit 964bb639 authored by taabe's avatar taabe

修改关联设备页面逻辑

parent 75ecfb9e
...@@ -235,6 +235,12 @@ ...@@ -235,6 +235,12 @@
} }
} }
} }
.ant-table-tbody {
.highlight-row {
background: #ecf6fd;
}
}
} }
.point-model { .point-model {
...@@ -359,7 +365,13 @@ ...@@ -359,7 +365,13 @@
} }
} }
.amos-select-dropdown-popover { .amos-popover-content {
>ul {
height: 205px; height: 205px;
overflow-y: auto; overflow-y: auto;
}
.amos-select-options {
height: auto;
}
} }
\ No newline at end of file
...@@ -55,6 +55,27 @@ class AssociatedEquipTable extends Component { ...@@ -55,6 +55,27 @@ class AssociatedEquipTable extends Component {
}; };
} }
onRowClick = record => {
let { selectedRowKeys, selectedRows } = this.state;
let exist = false;
selectedRows.find(item => {
if (item.equipmentId === record.equipmentId) {
exist = true;
}
});
if (exist) {
selectedRows.splice(selectedRows.findIndex(item => item.equipmentId === record.equipmentId), 1);
selectedRowKeys.splice(selectedRowKeys.findIndex(item => item === record.equipmentId), 1);
} else {
selectedRows.push(record);
selectedRowKeys.push(record.equipmentId);
}
this.setState({
selectedRows,
selectedRowKeys
});
}
/** /**
* 分页设置参数 * 分页设置参数
*/ */
...@@ -76,34 +97,13 @@ class AssociatedEquipTable extends Component { ...@@ -76,34 +97,13 @@ class AssociatedEquipTable extends Component {
getRowClassName = (record, index) => { getRowClassName = (record, index) => {
let { selectedRowKeys } = this.state; let { selectedRowKeys } = this.state;
if (selectedRowKeys.findIndex(item => item === record.id) >= 0) { if (selectedRowKeys.findIndex(item => item === record.equipmentId) >= 0) {
return 'highlight-row'; return 'highlight-row';
} else { } else {
return 'normal-row'; return 'normal-row';
} }
}; };
onRowClick = record => {
let { selectedRowKeys, selectedRows } = this.state;
let exist = false;
selectedRows.find(item => {
if (item.id === record.id) {
exist = true;
}
});
if (exist) {
selectedRows.splice(selectedRows.findIndex(item => item.id === record.id), 1);
selectedRowKeys.splice(selectedRowKeys.findIndex(item => item === record.id), 1);
} else {
selectedRows.push(record);
selectedRowKeys.push(record.id);
}
this.setState({
selectedRows,
selectedRowKeys
});
}
/** /**
* 获取表格刷新方法 * 获取表格刷新方法
*/ */
...@@ -132,6 +132,7 @@ class AssociatedEquipTable extends Component { ...@@ -132,6 +132,7 @@ class AssociatedEquipTable extends Component {
render() { render() {
let { pagination, isChecked, selectedRowKeys } = this.state; let { pagination, isChecked, selectedRowKeys } = this.state;
let { dataList, fetchData, totalCount } = this.props; let { dataList, fetchData, totalCount } = this.props;
dataList.map(data => data.id = data.equipmentId);
let defaultPageConfig = this.pageConfig; let defaultPageConfig = this.pageConfig;
return ( return (
<div className="risk-model-table"> <div className="risk-model-table">
...@@ -156,6 +157,8 @@ class AssociatedEquipTable extends Component { ...@@ -156,6 +157,8 @@ class AssociatedEquipTable extends Component {
} }
AssociatedEquipTable.propTypes = { AssociatedEquipTable.propTypes = {
dataList: PropTypes.array,
fetchData: PropTypes.func,
totalCount: PropTypes.number
}; };
export default AssociatedEquipTable; export default AssociatedEquipTable;
...@@ -364,7 +364,8 @@ class RiskModel extends Component { ...@@ -364,7 +364,8 @@ class RiskModel extends Component {
bindEquipIndexCallback = (equipmentId) => { bindEquipIndexCallback = (equipmentId) => {
const { fmeaId } = this.state; const { fmeaId } = this.state;
const { selectData } = this.model.state; let { selectData } = this.model.state;
selectData = selectData.filter(data => data.equipmentId === equipmentId);
fmeaId && this.bindEquipIndexs(fmeaId , equipmentId, selectData); fmeaId && this.bindEquipIndexs(fmeaId , equipmentId, selectData);
} }
...@@ -575,6 +576,14 @@ class RiskModel extends Component { ...@@ -575,6 +576,14 @@ class RiskModel extends Component {
} }
}; };
getModalFooter = (modelFlag, toolBarFlag) => {
if (modelFlag === 'point' || modelFlag === 'equip') {
return <Button className='amos-btn-minor' onClick={this.cancel}>取消</Button>;
} else {
return [<Button className='amos-btn-minor' key='cancel' onClick={this.cancel}>取消</Button>, <Button key='ok' onClick={() => this.onOk(modelFlag, toolBarFlag)}>确定</Button>];
}
}
getModalHeader =(modelFlag, toolBarFlag)=>{ getModalHeader =(modelFlag, toolBarFlag)=>{
let header = ''; let header = '';
if (modelFlag === 'risk'){ if (modelFlag === 'risk'){
...@@ -662,6 +671,7 @@ class RiskModel extends Component { ...@@ -662,6 +671,7 @@ class RiskModel extends Component {
} }
onSelect =(selectedKeys,e)=>{ onSelect =(selectedKeys,e)=>{
this.remove('2');
this.setState({ this.setState({
isRegion: e.node.props.isRegion, isRegion: e.node.props.isRegion,
node: e.node.props, node: e.node.props,
...@@ -875,8 +885,9 @@ class RiskModel extends Component { ...@@ -875,8 +885,9 @@ class RiskModel extends Component {
content={this.getContext(modelFlag, toolBarFlag)} content={this.getContext(modelFlag, toolBarFlag)}
onCancel={() => this.cancel()} onCancel={() => this.cancel()}
onOk={() => this.onOk(modelFlag, toolBarFlag)} onOk={() => this.onOk(modelFlag, toolBarFlag)}
okText="确定" // okText="确定"
cancelText="取消" // cancelText="取消"
footer={this.getModalFooter(modelFlag, toolBarFlag)}
outterClosable={false} outterClosable={false}
/> />
{this.getNodeTreeRightClickMenu()} {this.getNodeTreeRightClickMenu()}
......
...@@ -78,9 +78,9 @@ class EquipModel extends Component { ...@@ -78,9 +78,9 @@ class EquipModel extends Component {
fireEquip.map(e=>{//再新增 fireEquip.map(e=>{//再新增
selectData.push({ riskSourceId, equipmentId, fireEquipmentId: e.id });//所有双击过的数据库查询出的绑定关系 selectData.push({ riskSourceId, equipmentId, fireEquipmentId: e.id });//所有双击过的数据库查询出的绑定关系
}); });
this.setState({ dataList: content,totalCount: data.totalElements, selects, selectData, equipmentId }); this.setState({ dataList: content, selects, selectData, equipmentId });
} else { } else {
this.setState({ dataList: content,totalCount: data.totalElements }); this.setState({ dataList: content });
} }
}); });
} }
...@@ -103,25 +103,29 @@ class EquipModel extends Component { ...@@ -103,25 +103,29 @@ class EquipModel extends Component {
fireEquip.map(e=>{//再新增 fireEquip.map(e=>{//再新增
selectData.push({ fmeaId, equipmentId, equipIndexId: e.id });//所有双击过的数据库查询出的绑定关系 selectData.push({ fmeaId, equipmentId, equipIndexId: e.id });//所有双击过的数据库查询出的绑定关系
}); });
this.setState({ indexDataList: data, indexTotalCount: data.totalElements, selects, selectData, equipmentId }); this.setState({ indexDataList: data, selects, selectData, equipmentId });
} else { } else {
this.setState({ indexDataList: data, indexTotalCount: data.totalElements }); this.setState({ indexDataList: data });
} }
}); });
} }
clearCallback = () => { clearCallback = (index) => {
this.setState({ dataList: [] }); if (index) {
this.setState({ indexDataList: [] });
} else {
this.setState({ dataList: [], indexDataList: [] });
}
} }
render() { render() {
let { riskSourceId, bindEquipIndexCallback, fmeaId } = this.props; let { riskSourceId, bindEquipIndexCallback, fmeaId } = this.props;
let { dataList, totalCount, importEquipId, equipmentId, selects, eId, indexTotalCount, indexDataList } = this.state; let { dataList, importEquipId, equipmentId, selects, eId, indexDataList } = this.state;
return ( return (
<div className="equip-model"> <div className="equip-model">
<EquipTable riskSourceId={riskSourceId} importEquipId={eId} fetchData={this.queryBindEquip} clearCallback={this.clearCallback} /> <EquipTable riskSourceId={riskSourceId} importEquipId={eId} fetchData={this.queryBindEquip} clearCallback={this.clearCallback} />
<FireEquipTable fmeaId={fmeaId} importEquipId={importEquipId} selects={selects} dataList={dataList} totalCount={totalCount} setParamAndSearch={this.setParamAndSearch} fetchData={this.queryBindEquipIndex} /> <FireEquipTable fmeaId={fmeaId} importEquipId={importEquipId} selects={selects} dataList={dataList} setParamAndSearch={this.setParamAndSearch} fetchData={this.queryBindEquipIndex} clearCallback={this.clearCallback} />
<FireEquipIndexTable bindEquipIndexCallback={bindEquipIndexCallback} fmeaId={fmeaId} equipmentId={equipmentId} selects={selects} dataList={indexDataList} totalCount={indexTotalCount} callBack={this.setSelectData} setParamAndSearch={this.setParamAndSearch} /> <FireEquipIndexTable bindEquipIndexCallback={bindEquipIndexCallback} fmeaId={fmeaId} equipmentId={equipmentId} selects={selects} dataList={indexDataList} callBack={this.setSelectData} setParamAndSearch={this.setParamAndSearch} />
</div> </div>
); );
} }
......
...@@ -50,12 +50,34 @@ class EquipTable extends Component { ...@@ -50,12 +50,34 @@ class EquipTable extends Component {
importEquipId && this.setState({ searchParam: [{ 'name': 'id', 'value': importEquipId }] , importEquipId }); importEquipId && this.setState({ searchParam: [{ 'name': 'id', 'value': importEquipId }] , importEquipId });
}; };
onRowClick =(record, index, event) => { onRowClick =(record) => {
let { selectedRowKeys, selectedRows } = this.state;
let { fetchData, riskSourceId } = this.props; let { fetchData, riskSourceId } = this.props;
let importEquipId = record.id; let importEquipId = record.id;
this.setState({ importEquipId: record.id, riskSourceId }); let exist = false;
selectedRows.find(item => {
if (item.id === record.id) {
exist = true;
}
});
if (exist) {
selectedRows.splice(selectedRows.findIndex(item => item.id === record.id), 1);
selectedRowKeys.splice(selectedRowKeys.findIndex(key => key === record.id), 1);
if (selectedRowKeys.length === 0) {
this.props.clearCallback();
}
} else {
selectedRows = [];
selectedRowKeys = [];
selectedRows.push(record);
selectedRowKeys.push(record.id);
this.props.clearCallback(2);
}
this.setState({ importEquipId: record.id, riskSourceId, selectedRows, selectedRowKeys });
if (selectedRowKeys.length !== 0) {
fetchData(riskSourceId, importEquipId, ''); fetchData(riskSourceId, importEquipId, '');
} }
}
onChange = (e,value) =>{ onChange = (e,value) =>{
let searchParam = [{ name: e, value, type: 'LIKE' }]; let searchParam = [{ name: e, value, type: 'LIKE' }];
...@@ -82,8 +104,8 @@ class EquipTable extends Component { ...@@ -82,8 +104,8 @@ class EquipTable extends Component {
}; };
getRowClassName = (record, index) => { getRowClassName = (record, index) => {
let highlight = this.highlight; let { selectedRowKeys } = this.state;
if (highlight && record.id === highlight) { if (selectedRowKeys.findIndex(item => item === record.id) >= 0) {
return 'highlight-row'; return 'highlight-row';
} else { } else {
return 'normal-row'; return 'normal-row';
......
...@@ -45,6 +45,24 @@ class FireEquipIndexTable extends Component { ...@@ -45,6 +45,24 @@ class FireEquipIndexTable extends Component {
this.setState({ fname: value }); this.setState({ fname: value });
} }
onRowClick =(record) => {
let { selectedRowKeys, selectedRows } = this.state;
let exist = false;
selectedRows.find(item => {
if (item.id === record.id) {
exist = true;
}
});
if (exist) {
selectedRows.splice(selectedRows.findIndex(item => item.id === record.id), 1);
selectedRowKeys.splice(selectedRowKeys.findIndex(key => key === record.id), 1);
} else {
selectedRows.push(record);
selectedRowKeys.push(record.id);
}
this.setState({ selectedRows, selectedRowKeys });
}
/** /**
* 分页设置参数 * 分页设置参数
*/ */
...@@ -67,8 +85,8 @@ class FireEquipIndexTable extends Component { ...@@ -67,8 +85,8 @@ class FireEquipIndexTable extends Component {
}; };
getRowClassName = (record, index) => { getRowClassName = (record, index) => {
let highlight = this.highlight; let { selectedRowKeys } = this.state;
if (highlight && record.id === highlight) { if (selectedRowKeys.findIndex(item => item === record.id) >= 0) {
return 'highlight-row'; return 'highlight-row';
} else { } else {
return 'normal-row'; return 'normal-row';
...@@ -111,9 +129,9 @@ class FireEquipIndexTable extends Component { ...@@ -111,9 +129,9 @@ class FireEquipIndexTable extends Component {
} }
render() { render() {
let { pagination, isChecked, fname } = this.state; let { pagination, isChecked, fname, selectedRowKeys } = this.state;
let { dataList, totalCount, selects } = this.props; let { dataList, selects } = this.props;
let defaultPageConfig = this.pageConfig; selectedRowKeys = [...selects];
return ( return (
<div className="equip-model-fire"> <div className="equip-model-fire">
<div className='equip-model-fire-input' > <div className='equip-model-fire-input' >
...@@ -127,11 +145,11 @@ class FireEquipIndexTable extends Component { ...@@ -127,11 +145,11 @@ class FireEquipIndexTable extends Component {
callBack={this.reload} callBack={this.reload}
isPageable={pagination} isPageable={pagination}
dataList={dataList} dataList={dataList}
totals={totalCount}
getTableDataAction={()=>{}} getTableDataAction={()=>{}}
selectedRowKeys={selects} selectedRowKeys={selects}
getSelectedRows={this.getSelectedRows} getSelectedRows={this.getSelectedRows}
rowClassName={this.getRowClassName} rowClassName={this.getRowClassName}
onRowClick={this.onRowClick}
isChecked={isChecked} isChecked={isChecked}
/> />
</div> </div>
...@@ -144,6 +162,9 @@ FireEquipIndexTable.propTypes = { ...@@ -144,6 +162,9 @@ FireEquipIndexTable.propTypes = {
bindEquipIndexCallback: PropTypes.func, bindEquipIndexCallback: PropTypes.func,
fmeaId: PropTypes.number, fmeaId: PropTypes.number,
equipmentId: PropTypes.number, equipmentId: PropTypes.number,
setParamAndSearch: PropTypes.func setParamAndSearch: PropTypes.func,
callBack: PropTypes.func,
dataList: PropTypes.array,
selects: PropTypes.array
}; };
export default FireEquipIndexTable; export default FireEquipIndexTable;
...@@ -46,11 +46,32 @@ class FireEquipTable extends Component { ...@@ -46,11 +46,32 @@ class FireEquipTable extends Component {
} }
onRowClick =(record) => { onRowClick =(record) => {
let { selectedRowKeys, selectedRows } = this.state;
let { fetchData, fmeaId } = this.props; let { fetchData, fmeaId } = this.props;
let equimentId = record.id; let equimentId = record.id;
this.setState({ equimentId: record.id, fmeaId }); let exist = false;
selectedRows.find(item => {
if (item.id === record.id) {
exist = true;
}
});
if (exist) {
selectedRows.splice(selectedRows.findIndex(item => item.id === record.id), 1);
selectedRowKeys.splice(selectedRowKeys.findIndex(key => key === record.id), 1);
if (selectedRowKeys.length === 0) {
this.props.clearCallback(2);
}
} else {
selectedRows = [];
selectedRowKeys = [];
selectedRows.push(record);
selectedRowKeys.push(record.id);
}
this.setState({ equimentId: record.id, fmeaId, selectedRows, selectedRowKeys });
if (selectedRowKeys.length !== 0) {
fetchData(fmeaId, equimentId, ''); fetchData(fmeaId, equimentId, '');
} }
}
/** /**
* 分页设置参数 * 分页设置参数
...@@ -74,8 +95,8 @@ class FireEquipTable extends Component { ...@@ -74,8 +95,8 @@ class FireEquipTable extends Component {
}; };
getRowClassName = (record, index) => { getRowClassName = (record, index) => {
let highlight = this.highlight; let { selectedRowKeys } = this.state;
if (highlight && record.id === highlight) { if (selectedRowKeys.findIndex(item => item === record.id) >= 0) {
return 'highlight-row'; return 'highlight-row';
} else { } else {
return 'normal-row'; return 'normal-row';
...@@ -115,7 +136,7 @@ class FireEquipTable extends Component { ...@@ -115,7 +136,7 @@ class FireEquipTable extends Component {
render() { render() {
let { pagination, isChecked, fname } = this.state; let { pagination, isChecked, fname } = this.state;
let { dataList, totalCount, selects } = this.props; let { dataList, selects } = this.props;
return ( return (
<div className="equip-model-fire"> <div className="equip-model-fire">
<div className='equip-model-fire-input' > <div className='equip-model-fire-input' >
...@@ -128,7 +149,6 @@ class FireEquipTable extends Component { ...@@ -128,7 +149,6 @@ class FireEquipTable extends Component {
callBack={this.reload} callBack={this.reload}
isPageable={pagination} isPageable={pagination}
dataList={dataList} dataList={dataList}
totals={totalCount}
getTableDataAction={()=>{}} getTableDataAction={()=>{}}
selectedRowKeys={selects} selectedRowKeys={selects}
getSelectedRows={this.getSelectedRows} getSelectedRows={this.getSelectedRows}
...@@ -147,6 +167,7 @@ FireEquipTable.propTypes = { ...@@ -147,6 +167,7 @@ FireEquipTable.propTypes = {
fetchData: PropTypes.func, fetchData: PropTypes.func,
dataList: PropTypes.array, dataList: PropTypes.array,
totalCount: PropTypes.number, totalCount: PropTypes.number,
selects: PropTypes.array selects: PropTypes.array,
clearCallback: PropTypes.func
}; };
export default FireEquipTable; export default FireEquipTable;
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