Files
income_payments_enterprise_…/src/views/MessagePage/MeetingDetailModal.vue
T

1037 lines
35 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>
<j-modal
:title="title"
:width="width"
:visible="visible"
switchFullscreen
fullscreen
@cancel="handleCancel"
cancelText="关闭">
<a-spin :spinning="situationInfoLoading">
<!--会议信息begin-->
<section class="base-info">
<h3 class="title">会议信息</h3>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>会议名称</label>
<span><j-ellipsis :value="model.meetingName" :length="20"></j-ellipsis></span>
</a-col>
<a-col :span="12">
<label>会议类型</label>
<span><j-ellipsis :value="generateMeetingType(model.meetingType)" :length="20"></j-ellipsis></span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>召开时间</label>
<span>{{ model.startTime + '~' + model.endTime }}</span>
</a-col>
<a-col :span="12">
<label>年份</label>
<span><j-ellipsis :value="model.particularYear" :length="20"></j-ellipsis></span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>召开地点</label>
<span><j-ellipsis :value="model.venue + '/' + model.address"></j-ellipsis></span>
</a-col>
<a-col :span="12">
<label>负责人</label>
<span><j-ellipsis :value="model.directorName" :length="20"></j-ellipsis></span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>酒店名称</label><span>{{ model.hotelName }}</span>
</a-col>
<a-col :span="12">
<label>酒店地址</label><span>{{ model.hotelAddress }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col>
<label class="label">酒店联系人及手机号</label>
<span class="content"
v-for="(item,index) of model.hotelContactsList"
:key="index">
{{ item.hotelContacts + ':' + item.hotelContactsPhone + ' ' }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>报名截止时间</label>
<span><j-ellipsis :value="model.registerDeadline" :length="20"></j-ellipsis></span>
</a-col>
<a-col :span="12">
<label>会议通知</label>
<span style="width: 100%;">
<preview-file style="width: 80%" :file-id="model.meetingFiles"></preview-file>
</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>会议费用</label>
<span>{{ model.meetingCosts }} /</span>
</a-col>
<a-col :span="12" v-show="model.meetingType === '2' ">
<label>会议费用(标协会员)</label>
<span>{{ model.meetingCostsVip }} /</span>
</a-col>
<a-col :span="12" v-if="model.paymentQrCode && model.meetingType !== '2'">
<label>收费二维码</label>
<span>
<img :src="paymentQrCodeSrc" alt="nothing show" class="payment-qrcode-img" />
</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col" v-if="model.paymentQrCode && model.meetingType === '2'">
<a-col :span="24">
<label>收费二维码</label>
<span>
<img :src="paymentQrCodeSrc" alt="nothing show" class="payment-qrcode-img" />
</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="24">
<label>会议内容</label>
<span><j-ellipsis :value="model.meetingContent" :length="100"></j-ellipsis></span>
</a-col>
</a-row>
</section>
<!--会议信息end-->
<!--开票邮寄信息begin-->
<section class="logistics-info">
<h3 class="title">开票邮寄信息</h3>
<div>
<span class="collapse-span color-blue"
@click="showMoreInfo = !showMoreInfo">{{ showMoreInfo ? '收起' : '查看' }}</span>
</div>
<div class="wrap-table" :class="{'hide': !showMoreInfo}">
<a-table
ref="table"
size="middle"
rowKey="id"
:scroll="{x:true}"
:pagination="false"
:columns="columns"
:dataSource="logisticsInfoList"
class="j-table-force-nowrap"
:class="{'hide': !showMoreInfo}"
>
<span slot="action" slot-scope="record" class="action-span-cell">
<a @click="lookLogistics(record)" v-if="record.postStatus === 1">查看物流</a>
</span>
<!-- <p slot="expandedRowRender" slot-scope="record" style="margin: 0">-->
<!-- {{ record.sendDate }}-->
<!-- </p>-->
</a-table>
</div>
</section>
<!--开票邮寄信息end-->
<!--报名信息begin-->
<!-- 除开国际研讨会嘉宾身份个人信息的显示 -->
<section class="base-info" v-if="!(model.meetingType === 3 && situationInfo.identity === 1 )">
<h3 class="title">报名信息</h3>
<template v-if="Object.keys(situationInfo).length > 0">
<section>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>参会单位</label>
<span><j-ellipsis :value="situationInfo.companyName" :length="20"></j-ellipsis></span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>参会人</label>
<span><j-ellipsis :value="situationInfo.companyContactName" :length="20"></j-ellipsis></span>
</a-col>
<a-col :span="12">
<label>身份</label>
<span><j-ellipsis :value="situationInfo.identity_dictText" :length="20"></j-ellipsis></span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>手机号</label>
<span><j-ellipsis :value="situationInfo.phone" :length="20"></j-ellipsis></span>
</a-col>
</a-row>
<!-- 行程信息 -->
<a-row :gutter="24" class="flex-col">
<a-col :span="12" v-show="situationInfo.checkInHotel_dictText">
<label>是否住酒店</label>
<span>{{ situationInfo.checkInHotel_dictText }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col" v-if=" (situationInfo.arrivalTime || situationInfo.departureTime)">
<a-col :span="12" v-show="situationInfo.arrivalTime">
<label>抵达时间</label>
<span>{{ situationInfo.arrivalTime }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.departureTime">
<label>离开时间</label>
<span> {{ situationInfo.departureTime }}</span>
</a-col>
</a-row>
<!-- 只有参会人才会显示 会议费用为 0 不显示 -->
<a-row :gutter="24" class="flex-col"
v-show="situationInfo.identity === 2 && model.meetingCosts !== '0.00' ">
<a-col :span="12">
<label>付款方式</label>
<span><j-ellipsis :value="situationInfo.payMode_dictText" :length="20"></j-ellipsis></span>
</a-col>
<!-- 缴费方式为打包不显示-->
<a-col :span="12" v-show="situationInfo.payMode !== 3">
<label>需要发票</label>
<span><j-ellipsis :value="situationInfo.needInvoice_dictText" :length="20"></j-ellipsis></span>
</a-col>
</a-row>
<!-- 缴费方式为打包时候 不需要发票 不显示 会议费用为 0 不显示 -->
<a-row :gutter="24"
v-if=" situationInfo.needInvoice !== 0 && situationInfo.identity === 2 && model.meetingCosts !== '0.00' "
class="flex-col">
<a-col :span="12">
<label>发票邮寄地址</label>
<span><j-ellipsis :value="situationInfo.postContactAddress" :length="20"></j-ellipsis></span>
</a-col>
<a-col :span="12">
<label>邮编</label>
<span><j-ellipsis :value="situationInfo.postCode" :length="20"></j-ellipsis></span>
</a-col>
</a-row>
</section>
</template>
<template>
<a-row :gutter="24" class="flex-col">
<!-- /*
* 1、判断当前会议是否需要缴费,通过会议详情中的 meetingCosts 字段判断,如果是‘0.00’则是不需要花钱的
* 2、报名详情中的 registerProcess 代表报名状态,类型是 1-15 对应需求文档中的不同状态
* */ -->
<a-col :span="12">
<label>报名状态</label>
<span>
<sign-step :register-process="Number(situationInfo.registerProcess)"
:need-costs="model.meetingCosts !== '0.00'"></sign-step>
</span>
</a-col>
</a-row>
<!-- <div>-->
<!-- <a-button type="primary" @click="goSignUpPage">报名</a-button>-->
<!-- </div>-->
</template>
</section>
<!-- 国际研讨会嘉宾身份个人信息的显示 -->
<section class="base-info" v-else>
<h3 class="title">报名信息</h3>
<template v-if="Object.keys(situationInfo).length > 0">
<section>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>参会单位</label>
<span><j-ellipsis :value="situationInfo.companyName" :length="20"></j-ellipsis></span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>参会人</label>
<span><j-ellipsis :value="situationInfo.companyContactName" :length="20"></j-ellipsis></span>
</a-col>
<a-col :span="12">
<label>身份</label>
<span><j-ellipsis :value="situationInfo.identity_dictText" :length="20"></j-ellipsis></span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>手机号</label>
<span><j-ellipsis :value="situationInfo.phone" :length="20"></j-ellipsis></span>
</a-col>
</a-row>
<!--vip身份显示-->
<section v-show="situationInfo.guestType == 1 ">
<a-row :gutter="24" class="flex-col">
<a-col :span="12" v-show="situationInfo.speechTopic">
<label>演讲题目</label>
<span>{{ situationInfo.speechTopic }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.speechPpt">
<label>演讲ppt</label>
<span style="width: 100%;"><preview-file style="width: 80%"
:file-id="situationInfo.speechPpt"></preview-file></span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12" v-show="situationInfo.photo">
<label>照片</label>
<span><j-image-upload v-if="situationInfo.photo" :return-id="true" v-model="situationInfo.photo"
disabled></j-image-upload></span>
</a-col>
<a-col :span="12" v-show="situationInfo.profile">
<label>个人简介</label>
<span>{{ situationInfo.profile }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>是否用餐</label>
<span>{{ situationInfo.haveMeals_dictText }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.haveMeals === 1">
<label>是否回民</label>
<span> {{ situationInfo.huiPeople_dictText }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>是否住酒店</label>
<span>{{ situationInfo.checkInHotel_dictText }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.checkInHotel === 1">
<label>入住酒店时间</label>
<span> {{ situationInfo.inHotelTime }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col" v-show="situationInfo.checkInHotel === 1">
<a-col :span="12">
<label>离店时间</label>
<span>{{ situationInfo.outHotelTime }}</span>
</a-col>
<a-col :span="12">
<label>房型</label>
<span> {{ situationInfo.roomLayout }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>是否需要接站</label>
<span>{{ situationInfo.pickUp_dictText }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.pickUp === 1">
<label>抵达时间</label>
<span> {{ situationInfo.arrivalTime }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col" v-show="situationInfo.pickUp === 1">
<a-col :span="12">
<label>到达站</label>
<span>{{ situationInfo.destination }}</span>
</a-col>
<a-col :span="12">
<label>到达班次</label>
<span> {{ situationInfo.arrivalShift }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>是否需要送站</label>
<span>{{ situationInfo.deliveryStation_dictText }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.deliveryStation === 1">
<label>离开时间</label>
<span> {{ situationInfo.departureTime }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col" v-show="situationInfo.deliveryStation === 1">
<a-col :span="12">
<label>离开站</label>
<span>{{ situationInfo.departureStation }}</span>
</a-col>
<a-col :span="12">
<label>离开班次</label>
<span> {{ situationInfo.departureShift }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12" v-show="situationInfo.peer">
<label>同行人</label>
<span>{{ situationInfo.peer }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.remark">
<label>备注</label>
<span> {{ situationInfo.remark }}</span>
</a-col>
</a-row>
</section>
<!-- 演讲嘉宾显示 -->
<section v-show="situationInfo.guestType == 2 ">
<a-row :gutter="24" class="flex-col">
<a-col :span="12" v-show="situationInfo.speechTopic">
<label>演讲题目</label>
<span>{{ situationInfo.speechTopic }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.speechPpt">
<label>演讲ppt</label>
<span style="width: 100%;"><preview-file style="width: 80%"
:file-id="situationInfo.speechPpt"></preview-file></span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12" v-show="situationInfo.photo">
<label>照片</label>
<span><j-image-upload v-if="situationInfo.photo" :return-id="true" v-model="situationInfo.photo"
disabled></j-image-upload></span>
</a-col>
<a-col :span="12" v-show="situationInfo.profile">
<label>个人简介</label>
<span>{{ situationInfo.profile }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>是否用餐</label>
<span>{{ situationInfo.haveMeals_dictText }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.haveMeals === 1">
<label>是否回民</label>
<span> {{ situationInfo.huiPeople_dictText }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>是否需要接站</label>
<span>{{ situationInfo.pickUp_dictText }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.pickUp === 1">
<label>抵达时间</label>
<span> {{ situationInfo.arrivalTime }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col" v-show="situationInfo.pickUp === 1">
<a-col :span="12">
<label>到达站</label>
<span>{{ situationInfo.destination }}</span>
</a-col>
<a-col :span="12">
<label>到达班次</label>
<span> {{ situationInfo.arrivalShift }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>是否需要送站</label>
<span>{{ situationInfo.deliveryStation_dictText }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.deliveryStation === 1">
<label>离开时间</label>
<span> {{ situationInfo.departureTime }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col" v-show="situationInfo.deliveryStation === 1">
<a-col :span="12">
<label>离开站</label>
<span>{{ situationInfo.departureStation }}</span>
</a-col>
<a-col :span="12">
<label>离开班次</label>
<span> {{ situationInfo.departureShift }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12" v-show="situationInfo.peer">
<label>同行人</label>
<span>{{ situationInfo.peer }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.remark">
<label>备注</label>
<span> {{ situationInfo.remark }}</span>
</a-col>
</a-row>
</section>
<!-- 特邀嘉宾显示-->
<section v-show="situationInfo.guestType == 3 ">
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>是否用餐</label>
<span>{{ situationInfo.haveMeals_dictText }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.haveMeals === 1">
<label>是否回民</label>
<span> {{ situationInfo.huiPeople_dictText }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>是否需要接站</label>
<span>{{ situationInfo.pickUp_dictText }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.pickUp === 1">
<label>抵达时间</label>
<span> {{ situationInfo.arrivalTime }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col" v-show="situationInfo.pickUp === 1">
<a-col :span="12">
<label>到达站</label>
<span>{{ situationInfo.destination }}</span>
</a-col>
<a-col :span="12">
<label>到达班次</label>
<span> {{ situationInfo.arrivalShift }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12">
<label>是否需要送站</label>
<span>{{ situationInfo.deliveryStation_dictText }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.deliveryStation === 1">
<label>离开时间</label>
<span> {{ situationInfo.departureTime }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col" v-show="situationInfo.deliveryStation === 1">
<a-col :span="12">
<label>离开站</label>
<span>{{ situationInfo.departureStation }}</span>
</a-col>
<a-col :span="12">
<label>离开班次</label>
<span> {{ situationInfo.departureShift }}</span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col">
<a-col :span="12" v-show="situationInfo.peer">
<label>同行人</label>
<span>{{ situationInfo.peer }}</span>
</a-col>
</a-row>
</section>
<!--合作伙伴身份显示 -->
<a-row :gutter="24" class="flex-col" v-show="situationInfo.guestType == 4 ">
<a-col :span="12" v-show="situationInfo.arrivalTime">
<label>抵达时间</label>
<span>{{ situationInfo.arrivalTime }}</span>
</a-col>
<a-col :span="12" v-show="situationInfo.departureTime">
<label>离开时间</label>
<span> {{ situationInfo.departureTime }}</span>
</a-col>
</a-row>
</section>
</template>
<!-- v-if="!model.signUpStatus"-->
<template>
<a-row :gutter="24" class="flex-col">
<!-- /*
* 1、判断当前会议是否需要缴费,通过会议详情中的 meetingCosts 字段判断,如果是‘0.00’则是不需要花钱的
* 2、报名详情中的 registerProcess 代表报名状态,类型是 1-15 对应需求文档中的不同状态
* */ -->
<a-col :span="12">
<label>报名状态</label>
<span>
<sign-step :register-process="Number(situationInfo.registerProcess)"
:need-costs="model.meetingCosts !== '0.00'"></sign-step>
</span>
</a-col>
</a-row>
<!-- 只有可报名的会议 才能去报名 -->
</template>
</section>
<div v-if=" (model.meetingSignUpType+'' === '1' && !compareCurrentTime(model.registerDeadline)) ">
<a-button type="primary" @click="goSignUpPage" >报名 </a-button>
</div>
</a-spin>
<!--报名信息end-->
<!--会议资料begin-->
<section class="base-info">
<h3 class="title">会议资料</h3>
<!-- 报名成功才显示查看按钮-->
<file-table :file-id="model.meetingData" :has-limit-bool="true" :meeting-id="model.id" :show-detail-bool="showDetailBool"></file-table>
</section>
<!--会议资料end-->
<!--会议纪要begin-->
<section class="base-info">
<h3 class="title">会议纪要</h3>
<file-table :file-id="model.meetingMinute" :has-limit-bool="true" :meeting-id="model.id" :show-detail-bool="showDetailBool"></file-table>
</section>
<!--会议纪要end-->
<!--到账信息 begin 2021-12-10 版需求变更去掉了-->
<!-- <section class="payment-info">
<h3 class="title">付款信息</h3>
<div class="payment-info-box">
<section class="payment-info-title">付款信息</section>
<template v-if="paymentInfoList && paymentInfoList.length > 0">
<div class="payment-info-content" v-for="item of paymentInfoList" :key="item.id">
{{ item.paymentDate }}付款{{ item.amountReceived }}
</div>
</template>
<a-list v-else :data-source="[]"/>
</div>
</section>-->
<!--到账信息end-->
<template slot="footer">
<a-button @click="handleCancel">关闭</a-button>
</template>
</j-modal>
</template>
<script>
import PreviewFile from '@comp/jero/PreviewFile'
import FileTable from '@/views/MessagePage/modules/FileTable'
import JEllipsis from '@comp/jero/JEllipsis'
import { getMeetInfoById, queryCommonProjectById } from '@api/incomePaymentsApi'
import { getSingUpUserInfo } from '@api/incomePaymentsApi'
import JImageUpload from '@comp/jero/JImageUpload'
import '@/assets/less/TableExpand.less'
import SignStep from './modules/SignStep'
const columns = [
{
title: '开票人',
align: 'center',
dataIndex: 'realName'
},
{
title: '日期',
align: 'center',
dataIndex: 'billDate'
},
{
title: '金额(元)',
align: 'center',
dataIndex: 'invoiceAmount'
},
{
title: '票号',
align: 'center',
dataIndex: 'billNo'
},
{
title: '项目',
align: 'center',
dataIndex: 'projectName'
},
{
title: '邮寄人',
align: 'center',
dataIndex: 'mailName'
},
{
title: '快递',
align: 'center',
dataIndex: 'sendMethod_dictText'
},
{
title: '快递单号',
align: 'center',
dataIndex: 'postNo'
},
{
title: '操作',
align: 'center',
dataIndex: '',
scopedSlots: { customRender: 'action' }
}
]
export default {
name: 'MeetingDetailModal',
components: {
PreviewFile,
JEllipsis,
JImageUpload,
FileTable,
SignStep
},
props: {
// 是否是从会议点进来的 默认走消息
isMeetingBool: {
type: Boolean,
required: false,
default: false
}
},
data() {
return {
title: '会议详情',
width: 800,
visible: false,
model: {},
// 会议信息
meetingInfo: {},
// 参会人信息
situationInfo: {},
// 加载参会信息的标识
situationInfoLoading: false,
columns,
// 到账信息
paymentInfoList: [],
// 开票邮寄信息
logisticsInfoList: [],
// 显示更多的开票邮寄信息
showMoreInfo: false,
// showDetailBool:true
}
},
computed: {
// eslint-disable-next-line
genderTest() {
if (this.$store.getters.userInfo.gender === 1) {
return '男'
} else if (this.$store.getters.userInfo.gender === 2) {
return '女'
}
},
// 是否显示文件查看
showDetailBool(){
if((this.situationInfo.checkResult == 1 && this.situationInfo.registerCheckResult == 1)){
return true
}else{
return false
}
},
// 收费二维码 src
paymentQrCodeSrc() {
return `${window._CONFIG['domianURL']}/sys/common/download/${this.model.paymentQrCode}`
}
},
methods: {
async open(param) {
this.visible = true
this.situationInfoLoading = true
this.showMoreInfo = false
// 通过id查询项目详情
if(!param.situationId) {
queryCommonProjectById({ id: param.situationId }).then(res => {
if (res.success) {
console.log(res.result, 'res.result')
// 到账信息
this.paymentInfoList = res.result.paymentRecord
// 开票邮寄信息
this.logisticsInfoList = res.result.mailBill
} else {
console.log('未查到相应的信息')
}
})
} else {
this.paymentInfoList = []
// 开票邮寄信息
this.logisticsInfoList = []
}
if (param && !this.isMeetingBool) {
// 查询参会人的信息
await this.getSingUpUserInfoFunc(param)
// 消息进来的获取会议的详情
this.queryMeetingInfoById(param.id).then(res => {
// 会议详情
this.model = Object.assign({}, res)
// if((this.model.checkResult == 1 && this.model.registerCheckResult == 1)){
// this.showDetailBool =true
// }else{
// this.showDetailBool = false
// }
console.log(this.model, 'this.model')
})
} else {
// 会议进来查询的会议信息
this.model = Object.assign({}, param)
// 会议进来的查询参会人信息
await this.getSingUpUserInfoFunc(param)
}
setTimeout(() => {
this.situationInfoLoading = false
}, 100)
},
getSingUpUserInfoFunc(param) {
return new Promise(resolve => {
// 存在报名信息
if(param.situationId) {
getSingUpUserInfo({ id: param.situationId }).then(res => {
if (res.success) {
this.situationInfo = res.result
} else {
this.situationInfo = {}
}
}).finally(() => {
resolve()
})
} else {
this.situationInfo = {}
resolve()
}
})
},
close() {
this.visible = false
},
handleCancel() {
this.close()
},
/*
* 生成每一个开票信息
* */
createItemInfo(item) {
let porjectItem = ''
if (item.projects.length > 0) {
item.projects.forEach((val, index) => {
if (index === item.projects.length - 1) {
porjectItem += val
} else {
porjectItem += val + '、'
}
})
}
return `${item.person}${item.time}开票,金额为:${item.money}元,票号:${item.piaoNo},项目:${porjectItem}`
},
/*
* 查看物流
* */
lookLogistics(record) {
const com = Number(record.sendMethod) === 1 && 'ems' || 'shunfeng'
window.open(`https://www.kuaidi100.com/chaxun?com=${com}&nu=${record.postNo}`)
},
/*
* 当前时间是否超过会议报名时间
* */
compareCurrentTime(time) {
let date = new Date()
let compareTime = new Date(time)
if (date.getTime() > compareTime.getTime()) {
return true
} else {
return false
}
},
/*
* 通过会议id获取会议性情
* */
queryMeetingInfoById(id) {
return new Promise(resolve => {
let result = {}
getMeetInfoById({ id }).then(res => {
if (res.success) {
result = res.result
}
}).finally(() => {
resolve(result)
})
})
},
/*
* 会议类型 1 工作组会议 2 标协会议 3国际研讨会 4 其他会议
* */
generateMeetingType(val) {
switch (val + '') {
case '1':
return '工作组会议'
case '2':
switch (this.model.tbMeetingType + '') {
case '1':
return '标协会议-标准宣贯'
case '2':
return '标协会议-培训会'
case '3':
return '标协会议-信息交流会'
}
break
// return '标协会议'
case '3':
return '国际研讨会'
case '4':
return '其他会议'
case '5':
return '分标委会议'
case '6':
return '理事会会议'
default:
return '其他会议'
}
},
goSignUpPage() {
let url = `${window._CONFIG['singUpQRCodeURL']}?id=${this.model.id}`
window.open(url, '_blank')
}
}
}
</script>
<style scoped lang="less">
.info {
.ant-col {
span {
display: inline-block;
word-break: keep-all;
white-space: nowrap;
max-width: calc(100% - 100px);
overflow: hidden;
text-overflow: ellipsis;
}
}
}
//会议内容、备注的样式
.info-textarea {
display: flex;
label {
flex-shrink: 0;
}
}
.flex-col {
.ant-col {
display: flex;
}
}
.ant-row {
margin: 12px;
}
h3 {
position: relative;
}
label {
min-width: 80px;
color: #666;
}
.contract-num {
color: #42b983;
cursor: pointer;
}
h3.title::before {
position: absolute;
top: 4px;
left: -10px;
content: "";
height: 20px;
width: 3px;
background: #069f99;
}
/* 到账信息 */
.payment-info {
margin-bottom: 14px;
&-title {
text-align: center;
font-size: 14px;
height: 35px;
line-height: 35px;
letter-spacing: 1px;
color: #fff;
background: #a2e6e4;
}
&-content {
color: #424242;
//background: #efefef;
padding: 5px;
padding-left: 10px;
border: 1px solid #ccc;
border-top: none;
}
}
/* 到账信息 */
.payment-info {
margin-bottom: 14px;
&-box {
border: 1px solid #ccc;
}
&-title {
text-align: center;
font-size: 14px;
height: 35px;
line-height: 35px;
letter-spacing: 1px;
color: #fff;
background: #a2e6e4;
}
&-content {
color: #424242;
//background: #efefef;
padding: 5px;
padding-left: 10px;
//border: 1px solid #ccc;
border-top: none;
}
}
/* 开票邮寄信息 */
.wrap-table {
border: 1px solid #ccc;
border-bottom: none;
}
/deep/ .ant-table-thead {
tr > th {
color: #fff;
background: #a2e6e4;
border: none;
}
}
/deep/ .ant-table-tbody {
tr > td {
border: none;
border-bottom: 1px solid #ccc;
}
}
.payment-qrcode-img {
width: 100px;
height: 100px
}
// 查看 开票邮寄信息
.logistics-info {
position: relative;
.wrap-table.hide {
height: 0;
display: none;
transition: all 0.5s ease-out;
}
.wrap-table {
transition: all 0.5s ease-out;
}
}
.collapse-span {
cursor: pointer;
color: #069f99 !important;
line-height: 24px;
display: inline-block;
position: absolute;
right: 0;
top: 0;
}
/deep/ .ant-empty-normal {
padding: 0;
margin: 0;
}
</style>