From 720f7c4ce56ae4b9fc3884d0ed9393d79130b01c Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 16 八月 2024 18:07:46 +0800
Subject: [PATCH] 测试完成
---
src/views/knowledge/questionnaire/compilequer/index.vue | 1506 ++++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 1,063 insertions(+), 443 deletions(-)
diff --git a/src/views/knowledge/questionnaire/compilequer/index.vue b/src/views/knowledge/questionnaire/compilequer/index.vue
index 556466a..8100549 100644
--- a/src/views/knowledge/questionnaire/compilequer/index.vue
+++ b/src/views/knowledge/questionnaire/compilequer/index.vue
@@ -2,14 +2,27 @@
<div class="Questionnairemanagement">
<!-- 宸︿晶鏍� -->
<div class="sidecolumn">
- <div style="height: 400px">
- <el-steps direction="vertical" :active="Editprogress">
- <el-step title="鍩虹淇℃伅"></el-step>
- <el-step title="闂嵎棰樼洰"></el-step>
- <el-step
- title="闂嵎棰勮"
- description="鏌ョ湅闂嵎棰勮锛屽彲瀵煎嚭PDF"
- ></el-step>
+ <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"
+ >闂嵎棰樼洰</span
+ >
+ </template>
+ </el-step>
+ <el-step description="鏌ョ湅闂嵎棰勮锛屽彲瀵煎嚭PDF">
+ <span slot="title" style="cursor: pointer" @click="Editprogress = 3"
+ >闂嵎棰勮</span
+ >
+ </el-step>
</el-steps>
</div>
</div>
@@ -17,9 +30,7 @@
<div class="leftvlue">
<!-- 鍩烘湰淇℃伅 -->
<div v-if="Editprogress == 1">
- <div class="leftvlue-jbxx">
- 鍩烘湰淇℃伅
- </div>
+ <div class="leftvlue-jbxx">鍩烘湰淇℃伅</div>
<el-divider></el-divider>
<el-form
:model="ruleForm"
@@ -28,135 +39,149 @@
label-width="100px"
class="demo-ruleForm"
>
- <el-form-item label="闂嵎鍒嗙被" prop="region">
- <el-select
- v-model="ruleForm.classify"
- size="medium"
- multiple
- filterable
- placeholder="璇烽�夋嫨鍒嗙被"
- >
- <el-option
- class="ruleFormaa"
- v-for="item in options"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="闂嵎鏍囬" prop="name">
- <div style="width: 30%">
- <el-input v-model="ruleForm.name"></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"
- type="success"
- v-for="tag in dynamicTags"
- closable
- :disable-transitions="false"
- @close="handleClose(tag)"
- >
- {{ tag }}
- </el-tag>
- <el-select
- v-model="inputValue"
- v-if="inputVisible"
- @change="handleInputConfirm"
- filterable
- allow-create
- default-first-option
- placeholder="璇烽�夋嫨"
- >
- <el-option
- v-for="item in optionstag"
- :key="item.tagname"
- :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="currentVersion"></el-input> </el-form-item
- ></el-col>
- <el-col :span="9">
- <el-form-item label="鍙敤鐘舵��" prop="region">
+ <el-row :gutter="10">
+ <el-col :span="10">
+ <el-form-item label="闂嵎鍒嗙被" prop="region">
<el-select
- v-model="ruleForm.classify"
+ v-model="ruleForm.categoryid"
size="medium"
- multiple
filterable
placeholder="璇烽�夋嫨鍒嗙被"
>
+ <el-option-group
+ v-for="group in optionsclass"
+ :key="group.id"
+ :label="group.name"
+ >
+ <el-option
+ v-for="item in group.svyLibTemplateCategoryList"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id"
+ >
+ </el-option>
+ </el-option-group>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="10">
+ <el-form-item label="璇勪环绫诲瀷">
+ <el-select
+ v-model="ruleForm.scoreType"
+ placeholder="璇烽�夋嫨鍒嗙被"
+ >
<el-option
- class="ruleFormaa"
- v-for="item in options"
- :key="item.value"
- :label="item.label"
- :value="item.value"
+ v-for="group in appraiselist"
+ :key="group.value"
+ :label="group.label"
+ :value="group.value"
>
</el-option>
- </el-select> </el-form-item
+ </el-select>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-form-item label="闂嵎鏍囬" prop="name">
+ <div style="width: 30%">
+ <el-input v-model="ruleForm.svyname"></el-input>
+ </div>
+ </el-form-item>
+ <el-form-item label="闂嵎鎻忚堪">
+ <el-input
+ style="width: 40vw"
+ type="textarea"
+ autosize
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="ruleForm.description"
+ >
+ </el-input
+ ></el-form-item>
+
+ <el-row>
+ <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
+ allow-create
+ 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>
+ <div class="xinz-infs">
+ <el-form-item label="閫傜敤鐤剧梾" prop="region">
+ <el-tag
+ v-for="tag in displayedTags"
+ :key="tag.icdid"
+ type="warning"
+ :disable-transitions="false"
+ >
+ {{ tag.icdname }}
+ </el-tag>
+ <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag>
+ </el-form-item>
+ </div>
+ <div style="margin-left: 120px; margin-bottom: 10px">
+ <el-button type="warning" @click="$refs.child.handleAddpatient()"
+ >鐤剧梾璇︽儏</el-button
+ >
+ </div>
+ <el-row :gutter="20">
+ <el-col :span="6">
+ <el-form-item label="鐗堟湰鍙�" prop="name">
+ <el-input
+ v-model="ruleForm.version"
+ placeholder="榛樿1.0"
+ ></el-input> </el-form-item
></el-col>
+ <el-col :span="9">
+ <el-form-item label="鍙敤鐘舵��" prop="region">
+ <el-radio-group v-model="ruleForm.isAvailable">
+ <el-radio
+ v-for="(item, index) in usable"
+ :label="item.value"
+ >{{ item.label }}</el-radio
+ >
+ </el-radio-group>
+ </el-form-item></el-col
+ >
</el-row>
<el-form-item label="闂嵎鏂瑰紡" prop="region">
<el-select
- v-model="ruleForm.way"
+ v-model="ruleForm.suitway"
size="medium"
multiple
filterable
@@ -164,7 +189,7 @@
>
<el-option
class="ruleFormaa"
- v-for="item in xjxsoptions"
+ v-for="item in mode"
:key="item.value"
:label="item.label"
:value="item.value"
@@ -172,65 +197,44 @@
</el-option>
</el-select>
</el-form-item>
- <el-form-item label="閫傜敤鐤剧梾" prop="region">
- <el-select
- v-model="ruleForm.illness"
- size="medium"
- multiple
- filterable
- placeholder="璇烽�夋嫨鍒嗙被"
- >
- <el-option
- class="ruleFormaa"
- v-for="item in options"
- :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.courtyard"
+ v-model="ruleForm.campus"
size="medium"
filterable
placeholder="璇烽�夋嫨鍒嗙被"
>
<el-option
class="ruleFormaa"
- v-for="item in options"
- :key="item.value"
+ v-for="item in courtyardlist"
+ :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">
- <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 type="info" @click="closeFm('ruleForm')">鍏抽棴</el-button>
- <el-button @click="submitForm('ruleForm')"
+ <el-button @click="Departmenttreatment('ruleForm')"
>淇濆瓨闂嵎鍩虹淇℃伅</el-button
>
</el-form-item>
@@ -240,157 +244,344 @@
<div v-if="Editprogress == 2">
<div class="leftvlue-jbxx">闂嵎棰樼洰璁剧疆</div>
<el-divider></el-divider>
- <div class="addtopic">
- <el-button
- type="primary"
- icon="el-icon-plus"
- round
- @click="drawer = true"
- >娣诲姞棰樼洰</el-button
- >
+ <div style="display: flex; justify-content: space-between">
+ <div>
+ <el-button
+ type="primary"
+ icon="el-icon-plus"
+ round
+ @click="getaddtopiclist"
+ >娣诲姞棰樼洰</el-button
+ >
+ <el-button
+ type="success"
+ icon="el-icon-edit-outline"
+ round
+ @click="Operateit = !Operateit"
+ >{{ !Operateit ? "缂栬緫棰樼洰" : "瀹屾暣淇℃伅灞曠ず" }}</el-button
+ >
+ </div>
+ <div style="display: flex">
+ <span
+ style="
+ width: 180px;
+ font-size: 20px;
+ font-weight: normal;
+ color: red;
+ "
+ >闂嵎鎬诲垎锛�</span
+ >
+ <el-input
+ v-model="ruleForm.scriptScore"
+ placeholder="璇疯緭鍏ュ垎鏁�"
+ ></el-input>
+ </div>
</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" :data="userList">
+ <el-table
+ v-loading="loading"
+ :data="ruleForm.svyTemplateLibScripts"
+ >
<el-table-column
label="搴忓彿"
align="center"
- key="userid"
- prop="userid"
+ key="sort"
+ prop="sort"
+ width="50"
/>
<el-table-column
- label="棰樼洰"
+ label="棰樼洰鏍囬"
align="center"
- key="userName"
- prop="userName"
+ key="scriptTopic"
+ prop="scriptTopic"
:show-overflow-tooltip="true"
/>
<el-table-column
- label="涓昏鍐呭"
+ label="棰樺瀷"
align="center"
- key="maincontent"
- prop="maincontent"
+ key="scriptType"
+ prop="scriptType"
+ :show-overflow-tooltip="true"
+ >
+ <template slot-scope="scope">
+ <dict-tag
+ :options="askvaluetype"
+ :value="scope.row.scriptType"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ v-if="!Operateit"
+ label="棰樼洰鍐呭"
+ align="center"
+ key="scriptContent"
+ prop="scriptContent"
+ :show-overflow-tooltip="true"
+ />
+ <el-table-column
+ v-if="!Operateit"
+ label="鎸囨爣鍚嶇О"
+ align="center"
+ key="targetname"
+ prop="targetname"
+ :show-overflow-tooltip="true"
+ />
+ <el-table-column
+ v-if="!Operateit"
+ label="鏄惁蹇呭~"
+ align="center"
+ key="ismandatory"
+ prop="ismandatory"
+ :show-overflow-tooltip="true"
+ >
+ <template slot-scope="scope">
+ <dict-tag
+ :options="required"
+ :value="scope.row.ismandatory"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="涓嬮璺宠浆"
+ align="center"
+ key="nextScriptno"
+ prop="nextScriptno"
:show-overflow-tooltip="true"
/>
<el-table-column
+ v-if="Operateit"
label="鎿嶄綔"
align="center"
- width="200"
+ width="250"
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
<el-button
icon="el-icon-edit"
type="primary"
- round
+ circle
@click="handleUpdate(scope.row)"
- >淇敼</el-button
- >
+ ></el-button>
<el-button
type="danger"
icon="el-icon-delete"
circle
@click="handleDelete(scope.row)"
></el-button>
+ <el-button
+ @click="syioption(scope.row)"
+ type="success"
+ icon="el-icon-top"
+ circle
+ ></el-button>
+ <el-button
+ @click="xiayioption(scope.row)"
+ type="success"
+ icon="el-icon-bottom"
+ circle
+ ></el-button>
</template>
</el-table-column>
</el-table>
</el-card>
-
- <pagination
- v-show="total > 0"
- :total="total"
- :page.sync="queryParams.pageNum"
- :limit.sync="queryParams.pageSize"
- @pagination="getList"
- />
</div>
- <div class="presentation-right">
+ <div class="presentation-right" v-if="Operateit">
<el-card class="box-card">
<el-form
:inline="true"
:model="topicobj"
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.title"
- placeholder="璇疯緭鍏ユ爣棰�"
- ></el-input>
- </el-form-item>
+ <div class="headline">棰樼洰璁剧疆璇︽儏</div>
+ <el-row :gutter="10">
+ <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="涓嬮璺宠浆" v-if="!topicobj.branchFlag">
+ <el-input
+ v-model="topicobj.nextScriptno"
+ placeholder="璇疯緭鍏ラ鍙�"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
<el-row :gutter="10">
<el-col :span="12"
- ><el-form-item label="鏄惁蹇呯瓟">
- <el-radio-group v-model="topicobj.resource">
- <el-radio label="鏄�"></el-radio>
- <el-radio label="鍚�"></el-radio>
- </el-radio-group> </el-form-item
+ ><el-form-item label="鏄惁蹇呭~">
+ <el-select
+ v-model="topicobj.ismandatory"
+ 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-radio-group v-model="topicobj.resourcea">
- <el-radio label="鏄�"></el-radio>
- <el-radio label="鍚�"></el-radio>
- </el-radio-group> </el-form-item
+ ><el-form-item label="鏄惁鍙敤">
+ <el-select
+ v-model="topicobj.isavailable"
+ placeholder="璇烽�夋嫨"
+ >
+ <el-option
+ 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>
- <div class="headline">閫夐」璁剧疆</div>
- <div class="topicxq" v-for="item in 2">
- <el-row :gutter="10">
- <el-col :span="12"
- ><el-form-item label="閫夐」">
- <el-input
- type="text"
- placeholder="璇疯緭鍏ラ�夐」"
- v-model="text"
- show-word-limit
+ <el-row>
+ <el-col :span="12">
+ <el-form-item
+ label="棰樼洰鍒嗗��"
+ v-if="topicobj.scoretype == 1"
+ >
+ <el-input
+ v-model="topicobj.score"
+ placeholder="璇疯緭鍏ラ鍙�"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-form-item label="鏄惁鐢遍�夐」閰嶇疆璺宠浆">
+ <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>
+ <div v-if="topicobj.scriptType != 3">
+ <div class="headline">閫夐」璁剧疆</div>
+ <div
+ class="topicxq"
+ v-for="item in topicobj.svyLibTemplateTargetoptions"
+ >
+ <el-row :gutter="5">
+ <el-col :span="16"
+ ><el-form-item label="閫夐」">
+ <el-input
+ type="text"
+ placeholder="璇疯緭鍏ラ�夐」"
+ v-model="item.optioncontent"
+ show-word-limit
+ >
+ </el-input> </el-form-item
+ ></el-col>
+ <el-col :span="8">
+ <el-form-item
+ v-if="topicobj.scoretype == 1"
+ label="鍒嗗��"
>
- </el-input> </el-form-item
- ></el-col>
- <el-col :span="12"
- ><el-form-item label="鍒嗗��">
- <el-input
- type="text"
- placeholder="璇疯緭鍏ュ垎鍊�"
- v-model="text"
- show-word-limit
+ <el-input
+ class="custom-width"
+ type="text"
+ placeholder="璇疯緭鍏ラ�夐」鍒嗗��"
+ v-model="item.score"
+ show-word-limit
+ >
+ </el-input>
+ </el-form-item>
+ <el-form-item
+ v-else-if="topicobj.scoretype == 2"
+ label="ABC绛夌骇"
>
- </el-input> </el-form-item
- ></el-col>
- </el-row>
- <el-row :gutter="10">
- <el-col :span="12"
- ><el-form-item label="閫変腑鎻愮ず">
+ <el-radio-group v-model="item.score">
+ <el-radio label="A">A</el-radio>
+ <el-radio label="B">B</el-radio>
+ <el-radio label="C">C</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ <el-form-item
+ v-else-if="topicobj.scoretype == 3"
+ label="浼樿壇绛夌骇"
+ >
+ <el-radio-group v-model="item.score">
+ <el-radio label="浼�">浼�</el-radio>
+ <el-radio label="鑹�">鑹�</el-radio>
+ <el-radio label="宸�">宸�</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="10">
+ <el-col :span="20"
+ ><el-form-item label="涓嬮璺宠浆(搴忓彿)">
+ <el-input
+ type="text"
+ placeholder="璇疯緭鍏ラ鍙�"
+ v-model="item.nextQuestion"
+ show-word-limit
+ >
+ </el-input> </el-form-item
+ ></el-col>
+ </el-row>
+ <el-row :gutter="10">
+ <el-form-item label="閫変腑鎻愮ず">
<el-input
- type="text"
+ style="width: 20vw"
+ type="textarea"
+ autosize
placeholder="璇疯緭鍏ュ唴瀹�"
- v-model="text"
- maxlength="10"
- show-word-limit
+ v-model="item.prompt"
>
- </el-input> </el-form-item
- ></el-col>
- <el-col :span="12"
- ><el-form-item label="涓嬮璺宠浆">
+ </el-input
+ ></el-form-item>
+ </el-row>
+ <el-row :gutter="10">
+ <el-form-item label="閫夐」鏂囦欢" prop="sickness">
+ <div style="width: 40vw">
+ <div style="margin: 20px">
+ <el-image
+ style="width: 100px; height: 100px"
+ :src="item.picturePath"
+ :preview-src-list="[...item.picturePath]"
+ >
+ </el-image>
+ </div>
+ </div>
+ </el-form-item>
+ </el-row>
+ </div>
+ </div>
+ <div v-else>
+ <div class="topicxq">
+ <el-row :gutter="10">
+ <el-form-item label="绛旀">
<el-input
- type="text"
- placeholder="璇疯緭鍏ラ鍙�"
- v-model="text"
- show-word-limit
+ style="width: 20vw"
+ type="textarea"
+ autosize
+ placeholder="姝ゅ鏀剧疆鎮h�呭洖绛�"
+ v-model="topicobj.reply"
>
- </el-input> </el-form-item
- ></el-col>
- </el-row>
+ </el-input
+ ></el-form-item>
+ </el-row>
+ <el-form-item label="鍒嗗��">
+ <el-input
+ type="text"
+ placeholder="璇疯緭鍏ラ�夐」鍒嗗��"
+ v-model="topicobj.score"
+ show-word-limit
+ >
+ </el-input>
+ </el-form-item>
+ </div>
</div>
</el-form>
</el-card>
@@ -402,7 +593,9 @@
>
<el-button type="primary" @click="laststep()">涓婁竴姝�</el-button>
<el-button type="info" @click="closeFm('ruleForm')">鍏抽棴</el-button>
- <el-button @click="Saveproblem('ruleForm')">淇濆瓨棰樼洰鏁版嵁</el-button>
+ <el-button @click="Departmenttreatment('ruleForm')"
+ >淇濆瓨棰樼洰鏁版嵁</el-button
+ >
</div>
<!-- 闂嵎棰勮 -->
<div v-if="Editprogress == 3">
@@ -410,42 +603,57 @@
<el-divider></el-divider>
<div class="preview-left">
<!-- 鍗曢�� -->
- <div class="topic-dev" v-for="item in valssu" :key="item.aaa">
+ <div
+ class="scriptTopic-dev"
+ v-for="item in ruleForm.svyTemplateLibScripts"
+ :key="item.sort"
+ v-if="item.scriptType == 1"
+ >
<div class="dev-text">
- {{ item.idd }}銆乕鍗曢�塢<span>{{ item.wssd }}</span>
+ {{ item.sort }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span>
</div>
<div class="dev-xx">
- <el-radio-group v-model="radio">
+ <el-radio-group v-model="item.remark">
<el-radio
- v-for="(items, index) in item.sdadd"
+ v-for="(items, index) in item.svyLibTemplateTargetoptions"
:key="index"
:label="index"
- >{{ items }}</el-radio
+ >{{ items.optioncontent }}</el-radio
>
</el-radio-group>
</div>
</div>
<!-- 澶氶�� -->
- <div class="topic-dev" v-for="item in valssu" :key="item.aaa">
+ <div
+ class="scriptTopic-dev"
+ v-for="item in ruleForm.svyTemplateLibScripts"
+ :key="item.sort"
+ v-if="item.scriptType == 2"
+ >
<div class="dev-text">
- {{ item.idd }}銆乕澶氶�塢<span>{{ item.wssd }}</span>
+ {{ item.sort }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span>
</div>
<div class="dev-xx">
- <el-checkbox-group v-model="radios">
+ <el-checkbox-group v-model="qremark">
<el-checkbox
- v-for="(items, index) in item.sdadd"
+ v-for="(items, index) in item.svyLibTemplateTargetoptions"
:key="index"
:label="index"
>
- {{ items }}
+ {{ items.optioncontent }}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
<!-- 濉┖ -->
- <div class="topic-dev" v-for="item in valssu" :key="item.aaa">
+ <div
+ class="scriptTopic-dev"
+ v-for="item in ruleForm.svyTemplateLibScripts"
+ :key="item.sort"
+ v-if="item.scriptType == 3"
+ >
<div class="dev-text">
- {{ item.idd }}銆乕濉┖]<span>{{ item.wssd }}</span>
+ {{ item.sort }}銆乕濉┖]<span>{{ item.scriptContent }}</span>
</div>
<div class="dev-xx">
<el-input placeholder="璇疯緭鍏ョ瓟妗�" v-model="radioas" clearable>
@@ -458,12 +666,12 @@
<el-button type="primary" @click="laststep()">涓婁竴姝�</el-button>
</div>
</div>
- <!-- 棰勮妯$増寮圭獥 -->
+ <!-- 娣诲姞棰樼洰寮圭獥 -->
<el-drawer
title="娣诲姞棰樼洰"
:visible.sync="drawer"
custom-class="demo-drawer"
- width="50%"
+ size="50%"
>
<div class="preview-left">
<el-form
@@ -473,39 +681,22 @@
:inline="true"
label-width="98px"
>
- <el-form-item label="鏍囬" prop="userName">
+ <el-form-item label="闂鏍囬" prop="scriptTopic">
<el-input
- v-model="queryParams.userName"
+ v-model="queryParams.scriptTopic"
placeholder="璇疯緭鍏�"
clearable
style="width: 200px"
- @keyup.enter.native="handleQuery"
+ @keyup.enter.native="getaddtopiclist"
/>
</el-form-item>
- <el-form-item label="涓婚" prop="sickness">
- <el-select
- v-model="ruleForm.classify"
- size="medium"
- multiple
- filterable
- placeholder="璇烽�夋嫨鍒嗙被"
- >
- <el-option
- class="ruleFormaa"
- v-for="item in options"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
+
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="medium"
- @click="handleQuery"
+ @click="getaddtopiclist"
>鎼滅储</el-button
>
<el-button icon="el-icon-refresh" size="medium" @click="resetQuery"
@@ -517,15 +708,23 @@
<el-table-column
label="鏍囬"
align="center"
- key="userid"
- prop="userid"
+ key="scriptTopic"
+ prop="scriptTopic"
width="100"
/>
<el-table-column
label="闂鍐呭"
align="center"
- key="userName"
- prop="userName"
+ 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"
/>
@@ -536,10 +735,7 @@
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
- <el-button
- size="medium"
- type="text"
- @click="handleUpdate(scope.row)"
+ <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
@@ -547,60 +743,92 @@
</template>
</el-table-column>
</el-table>
+ <pagination
+ v-show="total > 0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getaddtopiclist"
+ />
</div>
</el-drawer>
+ <!-- 娣诲姞閫傜敤鐤剧梾绐楀彛 -->
+ <Optional-Form
+ ref="child"
+ :dialogVisiblepatient="dialogVisiblepatient"
+ :overallCase="illnesslist"
+ @addoption="dialogVisiblepatient = false"
+ @kkoption="dialogVisiblepatient = true"
+ />
</div>
</template>
<script>
import { listtag } from "@/api/system/label";
+import { listDept } from "@/api/system/dept";
+import store from "@/store";
+import {
+ getQtemplateclassify,
+ delQtemplateclassify,
+ addQtemplateclassify,
+ getQtemplateobj,
+ compileQtemplate,
+ Qtemplateinfo,
+ compileissue,
+ delQtemplateinfo,
+ Followupinfo,
+ issueinfo,
+ getissuelist,
+ deltargetillness,
+ addtargetillness,
+ getillnesslist,
+ illnesslistget,
+ getillness,
+} from "@/api/AiCentre/index";
+import OptionalForm from "@/components/OptionalForm"; //姝e垯缁勪欢
+import { getToken } from "@/utils/auth";
export default {
+ name: "Qcompilequer",
+
+ components: { OptionalForm },
+
data() {
return {
+ headers: {
+ Authorization: "Bearer " + getToken(),
+ },
+ uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/uploadSort",
sidecolumnrabs: "left", //鏂瑰悜
- Editprogress: 2, //缂栬緫杩涘害
+ Editprogress: 1, //缂栬緫杩涘害
currentVersion: "1.2.3", //褰撳墠鐗堟湰
loading: false, // 閬僵灞�
drawer: false, //鎺у埗灞曞紑
radio: "false", //鍗曢�夐閫変腑
radios: [], //澶氶�夐閫変腑
radioas: "", //濉┖棰樼瓟妗�
- dynamicTags: ["鏍囩涓�", "鏍囩浜�", "鏍囩涓�"],
+ dynamicTags: [],
inputVisible: false,
+ dialogVisiblepatient: false, //閫傜敤鐤剧梾绐楀彛
inputValue: "",
topicobj: {},
// 鎬绘潯鏁�
total: 1,
ruleForm: {
- name: "",
- region: "",
- date1: "",
- date2: "",
- delivery: false,
- type: [],
- resource: "",
- desc: "",
- templatevalue: "",
- data2: "",
+ svyTemplateLibScripts: [],
+ tempDetpRelevances: [],
+ svyLibTemplateTagList: [],
},
rules: {},
rulesa: {},
- optionstag:[],
- xjxsoptions: [
- {
- value: "閫夐」1",
- label: "鍥炬枃",
- },
- {
- value: "閫夐」2",
- label: "瑙嗛",
- },
- {
- value: "閫夐」3",
- label: "闊抽",
- },
+ optionsclass: [], //鍒嗙被鍒楄〃
+ optionlist: [
+ { value: "scriptTopic", table: "scriptTopic" },
+ { value: "scriptTopic", table: "scriptTopic" },
],
+
+ appraiselist: [],
+
fileList: [
{
name: "food.jpeg",
@@ -611,24 +839,7 @@
url: "https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100",
},
],
- options: [
- {
- value: "閫夐」1",
- label: "鐤剧梾闂嵎",
- },
- {
- value: "閫夐」2",
- label: "鍏ラ櫌闂嵎",
- },
- {
- value: "閫夐」3",
- label: "鎵嬫湳闂嵎",
- },
- {
- value: "閫夐」4",
- label: "鎶ょ悊闂嵎",
- },
- ],
+
variablelist: [
{
variable: "paitent",
@@ -645,54 +856,204 @@
],
addvalue: "娣诲姞棰樼洰",
// 棰樼洰琛ㄦ牸鏁版嵁
- userList: [
- {
- userid: "1",
- userName: "涓�鍙烽棶鍗�",
- },
- {
- userid: "2",
- userName: "浜屽彿闂嵎",
- },
- {
- userid: "3",
- userName: "涓夊彿闂嵎",
- },
- {
- userid: "4",
- userName: "鍥涘彿闂嵎",
- },
+ userList: [],
+ deptList: [],
+ props: { multiple: true, value: "deptId", label: "deptName" },
+ themelist: [],
+ languagelist: [],
+ courtyardlist: [],
+ askvaluetype: [],
+ precedencetype: [],
+ inputValueillness: "",
+ inputVisible: false,
+ inputVisibleillness: false,
+ illnessVisible: false, //鎸囨爣鐤剧梾寮规
+ Operateit: true,
+ deptOptions: [],
+ optionsillness: [],
+ delScriptVOList: [],
+ illnesslistapi: [],
+ illnesslist: [],
+ tempDetpRelevanceslist: [],
+ optionstag: [],
+ valuetype: [],
+ qremark: [],
+ usable: [
+ { value: "0", label: "鍙敤" },
+ { value: "1", label: "鍋滅敤" },
],
+ required: [
+ { value: "1", label: "蹇呭~" },
+ { value: "2", label: "涓嶅繀濉�" },
+ ],
+ mode: [], //鏂瑰紡
// 鏌ヨ鍙傛暟
queryParams: {
pageNum: 1,
pageSize: 10,
- userName: undefined,
- phonenumber: undefined,
- status: undefined,
- deptId: undefined,
- IDnumber: undefined,
},
+ arr: [
+ [
+ { id: 1, grade: "5" },
+ { id: 2, grade: "5" },
+ { id: 3, grade: "5" },
+ { id: 4, grade: "5" },
+ ],
+ [
+ { id: 1, grade: "5" },
+ { id: 3, grade: "5" },
+ { id: 4, grade: "5" },
+ ],
+ [
+ { id: 1, grade: "5" },
+ { id: 2, grade: "5" },
+ { id: 4, grade: "5" },
+ ],
+ ],
};
},
created() {
this.gettabList();
+ this.getissueinfo();
+ this.mode = store.getters.Askmode;
+ this.languagelist = store.getters.languagelist;
+ this.usable = store.getters.usable;
+ this.required = store.getters.required;
+ this.valuetype = store.getters.valuetype;
+ this.courtyardlist = store.getters.courtyardlist;
+ this.askvaluetype = store.getters.askvaluetype;
+ this.appraiselist = store.getters.appraiselist;
+ // this.test();
+ },
+ 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: {
- submitForm(formName) {
- this.rules = this.rulesa;
- // 鎻愪氦
- this.$refs[formName].validate((valid) => {
- if (valid) {
- alert("submit!");
- } else {
- console.log("error submit!!");
- return false;
+ // 鍏叡鏂规硶---------------
+ getIndexInArray(arr, obj) {
+ return arr.indexOf(obj);
+ },
+ processElement(element) {
+ return { ...element, isoperation: 1 };
+ },
+ // 閫掑綊鎵佸钩鍖�
+ flattenArray(arr) {
+ let result = [];
+ arr.forEach((item) => {
+ result.push(item);
+ if (item.svyLibTemplateCategoryList) {
+ result = result.concat(
+ this.flattenArray(item.svyLibTemplateCategoryList)
+ );
+ delete item.svyLibTemplateCategoryList;
}
});
+ return result;
+ },
+ // -----------------------------
+ // 鑾峰彇鏁版嵁
+ getissueinfo() {
+ this.id = this.$route.query.id;
+ if (this.id) {
+ getQtemplateobj({ svyid: this.id }).then((res) => {
+ this.ruleForm = res.rows[0];
+ this.dynamicTags = this.ruleForm.svyLibTemplateTagList.map(
+ this.processElement
+ );
+ this.tempDetpRelevanceslist = JSON.parse(this.ruleForm.deptNames);
+ this.ruleForm.suitway = this.ruleForm.suitway.split(",");
+ });
+ getillness({ outid: this.id, type: 5 }).then((res) => {
+ this.illnesslist = res.rows;
+ this.illnesslist.forEach((item) => {
+ item.icdname = item.icd10name;
+ });
+ });
+ } else {
+ this.ruleForm.isenable = "1";
+ }
+
+ listDept(this.queryParams).then((response) => {
+ this.deptList = this.handleTree(response.data, "deptId");
+ });
+ // 鍒嗙被
+ getQtemplateclassify({}).then((res) => {
+ this.optionsclass = res.rows;
+ });
+ },
+ submitForm(formName) {
+ this.$modal.loading("姝e湪涓婁紶鏁版嵁锛岃绋嶅��...");
+ this.ruleForm.suitway = this.ruleForm.suitway.join(",");
+ if (condition) {
+ }
+ if (this.id) {
+ this.ruleForm.isoperation = 2;
+ compileQtemplate(this.ruleForm).then((res) => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.confirmillness();
+ this.$modal.closeLoading();
+ this.$router.go(-1);
+ });
+ } else {
+ this.ruleForm.isoperation = 1;
+ this.ruleForm.version = this.ruleForm.version ? ruleForm : "1.0";
+ compileQtemplate(this.ruleForm).then((res) => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.confirmillness(res.data);
+
+ this.$modal.closeLoading();
+
+ this.$router.go(-1);
+ });
+ }
+ },
+ // 绉戝澶勭悊
+ Departmenttreatment() {
+ this.ruleForm.deptNames = JSON.stringify(this.tempDetpRelevanceslist);
+ this.ruleForm.svyTemplateLibScripts =
+ this.ruleForm.svyTemplateLibScripts.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) => {
+ console.log(res.data[0]);
+ 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) {
+ console.log(condition);
+ const index = this.ruleForm.tempDetpRelevances.indexOf(item);
+ this.ruleForm.tempDetpRelevances[index].delFlag = 1;
+ }
+ });
+ setTimeout(() => {
+ this.submitForm();
+ }, 1000);
},
// 涓嬩竴姝�
nextstep() {
@@ -706,35 +1067,96 @@
},
// 鍏抽棴
closeFm() {
- this.$confirm('閫�鍑轰笉浼氫繚鐣欓〉闈㈠唴瀹规洿鏀�, 鏄惁缁х画?', '鎻愮ず', {
- confirmButtonText: '纭畾',
- cancelButtonText: '鍙栨秷',
- type: 'warning'
- }).then(() => {
- this.$router.go(-1)
- }).catch(() => {
+ this.$confirm("閫�鍑轰笉浼氫繚鐣欓〉闈㈠唴瀹规洿鏀�, 鏄惁缁х画?", "鎻愮ず", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ type: "warning",
+ })
+ .then(() => {
+ this.$router.go(-1);
+ })
+ .catch(() => {
this.$message({
- type: 'info',
- 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;
+ // 鑾峰彇棰樼洰鍒楄〃
+ getaddtopiclist() {
+ this.drawer = true;
+ this.queryParams.scoretype = this.ruleForm.scoreType;
+ getissuelist(this.queryParams).then((res) => {
+ this.loading = false;
+ this.userList = res.rows;
+ this.total = res.total;
console.log(this.userList);
});
- // const { rows } = await listUser();
- // console.log(rows);
- // this.list = rows;
},
+ // 鏂板棰樼洰
+ addtopic(row) {
+ row.isoperation = 1;
+ console.log(row, "row");
+ row.svyLibScriptOptions.forEach((item) => {
+ item.isoperation = 1;
+ });
+ row.svyLibTemplateTargetoptions = row.svyLibScriptOptions;
+ this.ruleForm.svyTemplateLibScripts.push(row);
+ this.sortFn();
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ },
+ handleDelete(row) {
+ let index = this.ruleForm.svyTemplateLibScripts.indexOf(row);
+ this.ruleForm.svyTemplateLibScripts.splice(index, 1);
+ row.isoperation = 3;
+ this.delScriptVOList.push(row);
+ this.sortFn();
+ },
+ handleUpdate(row) {
+ this.topicobj = row;
+ this.radioas = "";
+ console.log(this.topicobj, "鐪嬫暟鎹�");
+ // getissuelist({ svyid: row.svyid }).then((res) => {
+ // });
+ },
+ syioption(row) {
+ const index = this.getIndexInArray(
+ this.ruleForm.svyTemplateLibScripts,
+ row
+ );
+ const item = this.ruleForm.svyTemplateLibScripts.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
+ this.ruleForm.svyTemplateLibScripts.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
+ this.sortFn();
+ },
+ xiayioption(row) {
+ const index = this.getIndexInArray(
+ this.ruleForm.svyTemplateLibScripts,
+ row
+ );
+ const item = this.ruleForm.svyTemplateLibScripts.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
+ this.ruleForm.svyTemplateLibScripts.splice(index + 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
+ this.sortFn();
+ },
+ sortFn() {
+ console.log(this.ruleForm.svyTemplateLibScripts, "搴忓墠鍊�");
+ this.ruleForm.svyTemplateLibScripts.forEach((item, index) => {
+ item.sort = Number(index) + 1;
+ console.log(this.ruleForm.svyTemplateLibScripts.length, "length");
+
+ if (item.sort == this.ruleForm.svyTemplateLibScripts.length) {
+ item.nextScriptno = "宸叉槸鏈�鍚庝竴棰�";
+ } else {
+ item.nextScriptno = item.sort + 1;
+ }
+ if (item.svyLibTemplateTargetoptions) {
+ item.svyLibTemplateTargetoptions.forEach((items) => {
+ items.nextQuestion = Number(item.sort) + 1;
+ });
+ }
+ });
+ console.log(this.ruleForm.svyTemplateLibScripts);
+ },
+
// 淇敼棰樼洰淇℃伅
Submittopicobj() {},
// 鏂板鍙橀噺
@@ -753,13 +1175,9 @@
console.log("鏈壘鍒拌瀵硅薄");
}
},
- // 鎺у埗鏂囦欢
- handleChange(file, fileList) {
- this.fileList = fileList.slice(-3);
- },
+
// 鏍囩-----------------
- /** 鏌ヨ鏍囩鍒楄〃 */
- gettabList() {
+ gettabList() {
const tagqueryParams = {
pageNum: 1,
pageSize: 1000,
@@ -770,30 +1188,208 @@
this.optionstag = response.rows;
});
},
- handleClose(tag) {
+ 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.svyLibTemplateTagList[lindex].delFlag = 1;
+
+ // this.ruleForm.ivrLibaTemplateTargetList[lindex].isoperation = 3;
},
handleInputConfirm() {
- let inputValue = this.inputValue;
- if (inputValue) {
- this.dynamicTags.push(inputValue);
+ 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.svyLibTemplateTagList.push(tagvalue);
+ // this.dynamicTags.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;
- // 鑷姩鑾峰彇鐒︾偣
- // this.$nextTick((_) => {
- // this.$refs.saveTagInput.$refs.input.focus();
- // });
+ },
+ // 淇濆瓨鐤剧梾
+ confirmillness(guid) {
+ this.illnesslist.forEach((item, index) => {
+ if (guid) {
+ item.outid = guid;
+ } else {
+ console.log(this.ruleForm);
+ item.outid = this.ruleForm.svyid;
+ }
+ item.icd10name = item.icdname;
+ item.icd10code = item.icdcode;
+ item.type = 5;
+ if (!item.id) {
+ addtargetillness(item).then((res) => {});
+ }
+ });
+ this.illnessVisible = false;
+ this.$modal.msgSuccess("缂栬緫鎴愬姛");
},
// --------------------------
- // 鏌ヨ棰樺簱
- handleQuery() {},
- resetQuery() {},
+ resetQuery() {
+ this.queryParams = { pageNum: 1, pageSize: 10 };
+ this.getaddtopiclist();
+ },
resetForm(formName) {
this.$refs[formName].resetFields();
+ },
+ // 闂嵎鍒嗘暟闄愬埗绠楁硶
+ // 娣峰悎璺嚎
+ generateCombinations(arrays, currentIndex = 0, currentCombination = []) {
+ if (currentIndex === arrays.length) {
+ return [currentCombination];
+ }
+
+ const currentArray = arrays[currentIndex];
+ const newCombinations = [];
+
+ for (const item of currentArray) {
+ const newCombination = [...currentCombination, item];
+ const combinations = this.generateCombinations(
+ arrays,
+ currentIndex + 1,
+ newCombination
+ );
+ newCombinations.push(...combinations);
+ }
+ return newCombinations;
+ },
+ // 鎵ц
+ test() {
+ const arrays = [
+ ["2", "3", "4", "5"],
+ ["1", "2", "5", "6"],
+ ["3", "4", "5", "3"],
+ ["3", "2", "5", "7"],
+ ];
+ const arraysa = [
+ {
+ id: 1,
+ grade: "5",
+ arr: [
+ { name: "涓嶉敊", skip: 2 },
+ { name: "涓�鑸�", skip: 2 },
+ { name: "杩樹笉閿�", skip: 2 },
+ { name: "寰堟", skip: 3 },
+ ],
+ },
+
+ {
+ id: 2,
+ grade: "5",
+ arr: [
+ { name: "浼樼", skip: 3 },
+ { name: "鑹ソ", skip: 3 },
+ { name: "涓�鑸�", skip: 3 },
+ { name: "杈冨樊", skip: 4 },
+ ],
+ },
+ {
+ id: 3,
+ grade: "5",
+ arr: [
+ { name: "鏄殑", skip: 4 },
+ { name: "涓嶆竻妤�", skip: 4 },
+ { name: "杩樺彲", skip: 4 },
+ { name: "涓�鑸�", skip: 4 },
+ ],
+ },
+ {
+ id: 4,
+ grade: "5",
+ arr: [
+ { name: "鐪熶笉閿�", skip: null },
+ { name: "杩樺彲浠�", skip: null },
+ { name: "涓�鑸埇", skip: null },
+ { name: "涓嶆竻妤�", skip: null },
+ ],
+ },
+ ];
+
+ // const newMixArray = this.generateCombinations(arrays);
+ const newMixArray = this.getExecutionOrders(arraysa);
+
+ console.log(newMixArray, "鍏ㄩ儴璺嚎");
+ this.screen(newMixArray);
+ },
+ getExecutionOrders(data) {
+ let orders = [];
+
+ const explore = (currentOrder, id) => {
+ console.log(currentOrder, "currentOrder", id);
+ const currentQuestion = data[currentOrder[currentOrder.length - 1]];
+ if (
+ currentQuestion.arr.some(
+ (option) =>
+ option.skip !== null && !currentOrder.includes(option.skip)
+ )
+ ) {
+ currentQuestion.arr.forEach((option) => {
+ if (option.skip !== null && !currentOrder.includes(option.skip)) {
+ explore([...currentOrder, option.skip]);
+ }
+ });
+ } else {
+ orders.push(
+ currentOrder.map((id) => ({
+ id: data[id].id,
+ grade: data[id].grade,
+ }))
+ );
+ }
+ };
+ console.log(data, "data");
+ data.forEach((entry) => {
+ explore([entry.id], entry.id);
+ });
+
+ return orders;
+ },
+
+ // 鏁扮粍姹傚拰
+ sumArray(arr) {
+ return arr.reduce((acc, curr) => acc + parseInt(curr), 0);
+ },
+ // 绛涢�夐敊璇矾绾�
+ screen(data) {
+ const arraysGreaterThan10 = data.filter((arr) => this.sumArray(arr) > 21);
+
+ console.log(arraysGreaterThan10, "绛涢�夐敊璇矾绾垮ぇ浜�13鍒�");
},
},
};
@@ -801,29 +1397,25 @@
<style lang="scss" scoped>
.Questionnairemanagement {
- display: flex;
+ // display: flex;
}
.sidecolumn {
- width: 300px;
- min-height: 100vh;
- text-align: center;
- // display: flex;
- // margin-top: 20px;
- margin: 20px;
- margin-bottom: 0;
- padding: 30px;
+ margin: 10px 20px 0 20px;
+ padding: 20px;
background: #edf1f7;
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);
}
.leftvlue {
- // display: flex;
- // flex: 1;
- width: 80%;
- margin-top: 20px;
- // margin: 20px;
+ // // display: flex;
+ // // flex: 1;
+ // width: 80%;
+ // margin-top: 20px;
+ margin: 20px;
padding: 30px;
+ padding-top: 5px;
+ margin-top: 10px;
background: #ffff;
border: 1px solid #dcdfe6;
-webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
@@ -833,9 +1425,9 @@
}
.leftvlue-jbxx {
font-size: 24px;
- border-left: 5px solid #41a1be;
- padding-left: 5px;
- margin: 15px 0;
+ border-left: 5px solid #41a1be;
+ padding-left: 5px;
+ margin: 15px 0;
}
.demo-cascader {
margin-right: 20px;
@@ -855,7 +1447,7 @@
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 {
@@ -887,6 +1479,14 @@
vertical-align: bottom;
}
}
+.xinz-infs {
+ font-size: 18px;
+ line-height: 48px;
+
+ .el-tag + .el-tag {
+ margin-left: 10px;
+ }
+}
.addtopic {
margin-top: 30px;
}
@@ -894,7 +1494,17 @@
margin: 20px 0;
display: flex;
.presentation-left {
- width: 50%;
+ width: 45%;
+ // height: 500px;
+ .button-textxg {
+ color: #024df0;
+ }
+ .button-textsc {
+ color: #f52727;
+ }
+ }
+ .spresentation-left {
+ width: 100%;
// height: 500px;
.button-textxg {
color: #024df0;
@@ -904,7 +1514,7 @@
}
}
.presentation-right {
- width: 50%;
+ width: 55%;
max-height: 688px;
padding: 0 20px;
font-size: 18px;
@@ -923,6 +1533,16 @@
padding-top: 15px;
}
}
+}
+.custom-width {
+ width: 100px; /* 璁剧疆瀹藉害鏍峰紡 */
+}
+.el-select {
+ width: 40%;
+}
+
+.el-cascader {
+ width: 40%;
}
::v-deep .addtopic-input {
input {
@@ -950,7 +1570,7 @@
width: 22px;
height: 22px;
}
-// ::v-deep.topic-dev.el-radio__label {
+// ::v-deep.scriptTopic-dev.el-radio__label {
// font-size: 24px;
// }
::v-deep.el-radio-group {
--
Gitblit v1.9.3