diff --git a/src/views/invest/onlineLendHistory/index.vue b/src/views/invest/onlineLendHistory/index.vue index 1b197f9..b0aba0a 100644 --- a/src/views/invest/onlineLendHistory/index.vue +++ b/src/views/invest/onlineLendHistory/index.vue @@ -38,6 +38,7 @@ {{ parseTime(scope.row.installmentDate, '{y}-{m}-{d}') }} + @@ -101,6 +102,11 @@ + + + + + @@ -139,7 +145,12 @@ - + + + + + + @@ -157,14 +168,14 @@ - + - + - + + {{ parseTime(scope.row.repaymentDate, '{y}-{m}-{d}') }} - + - + - + - - - + + + + + + + + + + + + + @@ -239,7 +271,7 @@ import { listBankcardLend } from '@/api/invest/bankcardlend' import { require } from '@/utils/require' import dayjs from 'dayjs' const { proxy } = getCurrentInstance() -const { settle_state, bank_card_type, posting_state } = proxy.useDict('settle_state', 'bank_card_type', 'posting_state') +const { settle_state, repayment_state } = proxy.useDict('settle_state', 'repayment_state') const installmentHistoryList = ref([]) const installmentDetailList = ref([]) @@ -256,6 +288,7 @@ const title = ref('') const titleDetail = ref('') const currentInstallmentHistoryId = ref('') const creditCardList = ref([]) +const debitCardList = ref([]) const operateList = ref([ { id: 'detail', icon: 'Grid', title: '查看添加明细', hasPermi: ['invest:installmentHistory:query'] }, { id: 'view', icon: 'View', title: '查看', hasPermi: ['invest:installmentHistory:query'] }, @@ -284,8 +317,16 @@ const data = reactive({ lendType: '1', pageSize: 1000 }, + queryDebitCardParams: { + pageNum: 1, + type: '1', + status: '1', + // lendType: '1', + pageSize: 1000 + }, rules: { bankCardLendId: [{ required: true, message: '贷款机构不能为空', trigger: 'blur' }], + receivingAccountId: [{ required: true, message: '收款账户不能为空', trigger: 'blur' }], installmentAmount: [{ required: true, message: '借款金额不能为空', trigger: 'blur' }], installmentDate: [{ required: true, message: '借款日期不能为空', trigger: 'blur' }], period: [{ required: true, message: '借款期数不能为空', trigger: 'blur' }], @@ -295,6 +336,7 @@ const data = reactive({ balance: [{ required: true, message: '余额不能为空', trigger: 'blur' }] }, rulesDetail: { + repaymentAccountId: [{ required: true, message: '还款账户不能为空', trigger: 'blur' }], installmentHistoryId: [{ required: true, message: '分期历史id不能为空', trigger: 'blur' }], bankCardLendId: [{ required: true, message: '信用卡贷款不能为空', trigger: 'blur' }], repaymentDate: [{ required: true, message: '还款日期不能为空', trigger: 'blur' }], @@ -326,6 +368,9 @@ const handleOperate = (operate, row) => { const handleDetailOperate = (operate, row) => { switch (operate) { + case 'view': + handleViewDetail(row) + break case 'edit': handleUpdateDetail(row) break @@ -337,7 +382,7 @@ const handleDetailOperate = (operate, row) => { } } -const { queryParams, queryCreditCardParams, form, rules, formDetail, rulesDetail } = toRefs(data) +const { queryParams, queryCreditCardParams, form, rules, formDetail, rulesDetail, queryDebitCardParams } = toRefs(data) /** 查询贷款机构卡管理列表 */ function getCreditCardList() { @@ -346,6 +391,13 @@ function getCreditCardList() { }) } +/** 查询储蓄卡卡管理列表 */ +function getDebitCardList() { + listBankcardLend(queryDebitCardParams.value).then((response) => { + debitCardList.value = response.rows + }) +} + /** 查询贷款账单列表 */ function getList() { loading.value = true @@ -380,12 +432,12 @@ function reset() { installmentAmount: null, installmentDate: null, period: null, - repaidPeriod: null, + repaidPeriod: 0, totalInterest: null, interestRate: null, dueDate: null, closeDate: null, - state: null, + state: '0', createBy: null, createTime: null, updateBy: null, @@ -523,6 +575,16 @@ function handleUpdate(row) { }) } +/** 查看按钮操作 */ +function handleViewDetail(row) { + resetDetail() + getInstallmentDetail(row.id).then((response) => { + formDetail.value = response.data + openDetail.value = true + titleDetail.value = '查看贷款明细' + }) +} + /** 修改按钮操作 */ function handleUpdateDetail(row) { resetDetail() @@ -558,27 +620,42 @@ function submitForm() { function submitFormDetail() { proxy.$refs.installmentDetailRef.validate((valid) => { if (valid) { - if (formDetail.value.id != null) { - updateInstallmentDetail(formDetail.value).then((response) => { - proxy.$modal.msgSuccess('修改明细成功') - openDetail.value = false - listInstallmentDetail({ installmentHistoryId: currentInstallmentHistoryId.value, pageNum: 1, pageSize: 1000 }).then((response) => { - installmentDetailList.value = response.rows + // 判断入账状态是否为1,如果是则弹出确认框 + if (formDetail.value.postingState === '1') { + proxy.$modal + .confirm('是否确认已还款?') + .then(function () { + executeSubmitDetail() }) - }) + .catch(() => {}) } else { - addInstallmentDetail(formDetail.value).then((response) => { - proxy.$modal.msgSuccess('新增明细成功') - openDetail.value = false - listInstallmentDetail({ installmentHistoryId: currentInstallmentHistoryId.value, pageNum: 1, pageSize: 1000 }).then((response) => { - installmentDetailList.value = response.rows - }) - }) + executeSubmitDetail() } } }) } +/** 执行提交明细操作 */ +function executeSubmitDetail() { + if (formDetail.value.id != null) { + updateInstallmentDetail(formDetail.value).then((response) => { + proxy.$modal.msgSuccess('修改明细成功') + openDetail.value = false + listInstallmentDetail({ installmentHistoryId: currentInstallmentHistoryId.value, pageNum: 1, pageSize: 1000 }).then((response) => { + installmentDetailList.value = response.rows + }) + }) + } else { + addInstallmentDetail(formDetail.value).then((response) => { + proxy.$modal.msgSuccess('新增明细成功') + openDetail.value = false + listInstallmentDetail({ installmentHistoryId: currentInstallmentHistoryId.value, pageNum: 1, pageSize: 1000 }).then((response) => { + installmentDetailList.value = response.rows + }) + }) + } +} + /** 删除按钮操作 */ function handleDelete(row) { const _ids = row.id || ids.value @@ -622,5 +699,6 @@ function handleExport() { } getCreditCardList() +getDebitCardList() getList()