From 9ff0d92f9e7a58c405ef64e028cc7baf90d5f378 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期一, 09 九月 2024 10:51:25 +0800 Subject: [PATCH] 测试完成 --- src/views/knowledge/education/compilequer/index.vue | 706 ++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 443 insertions(+), 263 deletions(-) diff --git a/src/views/knowledge/education/compilequer/index.vue b/src/views/knowledge/education/compilequer/index.vue index 8ec30df..c605e6e 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"> @@ -23,54 +33,80 @@ > <el-form-item label="瀹f暀鍒嗙被" prop="region"> <el-select - v-model="ruleForm.groupID" + v-model="ruleForm.assortid" size="medium" filterable placeholder="璇烽�夋嫨鍒嗙被" > - <el-option - class="ruleFormaa" - v-for="item in sortlist" - :key="item.id" - :label="item.assortname" - :value="item.id" + <el-option-group + v-for="group in sortlist" + :key="group.id" + :label="group.assortname" > - </el-option> + <el-option + v-for="item in group.heLibraryAssortList" + :key="item.id" + :label="item.assortname" + :value="item.id" + > + </el-option> + </el-option-group> </el-select> </el-form-item> - <el-form-item label="瀹f暀鏍囬" prop="extName"> + <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.extName"></el-input> + <el-input + v-model="ruleForm.preachname" + placeholder="璇疯緭鍏ユ爣棰�" + ></el-input> </div> </el-form-item> - <el-form-item label="瀹f暀鎻忚堪" prop="extName"> - <div style="width: 30%"> - <el-input v-model="ruleForm.note"></el-input> + <el-form-item label="瀹f暀鎻忚堪" prop="preachcontent"> + <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"> - <el-row v-for="item in variablelist"> - <el-col :span="4"> - <el-input v-model="item.variable"></el-input> - </el-col> - <el-col :span="8" :offset="1"> - <el-input v-model="item.value"></el-input> - </el-col> - <el-col :span="4" :offset="1"> - <el-button - type="success" - icon="el-icon-plus" - circle - @click="addvariable(item)" - ></el-button> - <el-button - type="danger" - icon="el-icon-delete" - circle - @click="delvariable(item)" - ></el-button> - </el-col> - </el-row> + <div style="margin-bottom: 5px" v-for="item in variablelist"> + <el-row> + <el-col :span="5"> + <el-input + v-model="item.variatename" + placeholder="璇疯緭鍏ュ彉閲忓悕" + ></el-input> + </el-col> + <el-col :span="8" :offset="1"> + <el-input + v-model="item.variate" + placeholder="璇疯緭鍏ュ彉閲忓唴瀹�" + ></el-input> + </el-col> + <el-col :span="8" :offset="1"> + <el-button + type="success" + icon="el-icon-plus" + circle + @click="addvariable(item)" + ></el-button> + <el-button + v-if="!item.default" + type="danger" + icon="el-icon-delete" + circle + @click="delvariable(item)" + ></el-button> + </el-col> + </el-row> + </div> </el-form-item> <el-form-item label="鏂囦欢" prop="sickness"> @@ -106,6 +142,7 @@ @change="handleInputConfirm" filterable remote + allow-create reserve-keyword default-first-option :remote-method="remoteMethodtag" @@ -132,31 +169,26 @@ <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"> - <el-select - v-model="ruleForm.isEnable" - size="medium" - multiple - filterable - placeholder="璇烽�夋嫨鍒嗙被" - > - <el-option - class="ruleFormaa" - v-for="item in usable" - :key="item.value" - :label="item.label" - :value="item.value" + <el-radio-group v-model="ruleForm.isAvailable"> + <el-radio + v-for="(item, index) in usable" + :label="item.value" + >{{ item.label }}</el-radio > - </el-option> - </el-select> </el-form-item - ></el-col> + </el-radio-group> + </el-form-item></el-col + > </el-row> <el-form-item label="瀹f暀鏂瑰紡" prop="region"> <el-select - v-model="ruleForm.way" + v-model="ruleForm.suitway" size="medium" multiple filterable @@ -164,59 +196,24 @@ > <el-option class="ruleFormaa" - v-for="item in xjxsoptions" - :key="item.value" + v-for="item in mode" + :key="item.label" :label="item.label" - :value="item.value" + :value="item.label" > </el-option> </el-select> </el-form-item> <el-form-item label="閫傜敤鐤剧梾" prop="region"> - <div class="xinz-infs"> - <el-tag - :key="item.icd10name" - type="warning" - v-for="item in illnesslist" - closable - :disable-transitions="false" - @close="handleCloseillness(item)" - > - {{ item.icd10name }} - </el-tag> - <el-select - v-model="inputValue" - v-if="illnessVisible" - @change="illnessConfirm" - :remote-method="remoteMethod" - filterable - remote - allow-create - default-first-option - placeholder="璇烽�夋嫨/鏌ヨ" - :loading="loading" - > - <el-option - v-for="item in optionsillness" - :key="item.icdid" - :label="item.icdname" - :value="item.icdid" - > - </el-option> - </el-select> - <el-button - v-else - class="button-new-tag" - size="small" - @click="illnessshowInput" - >+ 鏂板鐤剧梾</el-button - > - </div> + <el-button type="warning" @click="$refs.child.handleAddpatient()" + >娣诲姞鐤剧梾</el-button + > </el-form-item> <el-form-item label="閫傜敤闄㈠尯" prop="region"> <el-select - v-model="ruleForm.courtyard" + v-model="ruleForm.campus" size="medium" + multiple filterable placeholder="璇烽�夋嫨鍒嗙被" > @@ -231,28 +228,26 @@ </el-select> </el-form-item> <el-form-item label="閫傜敤绉戝" prop="region"> - <el-select - v-model="ruleForm.administrative" - size="medium" - multiple - filterable - placeholder="璇烽�夋嫨鍒嗙被" + <el-cascader + v-model="tempDetpRelevanceslist" + :options="deptList" + :props="props" + :show-all-levels="false" + clearable > - <el-option - class="ruleFormaa" - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> + <template slot-scope="{ node, data }"> + <span>{{ data.deptName }}</span> + <span v-if="!node.isLeaf"> ({{ data.children.length }}) </span> + </template> + </el-cascader> </el-form-item> <el-form-item> <el-button type="success" @click="nextstep('ruleForm')" >涓嬩竴姝�</el-button > - <el-button @click="resetForm('ruleForm')">閲嶇疆</el-button> + <el-button type="success" @click="Departmenttreatment('ruleForm')" + >淇濆瓨</el-button + > <el-button type="info" @click="closeFm('ruleForm')">鍏抽棴</el-button> </el-form-item> </el-form> @@ -261,20 +256,6 @@ <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="submitForm('ruleForm')" - >淇濆瓨</el-button - > - <el-button type="warning" @click="submitForm('ruleForm')" - >鍙﹀瓨鏂扮増鏈�</el-button - > - <el-button type="info" @click="closeFm('ruleForm')" - >鍏抽棴</el-button - > - </div></el-col - > </el-row> <div> @@ -285,20 +266,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 @@ -318,17 +334,30 @@ v-model="content" ref="customQuillEditor" :options="editorOption" + @blur="onEditorBlur" + @focus="onEditorFocus" + @change="onEditorChange" > </quill-editor> </div> </div> </div> </div> + <!-- 娣诲姞閫傜敤鐤剧梾绐楀彛 --> + <Optional-Form + ref="child" + :dialogVisiblepatient="dialogVisiblepatient" + :overallCase="illnesslist" + @addoption="dialogVisiblepatient = false" + @kkoption="dialogVisiblepatient = true" + /> </div> </template> <script> import { quillEditor } from "vue-quill-editor"; +import axios from "axios"; + import { getheLibraryAssort, delheLibraryAssort, @@ -336,12 +365,17 @@ addtargetillness, getlibrarylist, dellibraryinfo, + deltargetillness, compilelibrary, + addrichText, getlibraryinfo, getillnesslist, illnesslistget, getillness, } from "@/api/AiCentre/index"; +import OptionalForm from "@/components/OptionalForm"; //姝e垯缁勪欢 + +import { listDept } from "@/api/system/dept"; // import * as Quill from "quill"; import Quill from "quill"; import { listtag } from "@/api/system/label"; @@ -374,12 +408,15 @@ ]; export default { + name: "aEducationinfo", + components: { OptionalForm }, data() { return { headers: { Authorization: "Bearer " + getToken(), }, - uploadImgUrl: "/v1/admin/common/upload", + uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/uploadSort", + uploadImgUrlword: process.env.VUE_APP_BASE_API + "/common/uploadShow", uploadUrlPath: "娌℃湁鏂囦欢涓婁紶", quillUpdateImg: false, fileList: [ @@ -393,9 +430,11 @@ }, ], content: "", //鏈�缁堜繚瀛樼殑鍐呭 + fileName: "", //鏂囦欢鍚� dynamicTags: [], inputVisible: false, illnessVisible: false, + dialogVisiblepatient: false, //閫傜敤鐤剧梾绐楀彛 inputValue: "", // 瀵屾枃鏈� editorOption: { @@ -445,7 +484,14 @@ radioas: "", //濉┖棰樼瓟妗� // 鎬绘潯鏁� total: 1, - ruleForm: {}, + hetype: "", + id: null, + ruleForm: { + campus: [], + heLibraryTagList: [], + tempDetpRelevances: [], + version: "1.0.1", + }, rules: {}, rulesa: {}, mode: [], @@ -459,6 +505,9 @@ illnesslist: [], options: [], optionstag: [], + deptList: [], + tempDetpRelevanceslist: [], + props: { multiple: true, value: "deptId", label: "deptName" }, xjxsoptions: [ { value: "1", @@ -483,10 +532,9 @@ addvalue: "娣诲姞棰樼洰", variablelist: [ - { - variable: "paitent", - value: "琛ㄧず鎮h�呯殑鏍囪瘑", - }, + { variatename: "濮撳悕", variate: "${name}", default: 1 }, + { variatename: "鐢佃瘽", variate: "${phone}", default: 1 }, + { variatename: "鐥呮儏", variate: "${illness}", default: 1 }, ], // 鏌ヨ鍙傛暟 queryParams: { @@ -494,6 +542,13 @@ pageSize: 10, }, }; + }, + activated() { + if (this.id != this.$route.query.id) { + this.gettabList(); + this.getList(); + this.illnessUpdate(); + } }, created() { @@ -509,46 +564,136 @@ 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; - getlibraryinfo({ id: this.$route.query.id }).then((res) => { - this.ruleForm = res.data; - }); + this.id = this.$route.query.id; + this.hetype = this.$route.query.hetype; + 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.htmlRichText); + 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; - console.log(res); + console.log(this.sortlist); }); - }, - /** 鏌ヨ鏍囩鍒楄〃 */ - gettabList() { - const tagqueryParams = { - pageNum: 1, - pageSize: 1000, - tagcategoryid: "0", - }; - listtag(tagqueryParams).then((response) => { - console.log(response); - this.optionstag = response.rows; + // 閮ㄩ棬 + listDept(this.queryParams).then((response) => { + this.deptList = this.handleTree(response.data, "deptId"); }); + this.loading = false; }, - // 瀹屾垚 + submitForm(formName) { - this.rules = this.rulesa; - // 鎻愪氦 - this.$refs[formName].validate((valid) => { - if (valid) { - alert("submit!"); + let tgs = []; + this.dynamicTags.forEach((item) => { + tgs.push(item.tagname); + }); + this.ruleForm.campus = this.ruleForm.campus.join(","); + this.ruleForm.labelInfo = tgs.length != 0 ? tgs.join(", ") : ""; + this.ruleForm.otherdata = JSON.stringify(this.variablelist); + this.ruleForm.hetype = 1; + console.log(22); + this.ruleForm.suitway = + this.ruleForm.suitway.length != 0 + ? this.ruleForm.suitway.join(",") + : ""; + addrichText({ + content: this.content, + fileName: this.generateRandomHtmlFilename(), + }).then((res) => { + this.ruleForm.richText = res.msg; + this.ruleForm.htmlRichText = this.replaceIpAndPort(res.msg); + this.ruleForm.htmlRichText = this.removePathSegment(this.ruleForm.htmlRichText,'prod-api'); + console.log(this.ruleForm.htmlRichText,'this.ruleForm.htmlRichText'); + + if (this.id) { + this.ruleForm.isoperation = 2; + compilelibrary(this.ruleForm).then((res) => { + this.$modal.msgSuccess("缂栬緫鎴愬姛"); + this.confirmillness(); + this.$router.go(-1); + }); } else { - console.log("error submit!!"); - return false; + this.ruleForm.isoperation = 1; + compilelibrary(this.ruleForm).then((res) => { + this.$modal.msgSuccess("鏂板鎴愬姛"); + this.confirmillness(res.data); + this.$router.go(-1); + }); } }); + }, + replaceIpAndPort(path) { + // 姝e垯琛ㄨ揪寮忓尮閰岻P鍦板潃鍜岀鍙� + const ipPortRegex = /(\b(?:\d{1,3}\.){3}\d{1,3}(?::\d+)?)/; + // 鏇挎崲涓烘寚瀹氱殑IP鍦板潃鍜岀鍙� + return path.replace(ipPortRegex, "192.168.191.181:8095"); + }, + removePathSegment(url, segment) { + // 浣跨敤姝e垯琛ㄨ揪寮忓叏灞�鍖归厤骞舵浛鎹㈡帀鎸囧畾鐨勮矾寰勬 + return url.replace(new RegExp('/' + segment + '/?', 'g'), '/'); +}, + generateRandomHtmlFilename() { + // 鐢熸垚涓�涓�0鍒�1涔嬮棿鐨勯殢鏈烘暟锛屽苟灏嗗叾杞崲涓哄瓧绗︿覆 + let randomNumber = Math.random().toString(); + // 绉婚櫎鍓嶉潰鐨�0鍜屽皬鏁扮偣 + randomNumber = randomNumber.substring(6); + // 纭繚鐢熸垚鐨勯殢鏈烘暟鏄竴瀹氶暱搴︾殑锛屼緥濡�8浣� + while (randomNumber.length < 8) { + randomNumber = '0' + randomNumber; + } + // 鎷兼帴涓�.html鍚庣紑 + return randomNumber + '.html'; +}, + + // 淇濆瓨鐤剧梾 + confirmillness(guid) { + this.illnesslist.forEach((item, index) => { + if (guid) { + item.outid = guid; + } else { + console.log(this.ruleForm); + item.outid = this.ruleForm.id; + } + item.icd10name = item.icdname; + item.icd10code = item.icdcode; + item.type = 6; + if (!item.id) { + addtargetillness(item).then((res) => {}); + } + }); + this.illnessVisible = false; + this.$modal.msgSuccess("缂栬緫鎴愬姛"); + }, + getFileNameFromPath(path) { + const parts = path.split("/"); + return parts[parts.length - 1]; }, // 涓嬩竴姝� nextstep() { @@ -577,6 +722,38 @@ }); }); }, + // 绉戝澶勭悊 + Departmenttreatment() { + this.ruleForm.deptNames = JSON.stringify(this.tempDetpRelevanceslist); + const result = this.tempDetpRelevanceslist.map( + (subArr) => subArr[subArr.length - 1] + ); + // id鏁扮粍鏌ユ暟缁勫璞� + result.forEach((item) => { + const condition = this.ruleForm.tempDetpRelevances.some( + (obj) => obj.deptId === item + ); + if (!condition) { + listDept({ deptId: item }).then((res) => { + console.log("dept"); + res.data[0].type = 2; + this.ruleForm.tempDetpRelevances.push(res.data[0]); + }); + } + }); + // 鏁扮粍瀵硅薄鏌d鏁扮粍 + this.ruleForm.tempDetpRelevances.forEach((item) => { + const condition = result.some((obj) => obj === item.deptId); + if (!condition) { + const index = this.ruleForm.tempDetpRelevances.indexOf(item); + this.ruleForm.tempDetpRelevances[index].delFlag = 1; + } + }); + setTimeout(() => { + this.submitForm(); + }, 1000); + // this.submitForm(); + }, // 淇濆瓨棰樼洰淇℃伅 Saveproblem() {}, /** 鏌ヨ棰樼洰鍒楄〃 */ @@ -584,8 +761,8 @@ // 鏂板鍙橀噺 addvariable() { this.variablelist.push({ - variable: "", - value: "", + variatename: "", + variate: "", }); }, // 鍒犻櫎鍙橀噺 @@ -609,16 +786,17 @@ tagcategoryid: "0", }; listtag(tagqueryParams).then((response) => { - console.log(response); this.optionstag = response.rows; }); }, handleClosetag(tag) { console.log(tag); - console.log(this.dynamicTags.indexOf(tag)); - const lindex = this.dynamicTags.indexOf(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.ivrLibaTemplateTargetList[lindex].isoperation = 3; + this.ruleForm.heLibraryTagList[lindex].isoperation = 3; }, handleInputConfirm() { let tagvalue = {}; @@ -639,7 +817,7 @@ isoperation: 1, }; } - this.ruleForm.ivrLibaTemplateTargetList.push(tagvalue); + this.ruleForm.heLibraryTagList.push(tagvalue); this.dynamicTags.push(tagvalue); }); } @@ -664,77 +842,19 @@ }, // 鐤剧梾----------------------- illnessUpdate() { - this.illnesslistapi = []; - const illnessqueryParams = { - pageNum: 1, - pageSize: 100, - }; - getillnesslist(illnessqueryParams).then((response) => { - console.log(response); - this.optionsillness = response.rows; - }); - getillness({ outid: this.$route.query.id, type: 6 }).then((res) => { - this.illnesslist = res.rows; - console.log(res); - }); - }, - handleCloseillness(tag) { - this.illnesslist.splice(this.illnesslist.indexOf(tag), 1); - if (tag.id) { - this.illnesslistapi.push(tag.id); - } - }, - remoteMethod(value) { - console.log(value); - const illnessqueryParams = { - pageNum: 1, - pageSize: 100, - icdname: value, - }; - this.loading = true; - setTimeout(() => { - this.loading = false; - getillnesslist(illnessqueryParams).then((response) => { - this.optionsillness = response.rows; + if (this.id) { + getillness({ outid: this.$route.query.id, type: 6 }).then((res) => { + this.illnesslist = res.rows; + this.illnesslist.forEach((item) => { + item.icdname = item.icd10name; + }); }); - }, 200); - }, - illnessConfirm(item) { - let opeavalue = {}; - let tagname = this.inputValue; - illnesslistget(item).then((res) => { - opeavalue = res.data; - opeavalue.outid = this.indexid; - opeavalue.type = 6; - opeavalue.icd10id = opeavalue.icdid; - opeavalue.icd10name = opeavalue.icdname; - opeavalue.icd10code = opeavalue.icdcode; - if (tagname) { - this.illnesslist.push(opeavalue); - } - }); - console.log(this.illnesslist); - this.inputVisible = 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; - }, + // -------------------------- - // 棰勮妯$増 + // 棰勮妯℃澘 PreviewTemplate() { this.drawer = true; }, @@ -755,12 +875,12 @@ // 涓婁紶鍥剧墖鎴愬姛 uploadEditorSuccess(res, file) { console.log("涓婁紶鎴愬姛"); - // this.$emit('upload',res, file) - console.log(res, file); //鎷兼帴鍑轰笂浼犵殑鍥剧墖鍦ㄦ湇鍔″櫒鐨勫畬鏁村湴鍧� - let imgUrl = res.data.url; + let imgUrl = res.url; + imgUrl=this.replaceIpAndPort(imgUrl) let type = imgUrl.substring(imgUrl.lastIndexOf(".") + 1); - console.log(type); + this.fileName = this.getFileNameFromPath(res.url); + // 鑾峰彇瀵屾枃鏈粍浠跺疄渚� let quill = this.$refs.customQuillEditor.quill; // 鑾峰彇鍏夋爣鎵�鍦ㄤ綅缃� @@ -777,10 +897,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("涓婁紶鍥剧墖澶辫触"); //鍙栨秷涓婁紶鍔ㄧ敾 @@ -790,23 +922,73 @@ 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(response.url); + console.log(this.fileName, "this.fileName"); + }) + .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(response.url); + console.log(this.fileName, "this.fileName"); + }) + .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), @@ -815,9 +997,7 @@ .leftvlue { // display: flex; // flex: 1; - width: 80%; - margin-top: 20px; - // margin: 20px; + margin: 20px; padding: 30px; background: #ffff; border: 1px solid #dcdfe6; @@ -960,8 +1140,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