From 76c30727c77065c808b1c0fb3146080e423e5fe6 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期四, 27 六月 2024 09:45:30 +0800
Subject: [PATCH] 测试完成
---
src/views/knowledge/questionbank/particulars/index.vue | 241 +++++++++++++++++++++++++++++++++++++----------
1 files changed, 187 insertions(+), 54 deletions(-)
diff --git a/src/views/knowledge/questionbank/particulars/index.vue b/src/views/knowledge/questionbank/particulars/index.vue
index 71d52f4..3a09165 100644
--- a/src/views/knowledge/questionbank/particulars/index.vue
+++ b/src/views/knowledge/questionbank/particulars/index.vue
@@ -6,9 +6,9 @@
<div class="headline">
棰樼洰璁剧疆璇︽儏
<span style="margin-left: 30px"
- ><el-button type="primary" @click="compileissue"
+ ><el-button type="primary" @click="Saveproblem"
>淇� 瀛�</el-button
- ></span
+ > </span
><span style="margin-left: 30px"
><el-button type="success" round @click="drawer = true"
>+閫夋嫨鎸囨爣</el-button
@@ -17,7 +17,7 @@
</div>
<div style="margin-left: 8%">
<el-row :gutter="10">
- <el-col :span="10">
+ <el-col :span="8">
<el-form-item label="闂鍒嗙被">
<el-select
v-model="topicobj.categoryid"
@@ -31,7 +31,7 @@
:label="group.name"
>
<el-option
- v-for="item in group.svyLibTopicCategoryList"
+ v-for="item in group.svyLibScriptCategoryList"
:key="item.id"
:label="item.name"
:value="item.id"
@@ -41,10 +41,10 @@
</el-select>
</el-form-item>
</el-col>
- <el-col :span="10">
+ <el-col :span="8">
<el-form-item label="璇勪环绫诲瀷">
<el-select
- v-model="topicobj.evaluateid"
+ v-model="topicobj.scoretype"
placeholder="璇烽�夋嫨鍒嗙被"
>
<el-option
@@ -57,17 +57,25 @@
</el-select>
</el-form-item>
</el-col>
+ <el-col :span="8" v-if="topicobj.scoretype == 1">
+ <el-form-item label="棰樼洰寰楀垎">
+ <el-input
+ v-model="topicobj.score"
+ placeholder="璇疯緭鍏ュ垎鏁�"
+ ></el-input>
+ </el-form-item>
+ </el-col>
</el-row>
<el-row :gutter="10">
- <el-col :span="6"
+ <el-col :span="8"
><el-form-item label="棰樼洰鏍囬">
<el-input
v-model="topicobj.topic"
placeholder="璇疯緭鍏ユ爣棰�"
></el-input> </el-form-item
></el-col>
- <el-col :span="6"
+ <el-col :span="8"
><el-form-item label="鏄惁鍙敤">
<el-select
v-model="topicobj.isavailable"
@@ -105,7 +113,7 @@
></el-col>
</el-row>
<el-row :gutter="10">
- <el-col :span="6"
+ <el-col :span="8"
><el-form-item label="鏄惁蹇呭~">
<el-select
v-model="topicobj.ismandatory"
@@ -123,10 +131,10 @@
</el-option>
</el-select> </el-form-item
></el-col>
- <el-col :span="6"
+ <el-col :span="8"
><el-form-item label="棰樼洰绫诲瀷">
<el-select
- v-model="topicobj.valueType"
+ v-model="topicobj.scripttype"
size="medium"
filterable
placeholder="璇烽�夋嫨鍒嗙被"
@@ -144,9 +152,10 @@
<el-col :span="8"
><el-form-item label="閫傜敤鏂瑰紡">
<el-select
- v-model="topicobj.suitway"
+ v-model="suitwaylist"
size="medium"
filterable
+ multiple
placeholder="璇烽�夋嫨鍒嗙被"
>
<el-option
@@ -163,10 +172,18 @@
<el-input
style="width: 40vw"
type="textarea"
- id="topicContent"
- v-model="topicobj.topicContent"
- @focus="handleInput('topicContent')"
- placeholder="璇疯緭鍏ユ爣棰�"
+ id="script"
+ v-model="topicobj.script"
+ @focus="handleInput('script')"
+ placeholder="璇疯緭鍏ラ鐩唴瀹�"
+ ></el-input>
+ </el-form-item>
+ <el-form-item label="棰樼洰璇存槑">
+ <el-input
+ style="width: 40vw"
+ type="textarea"
+ v-model="topicobj.scriptContent"
+ placeholder="璇疯緭鍏ヨ鏄�"
></el-input>
</el-form-item>
@@ -315,7 +332,7 @@
</div>
<div
class="topicxq"
- v-for="item in topicobj.svyLibTopicoptions"
+ v-for="item in topicobj.svyLibScriptOptions"
v-if="item.isoperation != 3"
>
<el-row :gutter="10">
@@ -329,16 +346,37 @@
>
</el-input> </el-form-item
></el-col>
- <el-col :span="11"
- ><el-form-item label="鍒嗗��">
+ <el-col :span="11">
+ <el-form-item v-if="topicobj.scoretype == 1" label="鍒嗗��">
<el-input
type="text"
- placeholder="璇疯緭鍏�"
+ placeholder="璇疯緭鍏ラ�夐」鍒嗗��"
v-model="item.score"
show-word-limit
>
- </el-input> </el-form-item
- ></el-col>
+ </el-input>
+ </el-form-item>
+ <el-form-item
+ v-else-if="topicobj.scoretype == 2"
+ label="ABC绛夌骇"
+ >
+ <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-col :span="2">
<el-button
type="danger"
@@ -370,7 +408,7 @@
title="娣诲姞閫夐」"
:visible.sync="drawer"
custom-class="demo-drawer"
- width="66%"
+ size="50%"
>
<div class="preview-left">
<el-form
@@ -471,7 +509,7 @@
data() {
return {
topicobj: {
- svyLibTopicoptions: [],
+ svyLibScriptOptions: [],
},
inputVisible: false,
inputValue: "",
@@ -480,6 +518,7 @@
drawer: false,
loading: false,
id: [],
+ suitwaylist: [],
targetList: [],
dynamicTags: [],
optionsclass: [],
@@ -514,9 +553,9 @@
illnesslist: [],
classifylist: [],
appraiselist: [
- { label: "鍒嗘暟", value: 1 },
- { label: "ABC绛夌骇", value: 2 },
- { label: "浼樿壇绛夌骇", value: 3 },
+ { label: "鍒嗘暟", value: "1" },
+ { label: "ABC绛夌骇", value: "2" },
+ { label: "浼樿壇绛夌骇", value: "3" },
],
optionstag: [],
valuetype: [],
@@ -563,13 +602,15 @@
// 鍒嗙被
getissueclassify({}).then((res) => {
this.classifylist = res.rows;
+ console.log(this.classifylist, "鍒嗙被");
});
if (!this.id) {
return;
}
- getissuelist({ topicid: this.id }).then((res) => {
+ getissuelist({ id: this.id }).then((res) => {
this.topicobj = res.rows[0];
this.dynamicTags = this.topicobj.tag.split(",");
+ this.suitwaylist = this.topicobj.suitway.split(",");
this.variablelist = JSON.parse(this.topicobj.otherdata)
? JSON.parse(this.topicobj.otherdata)
: this.variablelist;
@@ -592,7 +633,7 @@
},
// 鏂板鎴栦慨鏀硅鎯�
compileissue() {
- this.topicobj.svyLibTopicoptions = this.topicobj.svyLibTopicoptions.map(
+ this.topicobj.svyLibScriptOptions = this.topicobj.svyLibScriptOptions.map(
(item) => {
if (item.isoperation != 1 && item.isoperation != 3) {
item.isoperation = 2;
@@ -602,6 +643,7 @@
);
this.topicobj.otherdata = JSON.stringify(this.variablelist);
this.topicobj.tag = this.dynamicTags.join(",");
+ this.topicobj.suitway = this.suitwaylist.join(",");
if (this.id) {
this.topicobj.isoperation = 2;
compileissue(this.topicobj).then((res) => {
@@ -644,18 +686,66 @@
deltargetillness(this.illnesslistapi.join(",")).then((res) => {});
}
},
+ // 鍒ゆ柇鍒嗗��
+ Scorejudgment() {
+ let scorearr = this.topicobj.svyLibScriptOptions;
+ let isValid = scorearr.every((score) => {
+ if (score.score) {
+ console.log(Number(score.score), this.topicobj.score, "鍒嗗��");
+ if (
+ Number(score.score) <= 0 ||
+ Number(score.score) > Number(this.topicobj.score)
+ ) {
+ console.log(22);
+ this.$message({
+ message: "閫夐」鍒嗗�煎繀椤诲ぇ浜�0灏忎簬绛変簬" + this.topicobj.score + "鍒�",
+ type: "warning",
+ });
+ return false;
+ }
+ return true;
+ } else {
+ this.$message({
+ message: "閫夐」鍒嗗�兼湭璁剧疆",
+ type: "warning",
+ });
+ return false;
+ }
+ });
+
+ if (isValid) {
+ this.compileissue();
+ // console.log("鍒颁繚瀛樹簡");
+ }
+ },
+ Saveproblem() {
+ if (this.topicobj.scoretype == 1) {
+ console.log(321);
+ this.Scorejudgment();
+ } else {
+ this.compileissue();
+ }
+ },
+ // 鍒犻櫎鏍囩
+ handleClose(tag) {
+ this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
+ },
// 鍒犻櫎閫夐」
deletexuanx(row) {
- const index = this.getIndexInArray(this.topicobj.svyLibTopicoptions, row);
- if (this.topicobj.svyLibTopicoptions[index].topicid) {
- this.topicobj.svyLibTopicoptions[index].isoperation = 3;
+ const index = this.getIndexInArray(
+ this.topicobj.svyLibScriptOptions,
+ row
+ );
+ if (this.topicobj.svyLibScriptOptions[index].id) {
+ this.topicobj.svyLibScriptOptions[index].isoperation = 3;
} else {
- this.topicobj.svyLibTopicoptions.splice(index, 1);
+ this.topicobj.svyLibScriptOptions.splice(index, 1);
}
},
// 鏂板閫夐」
addoption() {
- this.topicobj.svyLibTopicoptions.push({
+ console.log(this.topicobj, "obj");
+ this.topicobj.svyLibScriptOptions.push({
score: "",
isoperation: 1,
});
@@ -671,13 +761,13 @@
console.log(this.topicobj);
this.topicobj.topic = row.targetname;
this.topicobj.valueType = row.valueType;
- this.topicobj.topicContent = row.targetdesc;
+ this.topicobj.scriptContent = row.targetdesc;
this.topicobj.isavailable = "0";
this.topicobj.language = "鏅�氳瘽";
- this.topicobj.svyLibTopicoptions = [];
+ this.topicobj.svyLibScriptOptions = [];
const labellist = row.targetoptionList;
labellist.forEach((item) => {
- this.topicobj.svyLibTopicoptions.push({
+ this.topicobj.svyLibScriptOptions.push({
optioncontent: item.targetvalue,
isoperation: 1,
});
@@ -787,27 +877,27 @@
this.inputVisibleillness = false;
this.inputValueillness = "";
},
- // 淇濆瓨
- confirmillness() {
- this.illnesslist.forEach((item, index) => {
- if (!item.id) {
- addtargetillness(item).then((res) => {});
- }
- });
- if (this.illnesslistapi.length) {
- deltargetillness(this.illnesslistapi.join(",")).then((res) => {});
- }
- this.illnessVisible = false;
- this.$modal.msgSuccess("缂栬緫鎴愬姛");
- },
+ // // 淇濆瓨
+ // confirmillness() {
+ // this.illnesslist.forEach((item, index) => {
+ // if (!item.id) {
+ // addtargetillness(item).then((res) => {});
+ // }
+ // });
+ // if (this.illnesslistapi.length) {
+ // deltargetillness(this.illnesslistapi.join(",")).then((res) => {});
+ // }
+ // this.illnessVisible = false;
+ // this.$modal.msgSuccess("缂栬緫鎴愬姛");
+ // },
resetQuery() {},
// 渚挎嵎鏍囩
tsgnameto(row) {
let inputValueArr = "";
let el = document.querySelector("#" + this.currentInputId);
//el.selectionStart; 杩欏氨鏄綋鍓嶅厜鏍囨墍鍦ㄧ殑浣嶇疆锛堝瓧绗︿覆涓瓧绗︾殑index锛�
- if (this.currentInputId == "topicContent") {
- inputValueArr = this.topicobj.topicContent.split("");
+ if (this.currentInputId == "script") {
+ inputValueArr = this.topicobj.script.split("");
console.log(123);
} else if (this.currentInputId == "nomatchtext") {
inputValueArr = this.topicobj.nomatchtext.split("");
@@ -829,8 +919,8 @@
// 鎶婃暟缁勯噸鏂拌浆鎹负瀛楃涓插苟璧嬪��
inputValueArr = inputValueArr.join("");
console.log(inputValueArr);
- if (this.currentInputId == "topicContent") {
- this.topicobj.topicContent = inputValueArr;
+ if (this.currentInputId == "script") {
+ this.topicobj.script = inputValueArr;
} else if (this.currentInputId == "nomatchtext") {
this.topicobj.nomatchtext = inputValueArr;
} else if (this.currentInputId == "sliencetext") {
@@ -866,6 +956,49 @@
console.log("杈撳叆妗嗙殑鍊煎凡鏇存柊:", this.currentInputId);
// 鍦ㄨ繖閲屾墽琛屾洿鏂版暟鎹殑閫昏緫
},
+ // 娣峰悎璺嚎
+ 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 newMixArray = this.generateCombinations(arrays);
+ console.log(newMixArray, "鍏ㄩ儴璺嚎");
+ this.screen(newMixArray);
+ },
+ // 鏁扮粍姹傚拰
+ 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鍒�");
+ },
},
};
</script>
--
Gitblit v1.9.3