Commit 89aa690c authored by 沈翠玲's avatar 沈翠玲

身份证脱敏

parent 672f9445
...@@ -280,6 +280,9 @@ ...@@ -280,6 +280,9 @@
.vxe-table--render-default .vxe-footer--column, .vxe-table--render-default .vxe-footer--column,
.vxe-table--render-default .vxe-header--column { .vxe-table--render-default .vxe-header--column {
line-height: 15px !important; line-height: 15px !important;
-webkit-user-select:none;
-ms-user-select:none;
user-select:none;
font-size: 12px; font-size: 12px;
} }
.vxe-table--render-default.size--small .vxe-header--column.col--ellipsis { .vxe-table--render-default.size--small .vxe-header--column.col--ellipsis {
......
//身份证号脱敏
export const idCardEncipher = (idCard) => {
if (!idCard) return ''
const reg = /^(.{8})(?:\d+)(.{4}$)/
const maskedIdCard = idCard.replace(reg,'\$1*****\$2')
return maskedIdCard
}
\ No newline at end of file
...@@ -62,7 +62,7 @@ ...@@ -62,7 +62,7 @@
const send = async (e, row) => { const send = async (e, row) => {
e.stopPropagation(); e.stopPropagation();
await ElMessageBox.confirm( await ElMessageBox.confirm(
`是否起客户名称为${row.name},身份证号为${row.idCard},创建时间为${row.createTime}的风控审核?`, `是否起客户名称为${row.name},身份证号为${row.idCard},创建时间为${row.createTime}的风控审核?`,
'提示', '提示',
{ {
confirmButtonText: '确认', confirmButtonText: '确认',
......
...@@ -86,6 +86,7 @@ ...@@ -86,6 +86,7 @@
import { ArrowDown } from '@element-plus/icons-vue'; import { ArrowDown } from '@element-plus/icons-vue';
import citydata from '../../../assets/citydata'; import citydata from '../../../assets/citydata';
import { onMounted } from 'vue'; import { onMounted } from 'vue';
import { idCardEncipher } from '@/utils/jiaoyan'
import { VxeTextEllipsis, VxeTooltip } from 'vxe-pc-ui'; import { VxeTextEllipsis, VxeTooltip } from 'vxe-pc-ui';
import { getPlatformPage } from '@/api/platform'; import { getPlatformPage } from '@/api/platform';
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
...@@ -382,6 +383,15 @@ ...@@ -382,6 +383,15 @@
showOverflow: 'tooltip', showOverflow: 'tooltip',
title: '身份证', title: '身份证',
width: 140, width: 140,
slots: {
default: ({ row }) => {
return (
<>
{idCardEncipher(row.borrower.idCard)}
</>
);
},
},
search: { el: 'input', props: { clearable: true }, key: 'idCard', labelWidth: 105 }, search: { el: 'input', props: { clearable: true }, key: 'idCard', labelWidth: 105 },
}, },
{ {
......
...@@ -91,6 +91,7 @@ ...@@ -91,6 +91,7 @@
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
import { getManageOrgPage } from '@/api/manageOrg'; import { getManageOrgPage } from '@/api/manageOrg';
import { getTenantPage } from '@/api/tenant'; import { getTenantPage } from '@/api/tenant';
import { idCardEncipher } from '@/utils/jiaoyan'
import { useDict } from '@/hooks/useDict'; import { useDict } from '@/hooks/useDict';
const { PhoneResultStatus, ReduceType, FlowStatus, FollowStatus, DistributeStatus, CaseStatus } = const { PhoneResultStatus, ReduceType, FlowStatus, FollowStatus, DistributeStatus, CaseStatus } =
useDict( useDict(
...@@ -383,6 +384,15 @@ ...@@ -383,6 +384,15 @@
showOverflow: 'tooltip', showOverflow: 'tooltip',
title: '身份证', title: '身份证',
width: 140, width: 140,
slots: {
default: ({ row }) => {
return (
<>
{idCardEncipher(row.borrower.idCard)}
</>
);
},
},
search: { el: 'input', props: { clearable: true }, key: 'idCard', labelWidth: 105 }, search: { el: 'input', props: { clearable: true }, key: 'idCard', labelWidth: 105 },
}, },
{ {
......
...@@ -142,6 +142,7 @@ ...@@ -142,6 +142,7 @@
import { VxeTextEllipsis, VxeTooltip } from 'vxe-pc-ui'; import { VxeTextEllipsis, VxeTooltip } from 'vxe-pc-ui';
import citydata from '../../../assets/citydata'; import citydata from '../../../assets/citydata';
import { onMounted } from 'vue'; import { onMounted } from 'vue';
import { idCardEncipher } from '@/utils/jiaoyan'
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
import { getPlatformPage } from '@/api/platform'; import { getPlatformPage } from '@/api/platform';
import { getManageOrgPage } from '@/api/manageOrg'; import { getManageOrgPage } from '@/api/manageOrg';
...@@ -494,6 +495,15 @@ ...@@ -494,6 +495,15 @@
title: '身份证', title: '身份证',
showOverflow: 'tooltip', showOverflow: 'tooltip',
width: 140, width: 140,
slots: {
default: ({ row }) => {
return (
<>
{idCardEncipher(row.borrower.idCard)}
</>
);
},
},
search: { el: 'input', props: { clearable: true }, key: 'idCard', labelWidth: 105 }, search: { el: 'input', props: { clearable: true }, key: 'idCard', labelWidth: 105 },
}, },
{ {
......
...@@ -200,7 +200,7 @@ ...@@ -200,7 +200,7 @@
<td class="label">分派CPE日期</td> <td class="label">分派CPE日期</td>
<td>{{ row?.cpeDate }}</td> <td>{{ row?.cpeDate }}</td>
<td class="label">本金余额</td> <td class="label">本金余额</td>
<td>{{ row?.principalBalance }}</td> <td>{{ row?.principalBalance && row?.sumRepayAmount ? Decimal(row?.principalBalance).sub(Decimal(row?.sumRepayAmount)) : row?.principalBalance }}</td>
<td class="label">本金余额折扣值</td> <td class="label">本金余额折扣值</td>
<td>{{ <td>{{
row?.principalBalance && row?.discount row?.principalBalance && row?.discount
......
...@@ -91,6 +91,7 @@ ...@@ -91,6 +91,7 @@
import { getCreditPage, getCreditTotal } from '@/api/property'; import { getCreditPage, getCreditTotal } from '@/api/property';
import { ElButton, ElMessage, ElTag } from 'element-plus'; import { ElButton, ElMessage, ElTag } from 'element-plus';
import { getTenantPage } from '@/api/tenant'; import { getTenantPage } from '@/api/tenant';
import { idCardEncipher } from '@/utils/jiaoyan'
import { useAuthStore } from '@/stores/modules/auth'; import { useAuthStore } from '@/stores/modules/auth';
const tagModalRef = ref(); const tagModalRef = ref();
const caseManRef = ref(); const caseManRef = ref();
...@@ -363,6 +364,15 @@ ...@@ -363,6 +364,15 @@
title: '身份证', title: '身份证',
showOverflow: 'tooltip', showOverflow: 'tooltip',
width: 140, width: 140,
slots: {
default: ({ row }) => {
return (
<>
{idCardEncipher(row.borrower.idCard)}
</>
);
},
},
search: { search: {
el: 'input', el: 'input',
props: { clearable: true }, props: { clearable: true },
......
...@@ -143,6 +143,7 @@ ...@@ -143,6 +143,7 @@
backDistribute, backDistribute,
fullWithdraw, fullWithdraw,
} from '@/api/allcation'; } from '@/api/allcation';
import { idCardEncipher } from '@/utils/jiaoyan'
import { reactive, ref } from 'vue'; import { reactive, ref } from 'vue';
import { ElMessageBox, ElMessage } from 'element-plus'; import { ElMessageBox, ElMessage } from 'element-plus';
import citydata from '../../../assets/citydata'; import citydata from '../../../assets/citydata';
...@@ -496,6 +497,15 @@ ...@@ -496,6 +497,15 @@
title: '身份证', title: '身份证',
showOverflow: 'tooltip', showOverflow: 'tooltip',
width: 140, width: 140,
slots: {
default: ({ row }) => {
return (
<>
{idCardEncipher(row.borrower.idCard)}
</>
);
},
},
search: { el: 'input', props: { clearable: true }, key: 'idCard', labelWidth: 105 }, search: { el: 'input', props: { clearable: true }, key: 'idCard', labelWidth: 105 },
}, },
{ {
......
...@@ -22,6 +22,7 @@ ...@@ -22,6 +22,7 @@
</template> </template>
<script setup lang="jsx"> <script setup lang="jsx">
import { idCardEncipher } from '@/utils/jiaoyan'
import { computed } from 'vue'; import { computed } from 'vue';
import { reactive, ref, nextTick } from 'vue'; import { reactive, ref, nextTick } from 'vue';
import { pengLoanExcel } from '@/api/import'; import { pengLoanExcel } from '@/api/import';
...@@ -83,6 +84,15 @@ ...@@ -83,6 +84,15 @@
{ {
field: 'borrower.idCard', field: 'borrower.idCard',
title: '身份证', title: '身份证',
slots: {
default: ({ row }) => {
return (
<>
{idCardEncipher(row.borrower.idCard)}
</>
);
},
},
width: 140, width: 140,
// search: { // search: {
// el: 'input', // el: 'input',
......
...@@ -77,6 +77,7 @@ ...@@ -77,6 +77,7 @@
import { getPlatformPage } from '@/api/platform'; import { getPlatformPage } from '@/api/platform';
import { VxeTextEllipsis, VxeTooltip } from 'vxe-pc-ui'; import { VxeTextEllipsis, VxeTooltip } from 'vxe-pc-ui';
import { sendRepairRecord } from '@/api/property'; import { sendRepairRecord } from '@/api/property';
import { idCardEncipher } from '@/utils/jiaoyan'
const uploadRef = ref(); const uploadRef = ref();
...@@ -257,6 +258,15 @@ ...@@ -257,6 +258,15 @@
field: 'borrower.idCard', field: 'borrower.idCard',
title: '借款人身份证', title: '借款人身份证',
showOverflow: 'tooltip', showOverflow: 'tooltip',
slots: {
default: ({ row }) => {
return (
<>
{idCardEncipher(row.borrower.idCard)}
</>
);
},
},
width: 140, width: 140,
// search: { // search: {
// el: 'input', // el: 'input',
......
...@@ -101,6 +101,8 @@ ...@@ -101,6 +101,8 @@
<script setup name="case-manage" lang="jsx"> <script setup name="case-manage" lang="jsx">
import tagModal from './components/tagModal.vue'; import tagModal from './components/tagModal.vue';
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
import { computed, reactive, ref, nextTick } from 'vue'; import { computed, reactive, ref, nextTick } from 'vue';
import { getCreditPage, getCreditTotal } from '@/api/property'; import { getCreditPage, getCreditTotal } from '@/api/property';
import { VxeTextEllipsis, VxeTooltip } from 'vxe-pc-ui'; import { VxeTextEllipsis, VxeTooltip } from 'vxe-pc-ui';
...@@ -114,6 +116,8 @@ ...@@ -114,6 +116,8 @@
import { getPlatformPage } from '@/api/platform'; import { getPlatformPage } from '@/api/platform';
import { getManageOrgPage } from '@/api/manageOrg'; import { getManageOrgPage } from '@/api/manageOrg';
import { useDict } from '@/hooks/useDict'; import { useDict } from '@/hooks/useDict';
import { idCardEncipher } from '@/utils/jiaoyan'
const { const {
PhoneResultStatus, PhoneResultStatus,
ReduceType, ReduceType,
...@@ -382,6 +386,15 @@ ...@@ -382,6 +386,15 @@
{ {
field: 'borrower.idCard', field: 'borrower.idCard',
title: '身份证', title: '身份证',
slots: {
default: ({ row }) => {
return (
<>
{idCardEncipher(row.borrower.idCard)}
</>
);
},
},
showOverflow: 'tooltip', showOverflow: 'tooltip',
width: 140, width: 140,
search: { 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