Commit 1dddea9681bdcbaf9dc9b986e59666b1b7dd7cd7
1 parent
9f2bfcd7
活动参与人员退费状态
Showing
5 changed files
with
52 additions
and
5 deletions
docs/develop/dict.md
| @@ -171,4 +171,13 @@ | @@ -171,4 +171,13 @@ | ||
| 171 | | 初始状态 | 0 | | 171 | | 初始状态 | 0 | |
| 172 | | 审核通过 | 1 | | 172 | | 审核通过 | 1 | |
| 173 | | 上线 | 2 | | 173 | | 上线 | 2 | |
| 174 | - | 机审失败 | -1 | | ||
| 175 | \ No newline at end of file | 174 | \ No newline at end of file |
| 175 | + | 机审失败 | -1 | | ||
| 176 | + | ||
| 177 | + * 活动参与人员退费状态 `refundStatus: Array` [查看代码](http://bj.gitlab.cnlive.com/cnlive_project/cnlive-community-web-vue/blob/dev/src/views/event/config.ts) | ||
| 178 | + | 活动状态 | value | | ||
| 179 | + | :-----: | :------: | | ||
| 180 | + | 未退费 | 0 | | ||
| 181 | + | 申请退费 | 1 | | ||
| 182 | + | 退费中 | 2 | | ||
| 183 | + | 退费成功 | 3 | | ||
| 184 | + | 退费失败 | 4 | | ||
| 176 | \ No newline at end of file | 185 | \ No newline at end of file |
docs/develop/discuss.md
| @@ -58,6 +58,7 @@ | @@ -58,6 +58,7 @@ | ||
| 58 | > * 已发布的活动才能取消发布,取消了以后不能再重新发布。 | 58 | > * 已发布的活动才能取消发布,取消了以后不能再重新发布。 |
| 59 | > * 已发布的活动不能编辑和删除。 | 59 | > * 已发布的活动不能编辑和删除。 |
| 60 | > * 已结束的活动,不能取消发布。 | 60 | > * 已结束的活动,不能取消发布。 |
| 61 | + > * 未退费和退费失败的参与人员可以移除。 | ||
| 61 | > * 活动取消发布了以后,只能查看人员。 | 62 | > * 活动取消发布了以后,只能查看人员。 |
| 62 | > * 活动状态值是当前时间和活动开始结束时间对比的结果 | 63 | > * 活动状态值是当前时间和活动开始结束时间对比的结果 |
| 63 | * 当前时间晚于活动结束时间,即活动已结束, | 64 | * 当前时间晚于活动结束时间,即活动已结束, |
src/views/event/config.ts
| @@ -45,4 +45,28 @@ export const onlineStatus: EnumArrayItem[] = [ | @@ -45,4 +45,28 @@ export const onlineStatus: EnumArrayItem[] = [ | ||
| 45 | label: '上线', | 45 | label: '上线', |
| 46 | value: 2 | 46 | value: 2 |
| 47 | } | 47 | } |
| 48 | +] | ||
| 49 | + | ||
| 50 | +// 活动参与人员退费状态 | ||
| 51 | +export const refundStatus: EnumArrayItem[] = [ | ||
| 52 | + { | ||
| 53 | + label: '未退费', | ||
| 54 | + value: 0 | ||
| 55 | + }, | ||
| 56 | + { | ||
| 57 | + label: '申请退费', | ||
| 58 | + value: 1 | ||
| 59 | + }, | ||
| 60 | + { | ||
| 61 | + label: '退费中', | ||
| 62 | + value: 2 | ||
| 63 | + }, | ||
| 64 | + { | ||
| 65 | + label: '退费成功', | ||
| 66 | + value: 3 | ||
| 67 | + }, | ||
| 68 | + { | ||
| 69 | + label: '退费失败', | ||
| 70 | + value: 4 | ||
| 71 | + } | ||
| 48 | ] | 72 | ] |
| 49 | \ No newline at end of file | 73 | \ No newline at end of file |
src/views/event/handwork/index.vue
| @@ -311,7 +311,7 @@ onMounted(() => { | @@ -311,7 +311,7 @@ onMounted(() => { | ||
| 311 | <!-- 活动取消发布了以后,只能查看人员 --> | 311 | <!-- 活动取消发布了以后,只能查看人员 --> |
| 312 | <el-button type="text" | 312 | <el-button type="text" |
| 313 | ><router-link | 313 | ><router-link |
| 314 | - :to="{ path: '/event/signup', query: { id: scope.row.id } }" | 314 | + :to="{ path: '/event/signup', query: { id: scope.row.id, eName: scope.row.name } }" |
| 315 | >查看人员</router-link | 315 | >查看人员</router-link |
| 316 | ></el-button | 316 | ></el-button |
| 317 | > | 317 | > |
src/views/event/handwork/signup.vue
| 1 | <script setup lang="ts"> | 1 | <script setup lang="ts"> |
| 2 | import { reactive, ref, onMounted } from "vue"; | 2 | import { reactive, ref, onMounted } from "vue"; |
| 3 | import { signupList, cancelSignup } from "@/api/event"; | 3 | import { signupList, cancelSignup } from "@/api/event"; |
| 4 | -import { parseTime } from "@/utils/tool"; | 4 | +import { parseTime, globalFilters } from "@/utils/tool"; |
| 5 | import { useRoute } from "vue-router"; | 5 | import { useRoute } from "vue-router"; |
| 6 | +import { refundStatus } from "./../config"; | ||
| 6 | import Pagination from "@/components/Pagination/index.vue"; | 7 | import Pagination from "@/components/Pagination/index.vue"; |
| 7 | import { ElMessageBox, ElMessage } from "element-plus"; | 8 | import { ElMessageBox, ElMessage } from "element-plus"; |
| 8 | interface Form { | 9 | interface Form { |
| @@ -92,7 +93,7 @@ onMounted(() => { | @@ -92,7 +93,7 @@ onMounted(() => { | ||
| 92 | <template> | 93 | <template> |
| 93 | <div class="page-container"> | 94 | <div class="page-container"> |
| 94 | <!-- <h1>报名信息</h1> --> | 95 | <!-- <h1>报名信息</h1> --> |
| 95 | - <el-row style="padding-bottom: 20px"> | 96 | + <el-row> |
| 96 | <el-form :inline="true" label-width="70px" @submit.native.prevent> | 97 | <el-form :inline="true" label-width="70px" @submit.native.prevent> |
| 97 | <el-form-item label="名称"> | 98 | <el-form-item label="名称"> |
| 98 | <el-input | 99 | <el-input |
| @@ -115,6 +116,9 @@ onMounted(() => { | @@ -115,6 +116,9 @@ onMounted(() => { | ||
| 115 | </el-form-item> | 116 | </el-form-item> |
| 116 | </el-form> | 117 | </el-form> |
| 117 | </el-row> | 118 | </el-row> |
| 119 | + <el-row style="padding-bottom: 20px"> | ||
| 120 | + <span class="tip">当前活动:【{{ useRoute().query?.eName }}】</span> | ||
| 121 | + </el-row> | ||
| 118 | <el-table | 122 | <el-table |
| 119 | :data="data.list" | 123 | :data="data.list" |
| 120 | style="width: 100%" | 124 | style="width: 100%" |
| @@ -135,9 +139,18 @@ onMounted(() => { | @@ -135,9 +139,18 @@ onMounted(() => { | ||
| 135 | label="联系方式" | 139 | label="联系方式" |
| 136 | align="center" | 140 | align="center" |
| 137 | ></el-table-column> | 141 | ></el-table-column> |
| 142 | + <el-table-column prop="refundStatus" label="退费状态" align="center"> | ||
| 143 | + <template #default="scope"> | ||
| 144 | + {{ globalFilters(scope.row.refundStatus, refundStatus) }} | ||
| 145 | + </template> | ||
| 146 | + </el-table-column> | ||
| 138 | <el-table-column label="操作" align="center"> | 147 | <el-table-column label="操作" align="center"> |
| 139 | <template #default="scope"> | 148 | <template #default="scope"> |
| 140 | - <el-button type="text" @click="handleRemove(scope.row)" | 149 | + <!-- 未退费和退费失败的参与人员可以移除 --> |
| 150 | + <el-button | ||
| 151 | + type="text" | ||
| 152 | + @click="handleRemove(scope.row)" | ||
| 153 | + v-show="[0, 4].includes(~~scope.row.refundStatus)" | ||
| 141 | >移除</el-button | 154 | >移除</el-button |
| 142 | > | 155 | > |
| 143 | </template> | 156 | </template> |