<template> <a-modal :width="modalWidth" :style="modalStyle" :visible="visible" :maskClosable="false" @cancel="handleCancel"> <template slot="footer"> <a-button @click="handleCancel">{{$t('button.close')}}</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"/>{{ $t('system.retrieveDictionary') }}</a> <a-divider type="vertical"/> <a @click="handleDelete(record.id)"><a-icon type="scissor"/>{{ $t('system.permanentlyDelete') }}</a> </span> </a-table> </a-modal> </template> <script> import {getAction, deleteAction, putAction} from '@/api/manage' import { translateResultMessage } from '@/api/api' export default { name: "DictDeleteList", data() { return { modalWidth: '90%', modalStyle: {'top': '20px'}, title: this.$t('system.options'), visible: false, loading: false, dataSource: [], columns: [ { title: '#', dataIndex: '', key: 'rowIndex', width: 120, align: "center", customRender: function (t, r, index) { return parseInt(index) + 1; } }, { title: this.$t('system.dictionaryName'), align: "left", dataIndex: 'dictName' }, { title: this.$t('system.dictionaryCode'), align: "left", dataIndex: 'dictCode' }, { title: this.$t('system.description'), align: "left", dataIndex: 'description' }, { title: this.$t('system.options'), 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(translateResultMessage(res, res.message)) } }) }, handleBack(id) { putAction("/sys/dict/back/" + id).then(res => { if (res.success) { this.$message.success(translateResultMessage(res, res.message)) this.loadData(); } else { this.$message.warning(translateResultMessage(res, res.message)) } }) }, handleDelete(id) { this.$confirm({ title: this.$t('system.permanentlyDeleteDictionary'), content: (<div>permanentlyDeleteDictionary <p>{this.$t('system.areYouSureYouWantToPermanentlyDeleteThisDictionaryEntry')}</p> <p style="color:red;">{this.$t('system.attention')}</p> </div>), centered: false, onOk: () => { var that = this; deleteAction("/sys/dict/deletePhysic/" + id).then((res) => { if (res.success) { this.$message.success(translateResultMessage(res, res.message)) this.loadData(); } else { that.$message.warning(translateResultMessage(res, res.message)) } }); }, }) } } } </script> <style scoped> </style>