From 628fd01beea81bac2f0299472d528860ae07cf3f Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期日, 02 六月 2024 10:52:30 +0800
Subject: [PATCH] 测试完成

---
 src/views/patient/propaganda/particty.vue |  278 ++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 210 insertions(+), 68 deletions(-)

diff --git a/src/views/patient/propaganda/particty.vue b/src/views/patient/propaganda/particty.vue
index 42620a3..8f06dbc 100644
--- a/src/views/patient/propaganda/particty.vue
+++ b/src/views/patient/propaganda/particty.vue
@@ -7,7 +7,7 @@
           <el-step
             icon="el-icon-edit"
             title="鍩虹淇℃伅"
-            description="閫夋嫨瀹f暀妯$増銆佸舰寮忕瓑鍩虹淇℃伅"
+            description="閫夋嫨妯$増銆佸舰寮忕瓑鍩虹淇℃伅"
           ></el-step>
           <el-step
             icon="el-icon-user"
@@ -22,11 +22,7 @@
     <div class="leftvlue" style="margin: 0 20px">
       <!-- 鍩烘湰淇℃伅 -->
       <div v-if="Editprogress == 1">
-        <el-alert
-          title="閫夋嫨瀹f暀妯$増銆佸舰寮忕瓑鍩虹淇℃伅"
-          type="success"
-          effect="dark"
-        >
+        <el-alert title="閫夋嫨妯$増銆佸舰寮忕瓑鍩虹淇℃伅" type="success" effect="dark">
         </el-alert>
         <div class="leftvlue-jbxx">
           <!-- 鍩虹淇℃伅 -->
@@ -45,7 +41,7 @@
                         placeholder="璇疯緭鍏ヤ换鍔″悕绉�"
                       /> </el-form-item
                   ></el-col>
-                  <el-col :span="12"
+                  <el-col :span="8"
                     ><el-form-item label="妯$増鍚嶇О">
                       <el-input
                         style="width: 220px"
@@ -54,6 +50,13 @@
                         placeholder="璇峰湪涓嬪垪閫夋嫨"
                       /> </el-form-item
                   ></el-col>
+                  <el-col :span="4">
+                    <el-button
+                      type="primary"
+                      icon="el-icon-edit"
+                      circle
+                    ></el-button>
+                  </el-col>
                 </el-row>
 
                 <el-form-item label="浠诲姟鎻忚堪">
@@ -85,7 +88,7 @@
                   <div style="display: flex">
                     <div style="margin-right: 10px">
                       <span style="font-size: 18px; margin-right: 10px"
-                        >涓婂崍</span
+                        >鏃堕棿娈典竴</span
                       >
                       <el-time-picker
                         is-range
@@ -102,7 +105,7 @@
                     </div>
                     <div style="margin-right: 10px">
                       <span style="font-size: 18px; margin-right: 10px"
-                        >涓嬪崍</span
+                        >鏃堕棿娈典簩</span
                       >
                       <el-time-picker
                         is-range
@@ -119,7 +122,7 @@
                     </div>
                     <div style="margin-right: 10px">
                       <span style="font-size: 18px; margin-right: 10px"
-                        >鏅氶棿</span
+                        >鏃堕棿娈典笁</span
                       >
                       <el-time-picker
                         is-range
@@ -331,7 +334,7 @@
                     :total="total"
                     :page.sync="topqueryParams.pageNum"
                     :limit.sync="topqueryParams.pageSize"
-                    @pagination="getList"
+                    @pagination="Acquisitiontype"
                   />
                 </el-row>
               </div>
@@ -339,7 +342,7 @@
           </div>
         </div>
         <el-button type="success" @click="nextstep('ruleForm')">{{
-          quote ? "绔嬪嵆鍒涘缓" : "浠诲姟璇︽儏璁剧疆"
+          quote ? "绔嬪嵆鍒涘缓" : "浠诲姟璇︽儏閰嶇疆"
         }}</el-button>
         <el-button @click="resetForm('ruleForm')">閲嶇疆</el-button>
       </div>
@@ -528,10 +531,10 @@
                   <SFtable
                     @details="detailhz"
                     @handleUpdate="handleUpdate"
-                    @handleSelectionChange="handleSelectionChange"
-                    :currentList="form.patTaskRelevances"
+                    :currentList="overallCase"
                     :tableLabel="tableLabelhz"
                     :serialnumber="false"
+                    :multiplechoice="false"
                     :controlxz="false"
                     :typeinfo="2"
                   />
@@ -548,9 +551,9 @@
           </div>
         </div>
         <el-button type="primary" @click="laststep()">涓婁竴姝�</el-button>
-        <el-button type="success" @click="submitForm('ruleForm')"
-          >绔嬪嵆鍒涘缓</el-button
-        >
+        <el-button type="success" @click="submitForm('ruleForm')">{{
+          quote ? "绔嬪嵆鍒涘缓" : "纭浠诲姟閰嶇疆"
+        }}</el-button>
         <el-button @click="resetForm('ruleForm')">閲嶇疆</el-button>
       </div>
     </div>
@@ -560,6 +563,7 @@
       :visible.sync="dialogVisiblepatient"
       width="70%"
       :before-close="handleClosehz"
+      :close-on-click-modal="false"
     >
       <div class="examine-jic">
         <div class="jic-value">
@@ -576,20 +580,7 @@
               <el-form-item label="鎮h�呭悕绉帮細">
                 <el-input v-model="patientqueryParams.name"></el-input>
               </el-form-item>
-              <!-- <el-form-item label="鎮h�呮潵婧�" prop="status">
-                <el-select
-                  v-model="patientqueryParams.topic"
-                  placeholder="璇烽�夋嫨"
-                >
-                  <el-option
-                    v-for="item in topicoptions"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item> -->
+
               <el-form-item label="灏辫瘖绉戝" prop="status">
                 <el-select
                   v-model="patientqueryParams.topic"
@@ -629,6 +620,7 @@
             </el-form>
             <!-- 閫夋嫨鎮h�呭垪琛� -->
             <SFtable
+              ref="multipleTable"
               @handleUpdate="handleUpdate"
               @handleSelectionChange="handleSelectionChange"
               :currentList="patientuserList"
@@ -654,6 +646,43 @@
         >
       </span>
     </el-dialog>
+    <el-dialog title="妯$増棰勮" :visible.sync="previewtf" width="60%">
+      <div class="preview-left">
+        <!-- 鍗曢�� -->
+        <div
+          class="topic-dev"
+          v-for="(item, index) in questionList"
+          :key="item.aaa"
+        >
+          <div class="dev-text">
+            {{ index + 1 }}銆�<span>{{ item.questionText }}</span>
+          </div>
+
+          <div class="dev-xx" v-if="item.valueType == 1">
+            <el-radio-group v-model="item.radio">
+              <el-radio
+                v-for="(items, index) in item.ivrLibaScriptTargetoptionList"
+                :key="items.id"
+                :label="items.id"
+                >{{ items.targetvalue }}</el-radio
+              >
+            </el-radio-group>
+          </div>
+          <div v-else>
+            <el-input
+              type="textarea"
+              placeholder="鏈幏鍙栧埌淇℃伅"
+              v-model.sync="item.questionResult"
+              :rows="2"
+            />
+          </div>
+        </div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="previewGo">鍓嶅線妯$増璇︽儏淇敼</el-button>
+        <el-button type="primary" @click="previewFn">纭浣跨敤</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 
@@ -665,6 +694,7 @@
   getlibrarylist,
   getFollowuplist,
   getQtemplatelist,
+  TaskTemplatecomit,
   getTaskInfo,
   gethetaskinfo,
   delhetaskinfo,
@@ -681,15 +711,21 @@
     return {
       title: "瀹f暀鍐呭鍒楄〃",
       currenttype: 1, //1瀹f暀2闂ㄨ瘖3鍑洪櫌4澶嶈瘖5浣撴6闂嵎
-      id: "",
+      id: "", //
+      previewid: "", //浠诲姟妯$増浼犻�抜d
+      libName: "",
+      overallCase: [], //閫夋嫨鎮h�呮��
+      allpids: [],
+      libId: null, //妯℃澘搴撴ā鐗坕d
       Editprogress: 1, //缂栬緫杩涘害
+      previewtf: false, //棰勮
       loading: false, // 閬僵灞�
       patientloading: false, // 閬僵灞�
       dialogVisiblepatient: false, //娣诲姞鎮h�呭脊妗�
       radio: 1,
       checkboxlist: [],
       tableLabel: [],
-
+      questionList: [],
       // 鎮h�呰〃鍗�
       tableLabelhz: [
         { label: "搴忓彿", width: "", prop: "patid" },
@@ -828,6 +864,7 @@
         sendType: 1,
         templatename: "",
         templateid: null,
+        libtemplateid: null,
       },
       taskoptions: [
         {
@@ -888,8 +925,8 @@
     // 鑾峰彇褰撳墠绫诲瀷
     Acquisitiontype() {
       let queryParams = {
-        pageNum: 1,
-        pageSize: 10,
+        pageNum: this.topqueryParams.pageNum,
+        pageSize: this.topqueryParams.pageSize,
         isavailable: "",
       };
       this.currenttype = this.$route.query.type;
@@ -956,14 +993,14 @@
       );
       console.log(filteredArray, "瀛樺墠鍙橀噺");
       this.form.textParam = this.convertFormat2ToFormat1(filteredArray);
-      if (this.form.id) {
+      if (this.form.taskid) {
         this.form.isoperation = 2;
       } else {
         this.form.isoperation = 1;
       }
       Editsingletask(this.form).then((res) => {
         if (res.code == 200) {
-          if (this.form.id) {
+          if (this.form.taskid) {
             this.$modal.msgSuccess("鏂板鎴愬姛");
           } else {
             this.$modal.msgSuccess("淇敼鎴愬姛");
@@ -973,7 +1010,7 @@
       });
     },
     // ----------------------琛ㄦ牸瀛愮粍浠朵簨浠�
-    // 閫夋嫨妯$増
+    // 纭閫夋嫨妯$増鏀惧叆浠诲姟妯$増
     selectfn(row, type) {
       // 妯$増鎯呭喌涓嬭幏鍙栨ā鐗堜俊鎭�
       if (type == 1) {
@@ -984,15 +1021,20 @@
           currenttype == 5 ||
           currenttype == 7
         ) {
-          this.form.templatename = row.templateName;
-          this.form.templateid = row.id;
+          this.libName = row.templateName;
+          this.libId = row.id;
         } else if (this.currenttype == 1) {
-          this.form.templatename = row.preachname;
-          this.form.templateid = row.id;
+          this.libName = row.preachname;
+          this.libId = row.id;
         }
         getvFollowup({ id: row.id }).then((res) => {
           if (res.code == 200) {
+            this.Tasktemplate = res.data;
             const data = res.data;
+            this.questionList = data.ivrLibaTemplateScriptVOList;
+            this.previewtf = true;
+            this.previewid = data.id;
+            console.log(this.questionList, "questionList");
             this.Variablehandling(data.ivrLibaTemplateScriptVOList, 1);
           }
         });
@@ -1031,29 +1073,88 @@
     },
     // 瀛愪换鍔′簩绾у脊妗�
     handleAddpatient(row) {
+      console.log(this.overallCase, "ssaaa");
+      this.allpids = [];
+      this.overallCase.forEach((item) => {
+        this.allpids.push(item.patid);
+      });
+      if (this.allpids[0]) {
+        this.patientqueryParams.pids = this.allpids;
+        console.log(this.patientqueryParams.pids);
+      } else {
+        this.patientqueryParams.pids = null;
+      }
+
       getTaskpatient(this.patientqueryParams).then((response) => {
         console.log(response);
         this.patientuserList = response.rows;
         this.patienttotal = response.total;
         this.loading = false;
+        this.Restorecheck();
       });
       this.dialogVisiblepatient = true;
     },
     handleUpdate() {},
     handleDelete() {},
     handleExport() {},
-    // 澶氶�夋閫変腑鏁版嵁
+    // 閫変腑鎮h�呰〃
+    handlePitchionChange() {},
+    // 閫夋嫨鎮h�呰〃鏁版嵁
     handleSelectionChange(selection) {
       console.log("澶氶�夋偅鑰�");
       this.SelectPatientslist = selection;
-      this.ids = null;
-      this.ids = selection.map((item) => item.patid).join(",");
-      // let result = this.ids.join(",");
       this.multiple = !selection.length;
-      console.log(this.ids);
+
+      // 璧嬪�肩粰鏁翠綋閫変腑鏁扮粍
+      this.SelectPatientslist.forEach((item) => {
+        const isExist = this.overallCase.find((obj) => obj.name == item.name);
+        if (!isExist) {
+          item.isoperation = 1;
+          this.overallCase.push(item);
+          this.form.patTaskRelevances.push(item);
+        }
+      });
+    },
+    // 鍒囨崲椤靛悗鎭㈠閫変腑
+    Restorecheck() {
+      console.log(this.overallCase, "this.overallCase");
+      const allid = this.overallCase.map((item) => item.patid);
+      const overlap = this.patientuserList.filter((value) => {
+        return allid.includes(value.patid);
+      });
+      // 淇濇寔ids鍜屽綋鍓嶉〉闈㈢殑鍚屾鎬�
+      this.SelectPatientslist = overlap;
+      console.log(this.SelectPatientslist, "杩涘叆鍒嗛〉SelectPatientslist");
+
+      this.toggleSelection(overlap);
+    },
+    // 鎸傝浇閫夋嫨鐘舵��
+    toggleSelection(rows) {
+      if (rows) {
+        this.decision = true;
+        this.$nextTick(() => {
+          rows.forEach((row) => {
+            this.$refs.multipleTable.toggleRowSelection(row, true);
+          });
+          this.decision = false;
+        });
+        console.log(123);
+      } else {
+        this.$refs.multipleTable.clearSelection();
+      }
     },
     // 鍒犻櫎閫変腑鎮h��
-    detailhz(row, info) {},
+    detailhz(row, info) {
+      this.$modal
+        .confirm('鏄惁纭鍒犻櫎鎮h��"' + row.name + '"鐨勬湇鍔¢」锛�')
+        .then(() => {
+          let indexa = this.overallCase.indexOf(row);
+          let indexb = this.form.patTaskRelevances.indexOf(row);
+          this.overallCase.splice(indexa, 1);
+          this.form.patTaskRelevances[indexb].isoperation = 3;
+          this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+        });
+    },
     getList() {},
     handleQuery() {
       this.handleAddpatient();
@@ -1082,21 +1183,21 @@
           let filteredArray = "";
           if (res.code == 200) {
             this.form = res.data;
+            this.overallCase = this.form.patTaskRelevances.concat();
             this.checkList = this.form.serviceform.split(",");
-            this.daytime = this.form.sendlimitabegin.split(",");
-            if (this.form.sendlimitaend)
-              this.time1 = this.form.sendlimitaend.split(",");
-            if (this.form.sendlimitnbegin)
-              this.time2 = this.form.sendlimitaend.split(",");
-            if (this.form.sendlimitnend)
-              this.time3 = this.form.sendlimitaend.split(",");
+            this.daytime = this.form.showDate.split(",");
+            if (this.form.showTimeMorn)
+              this.time1 = this.form.showTimeMorn.split(",");
+            if (this.form.showTimeNoon)
+              this.time2 = this.form.showTimeNoon.split(",");
+            if (this.form.showTimeNight)
+              this.time3 = this.form.showTimeNight.split(",");
             filteredArray = this.convertFormat1ToFormat2(this.form.textParam);
             console.log(filteredArray, "filteredArray");
             this.variableList = this.transitionList.concat(filteredArray);
           } else {
             this.$modal.msgError(res.code);
           }
-          console.log(res);
         });
       }
     },
@@ -1109,17 +1210,14 @@
     },
     // 鏂板娲鹃�佹偅鑰�
     AddDispatchpatients() {
-      this.SelectPatientslist.forEach((item) => {
-        item.isoperation = 1;
-      });
-      this.form.patTaskRelevances.push(...this.SelectPatientslist);
+      // this.SelectPatientslist.forEach((item) => {
+      //   item.isoperation = 1;
+      // });
+      // this.form.patTaskRelevances.push(...this.SelectPatientslist);
+      // this.overallCase.push(...this.SelectPatientslist);
       this.dialogVisiblepatient = false;
     },
 
-    // 鍙橀噺---------------
-    // variableEdit(index, row) {
-    //   console.log(index, row);
-    // },
     variableDelete(index, row) {
       this.variableList.splice(index, 1);
       row.isoperation = 3;
@@ -1186,11 +1284,39 @@
       this.form.sendTimeslot = combinedData;
       // 灞曠ず鏁版嵁涓存椂瀛樺偍鏃ユ湡銆佹棭銆佷腑銆佹櫄
 
-      this.form.sendlimitabegin = this.daytime.join(",");
-      if (this.time1) this.form.sendlimitaend = this.time1.join(",");
-      if (this.time2) this.form.sendlimitnbegin = this.time2.join(",");
-      if (this.time3) this.form.sendlimitnend = this.time3.join(",");
+      this.form.showDate = this.daytime.join(",");
+      if (this.time1) this.form.showTimeMorn = this.time1.join(",");
+      if (this.time2) this.form.showTimeNoon = this.time2.join(",");
+      if (this.time3) this.form.showTimeNight = this.time3.join(",");
       console.log(combinedData, "combinedData");
+    },
+    // 鏌ョ湅妯$増
+    previewGo() {
+      this.$router.push({
+        path: "/knowledge/templateku/configurat/",
+        query: { id: this.previewid, task: true, data: this.form },
+      });
+    },
+    previewFn() {
+      let id = this.Tasktemplate.id;
+      this.Tasktemplate.id = null;
+      this.Tasktemplate.ivrLibaTemplateScriptVOList.ivrTaskScriptTargetoptionList =
+        this.Tasktemplate.ivrLibaTemplateScriptVOList.ivrLibaScriptTargetoptionList;
+      this.Tasktemplate.ivrTaskTemplateScriptVOList =
+        this.Tasktemplate.ivrLibaTemplateScriptVOList;
+      this.Tasktemplate.ivrLibaTemplateTagList = null;
+      this.Tasktemplate.tempDetpRelevances = null;
+      this.Tasktemplate.libtemplateid = id;
+      this.Tasktemplate.isoperation = 1;
+      this.Tasktemplate.libtemplatename = this.Tasktemplate.templateName;
+      TaskTemplatecomit(this.Tasktemplate).then((response) => {
+        console.log(response);
+        this.previewtf = false;
+        this.form.templateid = response.data;
+        this.form.libtemplateid = this.libId;
+        this.form.templatename = this.libName;
+        this.$modal.msgSuccess("閫夋嫨妯$増鎴愬姛");
+      });
     },
   },
 };
@@ -1284,6 +1410,22 @@
 //     margin: 0 20px;
 //   }
 // }
+.preview-left {
+  margin: 20px;
+  //   margin: 20px;
+  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);
+  .topic-dev {
+    margin-bottom: 25px;
+    font-size: 20px !important;
+    .dev-text {
+      margin-bottom: 10px;
+    }
+  }
+}
 .jic-value {
   font-size: 20px;
   border-top: 1px solid #a7abac;

--
Gitblit v1.9.3