151 lines
3.7 KiB
Vue
151 lines
3.7 KiB
Vue
<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"
|
||
bordered
|
||
: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>
|
||
<template slot="text" slot-scope="text">
|
||
<span v-if="!text"></span>
|
||
<j-ellipsis :value="text" :length="10"></j-ellipsis>
|
||
</template>
|
||
</a-table>
|
||
|
||
</a-modal>
|
||
|
||
|
||
</template>
|
||
|
||
<script>
|
||
import { getAction ,postAction} from '@api/manage'
|
||
import JEllipsis from '@comp/jero/JEllipsis'
|
||
export default {
|
||
name: 'DictDeleteList',
|
||
components:{
|
||
JEllipsis
|
||
},
|
||
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',
|
||
scopedSlots: { customRender: 'text' }
|
||
},
|
||
{
|
||
title: '字典编号',
|
||
align: 'left',
|
||
dataIndex: 'dictCode',
|
||
scopedSlots: { customRender: 'text' }
|
||
},
|
||
{
|
||
title: '描述',
|
||
align: 'left',
|
||
dataIndex: 'description',
|
||
scopedSlots: { customRender: 'text' }
|
||
},
|
||
{
|
||
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){
|
||
postAction('/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: () => {
|
||
var that = this
|
||
getAction('/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>
|