138 lines
3.2 KiB
Java
138 lines
3.2 KiB
Java
<template>
|
||
<a-modal
|
||
:width="modalWidth"
|
||
:style="modalStyle"
|
||
:visible="visible"
|
||
:maskClosable="false"
|
||
@cancel="handleCancel">
|
||
<template slot="footer">
|
||
<a-button @click="handleCancel">关闭</a-button>
|
||
</template>
|
||
<a-table
|
||
ref="table"
|
||
rowKey="id"
|
||
size="middle"
|
||
:columns="columns"
|
||
:loading="loading"
|
||
:dataSource="dataSource"
|
||
:pagination="false">
|
||
<span slot="action" slot-scope="text, record">
|
||
<a @click="handleBack(record.id)"><a-icon type="redo"/>字典取回</a>
|
||
<a-divider type="vertical"/>
|
||
<a @click="handleDelete(record.id)"><a-icon type="scissor"/>彻底删除</a>
|
||
</span>
|
||
</a-table>
|
||
|
||
</a-modal>
|
||
|
||
</template>
|
||
|
||
<script>
|
||
import { getAction, deleteAction, putAction } from '@/api/manage'
|
||
export default {
|
||
name: 'DictDeleteList',
|
||
data () {
|
||
return {
|
||
modalWidth: '90%',
|
||
modalStyle: { top: '20px' },
|
||
title: '操作',
|
||
visible: false,
|
||
loading: false,
|
||
dataSource: [],
|
||
columns: [
|
||
{
|
||
title: '#',
|
||
dataIndex: '',
|
||
key: 'rowIndex',
|
||
width: 120,
|
||
align: 'center',
|
||
customRender: function (t, r, index) {
|
||
return parseInt(index) + 1
|
||
}
|
||
},
|
||
{
|
||
title: '字典名称',
|
||
align: 'left',
|
||
dataIndex: 'dictName'
|
||
},
|
||
{
|
||
title: '字典编号',
|
||
align: 'left',
|
||
dataIndex: 'dictCode'
|
||
},
|
||
{
|
||
title: '描述',
|
||
align: 'left',
|
||
dataIndex: 'description'
|
||
},
|
||
{
|
||
title: '操作',
|
||
dataIndex: 'action',
|
||
align: 'center',
|
||
scopedSlots: { customRender: 'action' }
|
||
}
|
||
]
|
||
}
|
||
},
|
||
|
||
methods: {
|
||
handleCancel () {
|
||
this.visible = false
|
||
// 回收站字典列表刷新
|
||
this.$emit('refresh')
|
||
},
|
||
show () {
|
||
this.visible = true
|
||
this.loadData()
|
||
},
|
||
loadData () {
|
||
this.loading = true
|
||
getAction('/sys/dict/deleteList').then(res => {
|
||
this.loading = false
|
||
if (res.success) {
|
||
this.dataSource = res.result
|
||
} else {
|
||
this.$message.warning(res.message)
|
||
}
|
||
})
|
||
},
|
||
handleBack (id) {
|
||
putAction('/sys/dict/back/' + id).then(res => {
|
||
if (res.success) {
|
||
this.$message.success(res.message)
|
||
this.loadData()
|
||
} else {
|
||
this.$message.warning(res.message)
|
||
}
|
||
})
|
||
},
|
||
handleDelete (id) {
|
||
this.$confirm({
|
||
title: '彻底删除字典',
|
||
content: (<div>
|
||
<p>您确定要彻底删除这个字典项吗?</p>
|
||
<p style="color:red;">注意:彻底删除后将无法恢复,请谨慎操作!</p>
|
||
</div>),
|
||
centered: false,
|
||
onOk: () => {
|
||
const that = this
|
||
deleteAction('/sys/dict/deletePhysic/' + id).then((res) => {
|
||
if (res.success) {
|
||
this.$message.success(res.message)
|
||
this.loadData()
|
||
} else {
|
||
that.$message.warning(res.message)
|
||
}
|
||
})
|
||
}
|
||
})
|
||
}
|
||
|
||
}
|
||
}
|
||
</script>
|
||
|
||
<style scoped>
|
||
|
||
</style>
|