From 78c84cf61b2a7f558582673a3eecdf8b91eb24c3 Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期五, 17 四月 2026 16:48:26 +0800
Subject: [PATCH] 测试完成
---
src/views/knowledge/education/compilequer/index.vue | 217 +++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 149 insertions(+), 68 deletions(-)
diff --git a/src/views/knowledge/education/compilequer/index.vue b/src/views/knowledge/education/compilequer/index.vue
index 7d0db6e..ef4061c 100644
--- a/src/views/knowledge/education/compilequer/index.vue
+++ b/src/views/knowledge/education/compilequer/index.vue
@@ -206,9 +206,20 @@
</el-select>
</el-form-item>
<el-form-item label="閫傜敤鐤剧梾" prop="region">
- <el-button type="warning" @click="$refs.child.handleAddpatient()"
- >娣诲姞鐤剧梾</el-button
+ <div style="margin-bottom: 10px">
+ <el-button type="warning" @click="$refs.child.handleAddpatient()"
+ >娣诲姞鐤剧梾璇婃柇</el-button
+ >
+ </div>
+ <el-tag
+ v-for="tag in displayedTags"
+ :key="tag.icdid"
+ type="warning"
+ :disable-transitions="false"
>
+ {{ tag.icdname }}
+ </el-tag>
+ <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag>
</el-form-item>
<el-form-item label="閫傜敤闄㈠尯" prop="region">
<el-select
@@ -253,7 +264,7 @@
</el-form-item>
</el-form>
</div>
- <!-- 瀹f暀鍐呭 -->
+ <!-- 瀹f暀鍐呭 -->
<div v-if="Editprogress == 2">
<el-row :gutter="20">
<el-col :span="4">
@@ -292,8 +303,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="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>
</div>
@@ -311,7 +326,7 @@
<script>
import { Editor, Toolbar } from "@wangeditor/editor-for-vue";
-import '@wangeditor/editor/dist/css/style.css';
+import "@wangeditor/editor/dist/css/style.css";
import axios from "axios";
import { getToken } from "@/utils/auth";
@@ -322,6 +337,7 @@
addrichText,
getlibraryinfo,
getillnesslist,
+ getillness,
} from "@/api/AiCentre/index";
import OptionalForm from "@/components/OptionalForm";
import { listDept } from "@/api/system/dept";
@@ -333,7 +349,7 @@
components: { OptionalForm, Editor, Toolbar },
data() {
return {
- // 缂栬緫鍣ㄥ疄渚�
+ // 缂栬緫鍣ㄥ疄渚�
editorRef: null,
// 缂栬緫鍣ㄥ唴瀹�
@@ -341,66 +357,84 @@
// 缂栬緫鍣ㄦā寮�
mode: "default",
-
+ fileList: [],
// 宸ュ叿鏍忛厤缃�
toolbarConfig: {
- excludeKeys: [
- "group-video",
- "insertVideo",
- "uploadVideo",
- "emotion",
- "codeBlock",
- ]
+ excludeKeys: ["emotion", "codeBlock"],
},
- // 缂栬緫鍣ㄩ厤缃�
editorConfig: {
- placeholder: "璇疯緭鍏ュ鏁欏唴瀹�...",
+ placeholder: "璇疯緭鍏ュ唴瀹�...",
MENU_CONF: {
+ // 鍥剧墖涓婁紶閰嶇疆
uploadImage: {
server: process.env.VUE_APP_BASE_API + "/common/uploadSort",
fieldName: "file",
- maxFileSize: 2 * 1024 * 1024,
- maxNumberOfFiles: 1,
- allowedFileTypes: ["image/*"],
headers: {
- Authorization: "Bearer " + getToken()
+ Authorization: "Bearer " + getToken(),
},
- customUpload: async (file, insertFn) => {
- try {
- const formData = new FormData();
- formData.append("file", file);
-
- const response = await axios.post(
- process.env.VUE_APP_BASE_API + "/common/uploadSort",
- formData,
- {
- headers: {
- "Content-Type": "multipart/form-data",
- Authorization: "Bearer " + getToken()
- }
- }
+ // 鑷畾涔夋彃鍏ュ浘鐗�
+ customInsert: (res, insertFn) => {
+ const url = res.url || res.data || res.filePath;
+ if (url) {
+ // 澶勭悊鍐呯綉鍦板潃杞崲
+ const processedUrl = url.replace(
+ "http://192.168.191.181:8095/profile/upload",
+ "http://m.zjtongde.com:13871/prod-api/profile/upload"
);
-
- if (response.data && response.data.url) {
- let imgUrl = response.data.url;
- imgUrl = imgUrl.replace(
- "http://218.108.11.22:8093/profile-api/upload",
- "http://192.168.191.181:8095/profile/upload"
- );
- insertFn(imgUrl);
- }
- } catch (error) {
- console.error("鍥剧墖涓婁紶澶辫触", error);
- this.$message.error("鍥剧墖涓婁紶澶辫触");
+ insertFn(processedUrl);
}
- }
- }
- }
+ },
+ // 涓婁紶鎴愬姛鍥炶皟
+ onSuccess: (file, res) => {
+ console.log("鍥剧墖涓婁紶鎴愬姛", res);
+ return res.url || res.data || res.filePath;
+ },
+ onFailed: (file, res) => {
+ this.$message.error("鍥剧墖涓婁紶澶辫触");
+ console.error("鍥剧墖涓婁紶澶辫触", res);
+ },
+ },
+
+ // 瑙嗛涓婁紶閰嶇疆
+ uploadVideo: {
+ server: process.env.VUE_APP_BASE_API + "/common/uploadSort",
+ fieldName: "file",
+ maxFileSize: 50 * 1024 * 1024, // 50MB
+ allowedFileTypes: ["video/*"],
+ headers: {
+ Authorization: "Bearer " + getToken(),
+ },
+ // 鑷畾涔夋彃鍏ヨ棰�
+ customInsert: (res, insertFn) => {
+ const url = res.url || res.data || res.filePath;
+ if (url) {
+ // 澶勭悊鍐呯綉鍦板潃杞崲
+ const processedUrl = url.replace(
+ "http://192.168.191.181:8095/profile/upload",
+ "http://m.zjtongde.com:13871/prod-api/profile/upload"
+ );
+ insertFn(processedUrl, "瑙嗛");
+ }
+ },
+ onSuccess: (file, res) => {
+ console.log("瑙嗛涓婁紶鎴愬姛", res);
+ return res.url || res.data || res.filePath;
+ },
+ onFailed: (file, res) => {
+ this.$message.error("瑙嗛涓婁紶澶辫触");
+ console.error("瑙嗛涓婁紶澶辫触", res);
+ },
+ onError: (file, err, res) => {
+ this.$message.error("瑙嗛涓婁紶鍑洪敊");
+ console.error("瑙嗛涓婁紶鍑洪敊", err);
+ },
+ },
+ },
},
// 涓婁紶閰嶇疆
headers: {
- Authorization: "Bearer " + getToken()
+ Authorization: "Bearer " + getToken(),
},
uploadImgUrlword: process.env.VUE_APP_BASE_API + "/common/uploadShow",
@@ -417,7 +451,7 @@
preachname: "",
preachcontent: "",
isAvailable: "",
- suitway: []
+ suitway: [],
},
// 鍏朵粬鏁版嵁
@@ -430,13 +464,13 @@
variablelist: [
{ variatename: "濮撳悕", variate: "${name}", default: 1 },
{ variatename: "鐢佃瘽", variate: "${phone}", default: 1 },
- { variatename: "鐥呮儏", variate: "${illness}", default: 1 }
+ { variatename: "鐥呮儏", variate: "${illness}", default: 1 },
],
props: {
multiple: true,
value: "deptId",
- label: "deptName"
+ label: "deptName",
},
fileName: "", //鏂囦欢鍚�
inputVisible: false,
@@ -464,11 +498,13 @@
options: [],
optionstag: [],
// 鍐呯綉鐨勯儴鍒嗭紙鏂囦欢锛�
- oldPattern: "http://192.168.191.181:8095/profile/upload",
+ // oldPattern: "http://192.168.191.181:8095/profile/upload",
+ oldPattern: "http://192.88.117.236:8090/prod-api/profile/upload",
// 鍐呯綉鐨勯儴鍒嗭紙鏂囦欢锛�
- oldPatternhtml: "/http:\/\/192\.168\.191\.181:8095\/profile\/upload\//g",
+ oldPatternhtml: "/http:\/\/192\.88\.117\.236:8095\/profile\/upload\//g",
// 澶栫綉閮ㄥ垎锛堟枃浠讹級
- newPattern: "http://218.108.11.22:8093/profile-api/upload",
+ // newPattern: "http://218.108.11.22:8093/profile-api/upload",銆併�佹柊鍗�
+ newPattern: "http://m.zjtongde.com:13871/prod-api/profile/upload",
xjxsoptions: [
{
@@ -492,7 +528,6 @@
},
],
addvalue: "娣诲姞棰樼洰",
-
// 鏌ヨ鍙傛暟
queryParams: {
@@ -527,25 +562,39 @@
// },
content(newVal) {
// 鍐呭鍙樺寲鏃惰Е鍙戯紝鍙互鍦ㄨ繖閲屽鐞嗚嚜鍔ㄤ繚瀛樼瓑閫昏緫
- this.$emit('content-change', newVal)
- }
+ this.$emit("content-change", newVal);
+ },
},
beforeDestroy() {
const editor = this.editor;
if (editor == null) return;
editor.destroy(); // 缁勪欢閿�姣佹椂锛屽強鏃堕攢姣佺紪杈戝櫒
},
+ computed: {
+ displayedTags() {
+ // 杩斿洖鍓�10涓猼ag
+ return this.illnesslist.slice(0, 10);
+ },
+ hasMore() {
+ // 鍒ゆ柇鏄惁鏈夋洿澶氱殑tag
+ return this.illnesslist.length > 10;
+ },
+ remaining() {
+ // 璁$畻鍓╀綑鐨則ag鏁伴噺
+ return this.illnesslist.length - 10;
+ },
+ },
methods: {
onCreated(editor) {
this.editor = Object.seal(editor); // 涓�瀹氳鐢� Object.seal()锛屽惁鍒欎細鎶ラ敊
},
// 缂栬緫鍣ㄥ垱寤哄洖璋�
- handleEditorCreated(editor) {
+ handleEditorCreated(editor) {
this.editorRef = editor;
console.log("缂栬緫鍣ㄥ凡鍒涘缓", editor);
},
- // 閿�姣佺紪杈戝櫒
+ // 閿�姣佺紪杈戝櫒
destroyEditor() {
if (this.editorRef) {
this.editorRef.destroy();
@@ -601,7 +650,7 @@
// ------------------
// let html =
- // '<p>娴嬭瘯</p><video class="ql-video" controls="controls" controlslist="nofullscreen" type="video/mp4" style="object-fit:fill;width: 100%;" preload="auto" playsinline="true" x-webkit-airplay="allow" x5-video-orientation="portraint" x5-playsinline="true" x5-video-player-fullscreen="true" src="http://192.168.191.181:8095/profile/upload/vadio/钀ュ吇娉典粙缁�.mp4"></video><p>娴嬭瘯111</p><video class="ql-video" controls="controls" controlslist="nofullscreen" type="video/mp4" style="object-fit:fill;width: 100%;" preload="auto" playsinline="true" x-webkit-airplay="allow" x5-video-orientation="portraint" x5-playsinline="true" x5-video-player-fullscreen="true" src="http://192.168.191.181:8095/profile/upload/vadio/娉ㄥ皠鍣ㄦ帹娉�.mp4"></video><p><br></p>';
+ // '<p>娴嬭瘯</p><video class="ql-video" controls="controls" controlslist="nofullscreen" type="video/mp4" style="object-fit:fill;width: 100%;" preload="auto" playsinline="true" x-webkit-airplay="allow" x5-video-orientation="portraint" x5-playsinline="true" x5-video-player-fullscreen="true" src="http://192.88.117.236:8090/prod-api/profile/upload/vadio/钀ュ吇娉典粙缁�.mp4"></video><p>娴嬭瘯111</p><video class="ql-video" controls="controls" controlslist="nofullscreen" type="video/mp4" style="object-fit:fill;width: 100%;" preload="auto" playsinline="true" x-webkit-airplay="allow" x5-video-orientation="portraint" x5-playsinline="true" x5-video-player-fullscreen="true" src="http://192.88.117.236:8090/prod-api/profile/upload/vadio/娉ㄥ皠鍣ㄦ帹娉�.mp4"></video><p><br></p>';
// // html = html.parserdom(this.oldPattern, this.newPattern);
// html = this.parserdom(html);
// console.log(html, "html");
@@ -616,17 +665,42 @@
var doc = parser.parseFromString(html, "text/html");
// 瀹氫箟瑕佹浛鎹㈢殑鏂版棫URL
- var oldUrlBase = "http://192.168.191.181:8095/profile/upload";
- var newUrlBase = "http://218.108.11.22:8093/profile-api/upload";
+ var oldUrlBase = this.oldPattern;
+ // var newUrlBase = "http://218.108.11.22:8093/profile-api/upload";
+ var newUrlBase = this.newPattern;
// 鑾峰彇鎵�鏈夌殑video鍏冪礌
var videos = doc.querySelectorAll("video");
+ var images = doc.querySelectorAll("img");
+ console.log(videos, "videos");
+ console.log(images, "images");
// 閬嶅巻鎵�鏈夌殑video鍏冪礌骞舵浛鎹rc灞炴��
videos.forEach(function (video) {
+ // 鍏堟鏌ideo鍏冪礌鑷韩鐨剆rc灞炴��
var src = video.getAttribute("src");
- if (src.startsWith(oldUrlBase)) {
+ if (src && src.startsWith(oldUrlBase)) {
video.setAttribute("src", src.replace(oldUrlBase, newUrlBase));
+ }
+
+ // 鐒跺悗妫�鏌ideo鍏冪礌鍐呴儴鐨剆ource瀛愬厓绱�
+ var sources = video.querySelectorAll("source");
+ sources.forEach(function (source) {
+ var sourceSrc = source.getAttribute("src");
+ if (sourceSrc && sourceSrc.startsWith(oldUrlBase)) {
+ source.setAttribute(
+ "src",
+ sourceSrc.replace(oldUrlBase, newUrlBase)
+ );
+ }
+ });
+ });
+ console.log(images, "images");
+
+ images.forEach(function (img) {
+ var src = img.getAttribute("src");
+ if (src.startsWith(oldUrlBase)) {
+ img.setAttribute("src", src.replace(oldUrlBase, newUrlBase));
}
});
@@ -655,7 +729,13 @@
content: this.parserdom(this.content),
fileName: this.generateRandomHtmlFilename(),
}).then((res) => {
+ console.log(55);
+
this.ruleForm.richText = res.msg;
+ this.ruleForm.richText = res.msg.replace(
+ this.oldPattern,
+ this.newPattern
+ );
console.log(this.ruleForm.richText, "this.ruleForm.richText");
// 澶勭悊鍐呯綉html
addrichText({
@@ -1011,7 +1091,8 @@
// },
// 鑾峰彇杩滅▼鍐呭
Getmissioncontent(url) {
- axios.get(url)
+ axios
+ .get(url)
.then((response) => {
this.content = response.data;
})
@@ -1023,7 +1104,7 @@
},
// 鐢熷懡鍛ㄦ湡閽╁瓙
beforeUnmount() {
- this.destroyEditor()
+ this.destroyEditor();
},
};
</script>
--
Gitblit v1.9.3