import React, { Component } from "react"; import style from "./index.less"; import { Radio } from '@commonComp'; import ChooseItem from "./ChooseItem"; import ScaleItem from "./ScaleItem"; import Information from '../Information' import ChartItem from "./ChartItem"; class AssessResult extends Component { constructor(props) { super(props); const chooseSelecteds = JSON.parse(JSON.stringify(props.chooseSelecteds)); const wholeIndexs = JSON.parse(JSON.stringify(props.wholeIndexs)); //深度复制,Object.assgin为浅复制,下下级会同源 this.state={ chooseSelecteds:chooseSelecteds, //大数据选择模块 chartTimeTypes:{}, //图表模块 wholeAssessItems:wholeIndexs, //整体评估模块 wholeAssessText:props.wholeAssessText||'' //整体评估补充说明 } this.handleChooseChange = this.handleChooseChange.bind(this); this.handleScaleDel = this.handleScaleDel.bind(this); this.handleScaleText = this.handleScaleText.bind(this); } componentWillMount(){ //获取评估 this.props.getAssess(); } handleScaleText(text){ this.setState({ wholeAssessText:text }) } handleScaleDel(i,j){ const items = Object.assign({},this.state.wholeAssessItems); const inx = items[i].findIndex(x=>x==j); items[i].splice(inx,1); this.setState({ wholeAssessItems: items }); } handleChooseChange(i,selects){ const {chooseSelecteds} = this.state; this.setState({ chooseSelecteds: Object.assign(chooseSelecteds,{[i]:selects}) }); } handleChartChange(i,selects){ const {chartTimeTypes} = this.state; this.setState({ chartTimeTypes:Object.assign(chartTimeTypes,{[i]:selects}) }); } componentWillUnmount(){ //点确定关闭弹窗时把参数传到父组件去 const {handleSave,isAssessConfirm,clearChartData} = this.props; clearChartData&&clearChartData(); isAssessConfirm&&handleSave(this.state); } handoutTypes(item,i){ const {getIndexData,indexData,timeTypes,wholeAssessData,scaleInfo,getScaleInfo,possible,radioVal} =this.props; const {chooseSelecteds,wholeAssessItems,wholeAssessText,chartTimeTypes} = this.state;console.log(possible) const chartData = indexData; const name = item.regionName+":"; const list = item.data&&item.data.rows; switch (+item.regionType){ case 0: //数据来源与右侧手动添加 return ; case 1: //数据来源于大数据 return ; case 10: //数据来源于后台 return ; default: return ''; } } render() { const { onClose, data } = this.props; return
{data && data.map((it, i) => { return this.handoutTypes(it, i); })}
; } } export default AssessResult;