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";
import Notify from '@commonComp/Notify';
import {readyKeepHistory} from '@utils/tools';
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为浅复制,下下级会同源
//const wholeResults = JSON.parse(JSON.stringify(props.wholeResults)||{});
this.state={
chooseSelecteds:chooseSelecteds, //大数据选择模块
chartTimeTypes:{}, //图表模块
wholeAssessItems:wholeIndexs, //整体评估模块
wholeAssessText:props.wholeAssessText||'', //整体评估补充说明
wholeResults:{
possible:Object.assign({},props.possible),
radioVal:Object.assign({},props.radioVal)
},
};
this.handleChooseChange = this.handleChooseChange.bind(this);
this.handleScaleDel = this.handleScaleDel.bind(this);
this.handleScaleText = this.handleScaleText.bind(this);
this.handleResult = this.handleResult.bind(this);
}
componentWillMount(){
//获取评估
this.props.getAssess(this.props.isRecommend);
}
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
});
}
handleResult(opt){
const {wholeResults} = this.state.wholeResults;
const res = Object.assign({},wholeResults,opt);
this.setState({
wholeResults:res
});
}
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,handleSaveCalcu,isRecommend} = this.props;
clearChartData&&clearChartData();
if(!isRecommend&&isAssessConfirm && readyKeepHistory() == 1){
Notify.error("主诉不能为空");
}else if(!isRecommend&&isAssessConfirm && readyKeepHistory() == 2){
Notify.info('诊断不能为空');
}
handleSaveCalcu&&handleSaveCalcu(this.state.wholeResults);
isAssessConfirm&&handleSave(this.state,readyKeepHistory(),isRecommend);
}
handoutTypes(item,i){
const {getIndexData,indexData,timeTypes,wholeAssessData,closeAssess,showScaleFn,calcuFormula,isRecommend,chronicPushItems,
formulaResult,calcuResult} =this.props;
const {chooseSelecteds,wholeAssessItems,wholeAssessText,chartTimeTypes,wholeResults} = this.state;
const chartData = indexData;
const name = item.regionName+":";
const list = item.data&&item.data.rows;
switch (+item.regionType){
case 0: //数据来源与右侧手动添加
return