[update] 项目详情,工作组详情

This commit is contained in:
zhaoxiao
2021-12-15 19:58:38 +08:00
parent bd485b9f0c
commit fd5a9c8744
2 changed files with 139 additions and 88 deletions
+1 -1
View File
@@ -253,7 +253,7 @@ export default {
this.paymentInfoList = res.result.paymentRecord
// 开票邮寄信息
this.logisticsInfoList = res.result.mailBill
// 拿项目资料信息,现在的文件列表数据不全
// 拿项目资料信息
if (this.basicInfo.files) {
this.initFileList(this.basicInfo.files)
}
+138 -87
View File
@@ -1,49 +1,53 @@
<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="24" class="basic-info-item"><label>项目名称:</label><span>{{ detail.chargeProject }}</span>
</a-col>
<a-col :span="8" class="basic-info-item"><label>项目负责人:</label><span>{{ detail.principalName }}</span>
</a-col>
<a-col :span="8" class="basic-info-item"><label>需要发票:</label><span>{{ detail.needInvoice_dictText }}</span>
</a-col>
<a-col :span="8" class="basic-info-item"><label>工作经费:</label><span>{{ detail.receivableAmount }}元</span>
</a-col>
<a-col :span="8" class="basic-info-item"><label>实付金额:</label><span>{{ detail.paidAmount }}元</span></a-col>
<a-col :span="8" class="basic-info-item"><label>打包:</label><span>{{ detail.pack_dictText }}</span></a-col>
<a-col :span="8" class="basic-info-item"><label>付款方式:</label><span>{{ detail.chargeWay_dictText }}</span>
</a-col>
<!-- 合同-->
<!-- v-if="detail.chargeWay === 2"-->
<a-col :span="8" class="basic-info-item">
<label>合同编号:</label>
<span>{{ detail.contractNum }}</span>
</a-col>
<!-- 收费通知-->
<a-col :span="8" class="basic-info-item" v-if="detail.chargeWay === 3">
<label>收费通知号:</label>
<span>{{ detail.chargeNoticeNo }}</span>
</a-col>
<a-col :span="12" class="basic-info-item" v-if="detail.chargeWay === 3">
<label>收费通知:</label>
<span style="width: 100%;">
<a-spin :spinning="loading">
<!-- 基本信息-->
<div class="basic-info basic-box">
<h3 class="title">基本信息</h3>
<a-spin :spinning="basicLoading">
<a-row :gutter="10">
<a-col :span="24" class="basic-info-item"><label>项目名称:</label><span>{{ detail.chargeProject }}</span>
</a-col>
<a-col :span="8" class="basic-info-item"><label>项目负责人:</label><span>{{ detail.principalName }}</span>
</a-col>
<a-col :span="8" class="basic-info-item"><label>需要发票:</label><span>{{
detail.needInvoice_dictText
}}</span>
</a-col>
<a-col :span="8" class="basic-info-item"><label>工作经费:</label><span>{{ detail.receivableAmount }}元</span>
</a-col>
<a-col :span="8" class="basic-info-item"><label>实付金额:</label><span>{{ detail.paidAmount }}元</span></a-col>
<a-col :span="8" class="basic-info-item"><label>打包:</label><span>{{ detail.pack_dictText }}</span></a-col>
<a-col :span="8" class="basic-info-item"><label>付款方式:</label><span>{{ detail.chargeWay_dictText }}</span>
</a-col>
<!-- 合同-->
<!-- v-if="detail.chargeWay === 2"-->
<a-col :span="8" class="basic-info-item">
<label>合同编号:</label>
<span>{{ detail.contractNum }}</span>
</a-col>
<!-- 收费通知-->
<a-col :span="8" class="basic-info-item" v-if="detail.chargeWay === 3">
<label>收费通知号:</label>
<span>{{ detail.chargeNoticeNo }}</span>
</a-col>
<a-col :span="12" class="basic-info-item" v-if="detail.chargeWay === 3">
<label>收费通知:</label>
<span style="width: 100%;">
<preview-file style="width: 80%" :file-id="detail.chargeNoticeId"></preview-file>
</span>
</a-col>
<a-col :span="24" class="basic-info-item">
<label>任务及目标:</label>
<span>{{ detail.missionAndObjectives }}</span>
</a-col>
</a-row>
</a-spin>
</div>
</a-col>
<a-col :span="24" class="basic-info-item">
<label>任务及目标:</label>
<span>{{ detail.missionAndObjectives }}</span>
</a-col>
</a-row>
</a-spin>
</div>
</a-spin>
<!-- 在研项目-->
<div class="under-study basic-box">
<h3 class="title">在研项目</h3>
@@ -53,64 +57,65 @@
:columns="columns"
:dataSource="dataSource"
:pagination="ipagination"
:loading="loading"
:loading="underStudyLoading"
class="j-table-force-nowrap">
<template slot="text" slot-scope="text">
<j-ellipsis :value="text" :length="18"></j-ellipsis>
</template>
<!-- 过程文件-->
<span slot="project-approval" class="action-span-cell" slot-scope="text, record">
<a @click="viewFiles(record)">查看</a>
</span>
</a-table>
</div>
<!-- 付款信息-->
<div class="payment-info basic-box">
<div class="collapsible-title">
<h3 class="title">付款信息</h3>
<a-button type="link" @click="viewPaymentInfo">{{ showPaymentInfo ? '收起' : '查看' }}</a-button>
<a-spin :spinning="loading">
<!-- 付款信息-->
<div class="payment-info basic-box">
<div class="collapsible-title">
<h3 class="title">付款信息</h3>
<a-button type="link" @click="viewPaymentInfo">{{ showPaymentInfo ? '收起' : '查看' }}</a-button>
</div>
<div class="payment-info-box" v-show="showPaymentInfo">
<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>
</div>
<div class="payment-info-box" v-show="showPaymentInfo">
<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>
</div>
<!-- 开票邮寄信息-->
<div class="logistics-info basic-box">
<div class="collapsible-title">
<h3 class="title">开票邮寄信息</h3>
<a-button type="link" @click="viewMailInfo">{{ showMailInfo ? '收起' : '查看' }}</a-button>
<!-- 开票邮寄信息-->
<div class="logistics-info basic-box">
<div class="collapsible-title">
<h3 class="title">开票邮寄信息</h3>
<a-button type="link" @click="viewMailInfo">{{ showMailInfo ? '收起' : '查看' }}</a-button>
</div>
<div class="wrap-table" v-show="showMailInfo">
<a-table
ref="table"
size="middle"
rowKey="id"
:pagination="false"
:columns="mailColumns"
:dataSource="logisticsInfoList"
class="j-table-force-nowrap"
>
<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>
</div>
<div class="wrap-table" v-show="showMailInfo">
<a-table
ref="table"
size="middle"
rowKey="id"
:pagination="false"
:columns="mailColumns"
:dataSource="logisticsInfoList"
class="j-table-force-nowrap"
>
<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>
</div>
</a-spin>
<!-- 工作组会议-->
<div class="meeting basic-box">
<h3 class="title">工作组会议</h3>
@@ -120,7 +125,7 @@
<!-- 其他分发资料-->
<div class="meeting basic-box">
<div class="file-title"><h3 class="title">其他分发资料</h3><span>(如月报、调研表等)</span></div>
<file-list ref="fileListTable" :data-source="fileList"></file-list>
<file-list ref="fileListTable" :data-source="fileList" :file-loading="fileLoading"></file-list>
</div>
</a-card>
@@ -134,6 +139,7 @@ import FileList from '@comp/detailPage/FileList'
import { getWorkingGroupUnderStudyProject, queryCommonProjectById } from '@api/incomePaymentsApi'
import UnderStudyFilesModal from '@views/MessagePage/modules/UnderStudyFilesModal'
import PreviewFile from '@comp/jero/PreviewFile'
import { getFileInfo } from '@api/api'
const columns = [
{
@@ -271,10 +277,12 @@ export default {
total: 0
},
loading: false,
underStudyLoading: false,
// 显示付款信息
showPaymentInfo: false,
// 显示邮寄信息
showMailInfo: false
showMailInfo: false,
fileLoading: false
}
},
created() {
@@ -286,6 +294,7 @@ export default {
* 获取在研项目
*/
getUnderStudyProjectList() {
this.underStudyLoading = true
let param = {
workingGroupId: this.$route.query.workingGroupId,
pageNo: this.ipagination.current,
@@ -302,6 +311,8 @@ export default {
} else {
this.$message.warn(res.message)
}
}).finally(() => {
this.underStudyLoading = false
})
},
/**
@@ -317,6 +328,7 @@ export default {
* 获取工作组详情
*/
getWorkingGroupDetail() {
this.loading = true
let param = {
id: this.$route.query.projectId
}
@@ -327,9 +339,13 @@ export default {
this.paymentInfoList = res.result.paymentRecord
// 开票邮寄信息
this.logisticsInfoList = res.result.mailBill
// 获取其他分发资料
this.initFileList(this.detail.files)
} else {
this.$message.warn(res.message)
}
}).finally(() => {
this.loading = false
})
},
/**
@@ -350,6 +366,41 @@ export default {
lookLogistics(record) {
const com = Number(record.sendMethod) === 1 && 'ems' || 'shunfeng'
window.open(`https://www.kuaidi100.com/chaxun?com=${ com }&nu=${ record.postNo }`)
},
/*
* 通过文件id获取文件的相关信息
* */
getFileInfo(id) {
return new Promise(resolve => {
let result = {}
getFileInfo({ id: id }).then(res => {
if (res.success) {
result = res.result
}
}).finally(() => {
resolve(result)
})
})
},
/*
* 获取文件信息
* */
async initFileList(fileIds) {
this.fileLoading = true
if (fileIds) {
const fileList = []
let arr = fileIds.split(',')
for (let i = 0; i < arr.length; i++) {
let fileObj = {}
fileObj = await this.getFileInfo(arr[i])
fileList.push({ fileId: fileObj.id, fileName: fileObj.fileName, createTime: fileObj.createTime })
}
this.fileList = [...fileList]
} else {
this.fileList = []
}
this.fileLoading = false
console.log(this.fileList)
}
}
}