From 2fe94c2414aa1b8840e4dbf9a8e19121a8a867b6 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期六, 12 十月 2024 09:35:31 +0800 Subject: [PATCH] 测试完成 --- src/views/repositoryai/templateku/configurat/index.vue | 1635 ++++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 1,192 insertions(+), 443 deletions(-) diff --git a/src/views/repositoryai/templateku/configurat/index.vue b/src/views/repositoryai/templateku/configurat/index.vue index 4d9059c..5316fa5 100644 --- a/src/views/repositoryai/templateku/configurat/index.vue +++ b/src/views/repositoryai/templateku/configurat/index.vue @@ -14,13 +14,13 @@ <el-step> <template slot="title"> <span style="cursor: pointer" @click="Editprogress = 2" - >闅忚妯$増棰樼洰</span + >闅忚妯℃澘棰樼洰</span > </template> </el-step> - <el-step description="鏌ョ湅闅忚妯$増棰勮锛屽彲瀵煎嚭PDF"> + <el-step description="鏌ョ湅闅忚妯℃澘棰勮锛屽彲瀵煎嚭PDF"> <template slot="title"> - <span style="cursor: pointer" @click="preview">闅忚妯$増棰勮</span> + <span style="cursor: pointer" @click="preview">闅忚妯℃澘棰勮</span> </template> </el-step> </el-steps> @@ -41,7 +41,7 @@ > <el-row> <el-col :span="12"> - <el-form-item label="妯$増鍚嶇О" prop="region"> + <el-form-item label="妯℃澘鍚嶇О" prop="region"> <div> <el-input v-model="ruleForm.templateName" @@ -51,7 +51,7 @@ </el-form-item> </el-col> <el-col :span="12"> - <el-form-item label="闅忚妯$増鍒嗙被" prop="region"> + <el-form-item label="闅忚妯℃澘鍒嗙被" prop="region"> <el-select v-model="ruleForm.assortid" size="medium" @@ -75,16 +75,20 @@ </el-form-item> </el-col> </el-row> + <el-row> + <el-col :span="12"> + <el-form-item label="妯℃澘绠�浠�" prop="note"> + <div> + <el-input + type="textarea" + placeholder="璇疯緭鍏ョ畝浠�" + v-model="ruleForm.note" + ></el-input> + </div> + </el-form-item> + </el-col> + </el-row> - <el-form-item label="妯$増绠�浠�" prop="note"> - <div style="width: 50%"> - <el-input - type="textarea" - placeholder="璇疯緭鍏ョ畝浠�" - v-model="ruleForm.note" - ></el-input> - </div> - </el-form-item> <el-row :gutter="20"> <el-col :span="12"> <el-form-item label="鐗堟湰鍙�" prop="version"> @@ -188,6 +192,7 @@ @change="handleInputConfirm" filterable remote + allow-create reserve-keyword default-first-option :remote-method="remoteMethodtag" @@ -211,48 +216,24 @@ > </div> </el-form-item> - - <el-form-item label="閫傜敤鐤剧梾" prop="region"> - <div class="xinz-inf"> + <div class="xinz-infs"> + <el-form-item label="閫傜敤鐤剧梾" prop="region"> <el-tag - :key="item.icd10name" + v-for="tag in displayedTags" + :key="tag.icdid" type="warning" - v-for="item in illnesslist" - closable :disable-transitions="false" - @close="handleCloseillness(item)" > - {{ item.icd10name }} + {{ tag.icdname }} </el-tag> - <el-select - v-model="inputValueillness" - v-if="inputVisibleillness" - @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="inputVisibleillness = true" - >+ 鏂板鐤剧梾</el-button - > - </div> - </el-form-item> + <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag> + </el-form-item> + </div> + <div style="margin-left: 120px; margin-bottom: 10px"> + <el-button type="warning" @click="$refs.child.handleAddpatient()" + >鐤剧梾璇︽儏</el-button + > + </div> <el-form-item label="閫傜敤闄㈠尯" prop="region"> <el-select style="width: 500px" @@ -272,40 +253,52 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="閫傜敤绉戝" prop="region"> - <el-cascader - style="width: 500px" - v-model="tempDetpRelevanceslist" - :options="deptList" - :props="props" - :show-all-levels="false" - clearable - > - <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 label="閫氱敤搴�" prop="region"> - <el-select - style="width: 500px" - v-model="ruleForm.submoduleID" - size="medium" - multiple - filterable - placeholder="璇烽�夋嫨搴擄紙澶氶�夛級" - > - <el-option - class="ruleFormaa" - v-for="item in generallist" - :key="item.id" - :label="item.extName" - :value="item.id" - > - </el-option> - </el-select> - </el-form-item> + <el-row> + <el-col :span="20" + ><el-form-item label="閫傜敤绉戝" prop="region"> + <el-select + v-model="tempDetpRelevanceslist" + @remove-tag="removetag" + style="width: 55vw" + size="medium" + multiple + filterable + placeholder="璇烽�夋嫨绉戝" + > + <el-option + class="ruleFormaa" + v-for="item in belongDepts" + :key="item.deptCode" + :label="item.deptName" + :value="item.deptCode" + > + </el-option> + </el-select> </el-form-item + ></el-col> + </el-row> + <el-row> + <el-col :span="20" + ><el-form-item label="閫傜敤鐥呭尯" prop="region"> + <el-select + v-model="tempbelongWards" + @remove-tag="removehpsp" + style="width: 55vw" + size="medium" + multiple + filterable + placeholder="璇烽�夋嫨绉戝" + > + <el-option + class="ruleFormaa" + v-for="item in belongWards" + :key="item.districtCode" + :label="item.districtName" + :value="item.districtCode" + > + </el-option> + </el-select> </el-form-item + ></el-col> + </el-row> <el-row :gutter="20"> <el-col :span="12"> <el-form-item label="闅忚鍓嶅鐞�" prop="name"> @@ -354,14 +347,14 @@ <el-button type="success" @click="Departmenttreatment('ruleForm')" - >{{ task ? "淇濆瓨鍒颁换鍔℃ā鐗�" : "淇濆瓨闅忚妯$増鍩虹淇℃伅" }}</el-button + >{{ task ? "淇濆瓨鍒颁换鍔℃ā鏉�" : "淇濆瓨闅忚妯℃澘鍩虹淇℃伅" }}</el-button > </el-form-item> </el-form> </div> - <!-- 闅忚妯$増璁剧疆 --> + <!-- 闅忚妯℃澘璁剧疆 --> <div v-if="Editprogress == 2"> - <div class="leftvlue-jbxx">闅忚妯$増棰樼洰璁剧疆</div> + <div class="leftvlue-jbxx">闅忚妯℃澘棰樼洰璁剧疆</div> <el-divider></el-divider> <div class="addtopic"> <el-button @@ -371,9 +364,16 @@ @click="getaddtopiclist" >娣诲姞棰樼洰</el-button > + <el-button + type="success" + icon="el-icon-edit-outline" + round + @click="Operateit = !Operateit" + >{{ !Operateit ? "缂栬緫棰樼洰" : "瀹屾暣淇℃伅灞曠ず" }}</el-button + > </div> <div class="presentation"> - <div class="presentation-left"> + <div :class="Operateit ? 'presentation-left' : 'spresentation-left'"> <el-card class="box-card" style="min-height: 688px"> <el-table v-loading="loading" @@ -382,26 +382,51 @@ <el-table-column label="缂栧彿" align="center" - key="targetid" - prop="targetid" + key="sort" + prop="sort" /> <el-table-column label="鏍囬" align="center" - key="questiontitle" - prop="questiontitle" + key="scriptTopic" + prop="scriptTopic" :show-overflow-tooltip="true" /> <el-table-column + v-if="!Operateit" label="闂璇濇湳" align="center" - key="questionText" - prop="questionText" + key="scriptContent" + prop="scriptContent" :show-overflow-tooltip="true" /> + <el-table-column + v-if="!Operateit" + label="闂璇濇湳" + align="center" + key="scriptContent" + prop="scriptContent" + :show-overflow-tooltip="true" + /> + <el-table-column + label="涓嬮璺宠浆" + align="center" + key="nextScriptno" + prop="nextScriptno" + :show-overflow-tooltip="true" + > + <template slot-scope="scope"> + <span>{{ + scope.row.nextScriptno == 0 + ? "宸叉槸鏈�鍚庝竴棰�" + : scope.row.nextScriptno + }}</span> + </template> + </el-table-column> <el-table-column label="鎿嶄綔" + v-if="Operateit" align="center" width="250" class-name="small-padding fixed-width" @@ -436,34 +461,53 @@ </el-table> </el-card> </div> - <div class="presentation-right"> + <div class="presentation-right" v-if="Operateit"> <el-card class="box-card"> <el-form - :inline="true" :model="topicobj" + :inline="true" class="demo-form-inline" > - <div class="headline"> - 棰樼洰璁剧疆璇︽儏 - <span style="margin-left: 30px" - ><el-button type="primary" @click="Submittopicobj" - >淇濆瓨</el-button - ></span - > - </div> - <el-form-item label="棰樼洰鏍囬"> - <el-input - v-model="topicobj.questiontitle" - placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨" - ></el-input> - </el-form-item> - <el-form-item label="闂鑺傜偣"> - <el-input - v-model="topicobj.targetid" - placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨" - :disabled="true" - ></el-input> - </el-form-item> + <div class="headline">棰樼洰璁剧疆璇︽儏</div> + <el-row> + <el-col :span="12" + ><el-form-item label="棰樼洰鏍囬"> + <el-input + v-model="topicobj.scriptTopic" + placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨" + ></el-input> </el-form-item + ></el-col> + <el-col :span="12"> + <el-form-item label="涓嬮璺宠浆"> + <el-input + v-model="topicobj.nextScriptno" + placeholder="璇疯緭鍏ラ鍙�" + ></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="20" + ><el-form-item label="闂璇濇湳"> + <el-input + type="textarea" + style="width: 400px" + v-model="topicobj.scriptContent" + placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨" + ></el-input> </el-form-item + ></el-col> + </el-row> + <el-row :gutter="10"> + <el-col :span="12" + ><el-form-item label="闂鑺傜偣"> + <el-input + v-model="topicobj.sort" + placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨" + :disabled="true" + ></el-input> </el-form-item + ></el-col> + </el-row> + <el-row :gutter="10"> <el-col :span="12" ><el-form-item label="鏄惁蹇呭~"> @@ -481,14 +525,14 @@ </el-select> </el-form-item ></el-col> <el-col :span="12" - ><el-form-item label="鍙栧�肩被鍨�"> + ><el-form-item label="棰樼洰绫诲瀷"> <el-select - v-model="topicobj.valueType" + v-model="topicobj.scriptType" placeholder="璇烽�夋嫨" :disabled="true" > <el-option - v-for="item in valuetype" + v-for="item in askvaluetype" :key="item.value" :label="item.label" :value="item.value" @@ -497,10 +541,57 @@ </el-select> </el-form-item ></el-col> </el-row> - <div - class="topicxq" - v-if="topicobj.valueType == 2 || topicobj.valueType == 3" + <el-form-item + label="鏄惁鐢遍�夐」閰嶇疆璺宠浆" + v-if="topicobj.scriptType == 1" > + <el-radio-group v-model="topicobj.branchFlag"> + <el-radio :label="1">鏄�</el-radio> + <el-radio :label="0">鍚�</el-radio> + </el-radio-group> + </el-form-item> + <el-row> + <el-col :span="6"> + <el-form-item label="闂璇煶" prop="verbaltrickyy"> + <el-upload + class="upload-demo" + :action="uploadImgUrl" + :headers="headers" + :show-file-list="false" + :on-success=" + (response, file) => handleChanges(response, file, 1) + " + accept=".wav,.mp3" + :limit="1" + > + <el-button size="small" type="primary" + >鐐瑰嚮涓婁紶</el-button + > + </el-upload> + </el-form-item> + </el-col> + <el-col :span="6"> + <span + style="font-size: 18px; margin-top: 10px" + v-if="topicobj.scriptVoice" + >{{ + topicobj.scriptVoice.substring( + topicobj.scriptVoice.lastIndexOf("/") + 1 + ) + }}</span + > + </el-col> + <el-col :span="6"> + <mini-audio + :audio-source=" + topicobj.scriptVoice + ? topicobj.scriptVoice + : 'https://example.com/example.mp3' + " + ></mini-audio> + </el-col> + </el-row> + <div class="topicxq" v-if="topicobj.scriptType == 4"> <el-row> <el-col :span="20"> <el-form-item label="鏀堕泦鍐呭"> @@ -530,15 +621,18 @@ <Regular :TargetoptionList="topicobj.ivrLibaScriptTargetoptionList" @deloption="deloption" + @branchFlagfn="branchFlagfn" + :branchFlag="topicobj.branchFlag ? true : false" :controlsc="false" /> <!-- 鏃犲尮閰嶇被鍨� --> <div class="topicxq"> <el-row :gutter="10"> - <el-col :span="12" + <el-col :span="20" ><el-form-item label="鏃犲尮閰嶈瘽鏈�"> <el-input - type="text" + type="textarea" + style="width: 400px" placeholder="璇疯緭鍏�" v-model="topicobj.noMatchText" show-word-limit @@ -546,46 +640,56 @@ </el-input> </el-form-item ></el-col> </el-row> - <!-- <el-row :gutter="10"> - <el-col :span="12" - ><el-form-item label="澶勭悊"> - <el-input - type="text" - placeholder="(榛樿)鏃犲0" - v-model="topicobj.text" - maxlength="10" - show-word-limit - > - </el-input> </el-form-item - ></el-col> - </el-row> --> - - <el-row :gutter="10"> - <el-col :span="16"> - <el-form-item label="璇煶鏂囦欢"> + <el-row> + <el-col :span="6"> + <el-form-item label="鏃犲尮閰嶈闊�" prop="verbaltrickyy"> <el-upload class="upload-demo" - style="display: flex" - action="https://jsonplaceholder.typicode.com/posts/" - :on-change="handleChange" - :file-list="fileList" + :action="uploadImgUrl" + :show-file-list="false" + :headers="headers" + :on-success=" + (response, file) => + handleChanges(response, file, 2) + " + accept=".wav,.mp3" :limit="1" - :on-exceed="handleExceed" > <el-button size="small" type="primary" >鐐瑰嚮涓婁紶</el-button > </el-upload> - </el-form-item></el-col - > + </el-form-item> + </el-col> + <el-col :span="6"> + <span + style="font-size: 12px" + v-if="topicobj.nomatchvoice" + >{{ + topicobj.nomatchvoice.substring( + topicobj.nomatchvoice.lastIndexOf("/") + 1 + ) + }}</span + > + </el-col> + <el-col :span="6"> + <mini-audio + :audio-source=" + topicobj.nomatchvoice + ? topicobj.nomatchvoice + : 'https://example.com/example.mp3' + " + ></mini-audio> + </el-col> </el-row> </div> <div class="topicxq"> <el-row :gutter="10"> - <el-col :span="12" + <el-col :span="20" ><el-form-item label="鍚笉娓呰瘽鏈�"> <el-input - type="text" + style="width: 400px" + type="textarea" placeholder="璇疯緭鍏�" v-model="topicobj.noClearlyText" show-word-limit @@ -593,46 +697,57 @@ </el-input> </el-form-item ></el-col> </el-row> - <!-- <el-row :gutter="10"> - <el-col :span="12" - ><el-form-item label="澶勭悊"> - <el-input - type="text" - placeholder="(榛樿)鏃犲0" - v-model="topicobj.text" - maxlength="10" - show-word-limit - > - </el-input> </el-form-item - ></el-col> - </el-row> --> - <el-row :gutter="10"> - <el-col :span="16"> - <el-form-item label="璇煶鏂囦欢"> + <el-row> + <el-col :span="6"> + <el-form-item label="鍚笉娓呰闊�" prop="verbaltrickyy"> <el-upload class="upload-demo" - style="display: flex" - action="https://jsonplaceholder.typicode.com/posts/" - :on-change="handleChange" - :file-list="fileList" + :action="uploadImgUrl" + :show-file-list="false" + :headers="headers" + :on-success=" + (response, file) => + handleChanges(response, file, 4) + " + accept=".wav,.mp3" :limit="1" - :on-exceed="handleExceed" > <el-button size="small" type="primary" >鐐瑰嚮涓婁紶</el-button > </el-upload> - </el-form-item></el-col - > + </el-form-item> + </el-col> + <el-col :span="6"> + <span + style="font-size: 12px" + v-if="topicobj.noclearlyvoice" + >{{ + topicobj.noclearlyvoice.substring( + topicobj.noclearlyvoice.lastIndexOf("/") + 1 + ) + }}</span + > + </el-col> + <el-col :span="6"> + <mini-audio + :audio-source=" + topicobj.noclearlyvoice + ? topicobj.noclearlyvoice + : 'https://example.com/example.mp3' + " + ></mini-audio> + </el-col> </el-row> </div> <div class="topicxq"> <el-row :gutter="10"> - <el-col :span="12" + <el-col :span="20" ><el-form-item label="闈欓粯璇濇湳"> <el-input - type="text" + type="textarea" + style="width: 400px" placeholder="璇疯緭鍏�" v-model="topicobj.slienceText" show-word-limit @@ -640,38 +755,48 @@ </el-input> </el-form-item ></el-col> </el-row> - <!-- <el-row :gutter="10"> - <el-col :span="12" - ><el-form-item label="澶勭悊"> - <el-input - type="text" - placeholder="(榛樿)鏃犲0" - v-model="topicobj.text" - maxlength="10" - show-word-limit - > - </el-input> </el-form-item - ></el-col> - </el-row> --> - <el-row :gutter="10"> - <el-col :span="16"> - <el-form-item label="璇煶鏂囦欢"> + <el-row> + <el-col :span="6"> + <el-form-item label="闈欓粯璇煶" prop="verbaltrickyy"> <el-upload class="upload-demo" - style="display: flex" - action="https://jsonplaceholder.typicode.com/posts/" - :on-change="handleChange" - :file-list="fileList" + :action="uploadImgUrl" + :show-file-list="false" + :headers="headers" + :on-success=" + (response, file) => + handleChanges(response, file, 3) + " + accept=".wav,.mp3" :limit="1" - :on-exceed="handleExceed" > <el-button size="small" type="primary" >鐐瑰嚮涓婁紶</el-button > </el-upload> - </el-form-item></el-col - > + </el-form-item> + </el-col> + <el-col :span="6"> + <span + style="font-size: 12px" + v-if="topicobj.sliencevoice" + >{{ + topicobj.sliencevoice.substring( + topicobj.sliencevoice.lastIndexOf("/") + 1 + ) + }}</span + > + </el-col> + <el-col :span="6"> + <mini-audio + :audio-source=" + topicobj.sliencevoice + ? topicobj.sliencevoice + : 'https://example.com/example.mp3' + " + ></mini-audio> + </el-col> </el-row> </div> </div> @@ -681,7 +806,7 @@ </div> <el-button type="success" @click="Departmenttreatment('ruleForm')">{{ - task ? "淇濆瓨鍒颁换鍔℃ā鐗�" : "淇濆瓨棰樼洰鏁版嵁" + task ? "淇濆瓨鍒颁换鍔℃ā鏉�" : "淇濆瓨棰樼洰鏁版嵁" }}</el-button> <el-button type="primary" plain @click="laststep()">涓婁竴姝�</el-button> <el-button type="success" plain @click="preview('ruleForm')" @@ -689,62 +814,69 @@ > <el-button type="info" @click="closeFm('ruleForm')">鍏抽棴</el-button> </div> - <!-- 闅忚妯$増棰勮 --> + <!-- 闅忚妯℃澘棰勮 --> <div v-if="Editprogress == 3"> - <div class="leftvlue-jbxx">闅忚妯$増闂棰勮</div> + <div class="leftvlue-jbxx">闅忚妯℃澘闂棰勮</div> <el-divider></el-divider> + <div class="preview-left"> - <!-- 鍗曢�� --> - <div - class="topic-dev" - v-for="(item, index) in valssu" - :key="item.aaa" - > - <div class="dev-text"> - {{ index + 1 }}銆乕鍗曢�塢<span>{{ item.questionText }}</span> + <div v-for="item in valssu"> + <!-- 鍗曢�� --> + <div + class="scriptTopic-dev" + :key="item.sort" + v-if="item.valueType == 1" + > + <div class="dev-text"> + {{ item.sort }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span> + </div> + <div class="dev-xx"> + <el-radio-group v-model="item.remark"> + <el-radio + v-for="(items, index) in item.ivrLibaScriptTargetoptionList" + :key="index" + :label="index" + >{{ items.targetvalue }}</el-radio + > + </el-radio-group> + </div> </div> - <div class="dev-xx"> - <el-radio-group v-model="radio"> - <el-radio - v-for="(items, index) in item.ivrLibaScriptTargetoptionList" - :key="index" - :label="index" - >{{ items.targetvalue }}</el-radio - > - </el-radio-group> + <!-- 澶氶�� --> + <div + class="scriptTopic-dev" + :key="item.sort" + v-if="item.valueType == 2" + > + <div class="dev-text"> + {{ item.sort }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span> + </div> + <div class="dev-xx"> + <el-checkbox-group v-model="item.remark"> + <el-checkbox + v-for="(items, index) in item.ivrLibaScriptTargetoptionList" + :key="index" + :label="index" + > + {{ items.targetvalue }} + </el-checkbox> + </el-checkbox-group> + </div> + </div> + <!-- 濉┖ --> + <div + class="scriptTopic-dev" + :key="item.sort" + v-if="item.valueType == 3" + > + <div class="dev-text"> + {{ item.sort }}銆乕濉┖]<span>{{ item.scriptContent }}</span> + </div> + <div class="dev-xx"> + <el-input placeholder="璇疯緭鍏ョ瓟妗�" v-model="radioas" clearable> + </el-input> + </div> </div> </div> - <!-- 澶氶�� --> - <div - class="topic-dev" - v-for="(item, index) in valssu" - :key="item.aaa" - > - <div class="dev-text"> - {{ index + 1 }}銆乕澶氶�塢<span>{{ item.questionText }}</span> - </div> - <div class="dev-xx"> - <el-checkbox-group v-model="radios"> - <el-checkbox - v-for="(items, indexs) in item.ivrLibaScriptTargetoptionList" - :key="indexs" - :label="indexs" - > - {{ items.targetvalue }} - </el-checkbox> - </el-checkbox-group> - </div> - </div> - <!-- 濉┖ - <div class="topic-dev" v-for="item in valssu" :key="item.aaa"> - <div class="dev-text"> - {{ item.idd }}銆乕濉┖]<span>{{ item.wssd }}</span> - </div> - <div class="dev-xx"> - <el-input placeholder="璇疯緭鍏ョ瓟妗�" v-model="radioas" clearable> - </el-input> - </div> - </div> --> </div> <el-button type="primary" plain @click="laststep()">涓婁竴姝�</el-button> <el-button type="warning" @click="measurement()">鍓嶅線娴嬭瘯</el-button> @@ -758,76 +890,472 @@ custom-class="demo-drawer" size="50%" > - <div class="preview-left"> - <el-form - :model="queryParams" - ref="queryForm" - size="small" - :inline="true" - label-width="98px" - > - <el-form-item label="鏍囬" prop="userName"> - <el-input - v-model="queryParams.questiontitle" - placeholder="璇疯緭鍏�" - clearable - style="width: 200px" - @keyup.enter.native="getaddtopiclist" - /> - </el-form-item> - - <el-form-item> - <el-button - type="primary" - icon="el-icon-search" - size="medium" - @click="getaddtopiclist" - >鎼滅储</el-button - > - <el-button icon="el-icon-refresh" size="medium" @click="resetQuery" - >閲嶇疆</el-button - > - </el-form-item> - </el-form> - <el-table v-loading="loading" :data="userList"> - <el-table-column - label="鏍囬" - align="center" - key="questiontitle" - prop="questiontitle" - width="100" - /> - <el-table-column - label="闂璇濇湳" - align="center" - key="questionText" - prop="questionText" - width="200" - :show-overflow-tooltip="true" - /> - - <el-table-column - label="鎿嶄綔" - align="center" - class-name="small-padding fixed-width" - > - <template slot-scope="scope"> - <el-button size="medium" type="text" @click="addtopic(scope.row)" - ><span class="button-textxg" - ><i class="el-icon-circle-plus-outline"></i>娣诲姞</span - ></el-button + <div style="margin: 0 25px"> + <el-tabs v-model="activeName"> + <el-tab-pane label="棰樺簱閫夊彇" name="first"> + <div class="preview-left"> + <el-form + :model="queryParams" + ref="queryForm" + size="small" + :inline="true" + label-width="98px" > - </template> - </el-table-column> - </el-table> - <pagination - :total="total" - :page.sync="queryParams.pageNum" - :limit.sync="queryParams.pageSize" - @pagination="getaddtopiclist" - /> + <el-form-item label="鏍囬" prop="userName"> + <el-input + v-model="queryParams.scriptTopic" + placeholder="璇疯緭鍏�" + clearable + style="width: 200px" + @keyup.enter.native="getaddtopiclist" + /> + </el-form-item> + + <el-form-item> + <el-button + type="primary" + icon="el-icon-search" + size="medium" + @click="getaddtopiclist" + >鎼滅储</el-button + > + <el-button + icon="el-icon-refresh" + size="medium" + @click="resetQuery" + >閲嶇疆</el-button + > + </el-form-item> + </el-form> + <el-table v-loading="loading" :data="userList"> + <el-table-column + label="鏍囬" + align="center" + key="scriptTopic" + prop="scriptTopic" + width="100" + /> + <el-table-column + label="闂璇濇湳" + align="center" + key="scriptContent" + prop="scriptContent" + width="200" + :show-overflow-tooltip="true" + /> + <el-table-column + label="閫夐」鍐呭" + align="center" + key="targetoptions" + prop="targetoptions" + width="200" + :show-overflow-tooltip="true" + /> + + <el-table-column + label="鎿嶄綔" + align="center" + class-name="small-padding fixed-width" + > + <template slot-scope="scope"> + <el-button + size="medium" + type="text" + @click="addtopic(scope.row)" + ><span class="button-textxg" + ><i class="el-icon-circle-plus-outline"></i>娣诲姞</span + ></el-button + > + </template> + </el-table-column> + </el-table> + <pagination + :total="total" + :page.sync="queryParams.pageNum" + :limit.sync="queryParams.pageSize" + @pagination="getaddtopiclist" + /> + </div> + </el-tab-pane> + <el-tab-pane label="鎵嬪姩閰嶇疆" name="second"> + <div class="preview-left"> + <el-form + :inline="true" + :model="indexform" + class="demo-form-inline" + > + <div class="headline"> + 棰樼洰璁剧疆璇︽儏 + <span style="margin-left: 30px" + ><el-button type="primary" @click="Submittopicobj" + >淇濆瓨鏂板</el-button + ></span + > + </div> + <el-divider></el-divider> + <div> + <el-row :gutter="10"> + <el-col :span="12"> + <el-form-item label="棰樼洰鏍囬"> + <el-input + v-model="indexform.scriptTopic" + placeholder="璇疯緭鍏ラ鐩爣棰�" + ></el-input> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="闂鑺傜偣"> + <el-input + v-model="indexform.sort" + placeholder="璇疯緭鍏ラ棶棰樿妭鐐�" + ></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="10"> + <el-col :span="18" + ><el-form-item label="闂璇濇湳"> + <el-input + style="width: 400px" + type="textarea" + v-model="indexform.scriptContent" + placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨" + ></el-input> </el-form-item + ></el-col> + </el-row> + <el-row :gutter="10"> + <el-col :span="12" + ><el-form-item label="鏄惁蹇呭~"> + <el-select + v-model="indexform.isMust" + placeholder="榛樿蹇呭~" + > + <el-option + v-for="item in required" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> </el-form-item + ></el-col> + <!-- <el-col :span="12" + ><el-form-item label="鍙栧�肩被鍨�"> + <el-select + v-model="indexform.valueType" + placeholder="璇烽�夋嫨" + :disabled="true" + > + <el-option + v-for="item in valuetype" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> </el-form-item + ></el-col> --> + </el-row> + <el-row> + <el-col :span="6"> + <el-form-item label="闂璇煶" prop="verbaltrickyy"> + <el-upload + class="upload-demo" + :action="uploadImgUrl" + :headers="headers" + :show-file-list="false" + :on-success=" + (response, file) => handleChange(response, file, 1) + " + accept=".wav,.mp3" + :limit="1" + > + <el-button size="small" type="primary" + >鐐瑰嚮涓婁紶</el-button + > + </el-upload> + </el-form-item> + </el-col> + <el-col :span="6"> + <span + style="font-size: 18px; margin-top: 10px" + v-if="indexform.scriptVoice" + >{{ + indexform.scriptVoice.substring( + indexform.scriptVoice.lastIndexOf("/") + 1 + ) + }}</span + > + </el-col> + <el-col :span="6"> + <mini-audio + :audio-source=" + indexform.scriptVoice + ? indexform.scriptVoice + : 'https://example.com/example.mp3' + " + ></mini-audio> + </el-col> + </el-row> + </div> + <div> + <el-form-item label="鎸囨爣鍚嶇О" prop="deptId"> + <el-input + v-model="indexform.targetname" + placeholder="璇疯緭鍏ユ寚鏍囧悕绉�" + maxlength="20" + /> + </el-form-item> + <el-form-item label="鎸囨爣鎻忚堪" prop="deptId"> + <el-input + v-model="indexform.targetdesc" + placeholder="璇疯緭鍏ユ寚鏍囨弿杩�" + maxlength="60" + /> + </el-form-item> + + <el-row> + <el-col :span="20"> + <el-form-item label="鍊肩被鍨�"> + <el-radio-group v-model="indexform.valueType"> + <el-radio :label="1">閫夐」</el-radio> + <el-radio :label="2">鏂囨湰</el-radio> + <el-radio :label="3">鏁板��</el-radio> + </el-radio-group> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="20"> + <el-form-item label="棰樼洰绫诲瀷"> + <el-radio-group + @input="typeselection" + v-model="indexform.scriptType" + > + <el-radio :label="1">鍗曢��</el-radio> + <!-- <el-radio :label="2">澶氶��</el-radio> --> + <el-radio :label="4">闂瓟</el-radio> + </el-radio-group> + </el-form-item> + </el-col> + </el-row> + </div> + <div class="topicxq" v-show="indexform.scriptType == 4"> + <el-row> + <el-col :span="20"> + <el-form-item label="鏀堕泦鍐呭"> + <el-input + style="width: 400px" + type="textarea" + v-model="indexform.value" + placeholder="闂鏀堕泦鍐呭" + ></el-input> + </el-form-item> + </el-col> + </el-row> + </div> + + <div v-show="indexform.scriptType == 1"> + <div class="headline"> + <div class="basics">閫夐」璁剧疆</div> + </div> + <el-divider></el-divider> + <Regular + :TargetoptionList="indexform.ivrLibaScriptTargetoptionList" + @deloption="deloption" + @addoption="addoptionson" + :controlsc="false" + :addoption="true" + /> + <!-- 鏃犲尮閰嶇被鍨� --> + <div class="topicxq"> + <el-row :gutter="10"> + <el-col :span="20" + ><el-form-item label="鏃犲尮閰嶈瘽鏈�"> + <el-input + type="textarea" + style="width: 400px" + placeholder="璇疯緭鍏�" + v-model="indexform.noMatchText" + show-word-limit + > + </el-input> </el-form-item + ></el-col> + </el-row> + <el-row> + <el-col :span="6"> + <el-form-item label="鏃犲尮閰嶈闊�" prop="verbaltrickyy"> + <el-upload + class="upload-demo" + :action="uploadImgUrl" + :show-file-list="false" + :headers="headers" + :on-success=" + (response, file) => + handleChange(response, file, 2) + " + accept=".wav,.mp3" + :limit="1" + > + <el-button size="small" type="primary" + >鐐瑰嚮涓婁紶</el-button + > + </el-upload> + </el-form-item> + </el-col> + <el-col :span="6"> + <span + style="font-size: 12px" + v-if="indexform.nomatchvoice" + >{{ + indexform.nomatchvoice.substring( + indexform.nomatchvoice.lastIndexOf("/") + 1 + ) + }}</span + > + </el-col> + <el-col :span="6"> + <mini-audio + :audio-source=" + indexform.nomatchvoice + ? indexform.nomatchvoice + : 'https://example.com/example.mp3' + " + ></mini-audio> + </el-col> + </el-row> + </div> + <div class="topicxq"> + <el-row :gutter="10"> + <el-col :span="20" + ><el-form-item label="鍚笉娓呰瘽鏈�"> + <el-input + style="width: 400px" + type="textarea" + placeholder="璇疯緭鍏�" + v-model="indexform.noClearlyText" + show-word-limit + > + </el-input> </el-form-item + ></el-col> + </el-row> + + <el-row> + <el-col :span="6"> + <el-form-item label="鍚笉娓呰闊�" prop="verbaltrickyy"> + <el-upload + class="upload-demo" + :action="uploadImgUrl" + :show-file-list="false" + :headers="headers" + :on-success=" + (response, file) => + handleChange(response, file, 4) + " + accept=".wav,.mp3" + :limit="1" + > + <el-button size="small" type="primary" + >鐐瑰嚮涓婁紶</el-button + > + </el-upload> + </el-form-item> + </el-col> + <el-col :span="6"> + <span + style="font-size: 12px" + v-if="indexform.noclearlyvoice" + >{{ + indexform.noclearlyvoice.substring( + indexform.noclearlyvoice.lastIndexOf("/") + 1 + ) + }}</span + > + </el-col> + <el-col :span="6"> + <mini-audio + :audio-source=" + indexform.noclearlyvoice + ? indexform.noclearlyvoice + : 'https://example.com/example.mp3' + " + ></mini-audio> + </el-col> + </el-row> + </div> + <div class="topicxq"> + <el-row :gutter="10"> + <el-col :span="20" + ><el-form-item label="闈欓粯璇濇湳"> + <el-input + type="textarea" + style="width: 400px" + placeholder="璇疯緭鍏�" + v-model="indexform.slienceText" + show-word-limit + > + </el-input> </el-form-item + ></el-col> + </el-row> + + <el-row> + <el-col :span="6"> + <el-form-item label="闈欓粯璇煶" prop="verbaltrickyy"> + <el-upload + class="upload-demo" + :action="uploadImgUrl" + :show-file-list="false" + :headers="headers" + :on-success=" + (response, file) => + handleChange(response, file, 3) + " + accept=".wav,.mp3" + :limit="1" + > + <el-button size="small" type="primary" + >鐐瑰嚮涓婁紶</el-button + > + </el-upload> + </el-form-item> + </el-col> + <el-col :span="6"> + <span + style="font-size: 12px" + v-if="indexform.sliencevoice" + >{{ + indexform.sliencevoice.substring( + indexform.sliencevoice.lastIndexOf("/") + 1 + ) + }}</span + > + </el-col> + <el-col :span="6"> + <mini-audio + :audio-source=" + indexform.sliencevoice + ? indexform.sliencevoice + : 'https://example.com/example.mp3' + " + ></mini-audio> + </el-col> + </el-row> + </div> + </div> + </el-form> + </div> + </el-tab-pane> + </el-tabs> </div> </el-drawer> + <!-- 娣诲姞閫傜敤鐤剧梾绐楀彛 --> + <Optional-Form + ref="child" + :dialogVisiblepatient="dialogVisiblepatient" + :overallCase="illnesslist" + @addoption="dialogVisiblepatient = false" + @kkoption="dialogVisiblepatient = true" + /> </div> </template> @@ -850,16 +1378,23 @@ getFollowuplist, deltargetillness, getillnesslist, + depthospgetsonlist , illnesslistget, getillness, getgenerallist, } from "@/api/AiCentre/index"; +import OptionalForm from "@/components/OptionalForm"; //姝e垯缁勪欢 +import { getToken } from "@/utils/auth"; export default { - name: "SpeechTemplates", - components: { Regular }, + name: "Tpuconfigurat", + components: { Regular, OptionalForm }, data() { return { + headers: { + Authorization: "Bearer " + getToken(), + }, + uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/uploadSort", Editprogress: 1, //缂栬緫杩涘害 loading: false, // 閬僵灞� drawer: false, //鎺у埗灞曞紑 @@ -867,8 +1402,13 @@ radioas: "", //濉┖棰樼瓟妗� task: null, //鏄惁鏉ヨ嚜浠诲姟 taskform: null, //浠诲姟淇℃伅 + Operateit: true, + indexform: { + ivrLibaScriptTargetoptionList: [], + }, labelInfovalue: [], //鏍囩涓存椂瀛樺偍 deptNamesvalue: [], //绉戝涓存椂瀛樺偍 + dialogVisiblepatient: false, //閫傜敤鐤剧梾绐楀彛 dynamicTags: [], indexAssortlist: [], inputValue: "", @@ -890,6 +1430,10 @@ optionstag: [], prefollowuplist: [], postfollowuplist: [], + tempDetpRelevanceslist: [], //绉戝鏁版嵁 + tempDetpRelevanceslistform: [], //绉戝鏁版嵁 + tempbelongWards: [], //鐥呭尯鏁版嵁 + tempbelongWardsform: [], //鐥呭尯鏁版嵁 generallist: [ { value: "1", label: "闅忚閫氱敤搴撲竴" }, { value: "2", label: "闅忚浜屽簱" }, @@ -913,6 +1457,7 @@ usable: [], required: [], valuetype: [], + askvaluetype: [], mode: [], inputVisible: false, inputVisibleillness: false, @@ -928,6 +1473,7 @@ tempDetpRelevanceslist: [], delScriptVOList: [], optionIndex: "", + activeName: "first", variablelist: [ { variatename: "濮撳悕", variate: "${name}", default: 1 }, { variatename: "鐢佃瘽", variate: "${phone}", default: 1 }, @@ -948,6 +1494,8 @@ addvalue: "娣诲姞棰樼洰", // 棰樼洰琛ㄦ牸鏁版嵁 userList: [], + belongWards: [], + belongDepts: [], // 鏌ヨ鍙傛暟 queryParams: { pageNum: 1, @@ -960,6 +1508,22 @@ }, }; }, + activated() { + console.log(this.id); + console.log(this.$route.query.id); + + if (this.id != this.$route.query.id) { + console.log(1); + + this.RoutingDataProcessing(); + this.gettabList(); + this.getvFollowup(); + this.auxiliary(); + }else{ + this.tempDetpRelevanceslistform = []; + this.tempbelongWardsform = []; + } + }, created() { this.RoutingDataProcessing(); @@ -970,11 +1534,28 @@ this.usable = store.getters.usable; this.required = store.getters.required; this.valuetype = store.getters.valuetype; + this.askvaluetype = store.getters.askvaluetype; this.languagelist = store.getters.languagelist; this.courtyardlist = store.getters.courtyardlist; this.precedencetype = store.getters.precedencetype; + this.belongWards = store.getters.belongWards; + this.belongDepts = store.getters.belongDepts; }, mounted() {}, + 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: { //鍏叡鏂规硶-------------------- @@ -996,37 +1577,48 @@ }, // 鑾峰彇琛ㄥ崟鏁版嵁 getvFollowup() { - getvFollowup({ id: this.id }).then((res) => { - if (res.code == 200 && this.id) { - console.log(2211); - this.ruleForm = res.data; - this.tempDetpRelevanceslist = JSON.parse(this.ruleForm.deptNames); - this.ruleForm.suitway = this.ruleForm.suitway.split(","); - this.ruleForm.campus = this.ruleForm.campus.split(","); - this.ruleForm.submoduleID = this.ruleForm.submoduleID.split(","); - this.ruleForm.submoduleID = this.ruleForm.submoduleID.map((res) => { - return Number(res); - }); - console.log(this.ruleForm.submoduleID, "this.ruleForm.submoduleID鍙�"); - this.dynamicTags = this.ruleForm.ivrLibaTemplateTagList; - - this.dynamicTags = this.ruleForm.ivrLibaTemplateTagList.map( - this.processElement - ); - console.log(this.ruleForm.suitway); - } - }); - getillnesslist({ - pageNum: 1, - pageSize: 100, - }).then((response) => { - this.optionsillness = response.rows; - }); if (this.id) { + getvFollowup({ id: this.id }).then((res) => { + if (res.code == 200) { + console.log(2211); + this.ruleForm = res.data; + this.tempDetpRelevanceslist = JSON.parse(this.ruleForm.deptNames); + this.ruleForm.suitway = this.ruleForm.suitway.split(","); + this.ruleForm.campus = this.ruleForm.campus.split(","); + this.ruleForm.submoduleID = this.ruleForm.submoduleID.split(","); + this.ruleForm.submoduleID = this.ruleForm.submoduleID.map((res) => { + return Number(res); + }); + + this.dynamicTags = this.ruleForm.ivrLibaTemplateTagList; + + this.dynamicTags = this.ruleForm.ivrLibaTemplateTagList.map( + this.processElement + ); + this.sortFn(); + } + }); getillness({ outid: this.id, type: 3 }).then((res) => { this.illnesslist = res.rows; + this.illnesslist.forEach((item) => { + item.icdname = item.icd10name; + }); }); + } else { + this.ruleForm = { + templateName: "", + ivrLibaTemplateTagList: [], + ivrLibaTemplateScriptVOList: [], + tempDetpRelevances: [], + }; + this.deptOptions = []; + this.optionsillness = []; + this.illnesslistapi = []; + this.illnesslist = []; + this.dynamicTags = []; + this.tempDetpRelevanceslist = []; } + listDept(this.queryParams).then((response) => { this.deptList = this.handleTree(response.data, "deptId"); }); @@ -1036,7 +1628,22 @@ // 鍒嗙被 getFollowupclassify({}).then((res) => { this.indexAssortlist = res.rows; - this.ruleForm.assortid = Number(this.$route.query.assortid); + }); + this.tempDetpRelevanceslist = []; + this.tempbelongWards = []; + depthospgetsonlist(this.queryParamsdept).then((res) => { + if (res.code == 200) { + let arr = res.rows; + arr.forEach((item) => { + if (item.deptType == 1) { + this.deptlist.push(item); + this.tempDetpRelevanceslist.push(item.deptCode); + } else if (item.deptType == 2) { + this.hosplist.push(item); + this.tempbelongWards.push(item.deptCode); + } + }); + } }); // 绉戝 listDept(this.queryParams).then((response) => { @@ -1057,17 +1664,27 @@ }); // 鐤剧梾鍒� }, - // + // 閫夐」閰嶇疆璺宠浆瑙﹀彂 + branchFlagfn(row) { + if (this.topicobj.branchFlag == 1 && this.topicobj.nextScriptno != 0) { + this.topicobj.nextScriptno = + this.topicobj.ivrLibaScriptTargetoptionList[0].nextQuestion; + } + }, + //淇濆瓨 submitForm(formName) { if (this.ruleForm.id) { this.ruleForm.isoperation = 2; } else { this.ruleForm.isoperation = 1; } + if (!this.ruleForm.assortid) { + this.ruleForm.assortid = -1; + } this.ruleForm.labelInfo = JSON.stringify(this.dynamicTags); - this.ruleForm.suitway = this.ruleForm.suitway.join(","); - this.ruleForm.campus = this.ruleForm.campus.join(","); - this.ruleForm.submoduleID = this.ruleForm.submoduleID.join(","); + if (Array.isArray(this.ruleForm.suitway)) this.ruleForm.suitway = this.ruleForm.suitway.join(","); + if (Array.isArray(this.ruleForm.campus))this.ruleForm.campus = this.ruleForm.campus.join(","); + if (Array.isArray(this.ruleForm.submoduleID))this.ruleForm.submoduleID = this.ruleForm.submoduleID.join(","); // 鎻愪氦 this.ruleForm.ivrLibaTemplateScriptVOList.forEach((res) => { @@ -1083,54 +1700,90 @@ return item; }); }); + compileFollowup(this.ruleForm).then((res) => { + if (res.code == 200) { + this.$modal.msgSuccess("缂栬緫鎴愬姛"); + this.$modal.closeLoading(); + this.confirmillness(res.data); + const obj = { path: "/knowledge/templateku/" }; + this.$tab.closeOpenPage(obj); + } else { + this.$modal.msgError("淇濆瓨澶辫触"); + + this.$modal.closeLoading(); + } + }); + }, + 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 = 3; if (!item.id) { addtargetillness(item).then((res) => {}); } }); - if (this.illnesslistapi.length) { - deltargetillness(this.illnesslistapi.join(",")).then((res) => {}); - } - compileFollowup(this.ruleForm).then((res) => { - this.$modal.msgSuccess("缂栬緫鎴愬姛"); - this.$router.go(-1); - }); + this.illnessVisible = false; + this.$modal.msgSuccess("缂栬緫鎴愬姛"); }, // 绉戝澶勭悊 Departmenttreatment() { - this.ruleForm.deptNames = JSON.stringify(this.tempDetpRelevanceslist); - this.ruleForm.ivrLibaTemplateScriptVOList = - this.ruleForm.ivrLibaTemplateScriptVOList.concat(this.delScriptVOList); - 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) => { - res.data[0].type = 2; - this.ruleForm.tempDetpRelevances.push(res.data[0]); + this.$modal.loading("姝e湪淇淇濆瓨鏁版嵁锛岃绋嶅��..."); + this.tempDetpRelevanceslist.forEach((item) => { + console.log(item); + let result = this.deptlist.some((obj) => obj.deptCode == item); + console.log(this.result, "result"); + + if (!result) { + this.tempDetpRelevanceslistform.push({ + deptType: 1, + longTemp: this.ruleForm.longTemp, + deptCode: item, + tempid: this.id, + type: 1, }); } }); - console.log(this.ruleForm.tempDetpRelevances); - // 鏁扮粍瀵硅薄鏌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; + this.tempbelongWards.forEach((item) => { + let result = this.hosplist.some((obj) => obj.deptCode == item); + if (!result) { + this.tempbelongWardsform.push({ + deptType: 2, + longTemp: this.ruleForm.longTemp, + deptCode: item, + tempid: this.id, + type: 1, + }); } }); - console.log(this.ruleForm.tempDetpRelevances); setTimeout(() => { this.submitForm(); }, 1000); // this.submitForm(); + }, + // 淇濆瓨绉戝/鐥呭尯 + putbelongDepts(id) { + if (this.tempDetpRelevanceslistform.length > 0) { + depthospgetson(this.tempDetpRelevanceslistform).then((res) => { + if (res.code == 200) { + this.$modal.msgSuccess("绉戝鏂板鎴愬姛"); + } + }); + } + if (this.tempbelongWardsform.length > 0) { + depthospgetson(this.tempbelongWardsform).then((res) => { + if (res.code == 200) { + this.$modal.msgSuccess("闄㈠尯鏂板鎴愬姛"); + } + }); + } }, // 涓嬩竴姝� nextstep() { @@ -1150,7 +1803,8 @@ type: "warning", }) .then(() => { - this.$router.go(-1); + const obj = { path: "/knowledge/templateku/" }; + this.$tab.closeOpenPage(obj); }) .catch(() => { this.$message({ @@ -1159,10 +1813,35 @@ }); }); }, - - // 鎺у埗鏂囦欢 - handleChange(file, fileList) { - this.fileList = fileList.slice(-3); + //鎺у埗璇煶鏂囦欢(鏂�) + handleChange(response, file, additionalParam) { + console.log(response); + console.log(additionalParam); + if (additionalParam == 1) { + this.indexform.scriptVoice = response.url; + } else if (additionalParam == 2) { + this.indexform.nomatchvoice = response.url; + } else if (additionalParam == 3) { + this.indexform.sliencevoice = response.url; + } else if (additionalParam == 4) { + this.indexform.noclearlyvoice = response.url; + } + this.$forceUpdate(); + }, + //鎺у埗璇煶鏂囦欢 + handleChanges(response, file, additionalParam) { + console.log(response); + console.log(additionalParam); + if (additionalParam == 1) { + this.topicobj.scriptVoice = response.url; + } else if (additionalParam == 2) { + this.topicobj.nomatchvoice = response.url; + } else if (additionalParam == 3) { + this.topicobj.sliencevoice = response.url; + } else if (additionalParam == 4) { + this.topicobj.noclearlyvoice = response.url; + } + this.$forceUpdate(); }, // 鏂囦欢瓒呭嚭涓暟闄愬埗鏃剁殑閽╁瓙 handleExceed(files, fileList) { @@ -1249,10 +1928,9 @@ }); }, addtopic(row) { - console.log(row); if ( this.ruleForm.ivrLibaTemplateScriptVOList.some( - (obj) => obj.questiontitle == row.questiontitle + (obj) => obj.scriptTopic == row.scriptTopic ) ) { this.$modal.msgError("璇ラ鐩凡瀛樺湪"); @@ -1267,12 +1945,13 @@ }); this.ruleForm.ivrLibaTemplateScriptVOList.push(res.data); this.sortFn(); + this.$forceUpdate(); this.$modal.msgSuccess("娣诲姞鎴愬姛"); }); }, handleDelete(row) { this.$modal - .confirm('鏄惁纭鍒犻櫎闂锛�"' + row.questiontitle + '"锛�') + .confirm('鏄惁纭鍒犻櫎闂锛�"' + row.scriptTopic + '"锛�') .then(() => { this.ruleForm.ivrLibaTemplateScriptVOList.splice( this.ruleForm.ivrLibaTemplateScriptVOList.indexOf(row), @@ -1280,7 +1959,8 @@ ); row.isoperation = 3; this.delScriptVOList.push(row); - this.$modal.msgSuccess("宸插垹闄わ紝淇濆瓨妯$増鐢熸晥"); + this.sortFn(); + this.$modal.msgSuccess("宸插垹闄わ紝淇濆瓨妯℃澘鐢熸晥"); }) .catch(() => {}); }, @@ -1329,16 +2009,21 @@ }, // 闂鎺掑簭 sortFn() { - this.ruleForm.ivrLibaTemplateScriptVOList = - this.ruleForm.ivrLibaTemplateScriptVOList.map((item, index) => { - return Object.assign({}, item, { targetid: (index + 1).toString() }); - }); - this.ruleForm.ivrLibaTemplateScriptVOList.forEach((question, index) => { - question.ivrLibaScriptTargetoptionList = - question.ivrLibaScriptTargetoptionList.map((option) => { - option.nextQuestion = Number(question.targetid) + 1; - return option; + this.ruleForm.ivrLibaTemplateScriptVOList.forEach((item, index) => { + item.sort = Number(index) + 1; + console.log(this.ruleForm.ivrLibaTemplateScriptVOList.length); + console.log(item.sort); + + if (item.sort == this.ruleForm.ivrLibaTemplateScriptVOList.length) { + item.nextScriptno = 0; + } else { + item.nextScriptno = item.sort + 1; + } + if (item.ivrLibaScriptTargetoptionList) { + item.ivrLibaScriptTargetoptionList.forEach((items) => { + items.nextQuestion = Number(item.sort) + 1; }); + } }); console.log(this.ruleForm.ivrLibaTemplateScriptVOList); }, @@ -1346,56 +2031,55 @@ deloption() {}, // 淇敼棰樼洰淇℃伅 Submittopicobj() { - this.ruleForm.ivrLibaTemplateScriptVOList[this.optionIndex] = - this.topicobj; - this.$modal.msgSuccess("鏆傚瓨閫夐」鎴愬姛"); + this.$modal + .confirm( + '鏄惁纭鏂板鍚嶇О涓�"' + this.indexform.scriptTopic + '"鐨勯棶棰樻暟鎹紵' + ) + .then(() => { + this.indexform.isoperation = 1; + this.indexform.pid = this.ruleForm.id; + this.indexform.ivrLibaScriptTargetoptionList.forEach((item) => { + item.isoperation = 1; + }); + this.ruleForm.ivrLibaTemplateScriptVOList.push(this.indexform); + this.indexform = { + ivrLibaScriptTargetoptionList: [], + }; + this.drawer = false; + + this.sortFn(); + this.$modal.msgSuccess("棰樼洰鏂板鎴愬姛锛屼繚瀛樻ā鏉垮け鏁�"); + }); }, // --------------------- resetForm(formName) { this.$refs[formName].resetFields(); }, - - // 鐤剧梾----------------------- - - handleCloseillness(tag) { - this.illnesslist.splice(this.illnesslist.indexOf(tag), 1); - if (tag.id) { - this.illnesslistapi.push(tag.id); + // 绉戝鍒犻櫎瑙﹀彂 + removetag(row) { + let result = this.deptlist + .filter((item) => item.deptCode == row) + .map((item) => item.id); + console.log(result.length); + if (result.length) { + depthospgetsondel(result).then((res) => { + if (res.code) { + } + }); } }, - 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.inputValueillness; - illnesslistget(item).then((res) => { - opeavalue = res.data; - opeavalue.outid = this.id; - opeavalue.type = 3; - opeavalue.icd10id = opeavalue.icdid; - opeavalue.icd10name = opeavalue.icdname; - opeavalue.icd10code = opeavalue.icdcode; - if (tagname) { - this.illnesslist.push(opeavalue); + // 鍒犻櫎鍒犻櫎瑙﹀彂 + removehpsp(row) { + let result = this.hosplist + .filter((item) => item.deptCode == row) + .map((item) => item.id); + if (result.length) { + depthospgetsondel(result).then((res) => { + if (res.code) { + } + }); } - }); - console.log(this.illnesslist); - this.inputVisibleillness = false; - this.inputValueillness = ""; }, // 棰勮--------------- preview() { @@ -1406,14 +2090,45 @@ // 鍓嶅線娴嬭瘯 measurement() { this.$modal - .confirm("鍗冲皢鍓嶅線妯$増娴嬭瘯椤甸潰锛岃纭妯$増鏁版嵁宸蹭繚瀛樸��") + .confirm("鍗冲皢鍓嶅線妯℃澘娴嬭瘯椤甸潰锛岃纭妯℃澘鏁版嵁宸蹭繚瀛樸��") .then((res) => { this.$router.push({ - path: "/knowledge/templateku/configurat/measurement", + path: "/knowledge/tpuconfigurat/measurement", query: { id: this.id, name: this.ruleForm.templateName }, }); }) .catch(() => {}); + }, + // 鏂板缓妯℃澘涓复鏃堕鐩� + // 棰樼洰绫诲瀷鏇存崲 + typeselection(row) { + if (row == 1 && !this.indexform.ivrLibaScriptTargetoptionList.length) { + this.indexform.ivrLibaScriptTargetoptionList.push({ + guid: 1, + isoperation: 1, + targetvalue: "", + targetregex: "", + targetregex2: "", + dynamiccruxs: [], + nodynamiccruxs: [], + dynamiccruxsJson: "", + nodynamiccruxsJson: "", + }); + } + this.$forceUpdate(); + }, + addoptionson() { + this.indexform.ivrLibaScriptTargetoptionList.push({ + guid: 1, + isoperation: 1, + targetvalue: "", + targetregex: "", + targetregex2: "", + dynamiccruxs: [], + nodynamiccruxs: [], + dynamiccruxsJson: "", + nodynamiccruxsJson: "", + }); }, }, }; @@ -1469,12 +2184,27 @@ border: 1px solid #dcdfe6; -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04); - .topic-dev { + .scriptTopic-dev { margin-bottom: 25px; font-size: 20px !important; .dev-text { margin-bottom: 10px; } + } + .headline { + display: flex; + justify-content: space-between; + font-size: 20px; + border-left: 3px solid #41a1be; + padding-left: 5px; + margin: 15px 0; + } + .topicxq { + background-color: #e2f5fc; + border-radius: 4px; + margin-top: 10px; + padding-left: 10px; + padding-top: 15px; } } .xinz-inf { @@ -1501,6 +2231,15 @@ vertical-align: bottom; } } + +.xinz-infs { + font-size: 18px; + line-height: 48px; + + .el-tag + .el-tag { + margin-left: 10px; + } +} .addtopic { margin-top: 30px; } @@ -1517,6 +2256,16 @@ color: #f52727; } } + .spresentation-left { + width: 100%; + // height: 500px; + .button-textxg { + color: #024df0; + } + .button-textsc { + color: #f52727; + } + } .presentation-right { width: 55%; max-height: 688px; -- Gitblit v1.9.3