Files
dvcp_v2_webapp/project/xiushan/apps/financing/AppFinancingNeeds/AppFinancingNeeds.vue
liuye 510f9f14b1 bug
2022-04-08 11:49:59 +08:00

94 lines
2.5 KiB
Vue

<template>
<section class="AppFinancingNeeds">
<ai-list v-if="showList">
<template slot="title">
<ai-title slot="title" title="融资需求" :isShowBottomBorder="false" :isShowArea="currIndex == 1 && showList" v-model="areaId" :instance="instance" @change="changeArea"/>
</template>
<template slot="tabs">
<el-tabs class="tabs-page" v-model="currIndex">
<el-tab-pane v-for="(tab,i) in tabs" :key="i" :label="tab.label" :name="String(i)">
<component :is="tab.comp" v-if="currIndex==i" :ref="currIndex" :instance="instance" :dict="dict"
:permissions="permissions" :listType="tab.value" @goPage="goPage"/>
</el-tab-pane>
</el-tabs>
</template>
</ai-list>
<component v-if="!showList" :is="currentPage" :instance="instance" :dict="dict"
:permissions="permissions" :row="detail" @goBack="goBack"></component>
</section>
</template>
<script>
import NeedsDetail from "./needsDetail";
import NeedsList from "./needsList";
import NeedsStatistics from "./needsStatistics";
export default {
name: "AppFinancingNeeds",
components: {NeedsList, NeedsDetail},
label: "融资需求",
props: {
instance: Function,
dict: Object,
permissions: Function
},
provide() {
return {
need: this
}
},
data() {
return {
currIndex: '0',
showList: true,
currentPage: "",
detail: {},
areaId: ''
}
},
computed: {
tabs() {
return [
{
label: "融资需求", name: "NeedsList", value: "0", comp: NeedsList, detail: NeedsDetail,
permission: ""
},
{
label: "融资统计", name: "NeedsStatistics", value: "1", comp: NeedsStatistics,
permission: ""
}
]
},
currentTab() {
return this.tabs[this.currIndex] || {}
}
},
created() {
this.dict.load("productRepaymentTimeline", "financialFundPurpose","financingDemandApplyType", "enterpriseType", "dishonestPersonSituation", "administrativeSanctionType")
},
methods: {
goPage(obj) {
this.currentPage = this.tabs[Number(this.currIndex)][obj.key];
obj.row && (this.detail = obj.row)
this.showList = false;
},
goBack() {
this.showList = true;
this.$nextTick(() => {
this.$refs[this.currIndex][0].getTableData();
})
},
changeArea() {
this.$refs[this.currIndex][0].getTableData();
}
}
}
</script>
<style lang="scss" scoped>
.AppFinancingNeeds {
height: 100%;
}
</style>