import React, { Component } from "react"; import style from "../index.less"; import deleteIcon from '@common/images/delete.png'; import deleteIconNo from '@common/images/delete_no.png'; import {ComplexModal,MiniToast,Radio} from '@commonComp'; import {deepClone,preventDefault} from '@utils/tools'; import { getFormulaResult } from '@store/async-actions/fetchModules' /** * 来源于页面选择 * * **/ class ScaleItem extends Component { constructor(props) { super(props); this.$area = React.createRef(); this.state = { text:props.text, }; this.getItems = this.getItems.bind(this); this.getDetailItems = this.getDetailItems.bind(this); } getDetailItems(item,i){ let arr = [],temp=''; const {indexs,result,formulaResult,disabled,calcuResult} = this.props; const possible=result&&result.possible; item.details.map((its,j)=>{ let it=its; if(indexs[i]&&indexs[i].includes(j)){ if(its.type==1){ //量表 let scaleRes=formulaResult&&formulaResult[it.content.conceptId]&&formulaResult[it.content.conceptId].calcalculate; const name = scaleRes&&scaleRes.result?(' 【'+it.content.name+'】 结果:'+scaleRes.result.value+" "+(scaleRes.result.text||'')):'【'+it.content.name+'】'; temp = {name} ; }else if(its.type==2){ //计算公式 const showRes = calcuResult&&calcuResult[item.conceptId]||it.content.result; const cresult = showRes&&showRes[1]&&showRes[1].text; temp =
患者可能有: {cresult}
}else if(its.type==3){ temp =
可能结果: {possible[item.conceptId]}
; } const passId = item.details[j].type==1?item.details[j].content.conceptId:undefined; const li = disabled?
  • {item.name}:
    {temp}
  • :
  • {item.name}:
    {temp}
  • ; arr.push(li); } }); return arr; } getItems(){ const { data } = this.props; return data&&data.map((it,i)=>{ return this.getDetailItems(it,i); }); } getScales(){ const {scaleItems,disabled,formulaResult} = this.props; let li='',temp='',arr=[],it={}; if(!scaleItems){ return ''; }; for( let i in scaleItems){ it = {conceptId:i,name:scaleItems[i].name}; if(!it) continue; let scaleRes=formulaResult&&formulaResult[it.conceptId]&&formulaResult[it.conceptId].calcalculate; const name = scaleRes&&scaleRes.result?(' 【'+scaleItems[i].name+'】 结果:'+scaleRes.result.value+" "+(scaleRes.result.text||'')):'【'+scaleItems[i].name+'】'; //这里onClick不能用箭头函数,用箭头函数会一直绑定for的最后一个it temp ={name}; li = disabled?
  • 相关量表:
    {temp}
  • :
  • 相关量表:
    {temp}
  • ; arr.push(li); }; return arr; } handleInput(e){ const text = e.target.value; this.setState({ text }); } componentWillReceiveProps(next){ //修复bug1329,第二次保存值不显示 if(next.text!=this.state.text){ this.setState({ text:next.text }); this.$area.current.value=next.text; } } render() { const {title,handleInp,disabled} = this.props; return

    {title}

    ; } } export default ScaleItem;