From 6d7cd13eecd3a6f176d310986b4750b0c407e3a1 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期三, 21 五月 2025 14:40:43 +0800
Subject: [PATCH] 测试完成

---
 src/views/followvisit/record/detailpage/index.vue |  176 +++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 117 insertions(+), 59 deletions(-)

diff --git a/src/views/followvisit/record/detailpage/index.vue b/src/views/followvisit/record/detailpage/index.vue
index 8febf3d..55dd174 100644
--- a/src/views/followvisit/record/detailpage/index.vue
+++ b/src/views/followvisit/record/detailpage/index.vue
@@ -15,7 +15,7 @@
                 >鏌ョ湅鎮h�呭叏閮ㄦ湇鍔�</el-button
               >
               <el-button v-else type="success" @click="getTaskservelist(id)"
-                >鏌ョ湅鎮h�呮湰娆℃湇鍔′俊鎭�</el-button
+                >鍙睍绀烘湰娆℃湇鍔′俊鎭�</el-button
               >
             </div>
             <div style="margin-left: 20px; color: #59a0f0">
@@ -32,7 +32,11 @@
         </div>
       </div>
       <div>
-        <el-table :data="logsheetlist" style="width: 100%">
+        <el-table
+          :data="logsheetlist"
+          :row-class-name="tableRowClassName"
+          style="width: 100%"
+        >
           <el-table-column
             prop="sendname"
             align="center"
@@ -200,7 +204,6 @@
                 size="medium"
                 type="text"
                 @click="Seedetails(scope.row)"
-                v-hasPermi="['system:user:edit']"
                 ><span class="button-zx"
                   ><i class="el-icon-s-order"></i>鏌ョ湅</span
                 ></el-button
@@ -373,7 +376,7 @@
                       : 'scriptTopic-dev'
                   "
                   :key="index"
-                  v-if="item.scriptType == 1"
+                  v-if="item.scriptType == 1 && !item.astrict"
                 >
                   <div class="dev-text">
                     {{ index + 1 }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span>
@@ -381,14 +384,20 @@
                   <div class="dev-xx">
                     <el-radio-group
                       v-model="item.scriptResult"
-                      @change="handleOptionChange($event, index, item)"
+                      @change="
+                        handleOptionChange(
+                          $event,
+                          index,
+                          item.svyLibTemplateTargetoptions
+                        )
+                      "
                     >
                       <el-radio
                         v-for="(
-                          items, index
+                          items, indexs
                         ) in item.svyLibTemplateTargetoptions"
                         :class="items.isabnormal ? 'red-star' : ''"
-                        :key="index"
+                        :key="indexs"
                         :label="items.optioncontent"
                         >{{ items.optioncontent }}</el-radio
                       >
@@ -406,7 +415,7 @@
                       : 'scriptTopic-dev'
                   "
                   :key="index"
-                  v-if="item.scriptType == 2"
+                  v-if="item.scriptType == 2 && !item.astrict"
                 >
                   <div class="dev-text">
                     {{ index + 1 }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span>
@@ -437,7 +446,7 @@
                 <div
                   class="scriptTopic-dev"
                   :key="index"
-                  v-if="item.scriptType == 4"
+                  v-if="item.scriptType == 4 && !item.astrict"
                 >
                   <div class="dev-text">
                     {{ index + 1 }}銆乕闂瓟]<span>{{ item.scriptContent }}</span>
@@ -627,8 +636,8 @@
           <el-date-picker
             type="date"
             placeholder="閫夋嫨鏃ユ湡"
-             :picker-options="pickerOptions"
-             align="right"
+            :picker-options="pickerOptions"
+            align="right"
             v-model="form.date1"
             style="width: 100%"
           ></el-date-picker>
@@ -677,6 +686,7 @@
       activeName: "wj",
       voice: "",
       templateid: "",
+      again: "",
       zcform: {},
       form: {},
       tableDatatop: [], //棰樼洰琛�
@@ -725,31 +735,35 @@
         },
       },
       pickerOptions: {
-          shortcuts: [{
-            text: '涓冨ぉ鍚�',
+        shortcuts: [
+          {
+            text: "涓冨ぉ鍚�",
             onClick(picker) {
               const date = new Date();
               date.setTime(date.getTime() + 3600 * 1000 * 24 * 7);
-              picker.$emit('pick', date);
-            }
-          }, {
-            text: '15澶╁悗',
+              picker.$emit("pick", date);
+            },
+          },
+          {
+            text: "15澶╁悗",
             onClick(picker) {
               const date = new Date();
-              date.setTime(date.getTime() + 3600 * 1000 * 24* 15);
-              picker.$emit('pick', date);
-            }
-          }, {
-            text: '30澶╁悗',
+              date.setTime(date.getTime() + 3600 * 1000 * 24 * 15);
+              picker.$emit("pick", date);
+            },
+          },
+          {
+            text: "30澶╁悗",
             onClick(picker) {
               const date = new Date();
               date.setTime(date.getTime() + 3600 * 1000 * 24 * 30);
-              picker.$emit('pick', date);
-            }
-          }]
-        },
+              picker.$emit("pick", date);
+            },
+          },
+        ],
+      },
       userform: {},
-      Whetherall: false, //鏄惁鍏ㄩ儴璁板綍灞曠ず
+      Whetherall: true, //鏄惁鍏ㄩ儴璁板綍灞曠ず
       dialogFormVisible: false,
       Voicetype: 0, //鏄惁涓鸿闊虫湇鍔�
       logsheetlist: [],
@@ -767,11 +781,11 @@
     this.id = this.$route.query.id;
     this.sendname = this.$route.query.sendname;
     this.patid = this.$route.query.patid;
+    this.again = this.$route.query.again;
     this.Voicetype = this.$route.query.Voicetype;
     this.serviceType = this.$route.query.serviceType;
-    console.log(this.id, this.patid);
 
-    this.getTaskservelist(this.id);
+    this.getTaskservelist();
   },
 
   methods: {
@@ -784,13 +798,25 @@
         isFinish: false,
       }).then((res) => {
         if (res.code === 200) {
+          // 閽堝鍐嶆闅忚鏈嶅姟杩涜鍒犻櫎缁撴灉璧嬪��
+          if (this.again && res.data.upScriptResult) {
+            res.data.upScriptResult.forEach((itemA) => {
+              const itemB = res.data.scriptResult.find(
+                (item) => item.scriptContent === itemA.scriptContent
+              );
+              if (itemB) {
+                itemB.scriptResult = itemA.scriptResult;
+              }
+            });
+          }
           this.tableDatatop = res.data.scriptResult;
+
           this.tableDatatop.forEach((item) => {
             if (item.scriptType == 2) item.scriptResult = [];
-            if (item.scriptResult && item.scriptType != 2) {
+            if (item.scriptResultId && item.scriptType != 2) {
               item.isoption = 3;
               item.scriptResult = item.scriptResult;
-            } else if (item.scriptResult && item.scriptType == 2) {
+            } else if (item.scriptResultId && item.scriptType == 2) {
               item.scriptResult = item.scriptResult.split("&");
               item.isoption = 3;
             }
@@ -845,10 +871,8 @@
         patid: this.patid,
         subId: id ? id : this.id,
       };
-      console.log(this.voiceDatatop, "111");
 
       getPersonVoices(obj).then((res) => {
-        console.log("222");
         if (res.code == 200) {
           this.voiceDatatop = res.data.serviceSubtaskDetails;
           this.voice = res.data.voice;
@@ -863,7 +887,6 @@
               item.scriptResult = [];
             }
           });
-          console.log(this.tableDatatop, "this.tableDatatop");
 
           if (!this.tableDatatop.length) {
             this.puttaskid(this.templateid);
@@ -892,7 +915,6 @@
               item.scriptResult = [];
             }
           });
-          console.log(this.tableDatatop, "this.tableDatatop");
         }
       });
     },
@@ -945,7 +967,16 @@
             .confirm(
               '浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮h�咃細"' +
                 this.logsheetlist[0].sendname +
-                '"鍐嶆闅忚锛�'
+                '"鍐嶆闅忚锛�',
+              "纭",
+              {
+                confirmButtonText: "纭畾",
+                cancelButtonText: "鍙栨秷",
+                showCancelButton: true,
+                dangerouslyUseHTMLString: true,
+                confirmButtonClass: "custom-confirm-button", // 鑷畾涔夌‘璁ゆ寜閽殑绫诲悕
+                cancelButtonClass: "custom-cancel-button", // 鑷畾涔夊彇娑堟寜閽殑绫诲悕
+              }
             )
             .then(() => {
               document.querySelector("#app").scrollTo(0, 0);
@@ -960,7 +991,6 @@
     },
     yuyingetdetail() {
       this.tableDatatop.forEach((item, index) => {
-        console.log(item.scriptResult, "scriptResult");
         item.scriptResult = item.scriptResult.join("&");
         item.templatequestionnum = index + 1;
         item.subId = this.id;
@@ -984,7 +1014,18 @@
           this.$modal.msgSuccess("鏈嶅姟淇濆瓨鎴愬姛");
           this.$modal
             .confirm(
-              '浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮h�咃細"' + this.userform.name + '"鍐嶆闅忚锛�'
+              '浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮h�咃細"' +
+                this.userform.name +
+                '"鍐嶆闅忚锛�',
+              "纭",
+              {
+                confirmButtonText: "纭畾",
+                cancelButtonText: "鍙栨秷",
+                showCancelButton: true,
+                dangerouslyUseHTMLString: true,
+                confirmButtonClass: "custom-confirm-button", // 鑷畾涔夌‘璁ゆ寜閽殑绫诲悕
+                cancelButtonClass: "custom-cancel-button", // 鑷畾涔夊彇娑堟寜閽殑绫诲悕
+              }
             )
             .then(() => {
               document.querySelector("#app").scrollTo(0, 0);
@@ -997,8 +1038,6 @@
 
     // 鑾峰彇鎮h�呰褰�
     getTaskservelist(id) {
-      console.log(id, "idsub");
-
       if (id) {
         this.Whetherall = false;
       } else {
@@ -1010,7 +1049,9 @@
         subId: id,
       }).then((res) => {
         if (res.code == 200) {
-          this.form = res.rows[0].serviceSubtaskList[0];
+          this.form = res.rows[0].serviceSubtaskList.find(
+            (item) => item.id == this.id
+          );
           this.logsheetlist = res.rows[0].serviceSubtaskList;
           this.templateid = this.logsheetlist[0].templateid;
           const targetDate = new Date(this.form.longSendTime); // 鐩爣鏃ユ湡
@@ -1027,8 +1068,6 @@
           }
           this.getuserinfo();
         }
-        console.log(this.Voicetype, "this.Voicetype");
-
         if (this.Voicetype) {
           this.getPersonVoices();
         } else {
@@ -1048,22 +1087,22 @@
           Editsingletaskson(objson).then((res) => {
             if (res.code) {
               this.$modal.msgSuccess("鏈嶅姟璁板綍鎴愬姛");
-              this.getTaskservelist(this.id);
+              this.getTaskservelist();
             }
           });
         }
       });
     },
     Editsingletasksonyic(sendstate) {
-      console.log(sendstate, "sendstate");
-
       let objson = {};
       getTaskservelist({
         patid: this.patid,
         subId: this.id,
       }).then((res) => {
         if (res.code == 200) {
-          objson = res.rows[0].serviceSubtaskList[0];
+          objson = res.rows[0].serviceSubtaskList.find(
+            (item) => item.id == this.id
+          );
           objson.remark = this.form.remark;
           if (sendstate) objson.sendstate = sendstate;
           Editsingletaskson(objson).then((res) => {
@@ -1076,11 +1115,18 @@
                   this.$modal.msgError("鍩虹淇℃伅淇敼澶辫触");
                 }
               });
-              this.getTaskservelist(this.id);
+              this.getTaskservelist();
             }
           });
         }
       });
+    },
+    // 寮傚父鍒楁覆鏌�
+    tableRowClassName({ row, rowIndex }) {
+      if (row.id == this.id) {
+        return "warning-row";
+      }
+      return "";
     },
     // 璋冭捣鍐嶆鍙戦��
     sendAgain() {
@@ -1098,19 +1144,27 @@
               this.Voicetype = 1;
             }
           }
-          console.log(this.Voicetype, "this.Voicetype");
-
           this.taskid = row.taskid;
           this.id = row.id;
           this.patid = row.patid;
           this.serviceType = row.serviceType;
-          this.getTaskservelist(this.id);
+          this.getTaskservelist();
         })
         .catch(() => {});
     },
     handleOptionChange(a, b, c) {
-      console.log(this.tableDatatop[b], "this.tableDatatop[b]");
-
+      const result = c.find((item) => item.optioncontent == a);
+      if (result.nextQuestion == 0) {
+        this.tableDatatop = this.tableDatatop.reduce((acc, item, i) => {
+          acc.push(i > b ? { ...item, astrict: 1 } : item);
+          return acc;
+        }, []);
+      } else {
+        this.tableDatatop = this.tableDatatop.reduce((acc, item, i) => {
+          acc.push(i > b ? { ...item, astrict: 0 } : item);
+          return acc;
+        }, []);
+      }
       if (this.Voicetype) {
         var obj = this.tableDatatop[b].ivrTaskScriptTargetoptionList.find(
           (item) => item.optioncontent == a
@@ -1192,16 +1246,12 @@
 
       return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
     },
-    updateScore(a, b, c) {
-      console.log(a);
-      console.log(b);
-      console.log(c);
-    },
+    updateScore(a, b, c) {},
   },
 };
 </script>
 
-<style lang="scss" scoped>
+<style lang="scss">
 .Followupdetailspage {
   margin: 10px;
 }
@@ -1224,6 +1274,9 @@
       margin-right: 20px;
     }
   }
+}
+::v-deep.el-table .warning-row {
+  background: #c4e2ee;
 }
 .Followuserinfos {
   margin: 20px 10px;
@@ -1369,6 +1422,11 @@
 ::v-deep.el-link.el-link--default {
   color: #02a7f0 !important;
 }
+.el-message-box__btns button:nth-child(2) {
+  margin-left: 10px;
+  background-color: #f57676;
+  border-color: #f57676;
+}
 .mulsz {
   font-size: 25px;
   margin-top: 20px;

--
Gitblit v1.9.3