main
parent
6668c99dcc
commit
a50096a106
@ -0,0 +1,173 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<a-drawer
|
||||||
|
title="活动-详情"
|
||||||
|
:width="720"
|
||||||
|
:visible="show"
|
||||||
|
:body-style="{ paddingBottom: '80px' }"
|
||||||
|
@close="detailClose"
|
||||||
|
>
|
||||||
|
<div class="drawer-content">
|
||||||
|
<div class="content-title">
|
||||||
|
{{ detailData.title }}
|
||||||
|
</div>
|
||||||
|
<img v-for="item,index in detailData.imgList" :key='index' :src="$ImgUrl(item.url)" class="content-img">
|
||||||
|
<a-descriptions>
|
||||||
|
<a-descriptions-item label="创建时间">
|
||||||
|
{{ detailData.createDate }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="是否显示在app上">
|
||||||
|
{{ detailData.isShow ? "是" : "否" }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="活动对象">
|
||||||
|
{{ detailData.activityObject | activityObject }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="活动内容">
|
||||||
|
{{ detailData.content }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="活动主办方">
|
||||||
|
{{ detailData.organizerName }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
</a-descriptions>
|
||||||
|
<a-descriptions title="报名设置">
|
||||||
|
<a-descriptions-item label="报名开始时间">
|
||||||
|
{{ detailData.registrationStartTime }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="报名结束时间">
|
||||||
|
{{ detailData.registrationEndTime }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="报名人数上限">
|
||||||
|
{{ detailData.registrationNumMax }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="活动地点">
|
||||||
|
{{ detailData.activityAddress }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
</a-descriptions>
|
||||||
|
<a-descriptions title="活动设置">
|
||||||
|
<a-descriptions-item label="活动开始时间">
|
||||||
|
{{ detailData.activityStartTime }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="活动结束时间">
|
||||||
|
{{ detailData.activityEndTime }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="活动联系人">
|
||||||
|
{{ detailData.activityContact }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="活动联系方式">
|
||||||
|
{{ detailData.activityTel }}
|
||||||
|
</a-descriptions-item>
|
||||||
|
</a-descriptions>
|
||||||
|
报名记录
|
||||||
|
<a-divider></a-divider>
|
||||||
|
<a-table
|
||||||
|
:columns="detailColumns"
|
||||||
|
:data-source="tableData"
|
||||||
|
:pagination="pagination"
|
||||||
|
:scroll="{ x: 600 }"
|
||||||
|
@change="handleTableChange"
|
||||||
|
:row-key="
|
||||||
|
(record, index) => {
|
||||||
|
return record.id;
|
||||||
|
}
|
||||||
|
"
|
||||||
|
></a-table>
|
||||||
|
</div>
|
||||||
|
<div class="drawer-footer">
|
||||||
|
<a-button :style="{ marginRight: '8px' }" @click="detailClose">
|
||||||
|
关闭
|
||||||
|
</a-button>
|
||||||
|
</div>
|
||||||
|
</a-drawer>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { activityInfo, registrationList } from "@/api/operation/activity";
|
||||||
|
import { detailColumns, detailpagination } from "./config";
|
||||||
|
export default {
|
||||||
|
props: {
|
||||||
|
show: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false,
|
||||||
|
},
|
||||||
|
detailId: Number,
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
tableData: [],
|
||||||
|
detailData: {},
|
||||||
|
detailColumns,
|
||||||
|
pagination: detailpagination,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
mounted() {},
|
||||||
|
filters: {
|
||||||
|
activityObject(value) {
|
||||||
|
switch (value) {
|
||||||
|
case 1:
|
||||||
|
return "全部";
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
return "住户";
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
return "业主";
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
return "租户";
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
return "管家";
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
detailClose() {
|
||||||
|
this.$emit("detailClose");
|
||||||
|
},
|
||||||
|
handleTableChange(pagination) {
|
||||||
|
console.log(pagination);
|
||||||
|
const pager = { ...this.pagination };
|
||||||
|
pager.current = pagination.current;
|
||||||
|
pager.pageSize = pagination.pageSize;
|
||||||
|
this.pagination = pager;
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
detailId: {
|
||||||
|
handler(id) {
|
||||||
|
if (id !== null && id !== undefined) {
|
||||||
|
console.log(id);
|
||||||
|
Promise.all([
|
||||||
|
activityInfo({ activityId: id }),
|
||||||
|
registrationList({ activityId: id }),
|
||||||
|
]).then((res) => {
|
||||||
|
this.detailData = res[0].data;
|
||||||
|
this.tableData = res[1].data.rows;
|
||||||
|
this.pagination.total = res[1].data.total;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
immediate: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.content-title {
|
||||||
|
color: #000000d9;
|
||||||
|
font-weight: 500;
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 25px;
|
||||||
|
}
|
||||||
|
.content-img{
|
||||||
|
width: 108px;
|
||||||
|
height: 86px;
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,13 @@
|
|||||||
|
<template>
|
||||||
|
<div></div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,13 @@
|
|||||||
|
<template>
|
||||||
|
<div></div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
Loading…
Reference in new issue