Quellcode durchsuchen

全部量表加入病例和删除

zhouna vor 6 Jahren
Ursprung
Commit
699b6fd054

+ 3 - 3
src/components/AssessResult/ScaleItem/index.jsx

@@ -281,7 +281,7 @@ class ScaleItem extends Component {
           </li>:<li>
           <span>{item.name}:</span>
           <div className={style['row']}>{temp}</div>
-          <div className={style["recommend"]} onClick={()=>this.props.handleRemove(i,j)}>
+          <div className={style["recommend"]} onClick={()=>this.props.handleRemove(false,i,j)}>
             <img className={style["deleteIcon"]} src={deleteIcon} />
           </div>
         </li>;
@@ -299,7 +299,7 @@ class ScaleItem extends Component {
   getScales(){
     const {scaleItems,disabled,formulaResult} = this.props;
     let li='',temp='';
-    const arr = scaleItems&&scaleItems.map((it)=>{
+    const arr = scaleItems&&scaleItems.map((it,i)=>{
       if(!it) return '';
       let scaleRes=formulaResult&&formulaResult[it.id]&&formulaResult[it.id].calcalculate;
       temp =<span className={style['scale']} onClick={()=>this.handleShowScale(it)}>
@@ -311,7 +311,7 @@ class ScaleItem extends Component {
       </li>:<li>
         <span>相关量表:</span>
         <div className={style['row']}>{temp}</div>
-        <div className={style["recommend"]} onClick={()=>{}}>
+        <div className={style["recommend"]} onClick={()=>this.props.handleRemove(true,i)}>
           <img className={style["deleteIcon"]} src={deleteIcon} />
         </div>
       </li>;

+ 20 - 10
src/components/AssessResult/index.jsx

@@ -13,12 +13,13 @@ class AssessResult extends Component {
     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)||{});
+    const wholeScale = JSON.parse(JSON.stringify(props.wholeScaleItems)||{});
 
     this.state={
       chooseSelecteds:chooseSelecteds,     //大数据选择模块
       chartTimeTypes:{},      //图表模块
       wholeAssessItems:wholeIndexs,     //整体评估模块
+      wholeScaleItems:wholeScale,
       wholeAssessText:props.wholeAssessText||'',     //整体评估补充说明
       wholeResults:{
         possible:props.possible,
@@ -39,13 +40,22 @@ class AssessResult extends Component {
         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
-    });
+  handleScaleDel(isList,i,j){
+    if(isList){         //删除全部量表中的项目
+      const items = [...this.state.wholeScaleItems];
+      items.splice(i,1);
+      this.setState({
+        wholeScaleItems: items
+      });
+    }else{
+      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;
@@ -80,12 +90,12 @@ class AssessResult extends Component {
   }
   handoutTypes(item,i){
     const {getIndexData,indexData,timeTypes,wholeIndexs,closeAssess,showScaleFn,calcuFormula,isRecommend,chronicPushItems,
-      formulaResult,calcuResult,calcuValues,indexNames,wholeScaleItems,showListScale} =this.props;
+      formulaResult,calcuResult,calcuValues,indexNames,showListScale} =this.props;
     let obj = [];
     Object.keys(wholeIndexs).map((i)=>{
       obj[i]=chronicPushItems[i];
     });
-    const {chooseSelecteds,wholeAssessItems,wholeAssessText,chartTimeTypes,wholeResults} = this.state;
+    const {chooseSelecteds,wholeAssessItems,wholeScaleItems,wholeAssessText,chartTimeTypes,wholeResults} = this.state;
     const chartData = indexData;
     const name = item.regionName+":";
     const list = item.data&&item.data.rows;

+ 15 - 4
src/components/ChronicInfo/index.jsx

@@ -291,16 +291,27 @@ class ChronicInfo extends React.Component{
     }
   }
   getAddBtnState(flag,v,i,j){
-    const {indexs} = this.props;
+    const {indexs,wholeScaleItems,addScaleItems} = this.props;
     let btn = '';
-    if(flag){
-      btn = indexs[i]&&indexs[i].includes(j)?<span className={style["add-record"]}>
+    if(flag){     //有结果
+      if(j!==undefined){
+        btn = indexs[i]&&indexs[i].includes(j)?<span className={style["add-record"]}>
                    <img src={added} />
                    已加入
                  </span>:<span className={style["listResult"]} onClick={()=>this.handleAddAssessItem(v,i,j)}>
                    <img src={add} />
                    加入病历记录
                  </span>;
+      }else{
+        btn = wholeScaleItems&&wholeScaleItems[i]?<span className={style["add-record"]}>
+                   <img src={added} />
+                   已加入
+                 </span>:<span className={style["listResult"]} onClick={()=>addScaleItems(v,i)}>
+                   <img src={add} />
+                   加入病历记录
+                 </span>;
+      }
+
     }else{
       btn = <span className={style["disable-add"]}>
                    <img src={add} />
@@ -491,7 +502,7 @@ class ChronicInfo extends React.Component{
                               {formulaResult&&formulaResult[v.id]?<i className={style['res']}>{'结果:'}{formulaResult[v.id].calcalculate&&formulaResult[v.id].calcalculate.result.value+' '+ (formulaResult[v.id].calcalculate.result.text?formulaResult[v.id].calcalculate.result.text:'')}</i>:''}
                             </span>
                             {
-                              this.getAddBtnState(formulaResult&&formulaResult[v.id],v)
+                              this.getAddBtnState(formulaResult&&formulaResult[v.id],v,i)
                             }
                           </li>
                         })}

+ 1 - 1
src/store/reducers/assessResult.js

@@ -56,7 +56,7 @@ export default (state=init,action)=>{
     case SET_SAVE_ASSESS_DATA:
       res.wholeIndexs = action.wholeAssessItems||{};
       res.wholeResults = action.wholeResults||{};
-      //res.indexTimeTypes = action.chartTimeTypes;
+      res.wholeScaleItems = action.wholeScaleItems||[];
       res.wholeAssessText = action.wholeAssessText||'';
       res.chooseSelecteds = action.chooseSelecteds||{};
       return res;