From 76196fb19d525648532a209710818ea74c242c3a Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期二, 23 七月 2024 09:47:47 +0800
Subject: [PATCH] 测试完成
---
src/views/knowledge/education/compilequer/index.vue | 332 ++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 228 insertions(+), 104 deletions(-)
diff --git a/src/views/knowledge/education/compilequer/index.vue b/src/views/knowledge/education/compilequer/index.vue
index 40afd79..57f987d 100644
--- a/src/views/knowledge/education/compilequer/index.vue
+++ b/src/views/knowledge/education/compilequer/index.vue
@@ -2,12 +2,22 @@
<div class="Questionnairemanagement">
<!-- 宸︿晶鏍� -->
<div class="sidecolumn">
- <div style="height: 200px">
- <el-steps direction="vertical" :active="Editprogress">
- <el-step title="鍩虹淇℃伅璁剧疆"></el-step>
- <el-step title="瀹f暀鍐呭"></el-step>
- </el-steps>
- </div>
+ <el-steps finish-status="success" :active="Editprogress" simple>
+ <el-step>
+ <template slot="title">
+ <span style="cursor: pointer" @click="Editprogress = 1"
+ >鍩虹淇℃伅璁剧疆</span
+ >
+ </template>
+ </el-step>
+ <el-step>
+ <template slot="title">
+ <span style="cursor: pointer" @click="Editprogress = 2"
+ >瀹f暀鍐呭</span
+ >
+ </template>
+ </el-step>
+ </el-steps>
</div>
<!-- 鍙充晶鏁版嵁 -->
<div class="leftvlue">
@@ -43,14 +53,26 @@
</el-option-group>
</el-select>
</el-form-item>
+ <el-row>
+ <el-col :span="12"> </el-col>
+ <el-col :span="12"> </el-col>
+ </el-row>
<el-form-item label="瀹f暀鏍囬" prop="preachname">
<div style="width: 30%">
- <el-input v-model="ruleForm.preachname"></el-input>
+ <el-input
+ v-model="ruleForm.preachname"
+ placeholder="璇疯緭鍏ユ爣棰�"
+ ></el-input>
</div>
</el-form-item>
<el-form-item label="瀹f暀鎻忚堪" prop="preachcontent">
- <div style="width: 30%">
- <el-input v-model="ruleForm.preachcontent"></el-input>
+ <div style="width: 60%">
+ <el-input
+ type="textarea"
+ :rows="2"
+ v-model="ruleForm.preachcontent"
+ placeholder="璇疯緭鍏ユ弿杩�"
+ ></el-input>
</div>
</el-form-item>
<el-form-item label="閫氱煡鍙橀噺" prop="name">
@@ -146,7 +168,10 @@
<el-row :gutter="20">
<el-col :span="6">
<el-form-item label="鐗堟湰鍙�" prop="name">
- <el-input v-model="ruleForm.version"></el-input> </el-form-item
+ <el-input
+ v-model="ruleForm.version"
+ placeholder="榛樿1.0.1"
+ ></el-input> </el-form-item
></el-col>
<el-col :span="9">
<el-form-item label="鍙敤鐘舵��" prop="region">
@@ -186,7 +211,7 @@
</el-select>
</el-form-item>
<el-form-item label="閫傜敤鐤剧梾" prop="region">
- <div class="xinz-infs">
+ <div class="xinz-inf">
<el-tag
:key="item.icd10name"
type="warning"
@@ -230,6 +255,7 @@
<el-select
v-model="ruleForm.campus"
size="medium"
+ multiple
filterable
placeholder="璇烽�夋嫨鍒嗙被"
>
@@ -272,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
@@ -309,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
@@ -342,6 +376,9 @@
v-model="content"
ref="customQuillEditor"
:options="editorOption"
+ @blur="onEditorBlur"
+ @focus="onEditorFocus"
+ @change="onEditorChange"
>
</quill-editor>
</div>
@@ -353,6 +390,8 @@
<script>
import { quillEditor } from "vue-quill-editor";
+import axios from "axios";
+
import {
getheLibraryAssort,
delheLibraryAssort,
@@ -360,7 +399,9 @@
addtargetillness,
getlibrarylist,
dellibraryinfo,
+ deltargetillness,
compilelibrary,
+ addrichText,
getlibraryinfo,
getillnesslist,
illnesslistget,
@@ -404,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: [
@@ -418,6 +460,7 @@
},
],
content: "", //鏈�缁堜繚瀛樼殑鍐呭
+ fileName: "", //鏂囦欢鍚�
dynamicTags: [],
inputVisible: false,
illnessVisible: false,
@@ -470,7 +513,12 @@
radioas: "", //濉┖棰樼瓟妗�
// 鎬绘潯鏁�
total: 1,
- ruleForm: {},
+ ruleForm: {
+ campus: [],
+ heLibraryTagList: [],
+ tempDetpRelevances: [],
+ version: "1.0.1",
+ },
rules: {},
rulesa: {},
mode: [],
@@ -536,31 +584,43 @@
watch: {
content(newVal, oldVal) {
//this.$emit('input', newVal);
- console.log(newVal);
- console.log(oldVal);
+ console.log(newVal, "A");
+ console.log(oldVal, "B");
},
},
methods: {
+ processElement(element) {
+ return { ...element, isoperation: null };
+ },
+ // 鑾峰彇椤甸潰鏁版嵁
getList() {
this.loading = true;
this.id = this.$route.query.id;
- getlibraryinfo({ id: this.id }).then((res) => {
- this.ruleForm = res.data[0];
-
- if (this.ruleForm.deptNames) {
- this.tempDetpRelevanceslist = JSON.parse(this.ruleForm.deptNames);
- }
- if (this.ruleForm.suitway) {
- this.ruleForm.suitway = this.ruleForm.suitway.split(",");
- }
- this.variablelist = this.ruleForm.otherdata
- ? JSON.parse(this.ruleForm.otherdata)
- : this.variablelist;
- });
+ if (this.id) {
+ getlibraryinfo({ id: this.id }).then((res) => {
+ this.ruleForm = res.data[0];
+ this.ruleForm.campus = this.ruleForm.campus.split(",");
+ 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);
+ }
+ if (this.ruleForm.suitway) {
+ this.ruleForm.suitway = this.ruleForm.suitway.split(",");
+ }
+ this.variablelist = this.ruleForm.otherdata
+ ? JSON.parse(this.ruleForm.otherdata)
+ : this.variablelist;
+ });
+ }
+ // 瀹f暀鍒嗙被
getheLibraryAssort({}).then((res) => {
this.sortlist = res.rows;
});
+ // 閮ㄩ棬
listDept(this.queryParams).then((response) => {
this.deptList = this.handleTree(response.data, "deptId");
});
@@ -572,8 +632,7 @@
this.dynamicTags.forEach((item) => {
tgs.push(item.tagname);
});
- console.log(tgs.length, "tgs");
-
+ this.ruleForm.campus = this.ruleForm.campus.join(",");
this.ruleForm.labelInfo = tgs.length != 0 ? tgs.join(", ") : "";
this.ruleForm.otherdata = JSON.stringify(this.variablelist);
console.log(22);
@@ -583,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() {
@@ -635,6 +708,7 @@
);
if (!condition) {
listDept({ deptId: item }).then((res) => {
+ console.log("dept");
res.data[0].type = 2;
this.ruleForm.tempDetpRelevances.push(res.data[0]);
});
@@ -689,7 +763,11 @@
});
},
handleClosetag(tag) {
- const lindex = this.dynamicTags.indexOf(tag);
+ console.log(tag);
+ const lindex = this.ruleForm.heLibraryTagList.findIndex(
+ (item) => item.tagname == tag.tagname
+ );
+ console.log(lindex);
this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
this.ruleForm.heLibraryTagList[lindex].isoperation = 3;
},
@@ -774,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;
@@ -783,22 +861,10 @@
this.illnesslist.push(opeavalue);
}
});
- console.log(this.illnesslist);
- this.inputVisible = false;
+ 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;
},
@@ -828,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);
// 鑾峰彇瀵屾枃鏈粍浠跺疄渚�
@@ -847,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("涓婁紶鍥剧墖澶辫触");
//鍙栨秷涓婁紶鍔ㄧ敾
@@ -860,23 +938,71 @@
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);
+ });
+ },
},
};
</script>
<style lang="scss" scoped>
.Questionnairemanagement {
- display: flex;
+ // display: flex;
}
.sidecolumn {
- width: 300px;
- min-height: 100vh;
- text-align: center;
+ // width: 300px;
+ // min-height: 100vh;
+ // text-align: center;
// display: flex;
// margin-top: 20px;
margin: 20px;
margin-bottom: 0;
- padding: 30px;
+ padding: 20px;
background: #edf1f7;
border: 1px solid #dcdfe6;
-webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
@@ -885,9 +1011,7 @@
.leftvlue {
// display: flex;
// flex: 1;
- width: 80%;
- margin-top: 20px;
- // margin: 20px;
+ margin: 20px;
padding: 30px;
background: #ffff;
border: 1px solid #dcdfe6;
@@ -1030,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