From a5faf6e7b42f1e358ee8396c77452a07d9f976e8 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期三, 12 二月 2025 13:54:12 +0800
Subject: [PATCH] 测试完成

---
 src/views/followvisit/record/detailpage/index.vue |  341 ++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 281 insertions(+), 60 deletions(-)

diff --git a/src/views/followvisit/record/detailpage/index.vue b/src/views/followvisit/record/detailpage/index.vue
index 6dddd22..1438f7c 100644
--- a/src/views/followvisit/record/detailpage/index.vue
+++ b/src/views/followvisit/record/detailpage/index.vue
@@ -18,6 +18,15 @@
                 >鏌ョ湅鎮h�呮湰娆℃湇鍔′俊鎭�</el-button
               >
             </div>
+            <div style="margin-left: 20px; color: #59a0f0">
+              <el-link
+                href="https://9.208.2.207:6060/search-homepage"
+                target="_blank"
+                :underline="true"
+              >
+                鍓嶅線CDSS鏌ヨ
+              </el-link>
+            </div>
           </div>
           <!-- <el-button type="success">闅忚鍚庣煭淇�</el-button> -->
         </div>
@@ -35,17 +44,17 @@
             <template slot-scope="scope">
               <div v-if="scope.row.sendstate == 1">
                 <el-tag type="primary" :disable-transitions="false"
-                  >琚鍙�</el-tag
+                  >琛ㄥ崟宸查鍙�</el-tag
                 >
               </div>
               <div v-if="scope.row.sendstate == 2">
                 <el-tag type="primary" :disable-transitions="false"
-                  >寰呭彂閫�</el-tag
+                  >寰呮墽琛�</el-tag
                 >
               </div>
               <div v-if="scope.row.sendstate == 3">
                 <el-tag type="success" :disable-transitions="false"
-                  >宸插彂閫佹湭棰嗗彇</el-tag
+                  >琛ㄥ崟宸插彂閫�</el-tag
                 >
               </div>
               <div v-if="scope.row.sendstate == 4">
@@ -55,7 +64,9 @@
                 <el-tag type="danger" :disable-transitions="false"
                   >鍙戦�佸け璐�</el-tag
                 >
-              </div>
+              </div><div v-if="scope.row.sendstate == 6">
+              <el-tag type="success" :disable-transitions="false">宸插畬鎴�</el-tag>
+            </div>
             </template>
           </el-table-column>
           <el-table-column
@@ -167,14 +178,13 @@
         </el-table>
       </div>
     </div>
-    <div class="Followuserinfo">
-
+    <div :class="form.serviceType == 2 ? 'Followuserinfo' : 'Followuserinfos'">
       <div>
         <div class="headline">
           <div>浜哄伐澶勭悊</div>
-          <div style="margin-left: 30px;"><el-button type="warning"
-                >涓�閿懠鍙�</el-button
-              ></div>
+          <div style="margin-left: 30px">
+            <el-button type="warning">涓�閿懠鍙�</el-button>
+          </div>
         </div>
         <el-form ref="form" :model="form" label-width="80px">
           <el-form-item label="闅忚璁板綍">
@@ -198,12 +208,103 @@
               <el-button plain type="info" @click="Editsingletaskson('5')"
                 >涓績闅忚</el-button
               >
+              <el-button type="primary" round @click="sendAgain()"
+                >鍐嶆闅忚</el-button
+              >
             </div>
           </el-form-item>
         </el-form>
+        <el-collapse v-model="activeNames" @change="handleChange">
+          <el-collapse-item title="鏌ョ湅褰撳墠鎮h�呬俊鎭�" name="1">
+            <div class="detailed">
+              <el-form ref="userform" :model="userform" label-width="100px">
+                <el-row :gutter="20">
+                  <el-col :span="12">
+                    <el-form-item label="鎮h�呭鍚�" prop="name">
+                      <el-input
+                        v-model="userform.name"
+                        placeholder="璇疯緭鍏ュ鍚�"
+                        maxlength="30"
+                      ></el-input> </el-form-item
+                  ></el-col>
+                  <el-col :span="12"
+                    ><el-form-item label="鑱旂郴鏂瑰紡" prop="telcode">
+                      <el-input
+                        v-model="userform.telcode"
+                        placeholder="璇疯緭鍏ヨ仈绯绘柟寮�"
+                        maxlength="30"
+                      /> </el-form-item
+                  ></el-col>
+                </el-row>
+                <el-row :gutter="20">
+                  <el-col :span="24">
+                    <el-form-item label="鍑虹敓鍦�" prop="birthplace">
+                      <el-input
+                        v-model="userform.birthplace"
+                        placeholder="鍥姐�佺渷銆佸湴甯傘�佸尯鍘裤�佽閬撶瓑璇︾粏淇℃伅"
+                        maxlength="50"
+                      /> </el-form-item
+                  ></el-col>
+                </el-row>
+                <el-row :gutter="20">
+                  <el-col :span="24"
+                    ><el-form-item label="灞呬綇鍦�" prop="placeOfResidence">
+                      <el-input
+                        v-model="userform.placeOfResidence"
+                        placeholder="鍥姐�佺渷銆佸湴甯傘�佸尯鍘裤�佽閬撶瓑璇︾粏淇℃伅"
+                        maxlength="50"
+                      /> </el-form-item
+                  ></el-col>
+                </el-row>
+                <el-row :gutter="20">
+                  <el-col :span="24">
+                    <el-form-item label="鏍囩" prop="desc">
+                      <div class="xinz-inf">
+                        <el-tag
+                          :key="tag.tagname"
+                          type="success"
+                          v-for="tag in dynamicTags"
+                          v-if="tag.isoperation != 3"
+                          :disable-transitions="false"
+                        >
+                          {{ tag.tagname }}
+                        </el-tag>
+                        <el-select
+                          v-if="inputVisible"
+                          v-model="inputValue"
+                          @change="handleInputConfirm"
+                          filterable
+                          allow-create
+                          default-first-option
+                          placeholder="璇烽�夋嫨/鏌ヨ"
+                        >
+                          <el-option
+                            v-for="item in options"
+                            :key="item.tagid"
+                            :label="item.tagname"
+                            :value="item.tagname"
+                          >
+                          </el-option>
+                        </el-select>
+
+                        <el-button
+                          v-else
+                          class="button-new-tag"
+                          size="small"
+                          @click="showInput"
+                          >+ 鏂板鏍囩</el-button
+                        >
+                      </div>
+                    </el-form-item>
+                  </el-col>
+                </el-row>
+              </el-form>
+            </div>
+          </el-collapse-item>
+        </el-collapse>
       </div>
     </div>
-    <div>
+    <div v-if="form.serviceType == 2">
       <el-tabs v-model="activeName" type="border-card">
         <el-tab-pane name="wj">
           <span class="mulsz" slot="label"
@@ -211,7 +312,7 @@
           >
           <div class="CONTENT">
             <div class="title">{{ taskname ? taskname : "闂嵎" }}</div>
-            <!-- 闂嵎浠诲姟灞曠ず -->
+
             <div class="preview-left" v-if="!Voicetype">
               <!-- 鍗曢�� -->
               <div
@@ -308,9 +409,8 @@
                 </div>
               </div>
             </div>
-            <!-- 璇煶闂嵎褰㈠紡灞曠ず -->
+
             <div class="preview-left" v-else>
-              <!-- 鍗曢�� -->
               <div
                 class="topic-dev"
                 v-for="(item, index) in tableDatatop"
@@ -338,7 +438,6 @@
                   </div>
                 </div>
 
-                <!-- 濉┖ -->
                 <div class="scriptTopic-dev" :key="index" v-else>
                   <div class="dev-text">
                     {{ index + 1 }}銆乕闂瓟]<span>{{ item.questiontext }}</span>
@@ -364,7 +463,7 @@
             >
           </div>
         </el-tab-pane>
-        <!-- 璇煶闅忚璇︽儏---------------------- -->
+
         <el-tab-pane name="yy">
           <span class="mulsz" slot="label"
             ><i class="el-icon-headset"></i> 璇煶闅忚璇︽儏</span
@@ -400,10 +499,7 @@
                       :autosize="{ minRows: 1 }"
                       v-model="item.asrtext"
                     ></el-input>
-                    <!-- <el-radio v-model="radio" label="1">寰堟</el-radio>
-                    <el-radio v-model="radio" label="2">杩樺彲浠�</el-radio>
-                    <el-radio v-model="radio" label="3">涓嶅お濂�</el-radio>
-                    <el-radio v-model="radio" label="4">姣旇緝宸�</el-radio> -->
+
                     <div>
                       <mini-audio
                         :audio-source="
@@ -427,6 +523,59 @@
         </el-tab-pane>
       </el-tabs>
     </div>
+    <el-dialog title="鎮h�呭啀娆¢殢璁�" :visible.sync="dialogFormVisible">
+      <el-form ref="form" :model="zcform" label-width="80px">
+        <el-form-item label="鎮h�呭悕绉�">
+          <el-input style="width: 400px" v-model="zcform.name"></el-input>
+        </el-form-item>
+        <el-form-item label="骞撮緞">
+          <el-input style="width: 400px" v-model="zcform.name"></el-input>
+        </el-form-item>
+        <el-form-item label="璇婃柇">
+          <el-input style="width: 400px" v-model="zcform.name"></el-input>
+        </el-form-item>
+        <el-form-item label="绉戝">
+          <el-input style="width: 400px" v-model="zcform.name"></el-input>
+        </el-form-item>
+        <el-form-item label="鐥呭尯">
+          <el-input style="width: 400px" v-model="zcform.name"></el-input>
+        </el-form-item>
+
+        <el-form-item label="闅忚鏂瑰紡">
+          <el-radio-group v-model="zcform.resource">
+            <el-radio label="1">鏈梾鍖洪殢璁�</el-radio>
+            <el-radio label="2">闅忚涓績闅忚</el-radio>
+          </el-radio-group>
+        </el-form-item>
+        <el-form-item label="鍗冲埢鍙戦��">
+          <el-switch v-model="zcform.delivery"></el-switch>
+        </el-form-item>
+        <el-form-item label="闅忚鏃堕棿" v-if="!zcform.delivery">
+          <el-col :span="11">
+            <el-date-picker
+              type="date"
+              placeholder="閫夋嫨鏃ユ湡"
+              v-model="zcform.date1"
+              style="width: 100%"
+            ></el-date-picker>
+          </el-col>
+          <el-col class="line" :span="2">-</el-col>
+          <el-col :span="11">
+            <el-time-picker
+              placeholder="閫夋嫨鏃堕棿"
+              v-model="zcform.date2"
+              style="width: 100%"
+            ></el-time-picker>
+          </el-col>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="dialogFormVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="dialogFormVisible = false"
+          >纭� 瀹�</el-button
+        >
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -442,6 +591,7 @@
   updatePersonVoices,
   addPersonVoices,
 } from "@/api/AiCentre/index";
+import { messagelistpatient } from "@/api/patient/homepage";
 export default {
   dicts: ["sys_normal_disable", "sys_user_sex", "sys_yujing", "sys_suggest"],
   data() {
@@ -453,10 +603,15 @@
       activeName: "wj",
       voice: "",
       templateid: "",
+      zcform: {},
       form: {},
       tableDatatop: [], //棰樼洰琛�
       voiceDatatop: [], //棰樼洰琛�
+      dynamicTags: [],
+
+      userform: {},
       Whetherall: false, //鏄惁鍏ㄩ儴璁板綍灞曠ず
+      dialogFormVisible: false,
       Voicetype: 0, //鏄惁涓鸿闊虫湇鍔�
       logsheetlist: [],
       topicobj: {},
@@ -491,10 +646,12 @@
         if (res.code === 200) {
           this.tableDatatop = res.data.scriptResult.script;
           this.tableDatatop.forEach((item) => {
-            if (item.scriptResult && item.scriptType != 2) {
+            console.log(item.scriptResultId,'scriptResultId');
+
+            if (item.scriptResultId && item.scriptType != 2) {
               item.isoption = 3;
-              item.scriptResult = JSON.parse(item.scriptResult);
-            } else if (item.scriptResult && item.scriptType == 2) {
+              item.scriptResult = item.scriptResult;
+            } else if (item.scriptResultId && item.scriptType == 2) {
               item.scriptResult = item.scriptResult.split("&");
               item.isoption = 3;
             }
@@ -502,6 +659,19 @@
           this.taskname = res.data.taskName;
           this.overdata();
         }
+      });
+    },
+    // 鑾峰彇鍩虹淇℃伅
+    getuserinfo() {
+      const queryParams = {
+        pid: Number(this.id),
+        allhosp: "0",
+        pageNum: 1,
+      };
+      // 鎮h�呭熀纭�淇℃伅
+      messagelistpatient(queryParams).then((response) => {
+        this.userform = response.rows[0];
+        this.dynamicTags = response.rows[0].tagList.map(this.processElement);
       });
     },
     // 鑾峰彇璇煶鏁版嵁
@@ -518,7 +688,7 @@
         if (res.code == 200) {
           this.voiceDatatop = res.data.serviceSubtaskDetails;
           this.voice = res.data.voice;
-          this.activeName = "yy";
+          // // this.activeName = "yy";
           this.taskname = res.data.taskName;
           // 闂嵎灞曠ず鏁版嵁澶勭悊
           this.tableDatatop = res.data.filteredDetails;
@@ -567,9 +737,10 @@
         var objs = item.svyLibTemplateTargetoptions.find(
           (items) => items.optioncontent == item.scriptResult
         );
-
-        if (objs.isabnormal) {
-          excep = 1;
+        if (obj) {
+          if (objs.isabnormal) {
+            excep = 1;
+          }
         }
 
         let obj = {
@@ -583,7 +754,7 @@
         if (item.scriptType == 2 && item.scriptResult[0]) {
           obj.asrtext = item.scriptResult.join("&");
         } else if (item.scriptType != 2 && item.scriptResult) {
-          obj.asrtext = JSON.stringify(item.scriptResult);
+          obj.asrtext = item.scriptResult;
         }
 
         if (item.isoption == 3) {
@@ -606,31 +777,34 @@
       this.Editsingletasksonyic(excep);
     },
     yuyingetdetail() {
-      this.tableDatatop.forEach((item, index) => {
-        console.log(item.scriptResult, "scriptResult");
-        item.scriptResult = item.scriptResult.join("&");
-        item.templatequestionnum = index + 1;
-        item.subId = this.id;
-        item.taskid = this.taskid;
-        item.asrtext = item.matchedtext;
-        item.isoperation = 1;
-        item.patid = this.patid;
-        item.templateid = item.templateID;
-      });
-      if (this.tableDatatop[0].id) {
-        updatePersonVoices(this.tableDatatop).then((res) => {
-          if (res.code == 200) {
-            this.$modal.msgSuccess("鏈嶅姟淇敼鎴愬姛");
-          }
-        });
-      } else {
-        addPersonVoices(this.tableDatatop).then((res) => {
-          if (res.code == 200) {
-            this.$modal.msgSuccess("鏈嶅姟淇濆瓨鎴愬姛");
-          }
-        });
-      }
-    },
+   this.tableDatatop.forEach((item, index) => {
+    console.log(item.scriptResult, "scriptResult");
+    item.scriptResult = item.scriptResult.join("&");
+    item.templatequestionnum = index + 1;
+    item.subId = this.id;
+    item.taskid = this.taskid;
+    item.asrtext = item.matchedtext;
+    if (!item.id) {
+     item.isoperation = 1;
+    }
+    item.patid = this.patid;
+    item.templateid = item.templateID;
+  });
+  let obj ={
+    serviceSubtaskDetailList: this.tableDatatop,
+    param1: this.taskid,
+    param2: this.patid,
+    subId: this.id,
+  }
+
+    addPersonVoices(obj).then((res) => {
+    if (res.code == 200) {
+     this.$modal.msgSuccess("鏈嶅姟淇濆瓨鎴愬姛");
+    }
+   });
+
+  },
+
     // 鑾峰彇鎮h�呰褰�
     getTaskservelist(taskid) {
       this.taskid = taskid;
@@ -639,20 +813,26 @@
       } else {
         this.Whetherall = true;
       }
+      console.log("111");
+
       getTaskservelist({
         patid: this.patid,
         taskid: taskid,
       }).then((res) => {
         if (res.code == 200) {
           this.form = res.rows[0].serviceSubtaskList[0];
-          console.log(this.form,'form3');
+          console.log(this.form, "form3");
           this.logsheetlist = res.rows[0].serviceSubtaskList;
           this.templateid = this.logsheetlist[0].templateid;
+          console.log(this.form.serviceType, "serviceType");
         }
-        if (this.Voicetype) {
-          this.getPersonVoices();
-        } else {
-          this.getsearchrResults();
+
+        if (this.form.scriptType == 2) {
+          if (this.Voicetype) {
+            this.getPersonVoices();
+          } else {
+            this.getsearchrResults();
+          }
         }
       });
     },
@@ -663,9 +843,7 @@
         taskid: this.taskid,
       }).then((res) => {
         if (res.code == 200) {
-          objson = res.rows[0];
-
-
+          objson = res.rows[0].serviceSubtaskList[0];
           objson.suggest = son;
           Editsingletaskson(objson).then((res) => {
             if (res.code) {
@@ -693,6 +871,10 @@
           });
         }
       });
+    },
+    // 璋冭捣鍐嶆鍙戦��
+    sendAgain() {
+      this.dialogFormVisible = true;
     },
     // 鏇存敼寮傚父鐘舵��
     Seedetails(row) {
@@ -774,6 +956,27 @@
     }
   }
 }
+.Followuserinfos {
+  margin: 20px 10px;
+  align-items: center;
+  height: 300px;
+  padding: 30px;
+  background: #ffff;
+  border: 1px solid #dcdfe6;
+  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
+    0 0 6px 0 rgba(0, 0, 0, 0.04);
+  .userinfo-text {
+    font-size: 20px;
+    margin-right: 20px;
+    margin-bottom: 10px;
+  }
+  .userinfo-value {
+    color: rgb(15, 139, 211);
+    span {
+      margin-right: 20px;
+    }
+  }
+}
 .borderdiv {
   min-height: 60vh;
   font-size: 20px;
@@ -835,6 +1038,21 @@
 .scriptTopic-isabnormal {
   color: red;
 }
+.detailed {
+  width: 88%;
+  border-radius: 8px;
+  padding: 30px;
+  margin-bottom: 30px;
+  background-color: #ddf0f8;
+  .bg-purple {
+    margin-bottom: 20px;
+  }
+  .spanvalue {
+    display: inline-block;
+    min-width: 200px;
+    border-bottom: 1px solid rgb(172, 172, 172);
+  }
+}
 .headline {
   font-size: 24px;
   height: 40px;
@@ -880,6 +1098,9 @@
 ::v-deep.offside-value .el-radio__label {
   color: #fff;
 }
+::v-deep.el-link.el-link--default {
+  color: #02a7f0 !important;
+}
 .mulsz {
   font-size: 25px;
   margin-top: 20px;

--
Gitblit v1.9.3