|
@@ -7,7 +7,7 @@
|
7
|
7
|
</el-tooltip>
|
8
|
8
|
</div>
|
9
|
9
|
<el-table
|
10
|
|
- v-loading="listLoading"
|
|
10
|
+ v-loading="loading.list"
|
11
|
11
|
:data="list"
|
12
|
12
|
element-loading-text="Loading"
|
13
|
13
|
border
|
|
@@ -35,9 +35,18 @@
|
35
|
35
|
{{ scope.row.createDate | toDayMini }}
|
36
|
36
|
</template>
|
37
|
37
|
</el-table-column>
|
|
38
|
+ <el-table-column label="状态" align="center" width="200">
|
|
39
|
+ <template slot-scope="scope">
|
|
40
|
+ <el-tag
|
|
41
|
+ :type="scope.row.status | statusTagFormat"
|
|
42
|
+ disable-transitions
|
|
43
|
+ >{{ scope.row.status | statusFormat }}</el-tag>
|
|
44
|
+ </template>
|
|
45
|
+ </el-table-column>
|
38
|
46
|
<el-table-column label="操作" align="center" width="200">
|
39
|
47
|
<template slot-scope="scope">
|
40
|
48
|
<el-button size="mini" type="primary" plain @click="handleEdit(scope.row)">编辑</el-button>
|
|
49
|
+ <el-button size="mini" type="danger" plain @click="handleDelete(scope.row)">删除</el-button>
|
41
|
50
|
</template>
|
42
|
51
|
</el-table-column>
|
43
|
52
|
</el-table>
|
|
@@ -52,17 +61,44 @@
|
52
|
61
|
|
53
|
62
|
<script>
|
54
|
63
|
import { getSysModules } from '@/api/comm'
|
55
|
|
-import { getAdvertList } from '@/api/advert'
|
|
64
|
+import { getAdvertList, deleteAdvert } from '@/api/advert'
|
56
|
65
|
|
57
|
66
|
export default {
|
58
|
67
|
components: {
|
59
|
68
|
FilterForm: () => import('./components/FilterForm')
|
60
|
69
|
},
|
|
70
|
+ filters: {
|
|
71
|
+ statusFormat(status) {
|
|
72
|
+ if (status === null || status === undefined) {
|
|
73
|
+ return undefined
|
|
74
|
+ }
|
|
75
|
+
|
|
76
|
+ const statusMap = [
|
|
77
|
+ '未发布',
|
|
78
|
+ '已发布'
|
|
79
|
+ ]
|
|
80
|
+ return statusMap[status]
|
|
81
|
+ },
|
|
82
|
+
|
|
83
|
+ statusTagFormat(status) {
|
|
84
|
+ if (status === null || status === undefined) {
|
|
85
|
+ return undefined
|
|
86
|
+ }
|
|
87
|
+
|
|
88
|
+ const statusMap = [
|
|
89
|
+ 'warning',
|
|
90
|
+ 'success'
|
|
91
|
+ ]
|
|
92
|
+ return statusMap[status]
|
|
93
|
+ }
|
|
94
|
+ },
|
61
|
95
|
|
62
|
96
|
data() {
|
63
|
97
|
return {
|
64
|
98
|
list: null,
|
65
|
|
- listLoading: true,
|
|
99
|
+ loading: {
|
|
100
|
+ list: false
|
|
101
|
+ },
|
66
|
102
|
sysModules: [],
|
67
|
103
|
page: {
|
68
|
104
|
total: 0,
|
|
@@ -87,7 +123,7 @@ export default {
|
87
|
123
|
},
|
88
|
124
|
|
89
|
125
|
fetchData() {
|
90
|
|
- this.listLoading = true
|
|
126
|
+ this.loading.list = true
|
91
|
127
|
getAdvertList({
|
92
|
128
|
...this.filters,
|
93
|
129
|
pageNum: this.page.current,
|
|
@@ -95,7 +131,7 @@ export default {
|
95
|
131
|
}).then(res => {
|
96
|
132
|
this.list = res.records
|
97
|
133
|
this.page.total = res.total
|
98
|
|
- this.listLoading = false
|
|
134
|
+ this.loading.list = false
|
99
|
135
|
})
|
100
|
136
|
},
|
101
|
137
|
|
|
@@ -118,6 +154,16 @@ export default {
|
118
|
154
|
})
|
119
|
155
|
},
|
120
|
156
|
|
|
157
|
+ handleDelete(row) {
|
|
158
|
+ this.$confirm('确认删除当前记录?', { type: 'warning' }).then(() => {
|
|
159
|
+ this.loading.list = true
|
|
160
|
+ deleteAdvert(row.advId).then(() => {
|
|
161
|
+ this.list = this.list.filter(x => x.advId !== row.advId)
|
|
162
|
+ this.loading.list = false
|
|
163
|
+ })
|
|
164
|
+ })
|
|
165
|
+ },
|
|
166
|
+
|
121
|
167
|
handlePageChange({ current, size }) {
|
122
|
168
|
this.page.current = current
|
123
|
169
|
this.page.size = size
|