Files
income_payments_enterprise_…/src/views/standardsAssociation/CouncilDetailPage.vue
T

131 lines
3.0 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<div class="main-box">
<a-card :bordered="false">
<!-- 基本信息-->
<div class="basic-info basic-box">
<h3 class="title">基本信息</h3>
<a-spin :spinning="basicLoading">
<a-row :gutter="10">
<a-col :span="12" class="basic-info-item"><label>理事会名称:</label><span>{{ councilDetail.name }}</span>
</a-col>
<a-col :span="12" class="basic-info-item"><label>负责人:</label><span>{{ councilDetail.principal }}</span>
</a-col>
<a-col :span="24" class="basic-info-item"><label>目标简述:</label><span>{{ councilDetail.remarks }}</span>
</a-col>
</a-row>
</a-spin>
</div>
<!-- 理事会会议-->
<div class="meeting basic-box">
<h3 class="title">理事会会议</h3>
<meeting-list :other-params="meetingOtherParams"></meeting-list>
</div>
<!-- 其他分发资料-->
<div class="meeting basic-box">
<div class="file-title"><h3 class="title">其他分发资料</h3><span>(如月报、调研表等)</span></div>
<file-list ref="fileList"></file-list>
</div>
</a-card>
</div>
</template>
<script>
import MeetingList from '@comp/detailPage/MeetingList'
import FileList from '@comp/detailPage/FileList'
import { getCouncilDetailById } from '@api/incomePaymentsApi'
export default {
name: 'CouncilDetailPage',
components: { MeetingList, FileList },
data() {
return {
basicLoading: false,
// 理事会详情数据
councilDetail: {},
// 文件数据
fileList: [],
// 理事会会议的其他字段
meetingOtherParams: {
councilId: this.$route.query.id
}
}
},
created() {
this.getCouncilDetail()
},
methods: {
getCouncilDetail() {
if (!this.$route.query.id) {
return
}
this.basicLoading = true
this.$nextTick(() => {
this.$refs.fileList.loading = true
})
let param = {id: this.$route.query.id}
getCouncilDetailById(param).then(res => {
if (res.success) {
this.councilDetail = res.result
this.$refs.fileList.dataSource = res.result.files || []
} else {
this.$message.warn(res.message)
}
}).finally(() => {
this.basicLoading = false
this.$nextTick(() => {
this.$refs.fileList.loading = false
})
})
}
}
}
</script>
<style scoped lang="less">
@import '~@assets/less/common.less';
.title {
position: relative;
}
.title::before {
position: absolute;
top: 4px;
left: -10px;
content: "";
height: 20px;
width: 2px;
background: #069f99;
}
.basic-box {
padding: 0 20px 10px 20px;
}
.basic-info {
.ant-col {
margin: 5px 0;
}
&-item {
display: flex;
label {
flex-shrink: 0;
}
}
}
.file-title {
display: flex;
align-items: center;
span {
margin-left: 10px;
margin-bottom: 5px;
}
}
</style>