From 2c4c416bf7950c72ffa2543a218e4fd993ee2af2 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期四, 12 九月 2024 12:04:32 +0800
Subject: [PATCH] 测试完成
---
src/views/knowledge/questionnaire/compilequer/index.vue | 267 +++++++++++++++++++++++++++++++++++++----------------
1 files changed, 186 insertions(+), 81 deletions(-)
diff --git a/src/views/knowledge/questionnaire/compilequer/index.vue b/src/views/knowledge/questionnaire/compilequer/index.vue
index 85d3a9c..4c9e463 100644
--- a/src/views/knowledge/questionnaire/compilequer/index.vue
+++ b/src/views/knowledge/questionnaire/compilequer/index.vue
@@ -41,7 +41,7 @@
>
<el-row :gutter="10">
<el-col :span="10">
- <el-form-item label="闂嵎鍒嗙被" prop="region">
+ <el-form-item label="闂嵎鍒嗙被" prop="categoryid">
<el-select
v-model="ruleForm.categoryid"
size="medium"
@@ -65,7 +65,7 @@
</el-form-item>
</el-col>
<el-col :span="10">
- <el-form-item label="璇勪环绫诲瀷">
+ <el-form-item label="璇勪环绫诲瀷" prop="scoreType">
<el-select
v-model="ruleForm.scoreType"
placeholder="璇烽�夋嫨鍒嗙被"
@@ -81,15 +81,37 @@
</el-form-item>
</el-col>
</el-row>
- <el-form-item label="闂嵎鏍囬" prop="name">
- <div style="width: 30%">
+ <el-row :gutter="20">
+ <el-col :span="10">
+ <el-form-item label="鍙敤鐘舵��" prop="isAvailable">
+ <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-col :span="8">
+ <el-form-item label="鐗堟湰鍙�" prop="name">
+ <el-input
+ v-model="ruleForm.version"
+ placeholder="榛樿1.0"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-form-item label="闂嵎鏍囬" prop="svyname">
+ <div style="width: 55vw">
<el-input v-model="ruleForm.svyname"></el-input>
</div>
</el-form-item>
- <el-form-item label="闂嵎鎻忚堪">
+ <el-form-item label="闂嵎鎻忚堪" prop="description">
<el-input
- style="width: 40vw"
+ style="width: 55vw"
type="textarea"
+ :rows="5"
autosize
placeholder="璇疯緭鍏ュ唴瀹�"
v-model="ruleForm.description"
@@ -98,7 +120,19 @@
></el-form-item>
<el-row>
- <el-form-item label="鏍囩" prop="desc">
+ <el-form-item prop="dynamicTags">
+ <template #label>
+ 鏍囩
+ <el-tooltip
+ class="item"
+ effect="light"
+ content="鍑嗙‘銆佹壖瑕併�佸閲嶇殑鏍囩锛屽彲浠ヨ鎮ㄥ湪绯荤粺浣跨敤涓柟渚跨殑鏌ユ壘鍒拌妯$増銆�"
+ placement="top-start"
+ >
+ <i class="el-icon-warning-outline"></i>
+ </el-tooltip>
+ <!-- 鍦ㄦ爣绛惧悗鎻掑叆绾㈣壊鏄熷彿 -->
+ </template>
<div class="xinz-inf">
<el-tag
:key="tag.tagname"
@@ -142,7 +176,25 @@
</el-form-item>
</el-row>
<div class="xinz-infs">
- <el-form-item label="閫傜敤鐤剧梾" prop="region">
+ <el-form-item>
+ <template #label>
+ 閫傜敤鐤剧梾
+ <el-tooltip
+ class="item"
+ effect="light"
+ content="閫夋嫨濂介�傜敤鐤剧梾鍚庯紝鍙互鏂逛究鎮ㄩ�氳繃鐤剧梾璇婃柇鏌ユ壘鍒板搴旂殑鐥呬汉!"
+ placement="top-start"
+ >
+ <i class="el-icon-warning-outline"></i>
+ </el-tooltip>
+ </template>
+ <div style="margin-bottom: 10px">
+ <el-button
+ type="warning"
+ @click="$refs.child.handleAddpatient()"
+ >娣诲姞鐤剧梾璇婃柇</el-button
+ >
+ </div>
<el-tag
v-for="tag in displayedTags"
:key="tag.icdid"
@@ -154,34 +206,11 @@
<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-form-item label="闂嵎鏂瑰紡" prop="suitway">
<el-select
v-model="ruleForm.suitway"
+ style="width: 55vw"
size="medium"
multiple
filterable
@@ -198,37 +227,39 @@
</el-select>
</el-form-item>
- <el-form-item label="閫傜敤闄㈠尯" prop="region">
- <el-select
- v-model="ruleForm.campus"
- size="medium"
- filterable
- placeholder="璇烽�夋嫨鍒嗙被"
+ <el-row>
+ <el-col :span="20"
+ ><el-form-item label="閫傜敤绉戝" prop="region">
+ <el-cascader
+ style="width: 55vw"
+ 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-col
>
- <el-option
- class="ruleFormaa"
- v-for="item in courtyardlist"
- :key="item.label"
- :label="item.label"
- :value="item.label"
- >
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="閫傜敤绉戝" prop="region">
- <el-cascader
- v-model="tempDetpRelevanceslist"
- :options="deptList"
- :props="props"
- :show-all-levels="false"
- clearable
+ </el-row>
+ <el-form-item label="闂嵎缁撴潫璇�" prop="conclusion">
+ <el-input
+ style="width: 55vw; line-height: 80px"
+ type="textarea"
+ :rows="5"
+ autosize
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="ruleForm.conclusion"
>
- <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-input
+ ></el-form-item>
+
<el-form-item>
<el-button type="success" @click="nextstep('ruleForm')"
>涓嬩竴姝�</el-button
@@ -272,7 +303,7 @@
>{{ !Operateit ? "缂栬緫棰樼洰" : "瀹屾暣淇℃伅灞曠ず" }}</el-button
>
</div>
- <div style="display: flex">
+ <div style="display: flex" v-if="ruleForm.scoreType==1">
<span
style="
width: 180px;
@@ -497,6 +528,16 @@
<el-radio :label="0">鍚�</el-radio>
</el-radio-group>
</el-form-item>
+ <el-form-item label="閫変腑鎻愮ず" v-if="topicobj.scriptType != 1">
+ <el-input
+ style="width: 24vw"
+ type="textarea"
+ autosize
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="topicobj.prompt"
+ >
+ </el-input
+ ></el-form-item>
<div
v-if="topicobj.scriptType == 1 || topicobj.scriptType == 2"
>
@@ -565,10 +606,10 @@
</el-input> </el-form-item
></el-col>
</el-row>
- <el-row :gutter="10">
+ <el-row :gutter="10" v-if="topicobj.scriptType == 1">
<el-form-item label="閫変腑鎻愮ず">
<el-input
- style="width: 20vw"
+ style="width: 24vw"
type="textarea"
autosize
placeholder="璇疯緭鍏ュ唴瀹�"
@@ -695,7 +736,7 @@
<div
class="scriptTopic-dev"
:key="item.sort"
- v-if="item.scriptType == 3"
+ v-if="item.scriptType == 4"
>
<div class="dev-text">
{{ item.sort }}銆乕濉┖]<span>{{ item.scriptContent }}</span>
@@ -1069,7 +1110,7 @@
</el-radio-group>
</el-form-item>
</el-row>
- <el-row :gutter="10">
+ <el-row :gutter="10" v-if="item.scriptType == 1">
<el-form-item label="閫変腑鎻愮ず">
<el-input
style="width: 400px"
@@ -1149,7 +1190,7 @@
import { getToken } from "@/utils/auth";
export default {
- name: "Qcompilequer",
+ name: "Questionnaireinfo",
components: { OptionalForm },
@@ -1179,11 +1220,42 @@
svyTemplateLibScripts: [],
tempDetpRelevances: [],
svyLibTemplateTagList: [],
+ scoreType: "4",
+ isAvailable: "0",
},
indexform: {
svyLibTemplateTargetoptions: [],
},
- rules: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ categoryid: [
+ { required: true, message: "闂嵎鍒嗙被涓嶈兘涓虹┖", trigger: "blur" },
+ ],
+ scoreType: [
+ { required: true, message: "璇勪环绫诲瀷涓嶈兘涓虹┖", trigger: "blur" },
+ ],
+ svyname: [
+ { required: true, message: "闂嵎鏍囬涓嶈兘涓虹┖", trigger: "blur" },
+ ],
+ isAvailable: [
+ { required: true, message: "鍙敤鐘舵�佷笉鑳戒负绌�", trigger: "blur" },
+ ],
+ scriptTopic: [
+ { required: true, message: "棰樼洰鏍囬涓嶈兘涓虹┖", trigger: "blur" },
+ ],
+ ismandatory: [
+ { required: true, message: "鏄惁蹇呭~涓嶈兘涓虹┖", trigger: "blur" },
+ ],
+ scriptType: [
+ { required: true, message: "棰樼洰绫诲瀷涓嶈兘涓虹┖", trigger: "blur" },
+ ],
+ suitway: [
+ { required: true, message: "闂嵎鏂瑰紡涓嶈兘涓虹┖", trigger: "blur" },
+ ],
+ conclusion: [
+ { required: true, message: "闂嵎缁撴潫璇笉鑳戒负绌�", trigger: "blur" },
+ ],
+ },
rulesa: {},
optionsclass: [], //鍒嗙被鍒楄〃
optionlist: [
@@ -1276,10 +1348,29 @@
],
};
},
+ activated() {
+ console.log(this.id);
+ if (this.id != this.$route.query.id) {
+ this.getissueinfo();
+ this.gettabList();
+ } else {
+ this.ruleForm.svyTemplateLibScripts =
+ this.ruleForm.svyTemplateLibScripts.filter(
+ (item) => item.isoperation != 3
+ );
+ this.ruleForm.svyLibTemplateTagList =
+ this.ruleForm.svyLibTemplateTagList.filter(
+ (item) => item.isoperation != 3
+ );
+ this.delScriptVOList = [];
+ this.$forceUpdate();
+ console.log(this.ruleForm.svyTemplateLibScripts);
+ }
+ },
created() {
- this.gettabList();
this.getissueinfo();
+ this.gettabList();
this.mode = store.getters.Askmode;
this.languagelist = store.getters.languagelist;
this.usable = store.getters.usable;
@@ -1332,6 +1423,15 @@
// 鑾峰彇鏁版嵁
getissueinfo() {
this.id = this.$route.query.id;
+ (this.ruleForm = {
+ svyTemplateLibScripts: [],
+ tempDetpRelevances: [],
+ svyLibTemplateTagList: [],
+ scoreType: "4",
+ isAvailable: "0",
+ }),
+ (this.topicobj = {});
+
if (this.id) {
getQtemplateobj({ svyid: this.id }).then((res) => {
this.ruleForm = res.rows[0];
@@ -1360,9 +1460,13 @@
});
},
submitForm(formName) {
- this.$modal.loading("姝e湪涓婁紶鏁版嵁锛岃绋嶅��...");
- this.ruleForm.suitway = this.ruleForm.suitway.join(",");
-
+ this.$modal.loading("姝e湪淇淇濆瓨鏁版嵁锛岃绋嶅��...");
+ if (Array.isArray(this.ruleForm.suitway)) {
+ this.ruleForm.suitway = this.ruleForm.suitway.join(",");
+ }
+ if (!this.ruleForm.categoryid) {
+ this.ruleForm.categoryid = -1;
+ }
if (this.id) {
this.ruleForm.isoperation = 2;
compileQtemplate(this.ruleForm).then((res) => {
@@ -1458,7 +1562,6 @@
// 鏂板棰樼洰
addtopic(row) {
row.isoperation = 1;
- console.log(row, "row");
row.svyLibScriptOptions.forEach((item) => {
item.isoperation = 1;
});
@@ -1477,7 +1580,6 @@
handleUpdate(row) {
this.topicobj = row;
this.radioas = "";
- console.log(this.topicobj, "鐪嬫暟鎹�");
// getissuelist({ svyid: row.svyid }).then((res) => {
// });
},
@@ -1532,7 +1634,7 @@
this.drawer = false;
this.sortFn();
- this.$modal.msgSuccess("棰樼洰鏂板鎴愬姛锛屼繚瀛樻ā鐗堝け鏁�");
+ this.$modal.msgSuccess("棰樼洰鏂板鎴愬姛锛屼繚瀛樻ā鏉垮け鏁�");
});
},
// 鏂板鍙橀噺
@@ -1786,7 +1888,7 @@
sumArray(arr) {
// const arrsum = arr;
// arrsum.forEach((item) => {
- // // 鍒ゆ柇棰樼洰鍜屾ā鐗堝眰绾�
+ // // 鍒ゆ柇棰樼洰鍜屾ā鏉垮眰绾�
// console.log(item, "涓�鏉¢摼璺�");
// const totalScore = item.reduce((accumulator, current) => {
@@ -1803,14 +1905,17 @@
const allGreaterThanTen = arr.every((array) => {
const totalScore = array.reduce((accumulator, current) => {
- return accumulator + current.score;
+ return accumulator + Number(current.score);
}, 0);
+ console.log(totalScore);
+ console.log(this.ruleForm.scriptScore);
+
return totalScore == this.ruleForm.scriptScore;
});
if (allGreaterThanTen) {
- this.$modal.msgSuccess("棰樼洰鍒嗗�肩疮鍔犲拰妯$増鎬诲垎鐩哥");
+ this.$modal.msgSuccess("鍒嗗�兼牎楠屾垚鍔�");
} else {
- this.$modal.msgError("棰樼洰鍒嗗�肩疮鍔犲拰妯$増鍒嗗�间笉绗�");
+ this.$modal.msgError("棰樼洰鍒嗗�肩疮鍔犲拰妯℃澘鍒嗗�间笉绗�");
}
},
--
Gitblit v1.9.3