From b14bdee1aaf639dd14440b42c6a0ce2e12549ee7 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 26 七月 2024 10:38:09 +0800
Subject: [PATCH] 测试完成

---
 src/views/knowledge/education/compilequer/index.vue |  215 ++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 147 insertions(+), 68 deletions(-)

diff --git a/src/views/knowledge/education/compilequer/index.vue b/src/views/knowledge/education/compilequer/index.vue
index ad86eaf..57f987d 100644
--- a/src/views/knowledge/education/compilequer/index.vue
+++ b/src/views/knowledge/education/compilequer/index.vue
@@ -298,34 +298,7 @@
       <div v-if="Editprogress == 2">
         <el-row :gutter="20">
           <el-col :span="4"><div class="leftvlue-jbxx">瀹f暀鍐呭</div></el-col>
-          <el-col :span="12">
-            <div>
-              <el-button @click="laststep('ruleForm')">涓婁竴姝�</el-button>
-              <el-button type="success" @click="Departmenttreatment('ruleForm')"
-                >淇濆瓨</el-button
-              >
-              <el-button type="warning" @click="Departmenttreatment('ruleForm')"
-                >鍙﹀瓨鏂扮増鏈�</el-button
-              >
-              <el-button type="info" @click="closeFm('ruleForm')"
-                >鍏抽棴</el-button
-              >
-            </div></el-col
-          >
         </el-row>
-        <el-row>
-          <el-col :span="24">
-            <div style="display: flex; margin-left: 66px; margin-bottom: 10px">
-              <div
-                v-for="item in variablelist"
-                class="tsgname"
-                @click="tsgnameto(item)"
-              >
-                {{ item.variatename }}
-              </div>
-            </div>
-          </el-col></el-row
-        >
 
         <div>
           <el-form
@@ -335,20 +308,55 @@
             label-width="100px"
             class="demo-ruleForm"
           >
-            <el-form-item label="璧勬枡褰㈠紡" prop="region">
-              <el-select v-model="ruleForm.shape" placeholder="璇烽�夋嫨鍐呭褰㈠紡">
-                <el-option
-                  v-for="item in xjxsoptions"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                >
-                </el-option>
-              </el-select>
-            </el-form-item>
+            <el-row gutter="20">
+              <el-col :span="12">
+                <el-form-item label="璧勬枡褰㈠紡" prop="region">
+                  <el-select
+                    v-model="ruleForm.shape"
+                    placeholder="璇烽�夋嫨鍐呭褰㈠紡"
+                  >
+                    <el-option
+                      v-for="item in xjxsoptions"
+                      :key="item.value"
+                      :label="item.label"
+                      :value="item.value"
+                    >
+                    </el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <div>
+                  <el-button @click="laststep('ruleForm')">涓婁竴姝�</el-button>
+                  <el-button
+                    type="success"
+                    @click="Departmenttreatment('ruleForm')"
+                    >淇濆瓨</el-button
+                  >
+                  <el-button
+                    type="warning"
+                    @click="Departmenttreatment('ruleForm')"
+                    >鍙﹀瓨鏂扮増鏈�</el-button
+                  >
+                  <el-button type="info" @click="closeFm('ruleForm')"
+                    >鍏抽棴</el-button
+                  >
+                </div></el-col
+              >
+            </el-row>
           </el-form>
         </div>
         <div>
+          <el-upload
+            class="upload-demo"
+            :action="uploadImgUrlword"
+            :on-success="uploadEditorSuccessword"
+            :on-error="uploadEditorErrorword"
+            :before-upload="beforeEditorUploadword"
+            :headers="headers"
+          >
+            <el-button size="small" type="primary">word鏂囦欢涓婁紶</el-button>
+          </el-upload>
           <div id="quillEditorQiniu">
             <!-- 鍩轰簬elementUi鐨勪笂浼犵粍浠� el-upload begin-->
             <el-upload
@@ -368,6 +376,9 @@
               v-model="content"
               ref="customQuillEditor"
               :options="editorOption"
+              @blur="onEditorBlur"
+              @focus="onEditorFocus"
+              @change="onEditorChange"
             >
             </quill-editor>
           </div>
@@ -379,6 +390,8 @@
 
 <script>
 import { quillEditor } from "vue-quill-editor";
+import axios from "axios";
+
 import {
   getheLibraryAssort,
   delheLibraryAssort,
@@ -386,7 +399,9 @@
   addtargetillness,
   getlibrarylist,
   dellibraryinfo,
+  deltargetillness,
   compilelibrary,
+  addrichText,
   getlibraryinfo,
   getillnesslist,
   illnesslistget,
@@ -430,7 +445,8 @@
       headers: {
         Authorization: "Bearer " + getToken(),
       },
-      uploadImgUrl: "/v1/admin/common/upload",
+      uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/upload",
+      uploadImgUrlword: process.env.VUE_APP_BASE_API + "/common/uploadShow",
       uploadUrlPath: "娌℃湁鏂囦欢涓婁紶",
       quillUpdateImg: false,
       fileList: [
@@ -444,6 +460,7 @@
         },
       ],
       content: "", //鏈�缁堜繚瀛樼殑鍐呭
+      fileName: "", //鏂囦欢鍚�
       dynamicTags: [],
       inputVisible: false,
       illnessVisible: false,
@@ -567,8 +584,8 @@
   watch: {
     content(newVal, oldVal) {
       //this.$emit('input', newVal);
-      console.log(newVal);
-      console.log(oldVal);
+      console.log(newVal, "A");
+      console.log(oldVal, "B");
     },
   },
 
@@ -587,7 +604,7 @@
           this.dynamicTags = res.data[0].heLibraryTagList.map(
             this.processElement
           );
-
+          this.Getmissioncontent(this.ruleForm.richText);
           if (this.ruleForm.deptNames) {
             this.tempDetpRelevanceslist = JSON.parse(this.ruleForm.deptNames);
           }
@@ -625,17 +642,31 @@
           : "";
       if (this.id) {
         this.ruleForm.isoperation = 2;
-        compilelibrary(this.ruleForm).then((response) => {
-          this.$modal.msgSuccess("淇敼鎴愬姛");
-          this.$router.go(-1);
-        });
       } else {
         this.ruleForm.isoperation = 1;
-        compilelibrary(this.ruleForm).then((response) => {
-          this.$modal.msgSuccess("鏂板鎴愬姛");
+      }
+      this.illnesslist.forEach((item, index) => {
+        if (!item.id) {
+          addtargetillness(item).then((res) => {});
+        }
+      });
+      if (this.illnesslistapi.length) {
+        deltargetillness(this.illnesslistapi.join(",")).then((res) => {});
+      }
+      addrichText({
+        content: this.content,
+        fileName: this.fileName ? this.fileName : "娴嬭瘯.html",
+      }).then((res) => {
+        this.ruleForm.richText = res.msg;
+        compilelibrary(this.ruleForm).then((res) => {
+          this.$modal.msgSuccess("缂栬緫鎴愬姛");
           this.$router.go(-1);
         });
-      }
+      });
+    },
+    getFileNameFromPath(path) {
+      const parts = path.split("/");
+      return parts[parts.length - 1];
     },
     // 涓嬩竴姝�
     nextstep() {
@@ -821,7 +852,7 @@
       let tagname = this.inputValue;
       illnesslistget(item).then((res) => {
         opeavalue = res.data;
-        opeavalue.outid = this.indexid;
+        opeavalue.outid = this.id;
         opeavalue.type = 6;
         opeavalue.icd10id = opeavalue.icdid;
         opeavalue.icd10name = opeavalue.icdname;
@@ -830,22 +861,10 @@
           this.illnesslist.push(opeavalue);
         }
       });
-      console.log(this.illnesslist, "鍔�");
       this.illnessVisible = false;
       this.inputValue = "";
     },
-    confirmillness() {
-      this.illnesslist.forEach((item, index) => {
-        if (!item.id) {
-          addtargetillness(item).then((res) => {});
-        }
-      });
-      if (this.illnesslistapi.length) {
-        deltargetillness(this.illnesslistapi.join(",")).then((res) => {});
-      }
-      this.illnessVisible = false;
-      this.$modal.msgSuccess("缂栬緫鎴愬姛");
-    },
+
     illnessshowInput() {
       this.illnessVisible = true;
     },
@@ -875,7 +894,7 @@
       // this.$emit('upload',res, file)
       console.log(res, file);
       //鎷兼帴鍑轰笂浼犵殑鍥剧墖鍦ㄦ湇鍔″櫒鐨勫畬鏁村湴鍧�
-      let imgUrl = res.data.url;
+      let imgUrl = res.url;
       let type = imgUrl.substring(imgUrl.lastIndexOf(".") + 1);
       console.log(type);
       // 鑾峰彇瀵屾枃鏈粍浠跺疄渚�
@@ -894,10 +913,22 @@
       //鍙栨秷涓婁紶鍔ㄧ敾
       this.quillUpdateImg = false;
     },
+    // 澶卞幓鐒︾偣浜嬩欢
+    onEditorBlur(e) {
+      console.log("onEditorBlur: ", e);
+    },
+    // 鑾峰緱鐒︾偣浜嬩欢
+    onEditorFocus(e) {
+      console.log("onEditorFocus: ", e);
+    },
+    // 鍐呭鏀瑰彉浜嬩欢
+    onEditorChange(e) {
+      console.log("onEditorChange: ", e);
+    },
     // 涓婁紶(鏂囦欢)鍥剧墖澶辫触
     uploadEditorError(res, file) {
-      console.log(res);
-      console.log(file);
+      console.log(res, "word");
+      console.log(file, "word");
       //椤甸潰鎻愮ず
       this.$message.error("涓婁紶鍥剧墖澶辫触");
       //鍙栨秷涓婁紶鍔ㄧ敾
@@ -906,6 +937,54 @@
     //涓婁紶缁勪欢杩斿洖鐨勭粨鏋�
     uploadResult: function (res) {
       this.uploadUrlPath = res;
+    },
+    // 涓婁紶(鏂囦欢)鍥剧墖澶辫触
+    uploadEditorErrorword(res, file) {
+      console.log(res);
+      console.log(file);
+      //椤甸潰鎻愮ず
+      this.$message.error("涓婁紶鍥剧墖澶辫触");
+      //鍙栨秷涓婁紶鍔ㄧ敾
+      this.quillUpdateImg = false;
+    },
+    //涓婁紶鍥剧墖涔嬪墠async
+    beforeEditorUploadword(res, file) {
+      //鏄剧ず涓婁紶鍔ㄧ敾
+      this.quillUpdateImg = true;
+      //  const res1 = await uploadImage()
+      // console.log(res1,'=====');
+      // this.$emit('before',res, file)
+      console.log(res);
+      console.log(file);
+    },
+    // 涓婁紶鍥剧墖鎴愬姛
+    uploadEditorSuccessword(res, file) {
+      console.log("涓婁紶鎴愬姛");
+      const data = null;
+      console.log(res, file, "word");
+      axios
+        .get(res.url)
+        .then((response) => {
+          console.log(response.data, "鏁版嵁"); // 杈撳嚭鑾峰彇鍒扮殑鏂囦欢鍐呭
+          this.content = response.data;
+          this.texturl = res.url;
+          this.fileName = this.getFileNameFromPath(res.url);
+        })
+        .catch((error) => {
+          console.error("Failed to fetch file:", error);
+        });
+    },
+    Getmissioncontent(url) {
+      axios
+        .get(url)
+        .then((response) => {
+          console.log(response.data, "鏁版嵁"); // 杈撳嚭鑾峰彇鍒扮殑鏂囦欢鍐呭
+          this.content = response.data;
+          this.fileName = this.getFileNameFromPath(res.url);
+        })
+        .catch((error) => {
+          console.error("Failed to fetch file:", error);
+        });
     },
   },
 };
@@ -1075,8 +1154,8 @@
 }
 .editor {
   line-height: normal !important;
-  height: 400px;
-  margin-bottom: 50px;
+  height: 600px;
+  margin-bottom: 80px;
 }
 .ql-snow .ql-tooltip[data-mode="link"]::before {
   content: "璇疯緭鍏ラ摼鎺ュ湴鍧�:";

--
Gitblit v1.9.3