Commit 77b41310 authored by xiaoman's avatar xiaoman

新增邀请码详情

parent c9ec4681
...@@ -28,3 +28,10 @@ export function invitationCodeCreat(params) { ...@@ -28,3 +28,10 @@ export function invitationCodeCreat(params) {
data: params data: params
}) })
} }
export function invitationFindDetails(params) {
return request({
url: '/invitationCode/findDetails',
method: 'post',
data: params
})
}
...@@ -166,6 +166,18 @@ export const asyncRouterMap = [ ...@@ -166,6 +166,18 @@ export const asyncRouterMap = [
noCache: true noCache: true
}, },
hidden: true hidden: true
},
{
path: 'inviteInfo',
component: () => import('@/views/user/inviteInfo'),
name: 'InviteInfo',
meta: {
perms: ['POST /admin/invitationCode/findDetails'],
title: '邀请码详情',
icon: 'user',
noCache: true
},
hidden: true
} }
] ]
}, },
......
<template>
<div class="page_inviteInfo">
<el-descriptions>
<el-descriptions-item label="邀请码">{{ invitationCodeVo.code }}</el-descriptions-item>
<el-descriptions-item label="状态">{{ invitationCodeVo.state === 0 ? '未使用' : '已使用' }}</el-descriptions-item>
<el-descriptions-item label="有效时间">{{ invitationCodeVo.effectiveStartTime }}</el-descriptions-item>
<el-descriptions-item label="邀请人">{{ invitationCodeVo.applicant }}</el-descriptions-item>
<el-descriptions-item label="创建人">{{ invitationCodeVo.creatorName }}</el-descriptions-item>
<el-descriptions-item label="创建时间">{{ invitationCodeVo.createTime }}</el-descriptions-item>
<el-descriptions-item label="备注">{{ invitationCodeVo.remark }}</el-descriptions-item>
</el-descriptions>
<el-divider/>
<el-descriptions >
<el-descriptions-item label="可邀请人数">{{ invitationCodeVo.enabledNum }}</el-descriptions-item>
<el-descriptions-item label="已使用人数">{{ usedNum }}</el-descriptions-item>
</el-descriptions>
<el-table
:data="tableData"
style="width: 100%">
<el-table-column
prop="inviteeName"
label="受邀者昵称"
width="180"/>
<el-table-column
prop="inviteePhone"
label="受邀者手机号"
width="180"/>
<el-table-column
prop="createTime"
label="使用时间"/>
</el-table>
</div>
</template>
<script>
import { invitationFindDetails } from '@/api/business/invite'
export default {
name: 'InviteInfo',
components: {
},
data() {
return {
invitationCodeVo: {},
usedNum: 0,
tableData: []
}
},
created() {
this.findDetails()
},
methods: {
findDetails() {
const code = this.$route.query.id
invitationFindDetails({ code }).then(response => {
const result = response.data
if (result.success && result.data) {
this.invitationCodeVo = result.data.invitationCodeVo
this.usedNum = result.data.usedNum
this.tableData = result.data.record.map((item) => {
return {
inviteeName: item.inviteeName,
inviteePhone: item.inviteePhone,
createTime: item.createTime
}
})
}
}).catch((e) => {
console.log(e)
})
}
}
}
</script>
<style scoped>
.page_inviteInfo {
padding: 20px;
}
</style>
...@@ -93,8 +93,8 @@ export default { ...@@ -93,8 +93,8 @@ export default {
handleAdd() { handleAdd() {
this.$router.push({ path: '/user/addInvite' }) this.$router.push({ path: '/user/addInvite' })
}, },
handleToDetail() { handleToDetail(row) {
this.$router.push({ path: '/user/inviteInfo', query: { id: row.code }})
}, },
handleSetEnable(row) { handleSetEnable(row) {
const params = { const params = {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment