<template>
|
<basic-container>
|
|
<el-header>
|
<div style="margin-bottom: 15px">
|
编码规则:
|
<el-select v-model="select" :filter-method="filterValue" filterable placeholder="请选择" size="small"
|
@change="selectHandler">
|
<el-option v-for="(item,index) in queryReleasedList"
|
:key="item.oid"
|
:label="item.name"
|
:value="item.oid"></el-option>
|
</el-select>
|
</div>
|
</el-header>
|
<el-main>
|
<el-table
|
v-loading="loading"
|
:data="tableData"
|
:header-cell-style="{background:'#FAFAFA',color:'#505050'}"
|
border
|
style="width: 100%;height: calc(100vh - 320px)"
|
@cell-click="cellClickHandler">
|
<el-table-column
|
align="center"
|
label="1"
|
prop="1"
|
>
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="2"
|
prop="2"
|
>
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="3"
|
prop="3">
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="4"
|
prop="4">
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="5"
|
prop="5">
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="6"
|
prop="6">
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="7"
|
prop="7">
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="8"
|
prop="8">
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="9"
|
prop="9">
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="10"
|
prop="10">
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="11"
|
prop="11">
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="12"
|
prop="12">
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="13"
|
prop="13">
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="14"
|
prop="14">
|
</el-table-column>
|
<el-table-column
|
align="center"
|
label="15"
|
prop="15">
|
</el-table-column>
|
</el-table>
|
</el-main>
|
<el-footer>
|
<div style="width: 260px; display: flex; align-items: center;margin-top: 5px">
|
<p>值:</p>
|
<el-input v-model="characterValue" size="small" style="flex: 1;"></el-input>
|
</div>
|
</el-footer>
|
<div style="margin-bottom: 10px;text-align: center">
|
<el-button icon="el-icon-plus" plain size="small" type="success" @click="addSaveHandler">添加</el-button>
|
<el-button icon="el-icon-edit" plain size="small" type="primary" @click="editSaveHandler">修改</el-button>
|
<el-button icon="el-icon-delete" plain size="small" type="danger" @click="delSaveHandler">删除</el-button>
|
</div>
|
</basic-container>
|
</template>
|
|
<script>
|
import {getList, addSave, editSave, deleteSave} from "@/api/code/codeCharcter"
|
import {gridCodeRule} from "@/api/code/codeCharcter"
|
|
export default {
|
name: "prefixConfig",
|
data() {
|
return {
|
loading: false,
|
//下拉框数组
|
queryReleasedList: [],
|
//下拉框初始数据数组
|
characterReleasedList: [],
|
characterValue: "",
|
characterEditOldValue: "",
|
tableData: [],
|
select: "",
|
selectValue: ""
|
}
|
},
|
watch: {
|
select: {
|
handler(newV) {
|
// console.log(newV)
|
}
|
}
|
},
|
created() {
|
this.getCodeRule();
|
},
|
methods: {
|
cellClickHandler(row, column) {
|
this.characterValue = row[column.property];
|
this.characterEditOldValue = row[column.property]
|
},
|
async getCodeRule() {
|
try {
|
// 编码规则已发布数据源
|
const res = await gridCodeRule({["conditionMap" + "[lcStatus_like]"]: "Released"});
|
this.characterReleasedList = res.data.data.records;
|
this.queryReleasedList = this.characterReleasedList;
|
this.select = this.characterReleasedList[0].oid;
|
this.loading = true;
|
const res2 = await getList({codeRuleId: this.select, chartType: "prefix", chartValue: this.characterValue});
|
this.tableData = res2.data.data;
|
this.loading = false;
|
// console.log("this.tableData", this.tableData);
|
} catch (error) {
|
this.$message.warning(error)
|
}
|
},
|
//编码规则下拉框搜索
|
filterValue(query) {
|
console.log(query)
|
if (query !== "") {
|
this.queryReleasedList = this.characterReleasedList.filter(item => {
|
return item.name.includes(query.toString());
|
});
|
} else {
|
this.queryReleasedList = this.characterReleasedList;
|
}
|
},
|
selectHandler(val) {
|
this.selectValue = val;
|
this.characterValue = ""
|
this.getTableData()
|
},
|
getTableData() {
|
this.loading = true;
|
// const targetObject = this.characterReleasedList.find(obj => obj.oid === this.selectValue);
|
// const chartValue = targetObject.name;
|
getList({codeRuleId: this.select, chartType: "prefix", chartValue: this.characterValue}).then(res => {
|
console.log(res.data.data);
|
this.tableData = res.data.data;
|
this.loading = false;
|
});
|
},
|
addSaveHandler() {
|
if (!this.characterValue) {
|
this.$message.warning('请填写要添加的值!');
|
return; // 判断输入值
|
}
|
|
const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
|
if (!targetObject) {
|
return; // 查找对应typeText
|
}
|
|
const codeRuleCharacterVO = {
|
codeRuleId: this.select,
|
chartType: "prefix",
|
chartValue: this.characterValue,
|
chartTypeText: targetObject.name
|
};
|
|
addSave(codeRuleCharacterVO)
|
.then(res => {
|
this.$message.success(res.data.msg);
|
this.characterValue = "";
|
this.getTableData();
|
}).catch(error => {
|
this.$message.error('添加失败');
|
});
|
},
|
editSaveHandler() {
|
if (this.characterEditOldValue === "") {
|
this.$message.warning('请选择修改的值!');
|
return; // 判断选择值
|
}
|
|
if (this.characterValue === "") {
|
this.$message.warning('请填写要修改的值!');
|
return; // 判断输入值
|
}
|
|
const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
|
if (!targetObject) {
|
return; // 查找对应typeText
|
}
|
|
const codeRuleCharacterVO = {
|
codeRuleId: this.select,
|
chartType: "prefix",
|
chartValue: this.characterValue,
|
oldChartValue: this.characterEditOldValue,
|
chartTypeText: targetObject.name
|
};
|
|
editSave(codeRuleCharacterVO)
|
.then(res => {
|
this.$message.success(res.data.msg);
|
this.characterValue = "";
|
this.getTableData();
|
}).catch(error => {
|
this.$message.error('修改失败');
|
});
|
},
|
delSaveHandler() {
|
//判断选择数据characterEditOldValue
|
if (this.characterEditOldValue === "" || this.characterValue === "") {
|
this.$message.warning('请选择要删除的值');
|
return;
|
}
|
|
const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
|
if (!targetObject) {
|
return; // 查找对应typeText
|
}
|
const codeRuleCharacterVO = {
|
codeRuleId: this.select,
|
chartType: "prefix",
|
chartValue: this.characterValue,
|
chartTypeText: targetObject.name
|
};
|
|
deleteSave(codeRuleCharacterVO)
|
.then(res => {
|
this.$message.success(res.data.msg);
|
this.characterValue = "";
|
this.getTableData();
|
}).catch(error => {
|
this.$message.error('删除失败');
|
});
|
}
|
}
|
}
|
</script>
|
|
<style lang="scss" scoped>
|
.el-header {
|
padding: 0;
|
}
|
</style>
|