Browse Source

保存数据处理

luolei 5 năm trước cách đây
mục cha
commit
7d7b9cc4f1
2 tập tin đã thay đổi với 75 bổ sung66 xóa
  1. 69 60
      src/components/Preview.vue
  2. 6 6
      src/utils/tools.js

+ 69 - 60
src/components/Preview.vue

@@ -39,13 +39,13 @@
               </p> -->
               <p v-for="item in symptom.text">{{item.textP}}</p>
               <p>
-                <span>{{getText(diagnose.text,false)}}</span>
+                <span>{{getDetailText(diagnose.text,false).view}}</span>
               </p>
             </li>
             <li v-if="showLis[moduleCP['other']]==1">
               <h4><i></i> 其他史:</h4>
               <p>
-                <span>{{getText(others.text,false)}}</span>
+                <span>{{getDetailText(others.text,false).view}}</span>
               </p>
             </li>
             <li v-if="showLis[moduleCP['suplement']]==1">
@@ -100,13 +100,13 @@
                 </p> -->
                 <p v-for="item in symptom.text">{{item.text}}</p>
                 <p>
-                  <span>{{getText(diagnose.text,true)}}</span>
+                  <span>{{getDetailText(diagnose.text,false).content}}</span>
                 </p>
               </li>
               <li v-if="showLis[moduleCP['other']]==1">
                 <h4><i></i> 其他史:</h4>
                 <p>
-                  <span>{{getText(others.text,true)}}</span>
+                  <span>{{getDetailText(others.text,false).content}}</span>
                 </p>
               </li>
               <li v-if="showLis[moduleCP['suplement']]==1">
@@ -163,31 +163,6 @@ export default {
     })
   },
   methods: {
-    getText(textArr,flag){//拼接文本,flag=true为医生
-      let msg = "";
-      for(let k in textArr){
-        if(textArr[k] && Array.isArray(textArr[k])){
-          let temp = textArr[k];
-          for(let j in temp){
-            if(temp[j]){
-              if(flag){//医生
-                msg += temp[j].text + ','
-              }else if(temp[j].textP){
-                msg += temp[j].textP + ','
-              } 
-            }
-          }
-        }else if(textArr[k]){
-          if(flag){
-            msg += textArr[k].text + ','
-          }else if(textArr[k].textP){
-            msg += textArr[k].textP + ','
-          }
-        }
-      }
-      // 去掉最后一个逗号
-      return trimDots(msg.substring(0,msg.length-1));
-    },
     handleClick(flg){
       this.showDoc = flg
     },
@@ -223,7 +198,6 @@ export default {
           //   }
           // })
         }
-        // return
         api.uploadImageThums(formData).then((res) => {//获取图片
           let data = res.data;
           if (data.code == 0) {//图片提交成功再保存数据
@@ -259,15 +233,65 @@ export default {
         this.saveAllDate();
       }
     },
-    getStr(arr,flg){
-      let tmpStr = '',tmpStrDoc = '',obg={};
-      for(let i = 0;i<arr.length;i++){
-        tmpStr+=arr[i].text+';'
-        tmpStrDoc+=arr[i].textP+';'
+    getText(textArr,flag){//拼接文本,flag=true为医生
+      let msg = "";
+      for(let k in textArr){
+        if(textArr[k] && Array.isArray(textArr[k])){
+          let temp = textArr[k];
+          for(let j in temp){
+            if(temp[j]){
+              if(flag){//医生
+                msg += temp[j].text + ','
+              }else if(temp[j].textP){
+                msg += temp[j].textP + ','
+              } 
+            }
+          }
+        }else if(textArr[k]){
+          if(flag){
+            msg += textArr[k].text + ','
+          }else if(textArr[k].textP){
+            msg += textArr[k].textP + ','
+          }
+        }
+      }
+      // 去掉最后一个逗号
+      return trimDots(msg.replace(/,$/,''));
+    },
+    getDetailText(textArr,flg){
+      let msg = "",obg={},msgP = "";
+      if(flg == 1){
+        for(let k in textArr){
+          let item = textArr[k]
+          if(item.special){
+            msg+=item.name+item.special+(k == textArr.length-1?'':'、')
+            msgP+=item.name+item.specialP+(k == textArr.length-1?'':'、')
+          }else{
+            msg+=item.name+(k == textArr.length-1?'':'、')
+            msgP+=item.name+(k == textArr.length-1?'':'、')
+          }
+        }
+      }else{
+        for(let k in textArr){
+          if(textArr[k] && Array.isArray(textArr[k])){
+            let temp = textArr[k];
+            for(let j in temp){
+              if(temp[j]){
+                msg += temp[j].text + ','
+                msgP += temp[j].textP + ','
+              }
+            }
+          }else if(textArr[k]){
+            msg += textArr[k].text + ','
+            msgP += textArr[k].textP + ','
+          }
+        }
       }
-      obg.content=tmpStr
-      obg.contentJson=tmpStr
-      obg.contentValue=tmpStrDoc
+      
+      obg.view=trimDots(msgP.replace(/,$/,''))
+      obg.content=trimDots(msg.replace(/,$/,''))
+      obg.contentJson=trimDots(msg.replace(/,$/,''))
+      obg.contentValue=trimDots(msg.replace(/,$/,''))
       obg.type=flg
       return obg;
     },
@@ -276,40 +300,25 @@ export default {
       let detailList = [{type:1},{type:2},{type:3},{type:4}]
       for(let i = 0;i < detailList.length;i++){
         if(i == 0){
-          detailList[0]=this.getStr(symptom.text,1)
+          detailList[0]=this.getDetailText(symptom.choose,1)
         }else if(i == 1){
           let tmpArr = []
+          let tmpStr = this.getDetailText(diagnose.text,2).content
           for(let j = 0;j < symptom.text.length;j++){
-            tmpArr.push(symptom.text[j].textP)
+            tmpArr.push(symptom.text[j].text)
           }
-          detailList[1].content=JSON.stringify(tmpArr)
+          tmpStr.length>0?tmpArr.push(tmpStr):null
+          detailList[1].content=tmpArr.join()+tmpStr
           detailList[1].contentJson=JSON.stringify(tmpArr)
-          detailList[1].contentValue=tmpArr.join()
+          detailList[1].contentValue=tmpArr.join()+tmpStr
         }else if(i == 2){
-          detailList[2] = this.getStr(others.text,3)
+          detailList[2] = this.getDetailText(others.text,3)
         }else if(i == 3){
           detailList[3].content=addContent.txtDoc
           detailList[3].contentJson=addContent.txtDoc
           detailList[3].contentValue=addContent.txt
         }
       }
-      // // if(symptom.text.length>0){
-      //   detailList[0]=this.getStr(symptom.text,1)
-      // // }
-      // if(diagnose.text.length>0){
-      //   detailList.push(this.getStr(diagnose.text,2))
-      // }
-      // if(others.text.length>0){
-      //   let obg = {}
-      //   detailList[2] = this.getStr(others.text,3)
-      // }
-      // if(addContent.txt){
-      //   let obg = {}
-      //   obg.content=addContent.txtDoc
-      //   obg.contentValue=addContent.txt
-      //   obg.type=4
-      //   detailList.push(obg)
-      // }
       let params = {
         "dataJson": "1",
         "detailList": detailList,

+ 6 - 6
src/utils/tools.js

@@ -119,8 +119,8 @@ const getAllStr = (allData) =>{//获取界面数据,拼接字符串
   let allStr = '',data = allData.data,allStrDoc = '',obj={};
   for(let i = 0;i < data.length;i++){
     if(data[i].controlType != 3&&data[i].value){
-        allStr += (data[i].valueP).replace(patt,'').replace(/\#\{/g,'').replace(/\}/g,'')+';'
-        allStrDoc += (data[i].value).replace(patt,'').replace(/\#\{/g,'').replace(/\}/g,'')+';'
+        allStr += (data[i].valueP).replace(patt,'').replace(/\#\{/g,'').replace(/\}/g,'')+''
+        allStrDoc += (data[i].value).replace(patt,'').replace(/\#\{/g,'').replace(/\}/g,'')+''
     }
     if(data[i].controlType == 3){//多列选择
       let tmpStr = '',tmpDoc='';
@@ -128,16 +128,16 @@ const getAllStr = (allData) =>{//获取界面数据,拼接字符串
         let tmpName = data[i].questionDetailList[j]
         if(tmpName&&tmpName.value&&tmpName.value!='/'){
           let obj = getModelExpStr(tmpName.name,'',tmpName.description)
-          tmpStr+=obj.prefix+tmpName.valueP+obj.suffix+(j ==(data[i].questionDetailList.length-1)?';':',')
-          tmpDoc+=obj.prefix+tmpName.value+obj.suffix+(j ==(data[i].questionDetailList.length-1)?';':',')
+          tmpStr+=obj.prefix+tmpName.valueP+obj.suffix+','
+          tmpDoc+=obj.prefix+tmpName.value+obj.suffix+','
         }
       }
       allStr+=tmpStr
       allStrDoc+=tmpDoc
     }
   }
-  obj.allStr = trimDots(allStr)
-  obj.allStrDoc = trimDots(allStrDoc)
+  obj.allStr = trimDots(allStr.replace(/,$/,''))
+  obj.allStrDoc = trimDots(allStrDoc.replace(/,$/,''))
   return obj;
 }