张延森 4 lat temu
rodzic
commit
0207947cf4

+ 7
- 0
src/api/advert.js Wyświetl plik

@@ -31,3 +31,10 @@ export function saveAdvert(data) {
31 31
     data
32 32
   }))
33 33
 }
34
+
35
+export function deleteAdvert(id) {
36
+  return pureResponseData(request({
37
+    url: `/api/admin/advert/${id}`,
38
+    method: 'delete'
39
+  }))
40
+}

+ 3
- 2
src/components/MultiUploadImg/index.vue Wyświetl plik

@@ -6,8 +6,9 @@
6 6
       list-type="picture-card"
7 7
       :before-upload="beforeUpload"
8 8
       :on-success="handleUploadSuccess"
9
-      :on-remove="handleRemove">
10
-      <i class="el-icon-plus"></i>
9
+      :on-remove="handleRemove"
10
+    >
11
+      <i class="el-icon-plus" />
11 12
     </el-upload>
12 13
     <el-dialog :visible.sync="dialogVisible">
13 14
       <img width="100%" :src="dialogImageUrl" alt="">

+ 1
- 1
src/components/UploadImg/index.vue Wyświetl plik

@@ -9,7 +9,7 @@
9 9
   >
10 10
     <img v-if="value" :src="value" class="uploader-preview">
11 11
     <i v-else class="el-icon-plus avatar-uploader-icon" />
12
-    <div class="uploader-tip">{{tip}}</div>
12
+    <div class="uploader-tip">{{ tip }}</div>
13 13
   </el-upload>
14 14
 </template>
15 15
 

+ 8
- 4
src/views/activity/components/Detail.vue Wyświetl plik

@@ -22,7 +22,7 @@
22 22
       <el-form-item label="允许报名" prop="isEnroll">
23 23
         <el-switch v-model="form.isEnroll" />
24 24
       </el-form-item>
25
-      <el-form-item v-if="form.isEnroll" label="报名时间">
25
+      <!-- <el-form-item v-if="form.isEnroll" label="报名时间">
26 26
         <el-date-picker
27 27
           v-model="dtRange2"
28 28
           type="daterange"
@@ -30,6 +30,9 @@
30 30
           end-placeholder="结束日期"
31 31
           style="width: 100%;"
32 32
         />
33
+      </el-form-item> -->
34
+      <el-form-item v-if="form.isEnroll" label="最大报名人数" prop="enrollMax">
35
+        <el-input-number v-model="form.enrollMax" :min="1"></el-input-number>
33 36
       </el-form-item>
34 37
       <el-form-item v-if="form.isEnroll" label="当前报名">
35 38
         <el-input v-model="form.enrollNum">
@@ -44,7 +47,7 @@
44 47
       <el-form-item label="参与投票" prop="isVote">
45 48
         <el-switch v-model="form.isVote" />
46 49
       </el-form-item>
47
-      <el-form-item v-if="form.isVote" label="投票时间">
50
+      <!-- <el-form-item v-if="form.isVote" label="投票时间">
48 51
         <el-date-picker
49 52
           v-model="dtRange3"
50 53
           type="daterange"
@@ -52,7 +55,7 @@
52 55
           end-placeholder="结束日期"
53 56
           style="width: 100%;"
54 57
         />
55
-      </el-form-item>
58
+      </el-form-item> -->
56 59
     </template>
57 60
     <el-form-item label="首页推荐" prop="toIndex">
58 61
       <el-switch v-model="form.toIndex" />
@@ -224,7 +227,8 @@ export default {
224 227
           const data = {
225 228
             ...this.form,
226 229
             typeId: this.typeId,
227
-            isWarm: this.isWarm
230
+            isWarm: this.isWarm,
231
+            enrollMax: this.form.enrollMax || 0
228 232
           }
229 233
 
230 234
           const [dt1, dt2] = transferBeginEndDay(data.startDate, data.endDate)

+ 51
- 5
src/views/advert/index.vue Wyświetl plik

@@ -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

+ 0
- 1
src/views/customer/index.vue Wyświetl plik

@@ -25,7 +25,6 @@
25 25
         </template>
26 26
       </el-table-column>
27 27
       <el-table-column label="手机" prop="phone" />
28
-      <el-table-column label="名称" prop="name" />
29 28
       <el-table-column label="昵称" prop="nickname" />
30 29
       <el-table-column label="性别" align="center" width="200">
31 30
         <template slot-scope="scope">

+ 7
- 6
src/views/recommender/index.vue Wyświetl plik

@@ -37,7 +37,7 @@
37 37
       <el-table-column label="备注" width="500">
38 38
         <template slot-scope="scope">
39 39
           <el-tooltip placement="top-start" :content="scope.row.remark">
40
-            <div>{{scope.row.remark | limitLen}}</div>
40
+            <div>{{ scope.row.remark | limitLen }}</div>
41 41
           </el-tooltip>
42 42
         </template>
43 43
       </el-table-column>
@@ -67,12 +67,13 @@
67 67
       v-loading="loading.dialog"
68 68
       :visible="dialogVisible"
69 69
       title="状态审核"
70
-      @close="hideDialog">
70
+      @close="hideDialog"
71
+    >
71 72
       <el-form label-width="100px">
72
-        <el-form-item label="姓名">{{current.name}}</el-form-item>
73
-        <el-form-item label="手机">{{current.phone}}</el-form-item>
74
-        <el-form-item label="性别">{{current.sex | sexFormat}}</el-form-item>
75
-        <el-form-item label="备注">{{current.remark}}</el-form-item>
73
+        <el-form-item label="姓名">{{ current.name }}</el-form-item>
74
+        <el-form-item label="手机">{{ current.phone }}</el-form-item>
75
+        <el-form-item label="性别">{{ current.sex | sexFormat }}</el-form-item>
76
+        <el-form-item label="备注">{{ current.remark }}</el-form-item>
76 77
         <el-form-item label="状态" :required="true">
77 78
           <el-radio-group v-model="current.status">
78 79
             <el-radio :label="1">审核通过</el-radio>