|
|
@ -1,42 +1,48 @@ |
|
|
|
<template> |
|
|
|
<template> |
|
|
|
<div class="block" |
|
|
|
<div class="block card-list py-0"> |
|
|
|
style="padding-top: 0"> |
|
|
|
|
|
|
|
<el-tabs v-model="curTab" |
|
|
|
<el-tabs v-model="curTab" |
|
|
|
@tab-click="tabChange"> |
|
|
|
@tab-click="tabChange"> |
|
|
|
<el-tab-pane label="准入策略" |
|
|
|
<el-tab-pane label="准入策略" |
|
|
|
name="tab1"> |
|
|
|
name="tab1"> |
|
|
|
<div class="flex"> |
|
|
|
<div class="flex"> |
|
|
|
<div class="left w-[241px] min-w-[241px] pr-5 py-4"> |
|
|
|
<div class="left"> |
|
|
|
<ul class="products"> |
|
|
|
<ul class="products"> |
|
|
|
<li v-for="(item, i) in list[0]?.recordChildren" |
|
|
|
<li v-for="(item, i) in list[0]?.recordChildren" |
|
|
|
:key="i" |
|
|
|
:key="i" |
|
|
|
:class="{ active: item.id === id }" |
|
|
|
:class="{ active: item.id === id }" |
|
|
|
@click="switchProduct(item.id)"> |
|
|
|
@click="switchProduct(item.id)"> |
|
|
|
<h6>{{ item.name }}</h6> |
|
|
|
<h6>{{ item.name }}</h6> |
|
|
|
<p class="type">{{ item.remark }}</p> |
|
|
|
<p class="meta">{{ item.remark }}</p> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
</ul> |
|
|
|
</ul> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="right flex-1 px-5 pt-2"> |
|
|
|
<div class="right"> |
|
|
|
<div v-show="id == 150"> |
|
|
|
<div v-show="id == 150" |
|
|
|
|
|
|
|
class="c-auto"> |
|
|
|
<Com1 /> |
|
|
|
<Com1 /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div v-show="id == 151"> |
|
|
|
<div v-show="id == 151" |
|
|
|
|
|
|
|
class="c-auto"> |
|
|
|
<Com2 /> |
|
|
|
<Com2 /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div v-show="id == 152"> |
|
|
|
<div v-show="id == 152" |
|
|
|
|
|
|
|
class="c-auto"> |
|
|
|
<Com3 /> |
|
|
|
<Com3 /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div v-show="id == 153"> |
|
|
|
<div v-show="id == 153" |
|
|
|
|
|
|
|
class="c-auto"> |
|
|
|
<Com4 /> |
|
|
|
<Com4 /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div v-show="id == 154"> |
|
|
|
<div v-show="id == 154" |
|
|
|
|
|
|
|
class="c-auto"> |
|
|
|
<Com5 /> |
|
|
|
<Com5 /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div v-show="id == 155"> |
|
|
|
<div v-show="id == 155" |
|
|
|
|
|
|
|
class="c-auto"> |
|
|
|
<Com6 /> |
|
|
|
<Com6 /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div v-show="id == 156"> |
|
|
|
<div v-show="id == 156" |
|
|
|
|
|
|
|
class="c-auto"> |
|
|
|
<Com7 /> |
|
|
|
<Com7 /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
@ -45,7 +51,7 @@ |
|
|
|
<el-tab-pane label="信用评分策略" |
|
|
|
<el-tab-pane label="信用评分策略" |
|
|
|
name="tab2"> |
|
|
|
name="tab2"> |
|
|
|
<div class="flex"> |
|
|
|
<div class="flex"> |
|
|
|
<div class="left w-[241px] min-w-[241px] pr-5 py-4"> |
|
|
|
<div class="left"> |
|
|
|
<div class="flex justify-center items-center py-2 mb-3 text-sm text-[#006BFF] bg-[rgba(0,107,255,0.1)] border border-solid border-[#006BFF] rounded-[10px] cursor-pointer" |
|
|
|
<div class="flex justify-center items-center py-2 mb-3 text-sm text-[#006BFF] bg-[rgba(0,107,255,0.1)] border border-solid border-[#006BFF] rounded-[10px] cursor-pointer" |
|
|
|
@click="toAdd"> |
|
|
|
@click="toAdd"> |
|
|
|
<el-icon class="mr-1" |
|
|
|
<el-icon class="mr-1" |
|
|
@ -55,7 +61,7 @@ |
|
|
|
</el-icon> |
|
|
|
</el-icon> |
|
|
|
新增评分卡 |
|
|
|
新增评分卡 |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<ul class="products"> |
|
|
|
<ul class="products max-h-[calc(100vh-225px)]"> |
|
|
|
<li v-for="(item, i) in list1" |
|
|
|
<li v-for="(item, i) in list1" |
|
|
|
:key="i" |
|
|
|
:key="i" |
|
|
|
:class="{ active: item.id === creditId }" |
|
|
|
:class="{ active: item.id === creditId }" |
|
|
@ -70,11 +76,11 @@ |
|
|
|
</el-popconfirm> |
|
|
|
</el-popconfirm> |
|
|
|
<h6>{{ item.scoreCardName }}</h6> |
|
|
|
<h6>{{ item.scoreCardName }}</h6> |
|
|
|
<p class="type">{{ item.scoringObject ? '企业' : '个人' }}</p> |
|
|
|
<p class="type">{{ item.scoringObject ? '企业' : '个人' }}</p> |
|
|
|
<p class="des">{{ item.description }}</p> |
|
|
|
<p class="meta">{{ item.description }}</p> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
</ul> |
|
|
|
</ul> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="right flex-1 px-5 pt-2"> |
|
|
|
<div class="right"> |
|
|
|
<Credit @getList="getList" /> |
|
|
|
<Credit @getList="getList" /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
@ -82,18 +88,18 @@ |
|
|
|
<el-tab-pane label="风险度策略" |
|
|
|
<el-tab-pane label="风险度策略" |
|
|
|
name="tab3"> |
|
|
|
name="tab3"> |
|
|
|
<div class="flex"> |
|
|
|
<div class="flex"> |
|
|
|
<div class="left w-[241px] min-w-[241px] pr-5 py-4"> |
|
|
|
<div class="left"> |
|
|
|
<ul class="products"> |
|
|
|
<ul class="products"> |
|
|
|
<li v-for="(item, i) in list2" |
|
|
|
<li v-for="(item, i) in list2" |
|
|
|
:key="i" |
|
|
|
:key="i" |
|
|
|
:class="{ active: item.id === riskId }" |
|
|
|
:class="{ active: item.id === riskId }" |
|
|
|
@click="switchProductRisk(item.id)"> |
|
|
|
@click="switchProductRisk(item.id)"> |
|
|
|
<h6>{{ item.name }}</h6> |
|
|
|
<h6>{{ item.name }}</h6> |
|
|
|
<p class="mt-2 des">{{ item.remark }}</p> |
|
|
|
<p class="meta">{{ item.remark }}</p> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
</ul> |
|
|
|
</ul> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="right flex-1 px-5 pt-2"> |
|
|
|
<div class="right"> |
|
|
|
<Risk1 v-if="riskId === 702" /> |
|
|
|
<Risk1 v-if="riskId === 702" /> |
|
|
|
<Risk2 v-else-if="riskId === 703" /> |
|
|
|
<Risk2 v-else-if="riskId === 703" /> |
|
|
|
<Risk3 v-else-if="riskId === 704" /> |
|
|
|
<Risk3 v-else-if="riskId === 704" /> |
|
|
@ -105,7 +111,7 @@ |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
|
|
<script setup lang="ts"> |
|
|
|
<script setup lang="ts"> |
|
|
|
import { computed, onMounted, ref } from 'vue'; |
|
|
|
import { computed, watch, onMounted, ref } from 'vue'; |
|
|
|
import type { TabsPaneContext } from 'element-plus'; |
|
|
|
import type { TabsPaneContext } from 'element-plus'; |
|
|
|
import { getProcessInformationBasedOnRoles } from '@/api/judgment'; |
|
|
|
import { getProcessInformationBasedOnRoles } from '@/api/judgment'; |
|
|
|
import { delCredit, listCredit } from '@/api/model'; |
|
|
|
import { delCredit, listCredit } from '@/api/model'; |
|
|
@ -153,6 +159,7 @@ const getList = async (refresh?: number) => { |
|
|
|
if (curTab.value === 'tab1') { |
|
|
|
if (curTab.value === 'tab1') { |
|
|
|
const { process } = await getProcessInformationBasedOnRoles(67); |
|
|
|
const { process } = await getProcessInformationBasedOnRoles(67); |
|
|
|
// eslint-disable-next-line no-unused-expressions |
|
|
|
// eslint-disable-next-line no-unused-expressions |
|
|
|
|
|
|
|
console.log('🚀 ~ file: CardList.vue:163 ~ getList ~ id.value:', id.value); |
|
|
|
!id.value && switchProduct(process[0].recordChildren[0].id); |
|
|
|
!id.value && switchProduct(process[0].recordChildren[0].id); |
|
|
|
list.value = process; |
|
|
|
list.value = process; |
|
|
|
} else if (curTab.value === 'tab2') { |
|
|
|
} else if (curTab.value === 'tab2') { |
|
|
@ -191,28 +198,12 @@ const tabChange = (tab: TabsPaneContext, event: Event) => { |
|
|
|
</script> |
|
|
|
</script> |
|
|
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped> |
|
|
|
<style lang="scss" scoped> |
|
|
|
.left { |
|
|
|
.card-list { |
|
|
|
border-right: 1px solid #e9eff2; |
|
|
|
.products { |
|
|
|
} |
|
|
|
@apply max-h-[calc(100vh-180px)]; |
|
|
|
.products { |
|
|
|
|
|
|
|
@apply max-h-[calc(100vh-205px)] pr-1 overflow-auto; |
|
|
|
|
|
|
|
li { |
|
|
|
|
|
|
|
@apply relative p-5 pt-7 mb-5 rounded-[10px] cursor-pointer border border-solid border-[transparent] bg-[url('@/assets/images/10.png')] bg-[length:100%_100%] bg-no-repeat; |
|
|
|
|
|
|
|
&.active { |
|
|
|
|
|
|
|
@apply border-[#CAE0FF]; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
.del { |
|
|
|
|
|
|
|
@apply absolute top-0 right-0; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
h6 { |
|
|
|
|
|
|
|
@apply text-[#14436b]; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
.type { |
|
|
|
|
|
|
|
@apply my-3 text-sm text-[#333]; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
.des { |
|
|
|
.right { |
|
|
|
@apply text-sm text-[#8798a9]; |
|
|
|
@apply max-h-[calc(100vh-150px)]; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
</style> |
|
|
|
</style> |
|
|
|