|
@ -107,6 +107,7 @@ |
|
|
<span>字典详情</span> |
|
|
<span>字典详情</span> |
|
|
</div> |
|
|
</div> |
|
|
<el-table |
|
|
<el-table |
|
|
|
|
|
v-if="list.length > 0" |
|
|
ref="list" |
|
|
ref="list" |
|
|
:data="list" |
|
|
:data="list" |
|
|
:row-class-name="tableRowClassName" |
|
|
:row-class-name="tableRowClassName" |
|
@ -115,7 +116,6 @@ |
|
|
highlight-current-row |
|
|
highlight-current-row |
|
|
@row-click="onRowClick" |
|
|
@row-click="onRowClick" |
|
|
@selection-change="handleSelectionChange" |
|
|
@selection-change="handleSelectionChange" |
|
|
v-if="list.length > 0" |
|
|
|
|
|
> |
|
|
> |
|
|
<el-table-column type="selection" width="40" /> |
|
|
<el-table-column type="selection" width="40" /> |
|
|
<el-table-column |
|
|
<el-table-column |
|
@ -155,7 +155,9 @@ |
|
|
</template> |
|
|
</template> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
</el-table> |
|
|
</el-table> |
|
|
<div v-else>点击左侧字典查看详情</div> |
|
|
<div v-else> |
|
|
|
|
|
点击左侧字典查看详情 |
|
|
|
|
|
</div> |
|
|
</el-card> |
|
|
</el-card> |
|
|
</el-col> |
|
|
</el-col> |
|
|
</el-row> |
|
|
</el-row> |
|
@ -204,7 +206,9 @@ |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-form> |
|
|
</el-form> |
|
|
<div slot="footer" class="dialog-footer"> |
|
|
<div slot="footer" class="dialog-footer"> |
|
|
<el-button @click="dialogFormVisible = false"> 取 消 </el-button> |
|
|
<el-button @click="dialogFormVisible = false"> |
|
|
|
|
|
取 消 |
|
|
|
|
|
</el-button> |
|
|
<el-button |
|
|
<el-button |
|
|
v-if="dialogStatus === 'create'" |
|
|
v-if="dialogStatus === 'create'" |
|
|
type="success" |
|
|
type="success" |
|
@ -221,9 +225,9 @@ |
|
|
</template> |
|
|
</template> |
|
|
|
|
|
|
|
|
<script> |
|
|
<script> |
|
|
import Pagination from "@/components/Pagination"; |
|
|
import Pagination from '@/components/Pagination' |
|
|
export default { |
|
|
export default { |
|
|
name: "Category", |
|
|
name: 'Category', |
|
|
components: { Pagination }, |
|
|
components: { Pagination }, |
|
|
data() { |
|
|
data() { |
|
|
return { |
|
|
return { |
|
@ -233,195 +237,195 @@ export default { |
|
|
listQuery: { |
|
|
listQuery: { |
|
|
pageNum: 1, // 页码 |
|
|
pageNum: 1, // 页码 |
|
|
pageSize: 20, |
|
|
pageSize: 20, |
|
|
orderBy: "sort asc", |
|
|
orderBy: 'sort asc', |
|
|
parentId: "", |
|
|
parentId: '' |
|
|
}, |
|
|
}, |
|
|
dialogStatus: "create", |
|
|
dialogStatus: 'create', |
|
|
dialogFormVisible: false, |
|
|
dialogFormVisible: false, |
|
|
textMap: { |
|
|
textMap: { |
|
|
update: "编辑", |
|
|
update: '编辑', |
|
|
create: "新建检验类别", |
|
|
create: '新建检验类别' |
|
|
}, |
|
|
}, |
|
|
tempCategory: {}, |
|
|
tempCategory: {}, |
|
|
multipleSelection: [], |
|
|
multipleSelection: [], |
|
|
sbzlList: [], |
|
|
sbzlList: [], |
|
|
species: [], |
|
|
species: [], |
|
|
parentList: [], |
|
|
parentList: [], |
|
|
leftList: [], |
|
|
leftList: [] |
|
|
}; |
|
|
} |
|
|
}, |
|
|
}, |
|
|
created() { |
|
|
created() { |
|
|
// this.getList() |
|
|
// this.getList() |
|
|
this.getSbzlList(); |
|
|
this.getSbzlList() |
|
|
this.getParentList(); |
|
|
this.getParentList() |
|
|
this.getLeftList(); |
|
|
this.getLeftList() |
|
|
}, |
|
|
}, |
|
|
methods: { |
|
|
methods: { |
|
|
getList() { |
|
|
getList() { |
|
|
this.api({ |
|
|
this.api({ |
|
|
url: "/category/list", |
|
|
url: '/category/list', |
|
|
method: "get", |
|
|
method: 'get', |
|
|
params: this.listQuery, |
|
|
params: this.listQuery |
|
|
}).then((data) => { |
|
|
}).then((data) => { |
|
|
this.list = data.list; |
|
|
this.list = data.list |
|
|
this.totalCount = data.total; |
|
|
this.totalCount = data.total |
|
|
}); |
|
|
}) |
|
|
}, |
|
|
}, |
|
|
handleFilter() { |
|
|
handleFilter() { |
|
|
// 查询事件 |
|
|
// 查询事件 |
|
|
this.listQuery.pageNum = 1; |
|
|
this.listQuery.pageNum = 1 |
|
|
this.getList(); |
|
|
this.getList() |
|
|
}, |
|
|
}, |
|
|
onRowClick(row) { |
|
|
onRowClick(row) { |
|
|
this.$refs.list.toggleRowSelection(row); |
|
|
this.$refs.list.toggleRowSelection(row) |
|
|
this.listQuery.parentId = row.id; |
|
|
this.listQuery.parentId = row.id |
|
|
this.getList(); |
|
|
this.getList() |
|
|
}, |
|
|
}, |
|
|
handleSelectionChange: function (val) { |
|
|
handleSelectionChange: function(val) { |
|
|
this.multipleSelection = val; |
|
|
this.multipleSelection = val |
|
|
}, |
|
|
}, |
|
|
showCreate() { |
|
|
showCreate() { |
|
|
this.tempCategory = {}; |
|
|
this.tempCategory = {} |
|
|
this.dialogStatus = "create"; |
|
|
this.dialogStatus = 'create' |
|
|
this.dialogFormVisible = true; |
|
|
this.dialogFormVisible = true |
|
|
}, |
|
|
}, |
|
|
createCategory() { |
|
|
createCategory() { |
|
|
this.$refs["tempCategory"].validate((valid) => { |
|
|
this.$refs['tempCategory'].validate((valid) => { |
|
|
if (valid) { |
|
|
if (valid) { |
|
|
this.tempCategory.species = JSON.stringify(this.species); |
|
|
this.tempCategory.species = JSON.stringify(this.species) |
|
|
this.api({ |
|
|
this.api({ |
|
|
url: "/category/addCategory", |
|
|
url: '/category/addCategory', |
|
|
method: "post", |
|
|
method: 'post', |
|
|
data: this.tempCategory, |
|
|
data: this.tempCategory |
|
|
}).then(() => { |
|
|
}).then(() => { |
|
|
this.$message({ message: "添加成功。", type: "success" }); |
|
|
this.$message({ message: '添加成功。', type: 'success' }) |
|
|
this.getList(); |
|
|
this.getList() |
|
|
this.dialogFormVisible = false; |
|
|
this.dialogFormVisible = false |
|
|
}); |
|
|
}) |
|
|
} else { |
|
|
} else { |
|
|
return false; |
|
|
return false |
|
|
} |
|
|
} |
|
|
}); |
|
|
}) |
|
|
}, |
|
|
}, |
|
|
showUpdate($index) { |
|
|
showUpdate($index) { |
|
|
this.tempCategory = this.list[$index]; |
|
|
this.tempCategory = this.list[$index] |
|
|
this.species = JSON.parse(this.tempCategory.species); |
|
|
this.species = JSON.parse(this.tempCategory.species) |
|
|
this.dialogStatus = "update"; |
|
|
this.dialogStatus = 'update' |
|
|
this.dialogFormVisible = true; |
|
|
this.dialogFormVisible = true |
|
|
}, |
|
|
}, |
|
|
updateCategory() { |
|
|
updateCategory() { |
|
|
this.$refs["tempCategory"].validate((valid) => { |
|
|
this.$refs['tempCategory'].validate((valid) => { |
|
|
if (valid) { |
|
|
if (valid) { |
|
|
this.tempCategory.species = JSON.stringify(this.species); |
|
|
this.tempCategory.species = JSON.stringify(this.species) |
|
|
this.api({ |
|
|
this.api({ |
|
|
url: "/category/updateCategory", |
|
|
url: '/category/updateCategory', |
|
|
method: "post", |
|
|
method: 'post', |
|
|
data: this.tempCategory, |
|
|
data: this.tempCategory |
|
|
}).then(() => { |
|
|
}).then(() => { |
|
|
this.$message({ message: "数据更新成功。", type: "success" }); |
|
|
this.$message({ message: '数据更新成功。', type: 'success' }) |
|
|
this.getList(); |
|
|
this.getList() |
|
|
this.dialogFormVisible = false; |
|
|
this.dialogFormVisible = false |
|
|
}); |
|
|
}) |
|
|
} else { |
|
|
} else { |
|
|
return false; |
|
|
return false |
|
|
} |
|
|
} |
|
|
}); |
|
|
}) |
|
|
}, |
|
|
}, |
|
|
deleteCategory() { |
|
|
deleteCategory() { |
|
|
if (this.multipleSelection.length === 0) { |
|
|
if (this.multipleSelection.length === 0) { |
|
|
this.$message({ |
|
|
this.$message({ |
|
|
type: "error", |
|
|
type: 'error', |
|
|
message: "请选中需要删除的数据!", |
|
|
message: '请选中需要删除的数据!' |
|
|
}); |
|
|
}) |
|
|
return false; |
|
|
return false |
|
|
} else { |
|
|
} else { |
|
|
this.$confirm("确定删除当前选中记录?", "提示", { |
|
|
this.$confirm('确定删除当前选中记录?', '提示', { |
|
|
confirmButtonText: "确定", |
|
|
confirmButtonText: '确定', |
|
|
showCancelButton: true, |
|
|
showCancelButton: true, |
|
|
type: "warning", |
|
|
type: 'warning' |
|
|
}).then(() => { |
|
|
}).then(() => { |
|
|
const pks = []; |
|
|
const pks = [] |
|
|
const qs = require("qs"); |
|
|
const qs = require('qs') |
|
|
this.multipleSelection.forEach((category) => { |
|
|
this.multipleSelection.forEach((category) => { |
|
|
pks.push(category.id); |
|
|
pks.push(category.id) |
|
|
}); |
|
|
}) |
|
|
this.api({ |
|
|
this.api({ |
|
|
url: "/category/delCategory", |
|
|
url: '/category/delCategory', |
|
|
method: "delete", |
|
|
method: 'delete', |
|
|
params: { |
|
|
params: { |
|
|
pks: pks, |
|
|
pks: pks |
|
|
}, |
|
|
|
|
|
paramsSerializer: function (params) { |
|
|
|
|
|
return qs.stringify(params, { indices: false }); |
|
|
|
|
|
}, |
|
|
}, |
|
|
|
|
|
paramsSerializer: function(params) { |
|
|
|
|
|
return qs.stringify(params, { indices: false }) |
|
|
|
|
|
} |
|
|
}).then(() => { |
|
|
}).then(() => { |
|
|
this.$message({ message: "删除成功。", type: "success" }); |
|
|
this.$message({ message: '删除成功。', type: 'success' }) |
|
|
this.getList(); |
|
|
this.getList() |
|
|
}); |
|
|
}) |
|
|
}); |
|
|
}) |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
getSbzlList() { |
|
|
getSbzlList() { |
|
|
this.api({ |
|
|
this.api({ |
|
|
url: "/sedirectory/getList", |
|
|
url: '/sedirectory/getList', |
|
|
method: "get", |
|
|
method: 'get', |
|
|
params: { |
|
|
params: { |
|
|
sbzl: undefined, |
|
|
sbzl: undefined, |
|
|
level: "1", |
|
|
level: '1' |
|
|
}, |
|
|
} |
|
|
}).then((data) => { |
|
|
}).then((data) => { |
|
|
this.sbzlList = data; |
|
|
this.sbzlList = data |
|
|
}); |
|
|
}) |
|
|
}, |
|
|
}, |
|
|
getParentList() { |
|
|
getParentList() { |
|
|
this.api({ |
|
|
this.api({ |
|
|
url: "/category/all", |
|
|
url: '/category/all', |
|
|
method: "get", |
|
|
method: 'get', |
|
|
params: { |
|
|
params: { |
|
|
parentCode: null, |
|
|
parentCode: null, |
|
|
species: null, |
|
|
species: null |
|
|
}, |
|
|
} |
|
|
}).then((data) => { |
|
|
}).then((data) => { |
|
|
this.parentList = data; |
|
|
this.parentList = data |
|
|
}); |
|
|
}) |
|
|
}, |
|
|
}, |
|
|
getLeftList() { |
|
|
getLeftList() { |
|
|
this.api({ |
|
|
this.api({ |
|
|
url: "/category/getTopLevel", |
|
|
url: '/category/getTopLevel', |
|
|
method: "get", |
|
|
method: 'get', |
|
|
params: { |
|
|
params: { |
|
|
pageNum: 10, |
|
|
pageNum: 10, |
|
|
pageSize: 10, |
|
|
pageSize: 10 |
|
|
}, |
|
|
} |
|
|
}).then((data) => { |
|
|
}).then((data) => { |
|
|
this.leftList = data.list; |
|
|
this.leftList = data.list |
|
|
}); |
|
|
}) |
|
|
}, |
|
|
}, |
|
|
closeDialog() { |
|
|
closeDialog() { |
|
|
this.species = []; |
|
|
this.species = [] |
|
|
}, |
|
|
}, |
|
|
formatSpecies(row, column, cellValue) { |
|
|
formatSpecies(row, column, cellValue) { |
|
|
const value = JSON.parse(cellValue); |
|
|
const value = JSON.parse(cellValue) |
|
|
let lable = ""; |
|
|
let lable = '' |
|
|
for (let i = 0; i < value.length; i++) { |
|
|
for (let i = 0; i < value.length; i++) { |
|
|
for (let j = 0; j < this.sbzlList.length; j++) { |
|
|
for (let j = 0; j < this.sbzlList.length; j++) { |
|
|
if (value[i] === this.sbzlList[j].value) { |
|
|
if (value[i] === this.sbzlList[j].value) { |
|
|
lable = this.sbzlList[j].label + "," + lable; |
|
|
lable = this.sbzlList[j].label + ',' + lable |
|
|
break; |
|
|
break |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
return lable.substring(0, lable.length - 1); |
|
|
return lable.substring(0, lable.length - 1) |
|
|
}, |
|
|
}, |
|
|
tableRowClassName({ row }) { |
|
|
tableRowClassName({ row }) { |
|
|
if (row.parentId === null) { |
|
|
if (row.parentId === null) { |
|
|
return "main-row"; |
|
|
return 'main-row' |
|
|
} else { |
|
|
} else { |
|
|
return ""; |
|
|
return '' |
|
|
} |
|
|
} |
|
|
}, |
|
|
} |
|
|
}, |
|
|
} |
|
|
}; |
|
|
} |
|
|
</script> |
|
|
</script> |
|
|
<style> |
|
|
<style> |
|
|
.el-table .main-row { |
|
|
.el-table .main-row { |
|
|