From c55c548308e6a1adef6670f8acf1ee5f57e77da6 Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期六, 28 六月 2025 15:46:25 +0800 Subject: [PATCH] feat: v2.2 --- src/views/Home/Home.vue | 82 ++++++++++++++++++++++++++++++++++++++--- 1 files changed, 76 insertions(+), 6 deletions(-) diff --git a/src/views/Home/Home.vue b/src/views/Home/Home.vue index 0394afb..81a68ce 100644 --- a/src/views/Home/Home.vue +++ b/src/views/Home/Home.vue @@ -88,14 +88,15 @@ effect="dark" :content="row.auditRemark" placement="top-start" - v-if="row.auditStatus === InsurancePolicyAuditStatusEnum.Reject" + v-if="row.auditStatus === InsurancePolicyAuditStatusEnum.Reject && row.auditRemark" + popper-class="max-width-popper" > - <div style="display: inline-flex; align-items: center"> + <div style="display: inline-flex; align-items: center; color: inherit"> {{ InsurancePolicyAuditStatusEnumText[row.auditStatus] }} <el-icon size="16" color="#3a71ff"><QuestionFilled /></el-icon> </div> </el-tooltip> - <el-text v-else> + <el-text v-else style="color: inherit"> {{ InsurancePolicyAuditStatusEnumText[row.auditStatus] }} </el-text> </template> @@ -138,6 +139,8 @@ InsurancePolicyAuditStatusEnumText, InsurancePolicyAuditStatusEnum, InsurancePolicyProductIdNumberEnum, + InsurancePolicyListPayStatusEnum, + InsurancePolicyListPayStatusEnumText, } from '@/constants'; import dayjs from 'dayjs'; import _ from 'lodash'; @@ -166,8 +169,7 @@ }, extraProps: { hide: (row: API.GetInsurancePageOutput) => - row.productIdNumber === InsurancePolicyProductIdNumberEnum.SJB || - row.status !== InsurancePolicyStatusEnum.Effecting, + row.productOnline || row.status !== InsurancePolicyStatusEnum.Effecting, }, }, { @@ -193,9 +195,47 @@ onClick: (role) => handleDownloadInsureFile(role), }, extraProps: { - hide: (row: API.GetInsurancePageOutput) => !row.insureBillUrl, + hide: (row: API.GetInsurancePageOutput) => row.productOnline || !row.insureBillUrl, }, }, + { + data: { + enCode: 'payBtn', + name: '鏀粯', + }, + emits: { + onClick: (role) => handlePay(role), + }, + extraProps: { + hide: (row: API.GetInsurancePageOutput) => + row.payStatus != InsurancePolicyListPayStatusEnum.WaitPay, + }, + }, + { + data: { + enCode: 'stampFilesBtn', + name: '淇濆崟涓嬭浇', + }, + emits: { + onClick: (role) => handleGoStampFiles(role), + }, + extraProps: { + hide: (row: API.GetInsurancePageOutput) => !(row.productOnline && row.anyPayComplete), + }, + }, + { + data: { + enCode: 'downloadInvoiceBtn', + name: '鍙戠エ涓嬭浇', + }, + emits: { + onClick: (role) => handleGoDownloadInvoice(role), + }, + extraProps: { + hide: (row: API.GetInsurancePageOutput) => !(row.productOnline && row.anyPayComplete), + }, + }, + // { // data: { // enCode: 'standarEndoBtn', @@ -259,6 +299,7 @@ formatter: (row: API.GetInsurancePageOutput) => row.amount == null ? '' : toThousand(row.amount), }, + payStatus: { type: 'enum', valueEnum: InsurancePolicyListPayStatusEnumText }, }, } ); @@ -488,4 +529,33 @@ // } } catch (error) {} } + +async function handleGoStampFiles(row: API.GetInsurancePageOutput) { + try { + router.push({ + name: 'InsurancePolicyStampFiles', + params: { + id: row.id, + }, + }); + } catch (error) {} +} + +function handlePay(row: API.GetInsurancePageOutput) { + router.push({ + name: 'InsurePayDetail', + params: { + id: row.id, + }, + }); +} + +function handleGoDownloadInvoice(row: API.GetInsurancePageOutput) { + router.push({ + name: 'InsureDownloadInvoice', + params: { + id: row.id, + }, + }); +} </script> -- Gitblit v1.9.1