|
@@ -17,6 +17,23 @@
|
|
|
<el-form-item label="名称" prop="name">
|
|
|
<el-input type="text" size="mini" v-model="queryModel.name"></el-input>
|
|
|
</el-form-item>
|
|
|
+ <el-form-item label="所属目录" prop="parentId">
|
|
|
+ <el-select
|
|
|
+ size="mini"
|
|
|
+ v-model="queryModel.parentId"
|
|
|
+ filterable
|
|
|
+ remote
|
|
|
+ placeholder="请输入关键词"
|
|
|
+ :remote-method="queryMenu"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in queryMenuResult"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.id"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
<el-form-item>
|
|
|
<el-button
|
|
|
type="primary"
|
|
@@ -79,8 +96,22 @@
|
|
|
></el-table-column>
|
|
|
<el-table-column label="操作">
|
|
|
<template slot-scope="{row}">
|
|
|
- <el-button size="mini" type="warning" @click="handleEdit(row)">编辑</el-button>
|
|
|
- <el-button size="mini" type="danger" @click="handleDelete(row)">删除</el-button>
|
|
|
+ <el-row v-if="row.dataType=='1'">
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-button size="mini" type="text" @click="showData(row)">查看数据</el-button>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-button size="mini" type="text" @click="addData(row)">新增数据</el-button>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-button size="mini" type="text" @click="handleEdit(row)">编辑</el-button>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-button size="mini" type="text" @click="handleDelete(row)">删除</el-button>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
@@ -95,6 +126,7 @@
|
|
|
<dataDictionary-detail
|
|
|
v-if="showModal"
|
|
|
:dictId="dictId"
|
|
|
+ :catalog="catalog"
|
|
|
:modalTitle="modalTitle"
|
|
|
@close="onDetailModalClose"
|
|
|
></dataDictionary-detail>
|
|
@@ -138,10 +170,27 @@ export default {
|
|
|
multipleSelection: [],
|
|
|
showModal: false,
|
|
|
modalTitle: "",
|
|
|
- businessKey: ""
|
|
|
+ businessKey: "",
|
|
|
+ queryMenuResult: []
|
|
|
};
|
|
|
},
|
|
|
methods: {
|
|
|
+ queryMenu(keywords) {
|
|
|
+ var formData = new FormData();
|
|
|
+ formData.append("keywords", keywords);
|
|
|
+ formData.append("dataType", "1");
|
|
|
+ formData.append("limit", 10);
|
|
|
+
|
|
|
+ return dataDictionaryApi.query(formData).then(response => {
|
|
|
+ var jsonData = response.data;
|
|
|
+
|
|
|
+ if (jsonData.result) {
|
|
|
+ this.queryMenuResult = jsonData.data;
|
|
|
+ } else {
|
|
|
+ this.$message.error(jsonData.message + "");
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
changePage(pageIndex) {
|
|
|
var self = this;
|
|
|
|
|
@@ -153,6 +202,7 @@ export default {
|
|
|
formData.append("pageIndex", self.pageIndex);
|
|
|
formData.append("pageSize", self.pageSize);
|
|
|
formData.append("name", self.queryModel.name);
|
|
|
+ formData.append("parentId", self.queryModel.parentId);
|
|
|
|
|
|
if (this.field != null) {
|
|
|
formData.append("field", this.field);
|
|
@@ -193,6 +243,7 @@ export default {
|
|
|
},
|
|
|
handleReset(name) {
|
|
|
this.$refs[name].resetFields();
|
|
|
+ this.queryMenu('');
|
|
|
},
|
|
|
handleAdd() {
|
|
|
this.modalTitle = "新增";
|
|
@@ -262,10 +313,24 @@ export default {
|
|
|
if (refreshed) {
|
|
|
this.changePage(this.pageIndex);
|
|
|
}
|
|
|
- }
|
|
|
+ },
|
|
|
+ addData(row) {
|
|
|
+ this.modalTitle = "新增";
|
|
|
+ this.dictId = "";
|
|
|
+ this.catalog = row;
|
|
|
+ this.showModal = true;
|
|
|
+ },
|
|
|
+ showData(row){
|
|
|
+ this.queryMenuResult.length=0; //清空
|
|
|
+ this.queryMenuResult.push(row);
|
|
|
+
|
|
|
+ this.queryModel.parentId = row.id;
|
|
|
+ this.changePage(1);
|
|
|
+ },
|
|
|
},
|
|
|
mounted: function() {
|
|
|
this.changePage(1);
|
|
|
+ this.queryMenu('');
|
|
|
},
|
|
|
components: {
|
|
|
"dataDictionary-detail": DataDictionaryDetail
|