From f93cb40b76468c6f1063081a3be16027d69b4832 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期四, 04 一月 2024 09:46:01 +0800 Subject: [PATCH] 指标完成 --- src/views/knowledge/education/compilequer/index.vue | 1335 ++++++++++++++++++++++++++++++++------------------------- 1 files changed, 753 insertions(+), 582 deletions(-) diff --git a/src/views/knowledge/education/compilequer/index.vue b/src/views/knowledge/education/compilequer/index.vue index 81ced24..8ec30df 100644 --- a/src/views/knowledge/education/compilequer/index.vue +++ b/src/views/knowledge/education/compilequer/index.vue @@ -13,9 +13,7 @@ <div class="leftvlue"> <!-- 鍩烘湰淇℃伅 --> <div v-if="Editprogress == 1"> - <div class="leftvlue-jbxx"> - 鍩烘湰淇℃伅<span>褰撳墠鐗堟湰:{{ currentVersion }}</span> - </div> + <div class="leftvlue-jbxx">鍩烘湰淇℃伅</div> <el-form :model="ruleForm" :rules="rules" @@ -23,12 +21,149 @@ label-width="100px" class="demo-ruleForm" > - <el-form-item label="瀹f暀鍚嶇О" prop="name"> - <el-input v-model="ruleForm.name"></el-input> - </el-form-item> - <el-form-item label="瀹f暀褰㈠紡" prop="name"> - <el-select v-model="ruleForm.shape" placeholder="璇烽�夋嫨"> + <el-form-item label="瀹f暀鍒嗙被" prop="region"> + <el-select + v-model="ruleForm.groupID" + size="medium" + filterable + placeholder="璇烽�夋嫨鍒嗙被" + > <el-option + class="ruleFormaa" + v-for="item in sortlist" + :key="item.id" + :label="item.assortname" + :value="item.id" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item label="瀹f暀鏍囬" prop="extName"> + <div style="width: 30%"> + <el-input v-model="ruleForm.extName"></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> + </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> + </el-form-item> + + <el-form-item label="鏂囦欢" prop="sickness"> + <div style="width: 40%"> + <el-upload + class="upload-demo" + action="https://jsonplaceholder.typicode.com/posts/" + :on-change="handleChange" + :file-list="fileList" + > + <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button> + <div slot="tip" class="el-upload__tip"> + 鍙兘涓婁紶jpg/png/xsl鏂囦欢锛屼笖涓嶈秴杩�50mb + </div> + </el-upload> + </div> + </el-form-item> + <el-form-item label="鏍囩" prop="desc"> + <div class="xinz-inf"> + <el-tag + :key="tag.tagname" + type="success" + v-for="tag in dynamicTags" + closable + :disable-transitions="false" + @close="handleClosetag(tag)" + > + {{ tag.tagname }} + </el-tag> + <el-select + v-model="inputValue" + v-if="inputVisible" + @change="handleInputConfirm" + filterable + remote + reserve-keyword + default-first-option + :remote-method="remoteMethodtag" + :loading="loading" + placeholder="璇烽�夋嫨" + > + <el-option + v-for="item in optionstag" + :key="item.tagid" + :label="item.tagname" + :value="item.tagname" + > + </el-option> + </el-select> + <el-button + v-else + class="button-new-tag" + size="small" + @click="showInput" + >+ 鏂板鏍囩</el-button + > + </div> + </el-form-item> + <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-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-option> + </el-select> </el-form-item + ></el-col> + </el-row> + <el-form-item label="瀹f暀鏂瑰紡" prop="region"> + <el-select + v-model="ruleForm.way" + size="medium" + multiple + filterable + placeholder="璇烽�夋嫨鍒嗙被" + > + <el-option + class="ruleFormaa" v-for="item in xjxsoptions" :key="item.value" :label="item.label" @@ -37,14 +172,72 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="瀹f暀鍒嗙被" prop="region"> + <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-form-item> + <el-form-item label="閫傜敤闄㈠尯" prop="region"> <el-select - v-model="ruleForm.classify" + v-model="ruleForm.courtyard" + size="medium" + filterable + placeholder="璇烽�夋嫨鍒嗙被" + > + <el-option + class="ruleFormaa" + v-for="item in courtyardlist" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item label="閫傜敤绉戝" prop="region"> + <el-select + v-model="ruleForm.administrative" size="medium" multiple filterable placeholder="璇烽�夋嫨鍒嗙被" - > + > <el-option class="ruleFormaa" v-for="item in options" @@ -55,199 +248,193 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="閫傜敤鐤剧梾" prop="sickness"> - <el-select - v-model="ruleForm.sickness" - filterable - placeholder="璇烽�夋嫨" - > - <el-option - v-for="item in sicknessoptions" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> - </el-form-item> - <el-form-item label="娲诲姩褰㈠紡" prop="desc"> - <el-input - :rows="4" - type="textarea" - v-model="ruleForm.desc" - maxlength="400" - show-word-limit - ></el-input> - </el-form-item> <el-form-item> - <el-button type="success" @click="submitForm('ruleForm')" + <el-button type="success" @click="nextstep('ruleForm')" >涓嬩竴姝�</el-button > <el-button @click="resetForm('ruleForm')">閲嶇疆</el-button> + <el-button type="info" @click="closeFm('ruleForm')">鍏抽棴</el-button> </el-form-item> </el-form> </div> <!-- 瀹f暀鍐呭 --> <div v-if="Editprogress == 2"> - <div class="leftvlue-jbxx">瀹f暀鍐呭</div> - <el-form - :model="ruleForm" - :rules="rules" - ref="ruleForm" - label-width="100px" - class="demo-ruleForm" - > - <el-form-item label="瀹f暀浠嬬粛" prop="desc"> - <el-cascader - class="demo-cascader" - v-model="ruleForm.templatevalue" - :options="asoptions" - :props="{ expandTrigger: 'hover' }" - ></el-cascader> - <el-select v-model="ruleForm.data2" placeholder="鎻愪氦鎻愮ず"> - <el-option - v-for="item in asoptions" - :key="item.value" - :label="item.label" - :value="item.value" + <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-option> - </el-select> - <div style="display: flex; margin-top: 20px"> - <div class="PreviewTemplate" @click="PreviewTemplate()"> - 棰勮妯$増 - </div> - <el-button type="primary">纭寮曠敤</el-button> - </div> - </el-form-item> - <el-form-item label="娲诲姩褰㈠紡" prop="desc"> - <el-input type="textarea" v-model="ruleForm.desc"></el-input> - </el-form-item> - <el-form-item label="娲诲姩褰㈠紡" prop="desc"> - <el-input type="textarea" v-model="ruleForm.desc"></el-input> - <div class="addtopic"> - <el-select - v-model="addvalue" - @change="changeaddtopic" - class="addtopic-input" + <el-button type="warning" @click="submitForm('ruleForm')" + >鍙﹀瓨鏂扮増鏈�</el-button > + <el-button type="info" @click="closeFm('ruleForm')" + >鍏抽棴</el-button + > + </div></el-col + > + </el-row> + + <div> + <el-form + :model="ruleForm" + :rules="rules" + ref="ruleForm" + 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 options" + v-for="item in xjxsoptions" :key="item.value" :label="item.label" :value="item.value" > </el-option> </el-select> - </div> - - <div class="presentation"> - <div class="presentation-left"> - <el-table v-loading="loading" :data="userList"> - <el-table-column - label="搴忓彿" - align="center" - key="userid" - prop="userid" - /> - <el-table-column - label="棰樼洰" - align="center" - key="userName" - prop="userName" - :show-overflow-tooltip="true" - /> - - <el-table-column - label="鎿嶄綔" - align="center" - width="300" - class-name="small-padding fixed-width" - > - <template slot-scope="scope"> - <!-- <el-button - size="medium" - type="text" - @click="goQRCode(scope.row)" - v-hasPermi="['system:user:edit']" - > - <span class="button-text" - ><i class="el-icon-edit"></i>浜岀淮鐮�</span - ></el-button - > - <el-button - size="medium" - type="text" - @click="ViewQuestionnaire(scope.row)" - v-hasPermi="['system:user:edit']" - ><span class="button-textck" - ><i class="el-icon-edit"></i>鏌ョ湅</span - ></el-button - > --> - <el-button - size="medium" - type="text" - @click="handleUpdate(scope.row)" - v-hasPermi="['system:user:edit']" - ><span class="button-textxg" - ><i class="el-icon-scissors"></i>淇敼</span - ></el-button - > - <el-button - size="medium" - type="text" - @click="handleDelete(scope.row)" - v-hasPermi="['system:user:remove']" - ><span class="button-textsc" - ><i class="el-icon-delete"></i>鍒犻櫎</span - ></el-button - > - </template> - </el-table-column> - </el-table> - - <pagination - v-show="total > 0" - :total="total" - :page.sync="queryParams.pageNum" - :limit.sync="queryParams.pageSize" - @pagination="getList" - /> - </div> - <div class="presentation-right"> - <div class="headline">棰樼洰璁剧疆璇︽儏</div> - <div>棰樼洰鏍囬锛�<span>杩欏鏈烘瀯鎬庝箞鏍�</span></div> - <div>鏄惁蹇呯瓟锛�<span>鏄�</span> 鏄惁闅愯棌锛�<span>鍚�</span></div> - <div class="headline">閫夐」璁剧疆</div> - <div> - <p>閫夐」1:<span>鍖荤枟鏈烘瀯</span></p> - <p> - 濉啓鏄庣粏锛�<span>鏃�</span> 寮傚父閫夐」锛�<span>鏃�</span> - 鍒嗗�硷細<span>3</span> - </p> - <p>閫変腑鎻愮ず锛�<span>杩欎釜棰樻湁鐐归毦璇锋敞鎰�</span></p> - <p>閫変腑璺宠浆锛�<span>鏃�</span></p> - </div> - </div> - </div> - </el-form-item> - <el-form-item> - <el-button type="success" @click="submitForm('ruleForm')" - >绔嬪嵆鍒涘缓</el-button + </el-form-item> + </el-form> + </div> + <div> + <div id="quillEditorQiniu"> + <!-- 鍩轰簬elementUi鐨勪笂浼犵粍浠� el-upload begin--> + <el-upload + class="avatar-uploader" + :action="uploadImgUrl" + :accept="'image/*,video/*'" + :show-file-list="false" + :on-success="uploadEditorSuccess" + :on-error="uploadEditorError" + :before-upload="beforeEditorUpload" + :headers="headers" > - <el-button type="primary" @click="laststep()">涓婁竴姝�</el-button> - <el-button @click="resetForm('ruleForm')">閲嶇疆</el-button> - </el-form-item> - </el-form> + </el-upload> + <!-- 鍩轰簬elementUi鐨勪笂浼犵粍浠� el-upload end--> + <quill-editor + class="editor" + v-model="content" + ref="customQuillEditor" + :options="editorOption" + > + </quill-editor> + </div> + </div> </div> </div> </div> </template> <script> +import { quillEditor } from "vue-quill-editor"; +import { + getheLibraryAssort, + delheLibraryAssort, + addheLibraryAssort, + addtargetillness, + getlibrarylist, + dellibraryinfo, + compilelibrary, + getlibraryinfo, + getillnesslist, + illnesslistget, + getillness, +} from "@/api/AiCentre/index"; +// import * as Quill from "quill"; +import Quill from "quill"; +import { listtag } from "@/api/system/label"; +import store from "@/store"; + +// 杩欓噷寮曞叆淇敼杩囩殑video妯″潡骞舵敞鍐� +import Video from "./video"; +Quill.register(Video, true); +//鑾峰彇鐧诲綍token锛屽紩鍏ユ枃浠讹紝濡傛灉鍙槸绠�鍗曟祴璇曪紝娌℃湁涓婁紶鏂囦欢鏄惁鐧诲綍鐨勯檺鍒剁殑璇濓紝 +//杩欎釜token鍙互涓嶇敤鑾峰彇锛屾枃浠跺彲浠ヤ笉寮曞叆锛屾妸涓婇潰瀵瑰簲鐨勪笂浼犳枃浠舵惡甯﹁姹傚ご :headers="headers" 杩欎釜浠g爜鍒犳帀鍗冲彲 +import { getToken } from "@/utils/auth"; +const toolbarOptions = [ + ["bold", "italic", "underline", "strike"], // toggled buttons + ["blockquote", "code-block"], + + [{ header: 1 }, { header: 2 }], // custom button values + [{ list: "ordered" }, { list: "bullet" }], + [{ script: "sub" }, { script: "super" }], // superscript/subscript + [{ indent: "-1" }, { indent: "+1" }], // outdent/indent + [{ direction: "rtl" }], // text direction + + [{ size: ["small", false, "large", "huge"] }], // custom dropdown + [{ header: [1, 2, 3, 4, 5, 6, false] }], + + [{ color: [] }, { background: [] }], // dropdown with defaults from theme + [{ font: [] }], + [{ align: [] }], + ["link", "image", "video"], + ["clean"], // remove formatting button +]; + export default { data() { return { + headers: { + Authorization: "Bearer " + getToken(), + }, + uploadImgUrl: "/v1/admin/common/upload", + uploadUrlPath: "娌℃湁鏂囦欢涓婁紶", + quillUpdateImg: false, + fileList: [ + { + name: "food.jpeg", + url: "https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100", + }, + { + name: "food2.jpeg", + url: "https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100", + }, + ], + content: "", //鏈�缁堜繚瀛樼殑鍐呭 + dynamicTags: [], + inputVisible: false, + illnessVisible: false, + inputValue: "", + // 瀵屾枃鏈� + editorOption: { + placeholder: "浣犳兂璇翠粈涔堬紵", + modules: { + imageResize: { + displayStyles: { + backgroundColor: "black", + border: "none", + color: "white", + }, + modules: ["Resize", "DisplaySize", "Toolbar"], + }, + toolbar: { + container: toolbarOptions, // 宸ュ叿鏍� + handlers: { + image: function (value) { + if (value) { + document + .querySelector("#quillEditorQiniu .avatar-uploader input") + .click(); + } else { + this.quill.format("image", false); + } + }, + video: function (value) { + if (value) { + document + .querySelector("#quillEditorQiniu .avatar-uploader input") + .click(); + } else { + this.quill.format("video", false); + } + }, + }, + }, + }, + }, + sidecolumnrabs: "left", //鏂瑰悜 Editprogress: 1, //缂栬緫杩涘害 currentVersion: "1.2.3", //褰撳墠鐗堟湰 @@ -258,374 +445,32 @@ radioas: "", //濉┖棰樼瓟妗� // 鎬绘潯鏁� total: 1, - ruleForm: { - name: "", - shape: "", - classify: "", - region: "", - date1: "", - date2: "", - delivery: false, - type: [], - resource: "", - desc: "", - templatevalue: "", - data2: "", - }, + ruleForm: {}, rules: {}, - rulesa: { - name: [ - { required: true, message: "璇疯緭鍏ユ椿鍔ㄥ悕绉�", trigger: "blur" }, - { min: 3, max: 5, message: "闀垮害鍦� 3 鍒� 5 涓瓧绗�", trigger: "blur" }, - ], - region: [ - { required: true, message: "璇烽�夋嫨娲诲姩鍖哄煙", trigger: "change" }, - ], - date1: [ - { - type: "date", - required: true, - message: "璇烽�夋嫨鏃ユ湡", - trigger: "change", - }, - ], - date2: [ - { - type: "date", - required: true, - message: "璇烽�夋嫨鏃堕棿", - trigger: "change", - }, - ], - type: [ - { - type: "array", - required: true, - message: "璇疯嚦灏戦�夋嫨涓�涓椿鍔ㄦ�ц川", - trigger: "change", - }, - ], - resource: [ - { required: true, message: "璇烽�夋嫨娲诲姩璧勬簮", trigger: "change" }, - ], - desc: [{ required: true, message: "璇峰~鍐欐椿鍔ㄥ舰寮�", trigger: "blur" }], - }, - options: [ - { - value: "閫夐」1", - label: "鐤剧梾瀹f暀", - }, - { - value: "閫夐」2", - label: "鍏ラ櫌瀹f暀", - }, - { - value: "閫夐」3", - label: "鎵嬫湳瀹f暀", - }, - { - value: "閫夐」4", - label: "鎶ょ悊瀹f暀", - }, - ], + rulesa: {}, + mode: [], + editableTabs: [], + sortlist: [], + usable: [], + courtyardlist: [], + precedencetype: [], + optionsillness: [], + illnesslistapi: [], + illnesslist: [], + options: [], + optionstag: [], xjxsoptions: [ { - value: "閫夐」1", + value: "1", label: "鍥炬枃", }, { - value: "閫夐」2", + value: "2", label: "瑙嗛", }, { - value: "閫夐」3", + value: "3", label: "闊抽", - }, - ], - sicknessoptions: [ - { - value: 1, - label: "楂樿鍘�", - }, - { - value: 2, - label: "蹇冭剰鐥�", - }, - { - value: 3, - label: "绯栧翱鐥�", - }, - { - value: 4, - label: "鑴婃鐐�", - }, - ], - asoptions: [ - { - value: "zhinan", - label: "鎸囧崡", - children: [ - { - value: "shejiyuanze", - label: "璁捐鍘熷垯", - children: [ - { - value: "yizhi", - label: "涓�鑷�", - }, - { - value: "fankui", - label: "鍙嶉", - }, - { - value: "xiaolv", - label: "鏁堢巼", - }, - { - value: "kekong", - label: "鍙帶", - }, - ], - }, - { - value: "daohang", - label: "瀵艰埅", - children: [ - { - value: "cexiangdaohang", - label: "渚у悜瀵艰埅", - }, - { - value: "dingbudaohang", - label: "椤堕儴瀵艰埅", - }, - ], - }, - ], - }, - { - value: "zujian", - label: "缁勪欢", - children: [ - { - value: "basic", - label: "Basic", - children: [ - { - value: "layout", - label: "Layout 甯冨眬", - }, - { - value: "color", - label: "Color 鑹插僵", - }, - { - value: "typography", - label: "Typography 瀛椾綋", - }, - { - value: "icon", - label: "Icon 鍥炬爣", - }, - { - value: "button", - label: "Button 鎸夐挳", - }, - ], - }, - { - value: "form", - label: "Form", - children: [ - { - value: "radio", - label: "Radio 鍗曢�夋", - }, - { - value: "checkbox", - label: "Checkbox 澶氶�夋", - }, - { - value: "input", - label: "Input 杈撳叆妗�", - }, - { - value: "input-number", - label: "InputNumber 璁℃暟鍣�", - }, - { - value: "select", - label: "Select 閫夋嫨鍣�", - }, - { - value: "cascader", - label: "Cascader 绾ц仈閫夋嫨鍣�", - }, - { - value: "switch", - label: "Switch 寮�鍏�", - }, - { - value: "slider", - label: "Slider 婊戝潡", - }, - { - value: "time-picker", - label: "TimePicker 鏃堕棿閫夋嫨鍣�", - }, - { - value: "date-picker", - label: "DatePicker 鏃ユ湡閫夋嫨鍣�", - }, - { - value: "datetime-picker", - label: "DateTimePicker 鏃ユ湡鏃堕棿閫夋嫨鍣�", - }, - { - value: "upload", - label: "Upload 涓婁紶", - }, - { - value: "rate", - label: "Rate 璇勫垎", - }, - { - value: "form", - label: "Form 琛ㄥ崟", - }, - ], - }, - { - value: "data", - label: "Data", - children: [ - { - value: "table", - label: "Table 琛ㄦ牸", - }, - { - value: "tag", - label: "Tag 鏍囩", - }, - { - value: "progress", - label: "Progress 杩涘害鏉�", - }, - { - value: "tree", - label: "Tree 鏍戝舰鎺т欢", - }, - { - value: "pagination", - label: "Pagination 鍒嗛〉", - }, - { - value: "badge", - label: "Badge 鏍囪", - }, - ], - }, - { - value: "notice", - label: "Notice", - children: [ - { - value: "alert", - label: "Alert 璀﹀憡", - }, - { - value: "loading", - label: "Loading 鍔犺浇", - }, - { - value: "message", - label: "Message 娑堟伅鎻愮ず", - }, - { - value: "message-box", - label: "MessageBox 寮规", - }, - { - value: "notification", - label: "Notification 閫氱煡", - }, - ], - }, - { - value: "navigation", - label: "Navigation", - children: [ - { - value: "menu", - label: "NavMenu 瀵艰埅鑿滃崟", - }, - { - value: "tabs", - label: "Tabs 鏍囩椤�", - }, - { - value: "breadcrumb", - label: "Breadcrumb 闈㈠寘灞�", - }, - { - value: "dropdown", - label: "Dropdown 涓嬫媺鑿滃崟", - }, - { - value: "steps", - label: "Steps 姝ラ鏉�", - }, - ], - }, - { - value: "others", - label: "Others", - children: [ - { - value: "dialog", - label: "Dialog 瀵硅瘽妗�", - }, - { - value: "tooltip", - label: "Tooltip 鏂囧瓧鎻愮ず", - }, - { - value: "popover", - label: "Popover 寮瑰嚭妗�", - }, - { - value: "card", - label: "Card 鍗$墖", - }, - { - value: "carousel", - label: "Carousel 璧伴┈鐏�", - }, - { - value: "collapse", - label: "Collapse 鎶樺彔闈㈡澘", - }, - ], - }, - ], - }, - { - value: "ziyuan", - label: "璧勬簮", - children: [ - { - value: "axure", - label: "Axure Components", - }, - { - value: "sketch", - label: "Sketch Templates", - }, - { - value: "jiaohu", - label: "缁勪欢浜や簰鏂囨。", - }, - ], }, ], valssu: [ @@ -636,45 +481,64 @@ }, ], addvalue: "娣诲姞棰樼洰", - // 棰樼洰琛ㄦ牸鏁版嵁 - userList: [ + + variablelist: [ { - userid: "1", - userName: "涓�鍙峰鏁�", - }, - { - userid: "2", - userName: "浜屽彿瀹f暀", - }, - { - userid: "3", - userName: "涓夊彿瀹f暀", - }, - { - userid: "4", - userName: "鍥涘彿瀹f暀", + variable: "paitent", + value: "琛ㄧず鎮h�呯殑鏍囪瘑", }, ], // 鏌ヨ鍙傛暟 queryParams: { pageNum: 1, pageSize: 10, - userName: undefined, - phonenumber: undefined, - status: undefined, - deptId: undefined, - IDnumber: undefined, }, }; }, - created() {}, + created() { + this.gettabList(); + this.getList(); + this.illnessUpdate(); + this.mode = store.getters.mode; + this.editableTabs = store.getters.editableTabs; + this.usable = store.getters.usable; + this.precedencetype = store.getters.precedencetype; + this.courtyardlist = store.getters.courtyardlist; + }, + watch: { + content(newVal, oldVal) { + //this.$emit('input', newVal); + console.log(newVal); + console.log(oldVal); + }, + }, methods: { + getList() { + this.loading = true; + getlibraryinfo({ id: this.$route.query.id }).then((res) => { + this.ruleForm = res.data; + }); + getheLibraryAssort({}).then((res) => { + this.sortlist = res.rows; + console.log(res); + }); + }, + /** 鏌ヨ鏍囩鍒楄〃 */ + gettabList() { + const tagqueryParams = { + pageNum: 1, + pageSize: 1000, + tagcategoryid: "0", + }; + listtag(tagqueryParams).then((response) => { + console.log(response); + this.optionstag = response.rows; + }); + }, + // 瀹屾垚 submitForm(formName) { - if (this.Editprogress <= 3) { - return this.Editprogress++; - } this.rules = this.rulesa; // 鎻愪氦 this.$refs[formName].validate((valid) => { @@ -686,34 +550,245 @@ } }); }, + // 涓嬩竴姝� + nextstep() { + if (this.Editprogress <= 1) { + return this.Editprogress++; + } + }, + // 涓婁竴姝� + laststep() { + this.Editprogress = this.Editprogress - 1; + }, + // 鍏抽棴 + closeFm() { + this.$confirm("閫�鍑轰笉浼氫繚鐣欓〉闈㈠唴瀹规洿鏀�, 鏄惁缁х画?", "鎻愮ず", { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning", + }) + .then(() => { + this.$router.go(-1); + }) + .catch(() => { + this.$message({ + type: "info", + message: "宸插彇娑�", + }); + }); + }, + // 淇濆瓨棰樼洰淇℃伅 + Saveproblem() {}, /** 鏌ヨ棰樼洰鍒楄〃 */ - getList() { - // this.loading = true; - listUser().then((response) => { - console.log(response); - // this.userList = response.data; - // this.total = response.total; - // this.loading = false; - console.log(this.userList); + + // 鏂板鍙橀噺 + addvariable() { + this.variablelist.push({ + variable: "", + value: "", }); - // const { rows } = await listUser(); - // console.log(rows); - // this.list = rows; }, - changeaddtopic(val) { - console.log(11); - console.log(val); - this.addvalue = "娣诲姞棰樼洰"; + // 鍒犻櫎鍙橀噺 + delvariable(item) { + const index = this.variablelist.indexOf(item); + if (index !== -1) { + this.variablelist.splice(index, 1); // 浠庣储寮曚綅缃垹闄や竴涓厓绱� + } else { + console.log("鏈壘鍒拌瀵硅薄"); + } }, + // 鎺у埗鏂囦欢 + handleChange(file, fileList) { + this.fileList = fileList.slice(-3); + }, + // 鏍囩----------------- + gettabList() { + const tagqueryParams = { + pageNum: 1, + pageSize: 1000, + 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); + this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1); + this.ruleForm.ivrLibaTemplateTargetList[lindex].isoperation = 3; + }, + handleInputConfirm() { + let tagvalue = {}; + let tagname = this.inputValue; + if (tagname) { + listtag({ + pageNum: 1, + pageSize: 1000, + tagcategoryid: "0", + tagname: tagname, + }).then((res) => { + if (res.rows[0]) { + tagvalue = res.rows[0]; + tagvalue.isoperation = 1; + } else { + tagvalue = { + tagname: tagname, + isoperation: 1, + }; + } + this.ruleForm.ivrLibaTemplateTargetList.push(tagvalue); + this.dynamicTags.push(tagvalue); + }); + } + this.inputVisible = false; + this.inputValue = ""; + }, + remoteMethodtag(query) { + if (query !== "") { + this.loading = true; + setTimeout(() => { + this.loading = false; + listtag({ tagname: query, tagcategoryid: "0" }).then((res) => { + this.optionstag = res.rows; + }); + }, 200); + } else { + this.optionstag = []; + } + }, + showInput() { + this.inputVisible = true; + }, + // 鐤剧梾----------------------- + 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; + }); + }, 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; }, - laststep() { - this.Editprogress--; - }, resetForm(formName) { this.$refs[formName].resetFields(); + }, + + //涓婁紶鍥剧墖涔嬪墠async + beforeEditorUpload(res, file) { + //鏄剧ず涓婁紶鍔ㄧ敾 + this.quillUpdateImg = true; + // const res1 = await uploadImage() + // console.log(res1,'====='); + // this.$emit('before',res, file) + console.log(res); + console.log(file); + }, + // 涓婁紶鍥剧墖鎴愬姛 + uploadEditorSuccess(res, file) { + console.log("涓婁紶鎴愬姛"); + // this.$emit('upload',res, file) + console.log(res, file); + //鎷兼帴鍑轰笂浼犵殑鍥剧墖鍦ㄦ湇鍔″櫒鐨勫畬鏁村湴鍧� + let imgUrl = res.data.url; + let type = imgUrl.substring(imgUrl.lastIndexOf(".") + 1); + console.log(type); + // 鑾峰彇瀵屾枃鏈粍浠跺疄渚� + let quill = this.$refs.customQuillEditor.quill; + // 鑾峰彇鍏夋爣鎵�鍦ㄤ綅缃� + let length = quill.getSelection().index; + // 鎻掑叆鍥剧墖||瑙嗛 res.info涓烘湇鍔″櫒杩斿洖鐨勫浘鐗囧湴鍧� + if (type == "mp4" || type == "MP4") { + window.jsValue = imgUrl; + quill.insertEmbed(length, "video", imgUrl); + } else { + quill.insertEmbed(length, "image", imgUrl); + } + // 璋冩暣鍏夋爣鍒版渶鍚� + quill.setSelection(length + 1); + //鍙栨秷涓婁紶鍔ㄧ敾 + this.quillUpdateImg = false; + }, + // 涓婁紶(鏂囦欢)鍥剧墖澶辫触 + uploadEditorError(res, file) { + console.log(res); + console.log(file); + //椤甸潰鎻愮ず + this.$message.error("涓婁紶鍥剧墖澶辫触"); + //鍙栨秷涓婁紶鍔ㄧ敾 + this.quillUpdateImg = false; + }, + //涓婁紶缁勪欢杩斿洖鐨勭粨鏋� + uploadResult: function (res) { + this.uploadUrlPath = res; }, }, }; @@ -767,6 +842,30 @@ cursor: pointer; font-size: 20px; margin: 0 20px; + } +} +.xinz-inf { + font-size: 18px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + + line-height: 48px; + + .el-tag + .el-tag { + margin-left: 10px; + } + .button-new-tag { + margin-left: 10px; + height: 32px; + line-height: 30px; + padding-top: 0; + padding-bottom: 0; + } + .input-new-tag { + width: 90px; + margin-left: 10px; + vertical-align: bottom; } } .preview-left { @@ -831,7 +930,7 @@ font-size: 25px; } ::v-deep.el-input--medium { - font-size: 24px !important; + font-size: 18px !important; } ::v-deep.ruleFormaa.el-select { display: inline-block; @@ -859,8 +958,80 @@ font-size: 24px; } } -// ::v-deep.el-form-item--medium .el-form-item__content { -// line-height: 36px; -// display: flex; -// } +.editor { + line-height: normal !important; + height: 400px; + margin-bottom: 50px; +} +.ql-snow .ql-tooltip[data-mode="link"]::before { + content: "璇疯緭鍏ラ摼鎺ュ湴鍧�:"; +} +.ql-snow .ql-tooltip.ql-editing a.ql-action::after { + border-right: 0px; + content: "淇濆瓨"; + padding-right: 0px; +} + +.ql-snow .ql-tooltip[data-mode="video"]::before { + content: "璇疯緭鍏ヨ棰戝湴鍧�:"; +} + +.ql-snow .ql-picker.ql-size .ql-picker-label::before, +.ql-snow .ql-picker.ql-size .ql-picker-item::before { + content: "14px"; +} +.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="small"]::before, +.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="small"]::before { + content: "10px"; +} +.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="large"]::before, +.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="large"]::before { + content: "18px"; +} +.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="huge"]::before, +.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="huge"]::before { + content: "32px"; +} + +.ql-snow .ql-picker.ql-header .ql-picker-label::before, +.ql-snow .ql-picker.ql-header .ql-picker-item::before { + content: "鏂囨湰"; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]::before { + content: "鏍囬1"; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before { + content: "鏍囬2"; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]::before { + content: "鏍囬3"; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]::before { + content: "鏍囬4"; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]::before { + content: "鏍囬5"; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]::before { + content: "鏍囬6"; +} + +.ql-snow .ql-picker.ql-font .ql-picker-label::before, +.ql-snow .ql-picker.ql-font .ql-picker-item::before { + content: "鏍囧噯瀛椾綋"; +} +.ql-snow .ql-picker.ql-font .ql-picker-label[data-value="serif"]::before, +.ql-snow .ql-picker.ql-font .ql-picker-item[data-value="serif"]::before { + content: "琛嚎瀛椾綋"; +} +.ql-snow .ql-picker.ql-font .ql-picker-label[data-value="monospace"]::before, +.ql-snow .ql-picker.ql-font .ql-picker-item[data-value="monospace"]::before { + content: "绛夊瀛椾綋"; +} </style> -- Gitblit v1.9.3