<template>
|
<div class="apply-info" style="margin-top: 20px;">
|
<el-tabs @tab-click="switchTab" type="card">
|
<el-tab-pane
|
:key="item.functionName"
|
v-for="(item, index) in tabsMenus"
|
:label="item.functionNameDesc"
|
:closable="false"
|
>
|
<!-- v-if="item.functionName === tabsName" -->
|
<component
|
:ref="item.functionName"
|
:is="'FuncLimit'"
|
:conf="conf"
|
:typeId="typeId"
|
:functionName="item.functionName"
|
:serialNo="item.serialNo"
|
></component>
|
</el-tab-pane>
|
</el-tabs>
|
</div>
|
</template>
|
|
<script>
|
const FuncLimit = () => import('@/components/tabsBusiness/FuncLimit')
|
|
import loanChannelFuncConstraintList from '@/controller/loanChannelFuncConstraintList'
|
|
import { mapMutations, mapState } from 'vuex'
|
export default {
|
components: {
|
FuncLimit
|
},
|
props: {
|
conf: {
|
type: Object,
|
default: () => ({})
|
},
|
typeId: {
|
type: Number,
|
required: true
|
}
|
},
|
data() {
|
return {
|
model: null,
|
loanOrgFuncConstraintListSubmitReqs: [],
|
query: '',
|
tabsMenu: [],
|
tabsName: '01',
|
tabsMenus: [],
|
tabIndex: 2
|
}
|
},
|
created() {
|
this.init()
|
},
|
methods: {
|
init() {
|
const { $route } = this
|
const { query } = $route
|
this.query = query
|
const model = loanChannelFuncConstraintList()
|
this.model = model
|
this.getTabsList()
|
},
|
|
async getTabsList() {
|
const { query, model } = this
|
const { serialNo: loanOrgSerialNo = '' } = query
|
const res = await model.request({ loanOrgSerialNo })
|
const { list } = res
|
this.tabsMenus = [...list]
|
// console.log(this.tabsMenus)
|
},
|
|
switchTab(event) {
|
// console.log(event)
|
const { paneName } = event
|
this.tabsName = paneName
|
},
|
|
submit() {
|
const { tabsMenus, loanOrgFuncConstraintListSubmitReqs } = this
|
tabsMenus.forEach(name => {
|
const {
|
formValues,
|
loanOrgFuncDarkTermListSubmitReqs,
|
loanOrgSubFlowListSubmitReqs,
|
serialNoFunc
|
} = this.$refs[name.functionName][0]
|
loanOrgFuncConstraintListSubmitReqs.push({
|
...formValues,
|
serialNo: serialNoFunc,
|
loanOrgFuncDarkTermListSubmitReqs,
|
loanOrgSubFlowListSubmitReqs
|
})
|
})
|
this.setChannelLoanOrgFuncConstraintListSubmitReqs(
|
loanOrgFuncConstraintListSubmitReqs
|
)
|
},
|
...mapMutations(['setChannelLoanOrgFuncConstraintListSubmitReqs'])
|
},
|
computed: {
|
...mapState({
|
controlFuncArr: state => state.loanInstitution.controlFuncArr
|
})
|
},
|
watch: {
|
$route() {
|
const { query } = this
|
const { serialNo } = query
|
if (serialNo) {
|
this.init()
|
}
|
},
|
controlFuncArr(val) {
|
// console.log(val)
|
this.loanOrgFuncConstraintListSubmitReqs = []
|
}
|
}
|
}
|
</script>
|
|
<style scoped>
|
</style>
|