From 41b1f5280255ac539e40d4cd794532ae1829ce17 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期四, 01 八月 2024 18:25:36 +0800
Subject: [PATCH] 测试完成
---
src/views/knowledge/questionbank/particulars/index.vue | 230 ++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 170 insertions(+), 60 deletions(-)
diff --git a/src/views/knowledge/questionbank/particulars/index.vue b/src/views/knowledge/questionbank/particulars/index.vue
index 4f19bb6..ac445b6 100644
--- a/src/views/knowledge/questionbank/particulars/index.vue
+++ b/src/views/knowledge/questionbank/particulars/index.vue
@@ -5,15 +5,12 @@
<el-form :inline="true" :model="topicobj" class="demo-form-inline">
<div class="headline">
棰樼洰璁剧疆璇︽儏
- <span style="margin-left: 30px"
- ><el-button type="primary" @click="Saveproblem"
- >淇� 瀛�</el-button
- > </span
- ><span style="margin-left: 30px"
- ><el-button type="success" round @click="drawer = true"
- >+閫夋嫨鎸囨爣</el-button
- ></span
- >
+ <span style="float: right; margin-right: 30px"
+ ><el-button type="success" @click="Saveproblem">棰勮</el-button>
+ </span>
+ <span style="float: right; margin-right: 30px"
+ ><el-button type="primary" @click="Saveproblem">淇� 瀛�</el-button>
+ </span>
</div>
<div style="margin-left: 8%">
<el-row :gutter="10">
@@ -94,7 +91,7 @@
</el-select> </el-form-item
></el-col>
<el-col :span="8"
- ><el-form-item label="璇█(缂�)">
+ ><el-form-item label="璇█">
<el-select
v-model="topicobj.language"
size="medium"
@@ -152,11 +149,9 @@
<el-col :span="8"
><el-form-item label="閫傜敤鏂瑰紡">
<el-select
- v-model="suitwaylist"
- size="medium"
- filterable
- multiple
- placeholder="璇烽�夋嫨鍒嗙被"
+ v-model="topicobj.suitway"
+ disabled
+ placeholder="璇烽�夋嫨"
>
<el-option
class="topicobjaa"
@@ -193,16 +188,20 @@
class="upload-demo"
:action="uploadImgUrl"
:headers="headers"
- :accept="'image/*,video/*'"
- :on-change="handleChangetg"
+ accept=".jpg,.png,image/*"
+ :on-success="handleChangetg"
>
<el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button>
+ <div slot="tip" class="el-upload__tip">
+ 鍙兘涓婁紶jpg/png绫诲瀷鏂囦欢
+ </div>
</el-upload>
+
<div style="margin: 20px">
<el-image
style="width: 100px; height: 100px"
- :src="url"
- :preview-src-list="[...url]"
+ :src="topicobj.picturePath"
+ :preview-src-list="[...topicobj.picturePath]"
>
</el-image>
</div>
@@ -213,14 +212,14 @@
<el-form-item label="鏍囩" prop="desc">
<div class="xinz-inf">
<el-tag
- :key="tag"
+ :key="tag.tagname"
type="success"
v-for="tag in dynamicTags"
closable
:disable-transitions="false"
@close="handleClosetag(tag)"
>
- {{ tag }}
+ {{ tag.tagname }}
</el-tag>
<el-select
v-model="inputValue"
@@ -228,6 +227,7 @@
@change="handleInputConfirm"
filterable
remote
+ allow-create
reserve-keyword
default-first-option
:remote-method="remoteMethodtag"
@@ -252,7 +252,7 @@
</div>
</el-form-item>
</el-row>
- <el-row>
+ <!-- <el-row>
<el-form-item label="閫傜敤鐤剧梾" prop="region">
<div class="xinz-inf">
<el-tag
@@ -294,9 +294,22 @@
>
</div>
</el-form-item>
- </el-row>
+ </el-row> -->
+ <el-form-item label="閫変腑鎸囨爣锛�">
+ <span style="margin-left: 30px"
+ ><el-tag type="success" effect="dark">{{
+ topicobj.targetname ? topicobj.targetname : "鏈�夋嫨"
+ }}</el-tag></span
+ >
+ <span style="margin-left: 30px"
+ ><el-button type="success" round @click="gettargetInfo"
+ >+閫夋嫨鎸囨爣</el-button
+ ></span
+ >
+ </el-form-item>
</div>
- <div v-if="topicobj.scriptType != 3">
+
+ <div v-if="topicobj.scriptType != 3 && topicobj.scriptType != 4">
<div class="headline">
閫夐」璁剧疆<span style="margin-left: 30px"
><el-button type="primary" round @click="addoption"
@@ -351,7 +364,8 @@
</el-radio-group>
</el-form-item>
</el-col>
- <el-col :span="2">
+
+ <el-col :span="2" :offsset="topicobj.scoretype == 4 ? 11 : 0">
<el-button
type="danger"
icon="el-icon-delete"
@@ -360,7 +374,14 @@
></el-button>
</el-col>
</el-row>
-
+ <el-row :gutter="10">
+ <el-form-item label="棰勮鍊�">
+ <el-radio-group v-model="item.isabnormal">
+ <el-radio :label="1">鏄�</el-radio>
+ <el-radio :label="0">鍚�</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-row>
<el-row :gutter="10">
<el-form-item label="閫変腑鎻愮ず">
<el-input
@@ -379,7 +400,7 @@
class="upload-demo"
:action="uploadImgUrl"
:headers="headers"
- :accept="'image/*,video/*'"
+ accept=".jpg,.png,image/*"
:on-success="handleChange.bind(this, item)"
>
<el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button>
@@ -400,7 +421,7 @@
</el-card>
</div>
<el-drawer
- title="娣诲姞閫夐」"
+ title="閫夋嫨鎸囨爣"
:visible.sync="drawer"
custom-class="demo-drawer"
size="50%"
@@ -413,9 +434,27 @@
:inline="true"
label-width="98px"
>
- <el-form-item label="鏍囬" prop="userName">
+ <el-form-item label="鎸囨爣鍚嶇О" prop="userName">
<el-input
v-model="queryParams.targetname"
+ placeholder="璇疯緭鍏�"
+ clearable
+ style="width: 200px"
+ @keyup.enter.native="gettargetInfo"
+ />
+ </el-form-item>
+ <el-form-item label="鎸囨爣璇存槑" prop="userName">
+ <el-input
+ v-model="queryParams.targetdesc"
+ placeholder="璇疯緭鍏�"
+ clearable
+ style="width: 200px"
+ @keyup.enter.native="gettargetInfo"
+ />
+ </el-form-item>
+ <el-form-item label="鎸囨爣鏍囩" prop="userName">
+ <el-input
+ v-model="queryParams.tagName"
placeholder="璇疯緭鍏�"
clearable
style="width: 200px"
@@ -438,17 +477,53 @@
</el-form>
<el-table v-loading="loading" :data="targetList">
<el-table-column
- label="鏍囬"
+ label="鎸囨爣鍚嶇О"
align="center"
key="targetname"
prop="targetname"
width="100"
/>
<el-table-column
- label="闂鍐呭"
+ label="鎸囨爣璇存槑"
align="center"
key="targetdesc"
prop="targetdesc"
+ width="200"
+ :show-overflow-tooltip="true"
+ />
+ <el-table-column
+ label="璇█"
+ align="center"
+ key="language"
+ prop="language"
+ width="200"
+ :show-overflow-tooltip="true"
+ />
+ <el-table-column
+ label="鏄惁鍙敤"
+ align="center"
+ key="isAvailable"
+ prop="isAvailable"
+ >
+ <template slot-scope="scope">
+ <dict-tag :options="usable" :value="scope.row.isAvailable" />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="闂绫诲瀷"
+ align="center"
+ key="scriptType"
+ prop="scriptType"
+ >
+ <template slot-scope="scope">
+ <dict-tag :options="valuetype" :value="scope.row.scriptType" />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="閫夐」璇存槑"
+ align="center"
+ key="optionDesc"
+ prop="optionDesc"
width="200"
:show-overflow-tooltip="true"
/>
@@ -506,6 +581,8 @@
return {
topicobj: {
svyLibScriptOptions: [],
+ svyLibScriptTagList: [],
+ suitway: "1",
},
headers: {
Authorization: "Bearer " + getToken(),
@@ -561,6 +638,7 @@
{ label: "鍒嗘暟", value: "1" },
{ label: "ABC绛夌骇", value: "2" },
{ label: "浼樿壇绛夌骇", value: "3" },
+ { label: "鏃�", value: "4" },
],
optionstag: [],
valuetype: [],
@@ -572,7 +650,7 @@
created() {
this.gettabList();
this.getissueinfo();
- this.gettargetInfo();
+ // this.gettargetInfo();
this.mode = store.getters.mode;
this.languagelist = store.getters.languagelist;
this.usable = store.getters.usable;
@@ -584,6 +662,9 @@
// 鍏叡鏂规硶---------------
getIndexInArray(arr, obj) {
return arr.indexOf(obj);
+ },
+ processElement(element) {
+ return { ...element, isoperation: 1 };
},
// 閫掑綊鎵佸钩鍖�
flattenArray(arr) {
@@ -614,8 +695,9 @@
}
getissuelist({ id: this.id }).then((res) => {
this.topicobj = res.rows[0];
- this.dynamicTags = this.topicobj.tag.split(",");
- this.suitwaylist = this.topicobj.suitway.split(",");
+ this.dynamicTags = this.topicobj.svyLibScriptTagList.map(
+ this.processElement
+ );
this.variablelist = JSON.parse(this.topicobj.otherdata)
? JSON.parse(this.topicobj.otherdata)
: this.variablelist;
@@ -631,9 +713,18 @@
});
},
gettargetInfo() {
+ if (!this.topicobj.scriptType) {
+ this.$message({
+ message: "璇峰厛閫夋嫨棰樼洰绫诲瀷",
+ type: "error",
+ });
+ return;
+ }
+ this.queryParams.scriptType = this.topicobj.scriptType;
gettargetInfo(this.queryParams).then((res) => {
this.targetList = res.rows;
this.total = res.total;
+ this.drawer = true;
});
},
// 鏂板鎴栦慨鏀硅鎯�
@@ -646,9 +737,11 @@
return item;
}
);
+ this.topicobj.targetoptions = this.topicobj.svyLibScriptOptions
+ .filter((item) => item.isoperation != 3)
+ .map((item) => item.optioncontent)
+ .join(", ");
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) => {
@@ -698,12 +791,12 @@
if (score.score) {
console.log(Number(score.score), this.topicobj.score, "鍒嗗��");
if (
- Number(score.score) <= 0 ||
+ Number(score.score) < 0 ||
Number(score.score) > Number(this.topicobj.score)
) {
console.log(score, "閿欒鍒嗗��");
this.$message({
- message: "閫夐」鍒嗗�煎繀椤诲ぇ浜�0灏忎簬绛変簬" + this.topicobj.score + "鍒�",
+ message: "閫夐」鍒嗗�煎繀椤诲湪0鍒�" + this.topicobj.score + "鍒嗕箣闂�",
type: "warning",
});
return false;
@@ -727,16 +820,12 @@
},
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(
@@ -761,14 +850,17 @@
selectlabel(row) {
this.$modal
.confirm(
- '鏄惁閫夋嫨鏍囬涓�"' + row.targetname + '"鐨勬寚鏍囧苟鏇挎崲濉厖闂淇℃伅锛�'
+ '鏄惁閫夋嫨鏍囬涓�"' +
+ row.targetname +
+ '"鐨勬寚鏍囧苟鏇挎崲濉厖闂鍙婇�夐」淇℃伅锛�'
)
.then(() => {
console.log(row);
- console.log(this.topicobj);
this.topicobj.scriptTopic = row.targetname;
this.topicobj.valueType = row.valueType;
this.topicobj.scriptContent = row.targetdesc;
+ this.topicobj.targetid = row.id;
+ this.topicobj.targetname = row.targetname;
this.topicobj.isavailable = "0";
this.topicobj.language = "鏅�氳瘽";
this.topicobj.svyLibScriptOptions = [];
@@ -792,14 +884,16 @@
tagcategoryid: "0",
};
listtag(tagqueryParams).then((response) => {
- console.log(response);
+ console.log(response, "寰呴�夋爣绛�");
this.optionstag = response.rows;
});
},
handleClosetag(tag) {
console.log(tag);
console.log(this.dynamicTags.indexOf(tag));
+ const lindex = this.dynamicTags.indexOf(tag);
this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
+ this.topicobj.svyLibScriptTagList[lindex].delFlag = 1;
},
handleInputConfirm() {
let tagvalue = {};
@@ -821,7 +915,8 @@
};
}
// this.dynamicTags.push(tagvalue);
- this.dynamicTags.push(tagvalue.tagname);
+ this.topicobj.svyLibScriptTagList.push(tagvalue);
+ this.dynamicTags.push(tagvalue);
});
}
this.inputVisible = false;
@@ -897,7 +992,13 @@
// this.illnessVisible = false;
// this.$modal.msgSuccess("缂栬緫鎴愬姛");
// },
- resetQuery() {},
+ resetQuery() {
+ this.queryParams = {
+ pageNum: 1,
+ pageSize: 10,
+ };
+ this.gettargetInfo();
+ },
// 渚挎嵎鏍囩
tsgnameto(row) {
let inputValueArr = "";
@@ -905,7 +1006,6 @@
//el.selectionStart; 杩欏氨鏄綋鍓嶅厜鏍囨墍鍦ㄧ殑浣嶇疆锛堝瓧绗︿覆涓瓧绗︾殑index锛�
if (this.currentInputId == "scriptContent") {
inputValueArr = this.topicobj.scriptContent.split("");
- console.log(123);
} else if (this.currentInputId == "nomatchtext") {
inputValueArr = this.topicobj.nomatchtext.split("");
} else if (this.currentInputId == "sliencetext") {
@@ -1007,17 +1107,27 @@
},
// 閫夐」鏂囦欢涓婁紶
handleChange(item, response, file, fileList) {
- let index = this.topicobj.svyLibScriptOptions.findIndex(
- (obj) => obj.id == item.id && obj.name == item.name
- );
- this.topicobj.svyLibScriptOptions[index].picturePath = response.url;
+ console.log(response);
+ if (response.code == 200) {
+ console.log(item);
+ let index = this.topicobj.svyLibScriptOptions.findIndex(
+ (obj) => obj.optioncontent == item.optioncontent
+ );
+ console.log(index);
+ this.topicobj.svyLibScriptOptions[index].picturePath = response.url;
+ console.log(this.topicobj.svyLibScriptOptions[index]);
+ this.$forceUpdate();
+ } else {
+ this.$message.error("鍥剧墖鎻掑叆澶辫触");
+ }
},
// 棰樺共鏂囦欢涓婁紶
- handleChangetg(item, file, fileList) {
- let index = this.topicobj.svyLibScriptOptions.findIndex(
- (obj) => obj.id == item.id && obj.name == item.name
- );
- this.topicobj.svyLibScriptOptions[index].picturePath = file.response.url;
+ handleChangetg(response, file, fileList) {
+ if (response.code == 200) {
+ this.topicobj.picturePath = response.url;
+ } else {
+ this.$message.error("鍥剧墖鎻掑叆澶辫触");
+ }
},
},
};
@@ -1036,12 +1146,12 @@
margin: 15px 0;
}
.topicxq {
- width: 68%;
+ width: 72%;
background-color: #e2f5fc;
border-radius: 4px;
margin-top: 15px;
margin-left: 10%;
- padding-left: 10px;
+ padding-left: 20px;
padding-top: 15px;
border: 1px solid #dcdfe6;
-webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
--
Gitblit v1.9.3