From e8c62bd430b9697d3f954125b7ec9f61f18347a2 Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期一, 20 十月 2025 11:19:34 +0800
Subject: [PATCH] 测试完成
---
src/views/knowledge/questionbank/index.vue | 244 +++++++++++++++++++++++++++++++++++-------------
1 files changed, 176 insertions(+), 68 deletions(-)
diff --git a/src/views/knowledge/questionbank/index.vue b/src/views/knowledge/questionbank/index.vue
index 33f8941..7402482 100644
--- a/src/views/knowledge/questionbank/index.vue
+++ b/src/views/knowledge/questionbank/index.vue
@@ -3,8 +3,8 @@
<!-- 宸︿晶鏍� -->
<div class="sidecolumn">
<div class="sidecolumn-top">
- <div class="top-wj">闂绫诲瀷</div>
- <div class="top-tj" @click="dialogFormVisible = true">+娣诲姞</div>
+ <div class="top-wj">闂鍒嗙被</div>
+ <div class="top-tj" @click="Newcategory">+娣诲姞</div>
</div>
<div class="center-ss">
<el-input
@@ -20,6 +20,7 @@
:data="deptOptions"
:props="defaultProps"
:expand-on-click-node="false"
+ :check-strictly="true"
:filter-node-method="filterNode"
ref="tree"
node-key="id"
@@ -29,7 +30,7 @@
>
<span class="custom-tree-node" slot-scope="{ node, data }">
<span>{{ node.label }}</span>
- <span>
+ <span v-if="data.id > 0">
<el-button
type="text"
icon="el-icon-delete"
@@ -37,6 +38,17 @@
size="mini"
@click="() => remove(node, data)"
>
+ </el-button>
+ </span>
+ <span v-if="data.id > 0">
+ <el-button
+ type="text"
+ circle
+ size="mini"
+ @click="() => altertag(node, data)"
+ ><span class="button-textxg"
+ ><i class="el-icon-edit-outline"></i
+ ></span>
</el-button>
</span>
</span>
@@ -57,36 +69,32 @@
v-show="showSearch"
label-width="98px"
>
- <el-form-item label="鍙敤闄㈠尯" prop="status">
- <el-select v-model="queryParams.courtyard" placeholder="璇烽�夋嫨">
- <el-option
- v-for="item in languagelist"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
<el-form-item label="闂涓婚" prop="userName">
<el-input
- v-model="queryParams.userName"
+ v-model="queryParams.scriptTopic"
placeholder="璇疯緭鍏�"
clearable
style="width: 200px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
- <el-form-item label="鏂囧瓧" prop="status">
- <el-select v-model="queryParams.status" placeholder="璇烽�夋嫨">
- <el-option
- v-for="item in languagelist"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
+ <el-form-item label="闂鍐呭" prop="userName">
+ <el-input
+ v-model="queryParams.scriptContent"
+ placeholder="璇疯緭鍏�"
+ clearable
+ style="width: 200px"
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="鎸囨爣鍚嶇О" prop="targetname">
+ <el-input
+ v-model="queryParams.targetname"
+ placeholder="璇疯緭鍏�"
+ clearable
+ style="width: 200px"
+ @keyup.enter.native="handleQuery"
+ />
</el-form-item>
<el-form-item label="鏄惁鍙敤" prop="isavailable">
<el-select
@@ -128,7 +136,6 @@
icon="el-icon-plus"
size="medium"
@click="compileUpdate"
- v-hasPermi="['system:user:add']"
>鏂板</el-button
>
</el-col>
@@ -141,7 +148,6 @@
size="medium"
:disabled="multiple"
@click="handleDelete"
- v-hasPermi="['system:user:remove']"
>鍒犻櫎</el-button
>
</el-col>
@@ -158,27 +164,49 @@
width="50"
align="center"
/>
- <el-table-column
+ <!-- <el-table-column
label="搴忓彿"
fixed
align="center"
- key="topicid"
- prop="topicid"
- />
+ key="id"
+ prop="id"
+ /> -->
<el-table-column
- label="棰樼洰鏍囬"
+ label="闂涓婚"
fixed
align="center"
- key="topic"
- prop="topic"
+ key="scriptTopic"
+ prop="scriptTopic"
width="200"
:show-overflow-tooltip="true"
/>
<el-table-column
- label="棰樼洰鍐呭"
+ label="闂鍐呭"
align="center"
- key="topicContent"
- prop="topicContent"
+ key="scriptContent"
+ prop="scriptContent"
+ width="200"
+ :show-overflow-tooltip="true"
+ />
+ <el-table-column
+ label="棰樺瀷"
+ align="center"
+ key="scriptType"
+ prop="scriptType"
+ width="120"
+ >
+ <template slot-scope="scope">
+ <dict-tag
+ :options="askvaluetype"
+ :value="scope.row.scriptType"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鎸囨爣鍚嶇О"
+ align="center"
+ key="targetname"
+ prop="targetname"
width="200"
:show-overflow-tooltip="true"
/>
@@ -206,7 +234,6 @@
size="medium"
type="text"
@click="illnessUpdate(scope.row)"
- v-hasPermi="['system:user:edit']"
><span class="button-textxg"
><i class="el-icon-date"></i>璇︽儏</span
></el-button
@@ -222,8 +249,8 @@
:show-overflow-tooltip="true"
>
<template slot-scope="scope">
- <span v-for="item in scope.row.tag.split(',')"
- >{{ item }}銆�
+ <span v-for="item in scope.row.svyLibScriptTagList"
+ >{{ item.tagname }}銆�
</span>
</template>
</el-table-column>
@@ -262,16 +289,14 @@
size="medium"
type="text"
@click="compileUpdate(scope.row)"
- v-hasPermi="['system:user:edit']"
><span class="button-bji"
- ><i class="el-icon-edit"></i>缂栬緫闂</span
+ ><i class="el-icon-edit"></i>缂栬緫</span
></el-button
>
<el-button
size="medium"
type="text"
@click="handleDelete(scope.row)"
- v-hasPermi="['system:user:remove']"
><span class="button-textsc"
><i class="el-icon-delete-solid"></i>鍒犻櫎</span
></el-button
@@ -279,8 +304,7 @@
<el-button
size="medium"
type="text"
- @click="handleDelete(scope.row)"
- v-hasPermi="['system:user:remove']"
+ @click="topicpreview(scope.row)"
><span class="button-text"
><i class="el-icon-view"></i>棰勮</span
></el-button
@@ -301,7 +325,7 @@
</div>
</div>
<!-- 娣诲姞绫诲埆寮规 -->
- <el-dialog title="鏂板绫诲埆" width="30%" :visible.sync="dialogFormVisible">
+ <el-dialog title="绫诲埆缂栬緫" width="30%" :visible.sync="dialogFormVisible">
<div style="text-align: center; margin-bottom: 20px">
<el-radio-group v-model="radio">
<el-radio-button label="涓诲垎绫�"></el-radio-button>
@@ -326,7 +350,7 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
- <el-button @click="dialogFormVisible = false">鍙� 娑�</el-button>
+ <el-button @click="getDeptTree()">鍙� 娑�</el-button>
<el-button type="primary" @click="submitsidecolumn">纭� 瀹�</el-button>
</div>
</el-dialog>
@@ -378,6 +402,35 @@
<el-button type="primary" @click="confirmillness">纭� 瀹�</el-button>
</span>
</el-dialog>
+ <el-dialog title="闂棰勮" :visible.sync="topicVisible" width="50%">
+ <div class="preview-left">
+ <div class="dev-text">
+ <span>{{ topicform.scriptContent }}</span>
+ </div>
+
+ <div
+ class="dev-xx"
+ v-if="topicform.scriptType != 3 && topicform.scriptType != 4"
+ >
+ <el-radio-group v-model="topicform.asrtext">
+ <el-radio
+ v-for="(topicforms, index) in topicform.svyLibScriptOptions"
+ :key="topicforms.optioncontent"
+ :label="topicforms.optioncontent"
+ >{{ topicforms.optioncontent }}</el-radio
+ >
+ </el-radio-group>
+ </div>
+ <div v-else>
+ <el-input
+ type="textarea"
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model.sync="topicform.asrtext"
+ :rows="2"
+ />
+ </div>
+ </div>
+ </el-dialog>
</div>
</template>
@@ -387,6 +440,7 @@
getissueclassify,
delissueclassify,
addissueclassify,
+ editissueclassify,
getissuelist,
issueinfo,
compileissue,
@@ -421,19 +475,24 @@
total: 0,
namequestionnaire: "",
haoquestionnaire: "",
+ askvaluetype: "",
idds: "",
+ topicform: {
+ scriptContent: "",
+ },
amendtag: false, //鏄惁淇敼绫诲埆
dialogFormVisible: false, //淇敼娣诲姞绫诲埆寮规
deleteVisible: false, //鍒嗙被鍒犻櫎寮规
+ topicVisible: false, //棰勮寮规
deletefenl: "楂樿鍘�", //鍒犻櫎椤�
classifyform: {
- categoryname: "",
+ name: "",
}, //绫诲埆琛ㄥ崟
// 琛ㄦ牸鏁版嵁
userList: [],
// 寮瑰嚭灞傛爣棰�
tag: "",
- title: "",
+ title: "绫诲埆缂栬緫",
// 鏄惁鏄剧ず寮瑰嚭灞�
open: false,
// 鏃ユ湡鑼冨洿
@@ -454,6 +513,8 @@
indexid: null,
inputValue: "",
radio: "涓诲垎绫�",
+ zufon: true,
+ zifon: true,
inputVisible: false,
illnessVisible: false, //鎸囨爣鐤剧梾寮规
deptOptions: [],
@@ -461,7 +522,7 @@
illnesslistapi: [],
illnesslist: [],
defaultProps: {
- children: "svyLibTopicCategoryList",
+ children: "svyLibScriptCategoryList",
label: "name",
},
mode: [],
@@ -484,6 +545,7 @@
this.mode = store.getters.mode;
this.languagelist = store.getters.languagelist;
this.qyoptions = store.getters.usable;
+ this.askvaluetype = store.getters.askvaluetype;
},
methods: {
@@ -501,13 +563,13 @@
compileUpdate(row) {
this.$router.push({
path: "/knowledge/questionbank/particulars/",
- query: { id: row.topicid },
+ query: { id: row.id, categoryid: this.queryParams.categoryid },
});
},
// 鐤剧梾-----------------------
illnessUpdate(row) {
this.illnessVisible = true;
- this.indexid = row.topicid;
+ this.indexid = row.id;
this.illnesslistapi = [];
const illnessqueryParams = {
pageNum: 1,
@@ -517,7 +579,7 @@
console.log(response);
this.optionsillness = response.rows;
});
- getillness({ outid: row.topicid, type: 4 }).then((res) => {
+ getillness({ outid: row.id, type: 4 }).then((res) => {
this.illnesslist = res.rows;
console.log(res);
});
@@ -588,12 +650,21 @@
getDeptTree() {
getissueclassify({}).then((res) => {
this.deptOptions = res.rows;
- console.log(res);
+ this.dialogFormVisible = false;
});
},
// 娣诲姞绫诲埆鏍�
submitsidecolumn() {
+ if (this.classifyform.id) {
+ editissueclassify(this.classifyform).then((res) => {
+ this.getDeptTree();
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.classifyform = {};
+ this.dialogFormVisible = false;
+ });
+ return;
+ }
let calssvalue = {};
if (
this.classifyform.pid &&
@@ -604,10 +675,11 @@
(obj) => obj.id == this.classifyform.pid
);
calssvalue = this.deptOptions[index];
- calssvalue.svyLibTopicCategoryList.push(this.classifyform);
+ console.log(calssvalue, "calssvalue");
+ calssvalue.svyLibScriptCategoryList.push(this.classifyform);
} else if (this.radio == "涓诲垎绫�" && this.classifyform.name) {
this.classifyform.pid = null;
- this.classifyform.svyLibTopicCategoryList = [];
+ this.classifyform.svyLibScriptCategoryList = [];
} else {
return this.$modal.msgError("璇峰~鍐欏畬鏁翠俊鎭�");
}
@@ -645,6 +717,27 @@
.catch(() => {});
}
},
+ altertag(a, b) {
+ this.dialogFormVisible = true;
+ if (!b.pid) {
+ this.radio = "涓诲垎绫�";
+ this.title = "淇敼涓诲垎绫�";
+ this.zufon = false;
+ } else {
+ this.radio = "瀛愬垎绫�";
+ this.title = "淇敼瀛愬垎绫�";
+ this.zifon = false;
+ }
+ this.classifyform = b;
+ this.dialogFormVisible = true;
+ },
+ Newcategory() {
+ (this.classifyform = {}), //绫诲埆琛ㄥ崟
+ (this.radio = "涓诲垎绫�");
+ this.dialogFormVisible = true;
+ this.zifon = true;
+ this.zufon = true;
+ },
// 绛涢�夎妭鐐�
filterNode(value, data) {
@@ -652,14 +745,15 @@
return data.name.indexOf(value) !== -1;
},
handleNodeClick(data) {
- this.queryParams.assortid = data.id;
+ if (data.svyLibScriptCategoryList) return;
+ this.queryParams.categoryid = data.id;
this.getList();
},
// 琛ㄥ崟閲嶇疆
reset() {
this.form = {
- topicid: undefined,
+ id: undefined,
deptId: undefined,
userName: undefined,
nickName: undefined,
@@ -689,17 +783,11 @@
},
// 澶氶�夋閫変腑鏁版嵁
handleSelectionChange(selection) {
- this.ids = selection.map((item) => item.topicid);
+ this.ids = selection.map((item) => item.id);
this.single = selection.length != 1;
this.multiple = !selection.length;
},
- /** 鏂板鎸夐挳鎿嶄綔 */
- handleAdd() {
- this.$router.push({
- path: "/knowledge/verbaltrick/particulars/",
- query: { id: "" },
- });
- },
+
// 淇敼鍒嗙被寮规
popoveramend(tagcategoryid) {
this.idds = tagcategoryid;
@@ -709,7 +797,8 @@
/** 鍒犻櫎鎸夐挳鎿嶄綔 */
handleDelete(row) {
- const topicids = row.topicid || this.ids;
+ console.log(this.ids);
+ const topicids = row.id || this.ids;
this.$modal
.confirm('鏄惁纭鍒犻櫎鐢ㄦ埛缂栧彿涓�"' + topicids + '"鐨勬暟鎹」锛�')
.then(function () {
@@ -721,6 +810,10 @@
})
.catch(() => {});
},
+ topicpreview(row) {
+ this.topicform = row;
+ this.topicVisible = true;
+ },
},
};
</script>
@@ -730,7 +823,7 @@
display: flex;
}
.sidecolumn {
- width: 300px;
+ width: 400px;
min-height: 100vh;
text-align: center;
// display: flex;
@@ -856,6 +949,21 @@
vertical-align: bottom;
}
}
+.preview-left {
+ margin: 20px;
+ // margin: 20px;
+ padding: 30px;
+ // background: #ffff;
+ 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);
+
+ .dev-text {
+ margin-bottom: 10px;
+ text-align: left;
+ font-size: 22px;
+ }
+}
::v-deep .el-tree-node__content {
display: -webkit-box;
--
Gitblit v1.9.3