Commit fc669198 authored by 沈翠玲's avatar 沈翠玲

业务审批添加折叠

parent 51aa3762
......@@ -14,4 +14,4 @@ export const deletePlatforms = (ids) => {
export const getByIdPlatforms = (id) => {
return request.get('/LoanPlatform/getById', { id });
};
\ No newline at end of file
};
......@@ -22,6 +22,9 @@
<template #toolbar_tools>
<slot name="right_tools"></slot>
</template>
<template #expand_content="{ row }">
<slot name="expand_content" :row="row"></slot>
</template>
</vxe-grid>
</div>
<!-- 分页组件 -->
......
......@@ -30,4 +30,4 @@ td {
}
.el-tabs__item {
font-size: 13px !important;
}
\ No newline at end of file
}
......@@ -12,6 +12,113 @@
<!-- <el-button type="primary">下载 </el-button>
<el-button type="primary">批量修复上传 </el-button> -->
</template>
<template #expand_content="{ row }">
<div class="expand-box">
<div class="flex">
<div class="w-2/3 pr-2">
<div>案件明细</div>
<div class="expand-table">
<table v-for="(item, index) in row.loans" :key="index"
><tbody>
<tr>
<td class="label">案件ID:</td>
<td>{{ item?.caseId }}</td>
<td class="label">借款机构:</td>
<td>{{ item?.loanPlatform?.name }}</td>
</tr>
<tr>
<td class="label">资管公司:</td>
<td>{{ item?.manageOrg.orgName }}</td>
<td class="label">身份证:</td>
<td>{{ item?.borrower?.idCard }}</td>
</tr>
<tr>
<td class="label">手机号:</td>
<td>{{ item?.borrower?.phone }}</td>
<td class="label">折扣:</td>
<td>{{ item?.discount }}</td>
</tr>
<tr>
<td class="label">累计还款金额:</td>
<td>{{ item?.sumRepayAmount }}</td>
<td class="label">累计减免金额:</td>
<td>{{ item?.sumReductionAmount }}</td>
</tr>
<tr>
<td class="label">剩余待还金额:</td>
<td>{{ item?.remainingAmount }}</td>
<td class="label">CPE:</td>
<td>{{ item?.cpe.username }}</td>
</tr>
<tr>
<td class="label">分配CPE日期:</td>
<td>{{ item?.cpeDate }}</td>
<td class="label">本金余额:</td>
<td>{{ item?.principalBalance }}</td>
</tr>
<tr>
<td class="label">欠息额:</td>
<td>{{ item?.debitInterest }}</td>
<td class="label">手续费:</td>
<td>{{ item?.commission }}</td>
</tr>
<tr>
<td class="label">委案金额:</td>
<td>{{ item?.commissionAmount }}</td>
<td class="label">案件状态:</td>
<td>
{{
item?.caseStatus
? caseStatusOpt.find((v) => v.value === item?.caseStatus).label
: ''
}}</td
>
</tr>
<tr>
<td class="label">跟进结果:</td>
<td>{{
item?.followStatus
? followStatusOpt.find((v) => v.value === item?.followStatus).label
: ''
}}</td>
<td class="label">跟进状态:</td>
<td>{{
item?.phoneResultStatus
? phoneResultStatusOpt.find((v) => v.value === item?.phoneResultStatus)
.label
: ''
}}</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="flex-1">
<div>分期明细</div>
<div class="expand-table">
<table v-for="(item, index) in row.byStagesRecords" :key="index"
><tbody>
<tr>
<td class="label">期次:</td>
<td>{{ item?.period }}</td>
<td class="label">期次还款到期日:</td>
<td>{{ item?.playApplyDate }}</td>
</tr>
<tr>
<td class="label">期次还款状态:</td>
<td>{{
item.repayStatus ? (item.repayStatus === 'over' ? '已还款' : '待还款') : ''
}}</td>
<td class="label">期次应还金额:</td>
<td>{{ item.applyAmount }}</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</template>
</ProTable>
<vxe-modal
v-model="showModal"
......@@ -92,10 +199,47 @@
query();
};
const followStatusOpt = [
{ label: '接通后挂断', value: 'hang_up' },
{ label: '接通有实质进展', value: 'progress' },
{ label: '接通有效转告', value: 'pass_on' },
{ label: '接通拒绝转告', value: 'no_pass' },
{ label: '接听后挂断', value: 'Hang_up_after_answering' },
{ label: '接通无应答', value: 'No_response_when_connected' },
{ label: '称与债人无关', value: 'Claims_unrelated_to_creditors' },
{ label: '称非本人', value: 'Claiming_not_to_be_myself' },
{ label: '无人接听', value: 'no_answer' },
{ label: '关机', value: 'Shutdown' },
{ label: '空号', value: 'dead_number' },
{ label: '占线/忙音/正在通话中', value: 'Busy' },
{ label: '停机', value: 'closing_down' },
{ label: '机器人回复', value: 'Robot_reply' },
{ label: '微信', value: 'WeChat' },
{ label: '短信', value: 'short_message' },
{ label: 'QQ', value: 'QQ' },
{ label: '飞书', value: 'fly' },
{ label: '钉钉', value: 'DING' },
];
const phoneResultStatusOpt = [
{ label: '后续再跟进', value: 'later' },
{ label: '承诺还款', value: 'Promise_Repayment' },
{ label: '暂无还款意愿', value: 'No_Repay' },
{ label: '要求停催', value: 'Stop_Urging' },
{ label: '情绪激动抗拒', value: 'resistance' },
{ label: '拒绝还款', value: 'Refuse_Repayment' },
{ label: '已还款', value: 'Repaired' },
{ label: '代履行还款', value: 'repayment_others' },
];
const caseStatusOpt = [
{ label: '正常', value: 'normal' },
{ label: '撤案', value: 'withdraw' },
{ label: '留案', value: 'stay' },
];
const config = computed(() => {
return {
columns: [
{ type: 'checkbox', width: 50 },
{ type: 'expand', width: 80, slots: { content: 'expand_content' } },
{
field: 'caseId',
title: '案件ID',
......@@ -197,3 +341,26 @@
query();
});
</script>
<style lang="scss" scoped>
.expand-box {
background: #fff;
padding: 10px;
.expand-table {
color: #000;
table {
width: 100%;
margin-top: 10px;
border-collapse: collapse;
}
td {
border: 1px solid rgba(5, 5, 5, 0.06);
background: #fff;
padding: 8px;
width: 240px;
&.label {
background: #f5f7f9;
}
}
}
}
</style>
......@@ -12,6 +12,78 @@
<!-- <el-button type="primary">下载 </el-button>
<el-button type="primary">批量修复上传 </el-button> -->
</template>
<template #expand_content="{ row }">
<div class="expand-box">
<div>案件明细</div>
<div class="expand-table">
<table v-for="(item, index) in row.reduceRecords" :key="index"
><tbody>
<tr>
<td class="label">案件ID:</td>
<td>{{ item?.loan?.caseId }}</td>
<td class="label">借款机构:</td>
<td>{{ item?.loan?.loanPlatform?.name }}</td>
<td class="label">资管公司:</td>
<td>{{ item?.loan?.manageOrg.orgName }}</td>
</tr>
<tr>
<td class="label">身份证:</td>
<td>{{ item?.loan?.borrower?.idCard }}</td>
<td class="label">手机号:</td>
<td>{{ item?.loan?.borrower?.phone }}</td>
<td class="label">折扣:</td>
<td>{{ item?.loan?.discount }}</td>
<td class="label">委案金额:</td>
<td>{{ item?.loan?.commissionAmount }}</td>
</tr>
<tr>
<td class="label">累计还款金额:</td>
<td>{{ item?.loan?.sumRepayAmount }}</td>
<td class="label">累计减免金额:</td>
<td>{{ item?.loan?.sumReductionAmount }}</td>
<td class="label">剩余待还金额:</td>
<td>{{ item?.loan?.remainingAmount }}</td>
</tr>
<tr>
<td class="label">CPE:</td>
<td>{{ item?.loan?.cpe.username }}</td>
<td class="label">分配CPE日期:</td>
<td>{{ item?.loan?.cpeDate }}</td>
<td class="label">本金余额:</td>
<td>{{ item?.loan?.principalBalance }}</td>
<td class="label">案件状态:</td>
<td>
{{
item?.loan?.caseStatus
? caseStatusOpt.find((v) => v.value === item?.loan?.caseStatus).label
: ''
}}</td
>
</tr>
<tr>
<td class="label">欠息额:</td>
<td>{{ item?.loan?.debitInterest }}</td>
<td class="label">手续费:</td>
<td>{{ item?.loan?.commission }}</td>
<td class="label">跟进结果:</td>
<td>{{
item?.loan?.followStatus
? followStatusOpt.find((v) => v.value === item?.loan?.followStatus).label
: ''
}}</td>
<td class="label">跟进状态:</td>
<td>{{
item?.loan?.phoneResultStatus
? phoneResultStatusOpt.find((v) => v.value === item?.loan?.phoneResultStatus)
.label
: ''
}}</td>
</tr>
</tbody>
</table>
</div>
</div>
</template>
</ProTable>
<vxe-modal
v-model="showModal"
......@@ -74,10 +146,47 @@
query();
};
const followStatusOpt = [
{ label: '接通后挂断', value: 'hang_up' },
{ label: '接通有实质进展', value: 'progress' },
{ label: '接通有效转告', value: 'pass_on' },
{ label: '接通拒绝转告', value: 'no_pass' },
{ label: '接听后挂断', value: 'Hang_up_after_answering' },
{ label: '接通无应答', value: 'No_response_when_connected' },
{ label: '称与债人无关', value: 'Claims_unrelated_to_creditors' },
{ label: '称非本人', value: 'Claiming_not_to_be_myself' },
{ label: '无人接听', value: 'no_answer' },
{ label: '关机', value: 'Shutdown' },
{ label: '空号', value: 'dead_number' },
{ label: '占线/忙音/正在通话中', value: 'Busy' },
{ label: '停机', value: 'closing_down' },
{ label: '机器人回复', value: 'Robot_reply' },
{ label: '微信', value: 'WeChat' },
{ label: '短信', value: 'short_message' },
{ label: 'QQ', value: 'QQ' },
{ label: '飞书', value: 'fly' },
{ label: '钉钉', value: 'DING' },
];
const phoneResultStatusOpt = [
{ label: '后续再跟进', value: 'later' },
{ label: '承诺还款', value: 'Promise_Repayment' },
{ label: '暂无还款意愿', value: 'No_Repay' },
{ label: '要求停催', value: 'Stop_Urging' },
{ label: '情绪激动抗拒', value: 'resistance' },
{ label: '拒绝还款', value: 'Refuse_Repayment' },
{ label: '已还款', value: 'Repaired' },
{ label: '代履行还款', value: 'repayment_others' },
];
const caseStatusOpt = [
{ label: '正常', value: 'normal' },
{ label: '撤案', value: 'withdraw' },
{ label: '留案', value: 'stay' },
];
const config = computed(() => {
return {
columns: [
{ type: 'checkbox', width: 50 },
{ type: 'expand', width: 80, slots: { content: 'expand_content' } },
{
field: 'caseId',
title: '案件ID',
......@@ -183,3 +292,26 @@
query();
});
</script>
<style lang="scss" scoped>
.expand-box {
background: #fff;
padding: 10px;
.expand-table {
color: #000;
table {
width: 100%;
margin-top: 10px;
border-collapse: collapse;
}
td {
border: 1px solid rgba(5, 5, 5, 0.06);
background: #fff;
padding: 8px;
width: 240px;
&.label {
background: #f5f7f9;
}
}
}
}
</style>
......@@ -282,7 +282,9 @@
return (
<>
<div className="flex justify-center">
<ElButton onClick={() => preview(row, 'images')} link type="primary">查看</ElButton>
<ElButton onClick={() => preview(row, 'images')} link type="primary">
查看
</ElButton>
</div>
</>
);
......@@ -300,7 +302,9 @@
return (
<>
<div className="flex justify-center">
<ElButton onClick={() => preview(row, 'notes')} link type="primary">查看</ElButton>
<ElButton onClick={() => preview(row, 'notes')} link type="primary">
查看
</ElButton>
</div>
</>
);
......@@ -318,7 +322,9 @@
return (
<>
<div className="flex justify-center">
<ElButton onClick={() => preview(row, 'others')} link type="primary">查看</ElButton>
<ElButton onClick={() => preview(row, 'others')} link type="primary">
查看
</ElButton>
</div>
</>
);
......
......@@ -35,7 +35,13 @@
</div>
</div>
<div>
<ProTable :config="config" :data="tabledata" ref="ProTableRef" :showPagination="false" :showToolBar="false">
<ProTable
:config="config"
:data="tabledata"
ref="ProTableRef"
:showPagination="false"
:showToolBar="false"
>
<template #table_top>
<p class="font-bold">关联案件:</p>
</template>
......@@ -394,12 +400,12 @@
form.others.splice(index, 1);
};
const onCheckboxAll = (flag) => {
if(flag.checked){
selectdList.value = flag.records
if (flag.checked) {
selectdList.value = flag.records;
} else {
selectdList.value = []
selectdList.value = [];
}
}
};
const config = reactive({
minHeight: 200,
columns: [
......@@ -454,12 +460,12 @@
resuleObj.label = '本人可联';
resuleObj.childrenlabel = null;
tabledata.value = caselist;
setTimeout(()=>{
setTimeout(() => {
if (ProTableRef.value.element) {
ProTableRef.value.element.setAllCheckboxRow(true)
selectdList.value = caselist
ProTableRef.value.element.setAllCheckboxRow(true);
selectdList.value = caselist;
}
}, 500)
}, 500);
};
const submitForm = () => {
if (!form.phoneResultStatus)
......
......@@ -61,7 +61,14 @@
</el-form>
<div>
<ProTable :config="config" ref="ProTableRef" :data="tabledata" :showPagination="false" :dataCallback="dataCallback" :showToolBar="false">
<ProTable
:config="config"
ref="ProTableRef"
:data="tabledata"
:showPagination="false"
:dataCallback="dataCallback"
:showToolBar="false"
>
<template #table_top>
<p class="font-bold">关联案件:</p>
</template>
......@@ -84,7 +91,7 @@
import { ElMessage } from 'element-plus';
import { onMounted } from 'vue';
import { watch } from 'vue';
import Decimal from "decimal.js"
import Decimal from 'decimal.js';
const emits = defineEmits(['success']);
const showModal = ref(false);
const tabledata = ref([]);
......@@ -103,25 +110,33 @@
form.totalReduceAmount = 0;
form.remainingAmount = 0;
selectdList.value.forEach((item) => {
form.totalReduceAmount = Decimal(form.totalReduceAmount).add(Decimal(Number(item.reduceAmount) || 0))
form.remainingAmount = Decimal(form.remainingAmount).add(Decimal(Number(item.payAmount) || 0))
form.totalReduceAmount = Decimal(form.totalReduceAmount).add(
Decimal(Number(item.reduceAmount) || 0)
);
form.remainingAmount = Decimal(form.remainingAmount).add(
Decimal(Number(item.payAmount) || 0)
);
});
};
const onCheckboxAll = (flag) => {
if(flag.checked){
selectdList.value = flag.records
form.totalNumber = flag.records.length
if (flag.checked) {
selectdList.value = flag.records;
form.totalNumber = flag.records.length;
} else {
selectdList.value = []
form.totalNumber = 0
selectdList.value = [];
form.totalNumber = 0;
}
form.totalReduceAmount = 0;
form.remainingAmount = 0;
selectdList.value.forEach((item) => {
form.totalReduceAmount = Decimal(form.totalReduceAmount).add(Decimal(Number(item.reduceAmount) || 0))
form.remainingAmount = Decimal(form.remainingAmount).add(Decimal(Number(item.payAmount) || 0))
form.totalReduceAmount = Decimal(form.totalReduceAmount).add(
Decimal(Number(item.reduceAmount) || 0)
);
form.remainingAmount = Decimal(form.remainingAmount).add(
Decimal(Number(item.payAmount) || 0)
);
});
}
};
const currentDetail = ref({});
const onHide = (done) => {
done();
......@@ -192,12 +207,16 @@
toolbarConfig: { enabled: false },
});
const changeNum = (row) => {
row.payAmount = Decimal(row.loan.remainingAmount).sub(Decimal(row.reduceAmount))
row.payAmount = Decimal(row.loan.remainingAmount).sub(Decimal(row.reduceAmount));
form.totalReduceAmount = 0;
form.remainingAmount = 0;
selectdList.value.forEach((item) => {
form.totalReduceAmount = Decimal(form.totalReduceAmount).add(Decimal(Number(item.reduceAmount) || 0))
form.remainingAmount = Decimal(form.remainingAmount).add(Decimal(Number(item.payAmount) || 0))
form.totalReduceAmount = Decimal(form.totalReduceAmount).add(
Decimal(Number(item.reduceAmount) || 0)
);
form.remainingAmount = Decimal(form.remainingAmount).add(
Decimal(Number(item.payAmount) || 0)
);
});
};
const openModal = (detail, caselist) => {
......@@ -210,17 +229,19 @@
caselist.forEach((item) => {
const payAmount = Number(item.remainingAmount) || 0;
list.push({ reduceAmount: Number(item.reduceAmount) || 0, payAmount: payAmount, loan: item });
form.totalReduceAmount = Decimal(form.totalReduceAmount).add(Decimal(Number(item.reduceAmount) || 0))
form.remainingAmount = Decimal(form.remainingAmount).add(Decimal(payAmount))
form.totalReduceAmount = Decimal(form.totalReduceAmount).add(
Decimal(Number(item.reduceAmount) || 0)
);
form.remainingAmount = Decimal(form.remainingAmount).add(Decimal(payAmount));
});
tabledata.value = list;
form.totalNumber = caselist.length;
setTimeout(()=>{
setTimeout(() => {
if (ProTableRef.value.element) {
ProTableRef.value.element.setAllCheckboxRow(true)
selectdList.value = list
ProTableRef.value.element.setAllCheckboxRow(true);
selectdList.value = list;
}
}, 500)
}, 500);
};
const submitForm = () => {
const list = JSON.parse(JSON.stringify(selectdList.value));
......
......@@ -9,7 +9,13 @@
>
<div class="h-full flex-col flex mydrawer pb-2">
<div>
<ProTable :config="config" ref="ProTableRef" :data="tabledata" :showPagination="false" :showToolBar="false">
<ProTable
:config="config"
ref="ProTableRef"
:data="tabledata"
:showPagination="false"
:showToolBar="false"
>
<template #table_top>
<p class="font-bold">关联案件:</p>
</template>
......@@ -135,10 +141,9 @@
import { computed } from 'vue';
import { reactive, ref } from 'vue';
import { ElInputNumber, ElMessage } from 'element-plus';
import { savebyStages } from '@/api/property'
import { getByIdPlatforms } from '@/api/platform'
;
import Decimal from "decimal.js"
import { savebyStages } from '@/api/property';
import { getByIdPlatforms } from '@/api/platform';
import Decimal from 'decimal.js';
const ProTableRef = ref();
const showModal = ref(false);
......@@ -154,7 +159,7 @@
firstApplyDate: dayjs().format('YYYY-MM-DD'),
effectiveTime: dayjs().format('YYYY-MM-DD HH:mm:ss'),
});
const minAmount = ref(0)
const minAmount = ref(0);
const currentDetail = ref({});
const onHide = (done) => {
done();
......@@ -169,8 +174,10 @@
});
const otherNum = form.totalRepayAmount - Number(splitdata.value[0].applyAmount);
const list = [splitdata.value[0]];
const crash = Decimal(Decimal(otherNum).div(Decimal(form.totalPeriod - 1))).toSignificantDigits(2)
const crash = Decimal(
Decimal(otherNum).div(Decimal(form.totalPeriod - 1))
).toSignificantDigits(2);
for (let i = 0; i < form.totalPeriod - 1; i++) {
console.log('i', i);
const playApplyDate = dayjs(form.firstApplyDate)
......@@ -178,7 +185,7 @@
.format('YYYY-MM-DD');
if (i === form.totalPeriod - 2) {
const other = list.reduce((pre, cur) => {
return Decimal(pre).add(Decimal(cur.applyAmount))
return Decimal(pre).add(Decimal(cur.applyAmount));
}, 0);
list.push({
period: i + 1,
......@@ -202,7 +209,9 @@
const changePeriod = () => {
const list = [];
const crash = Decimal(Decimal(form.totalRepayAmount).div(Decimal(form.totalPeriod))).toSignificantDigits(2)
const crash = Decimal(
Decimal(form.totalRepayAmount).div(Decimal(form.totalPeriod))
).toSignificantDigits(2);
for (let i = 0; i < form.totalPeriod; i++) {
console.log('i', i);
const playApplyDate = dayjs(form.firstApplyDate)
......@@ -216,7 +225,7 @@
period: i + 1,
playApplyDate: playApplyDate,
repayStatus: 'pending',
applyAmount: Decimal(form.totalRepayAmount).sub(Decimal(other))
applyAmount: Decimal(form.totalRepayAmount).sub(Decimal(other)),
});
} else {
list.push({
......@@ -273,23 +282,23 @@
value: 6,
label: '6',
},
]
getByIdPlatforms(id).then(res => {
console.log('resres', res)
];
getByIdPlatforms(id).then((res) => {
console.log('resres', res);
if (res.success) {
if (res.result.maxStagesNum){
const list = options.value.filter(v => v.value > res.result.maxStagesNum)
list.forEach(e => {
e['disabled'] = true
})
if (res.result.maxStagesNum) {
const list = options.value.filter((v) => v.value > res.result.maxStagesNum);
list.forEach((e) => {
e['disabled'] = true;
});
}
if (res.result.minAmount){
minAmount.value = res.result.minAmount
if (res.result.minAmount) {
minAmount.value = res.result.minAmount;
}
}
//
})
}
//
});
};
const repayStatusOpt = [
{
value: 'pending',
......@@ -306,31 +315,39 @@
form.totalRepayAmount = 0;
form.remainingAmount = 0;
selectdList.value.forEach((item) => {
form.totalRepayAmount = Decimal(form.totalRepayAmount).add(Decimal(Number(item.remainingAmount) || 0));
form.remainingAmount = Decimal(form.remainingAmount).add(Decimal(Number(item.remainingAmount) || 0));
form.totalRepayAmount = Decimal(form.totalRepayAmount).add(
Decimal(Number(item.remainingAmount) || 0)
);
form.remainingAmount = Decimal(form.remainingAmount).add(
Decimal(Number(item.remainingAmount) || 0)
);
});
if(selectdList.value.length > 0) {
getPlatforms(selectdList.value[0].loanPlatform.id)
if (selectdList.value.length > 0) {
getPlatforms(selectdList.value[0].loanPlatform.id);
}
changePeriod()
changePeriod();
};
const onCheckboxAll = (flag) => {
if(flag.checked){
selectdList.value = flag.records
if (flag.checked) {
selectdList.value = flag.records;
} else {
selectdList.value = []
selectdList.value = [];
}
form.totalRepayAmount = 0;
form.remainingAmount = 0;
selectdList.value.forEach((item) => {
form.totalRepayAmount = Decimal(form.totalRepayAmount).add(Decimal(Number(item.remainingAmount) || 0));
form.remainingAmount = Decimal(form.remainingAmount).add(Decimal(Number(item.remainingAmount) || 0));
form.totalRepayAmount = Decimal(form.totalRepayAmount).add(
Decimal(Number(item.remainingAmount) || 0)
);
form.remainingAmount = Decimal(form.remainingAmount).add(
Decimal(Number(item.remainingAmount) || 0)
);
});
if(selectdList.value.length > 0) {
getPlatforms(selectdList.value[0].loanPlatform.id)
if (selectdList.value.length > 0) {
getPlatforms(selectdList.value[0].loanPlatform.id);
}
changePeriod()
}
changePeriod();
};
const config = reactive({
minHeight: 200,
columns: [
......@@ -423,20 +440,24 @@
form.totalRepayAmount = 0;
form.remainingAmount = 0;
caselist.forEach((item) => {
form.totalRepayAmount = Decimal(form.totalRepayAmount).add(Decimal(Number(item.remainingAmount) || 0));
form.remainingAmount = Decimal(form.remainingAmount).add(Decimal(Number(item.remainingAmount) || 0));
form.totalRepayAmount = Decimal(form.totalRepayAmount).add(
Decimal(Number(item.remainingAmount) || 0)
);
form.remainingAmount = Decimal(form.remainingAmount).add(
Decimal(Number(item.remainingAmount) || 0)
);
});
tabledata.value = caselist;
setTimeout(()=>{
setTimeout(() => {
if (ProTableRef.value.element) {
ProTableRef.value.element.setAllCheckboxRow(true)
selectdList.value = caselist
ProTableRef.value.element.setAllCheckboxRow(true);
selectdList.value = caselist;
// 获取最大分期数
if(selectdList.value.length > 0) {
getPlatforms(selectdList.value[0].loanPlatform.id)
if (selectdList.value.length > 0) {
getPlatforms(selectdList.value[0].loanPlatform.id);
}
}
}, 500)
}, 500);
changePeriod();
};
const emits = defineEmits(['success']);
......@@ -446,8 +467,9 @@
message: '修改分期数值后要确认',
plain: true,
});
const arr = splitdata.value.filter(v => v.applyAmount<minAmount.value)
if (arr.length > 0) return ElMessage.warning({
const arr = splitdata.value.filter((v) => v.applyAmount < minAmount.value);
if (arr.length > 0)
return ElMessage.warning({
message: '分期金额要大于借款平台的分期最低金额',
plain: true,
});
......
......@@ -440,7 +440,9 @@
return (
<>
<div className="flex justify-center">
<ElButton onClick={() => preview(row, 'images')} link type="primary">查看</ElButton>
<ElButton onClick={() => preview(row, 'images')} link type="primary">
查看
</ElButton>
</div>
</>
);
......@@ -457,7 +459,9 @@
return (
<>
<div className="flex justify-center">
<ElButton onClick={() => preview(row, 'notes')} link type="primary">查看</ElButton>
<ElButton onClick={() => preview(row, 'notes')} link type="primary">
查看
</ElButton>
</div>
</>
);
......@@ -472,9 +476,11 @@
default: ({ row, rowIndex }) => {
if (row.others && row.others.length > 0) {
return (
<>
<>
<div className="flex justify-center">
<ElButton onClick={() => preview(row, 'others')} link type="primary">查看</ElButton>
<ElButton onClick={() => preview(row, 'others')} link type="primary">
查看
</ElButton>
</div>
</>
);
......
......@@ -73,12 +73,19 @@
];
const config = reactive({
columns: [
{ field: 'caseId', title: '案件ID', search: { el: 'input', labelWidth: 80 }, width: 190,
{
field: 'caseId',
title: '案件ID',
search: { el: 'input', labelWidth: 80 },
width: 190,
slots: {
default: ({ row, rowIndex }) => {
return (
<>
<div onClick={() => onCellClick(row)} className=" text-blue-400 underline cursor-pointer">
<div
onClick={() => onCellClick(row)}
className=" text-blue-400 underline cursor-pointer"
>
{row.caseId}
</div>
</>
......@@ -250,7 +257,7 @@
},
},
},
]
],
});
const query = () => caseLRef.value?.search();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment