|
@@ -26,6 +26,7 @@ class ScaleItem extends Component {
|
|
|
formulaId:'',
|
|
|
text:props.text,
|
|
|
formulaData:{}, //计算公式值
|
|
|
+ isFormulaConfirm:false,
|
|
|
};
|
|
|
this.getItems = this.getItems.bind(this);
|
|
|
this.getDetailItems = this.getDetailItems.bind(this);
|
|
@@ -54,7 +55,7 @@ class ScaleItem extends Component {
|
|
|
});
|
|
|
this.closeOption();
|
|
|
}
|
|
|
- handleShowScale(item,parentId){console.log(item,parentId)
|
|
|
+ handleShowScale(item,parentId){
|
|
|
const {showScaleFn,closeAssess} = this.props;
|
|
|
closeAssess&&closeAssess(); //关闭评估弹窗
|
|
|
showScaleFn&&showScaleFn(item,parentId); //显示量表
|
|
@@ -89,8 +90,11 @@ class ScaleItem extends Component {
|
|
|
formulaData:obj
|
|
|
});
|
|
|
}
|
|
|
- confirmFormula(){
|
|
|
- this.closeFormula();
|
|
|
+ confirmFormula(){//计算公式确定
|
|
|
+ this.setState({
|
|
|
+ isFormulaConfirm:true,
|
|
|
+ formulaId:null
|
|
|
+ });
|
|
|
}
|
|
|
closeFormula(){
|
|
|
this.setState({
|
|
@@ -98,7 +102,7 @@ class ScaleItem extends Component {
|
|
|
})
|
|
|
}
|
|
|
calcuFormula(j, v, i) { //计算公式计算
|
|
|
- const { calcuFormula } = this.props;
|
|
|
+ const { calcuFormula,chronicPushItems } = this.props;
|
|
|
const {formulaId,formulaData} = this.state;
|
|
|
const it =formulaData&&formulaData[formulaId];
|
|
|
let allHasInfo = true
|
|
@@ -129,7 +133,7 @@ class ScaleItem extends Component {
|
|
|
pIndex: j,
|
|
|
ppIndex: i,
|
|
|
}
|
|
|
- calcuFormula(param)
|
|
|
+ calcuFormula({param,chronicPushItems})
|
|
|
} else { //不是所有值都填过了
|
|
|
Notify.info('请填写计算公式内容')
|
|
|
}
|
|
@@ -147,20 +151,27 @@ class ScaleItem extends Component {
|
|
|
}
|
|
|
getDetailItems(item,i){
|
|
|
let arr = [],temp='';
|
|
|
- const {indexs,result} = this.props;
|
|
|
- const {optionId,formulaId,radioVal,formulaData} = this.state;
|
|
|
+ const {indexs,result,formulaResult} = this.props;
|
|
|
+ const {optionId,formulaId,radioVal,formulaData,isFormulaConfirm} = this.state;
|
|
|
const possible=result&&result[item.id]&&result[item.id].possible;
|
|
|
+
|
|
|
item.details.map((its,j)=>{
|
|
|
if(indexs[i]&&indexs[i].includes(j)){
|
|
|
let it=null;
|
|
|
if(its.type==1){ //量表
|
|
|
it=deepClone(its);
|
|
|
- temp =<span className={style['scale']} onClick={()=>this.handleShowScale(it.content,item.id)}>【{it.content.name}】</span>;
|
|
|
+ let scaleRes=formulaResult&&formulaResult[it.content.id]&&formulaResult[it.content.id].calcalculate;
|
|
|
+ console.log(scaleRes);
|
|
|
+ temp =<span className={style['scale']}
|
|
|
+ onClick={()=>this.handleShowScale(it.content,item.id)}>
|
|
|
+ {scaleRes&&scaleRes.result?('结果:'+scaleRes.result.value+" "+scaleRes.result.text+' 【'+it.content.name+'】'):'【'+it.content.name+'】'}
|
|
|
+ </span>;
|
|
|
}else if(its.type==2){ //计算公式
|
|
|
it=formulaData[formulaId]||deepClone(its);
|
|
|
+ const result = it.content.result&&it.content.result[1]&&it.content.result[1].text;
|
|
|
temp = <div className={style['results']}>
|
|
|
<span>计算公式:</span>
|
|
|
- <span className={style["blue"]} onClick={this.showFormula.bind(this,item.id,it)}>请选择</span>
|
|
|
+ <span className={style["blue"]} onClick={this.showFormula.bind(this,item.id,it)}>{result?result:'请选择'}</span>
|
|
|
<img src={level1} />
|
|
|
<MiniToast title={it.content.name}
|
|
|
icon={allTableIcon}
|
|
@@ -277,7 +288,7 @@ class ScaleItem extends Component {
|
|
|
});
|
|
|
}
|
|
|
render() {
|
|
|
- const {title,handleInp,disabled,isRecommend} = this.props;
|
|
|
+ const {title,handleInp,disabled,isRecommend,formulaResult} = this.props;console.log(formulaResult)
|
|
|
return <div className={style['assess-item']}>
|
|
|
{isRecommend?'':<h2>{title}</h2>}
|
|
|
<div className={style['item-content']}>
|