From de43246cfe9e7ad4086cecc28254f626720fc00f Mon Sep 17 00:00:00 2001 From: liangzai <2440983361@qq.com> Date: Wed, 17 Dec 2025 18:10:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=EF=BC=9AJRZQ6F2A=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/ApplicationCountSection.vue | 11 +- .../components/ApplicationTotalSection.vue | 22 +-- .../components/BankInstitutionSection.vue | 9 +- src/ui/JRZQ6F2A/components/BankOrgSection.vue | 9 +- .../components/InstitutionTotalSection.vue | 21 +-- .../components/NBankInstitutionSection.vue | 9 +- .../JRZQ6F2A/components/NBankOrgSection.vue | 9 +- .../ProductTypeDistributionSection.vue | 21 +-- .../RecentIntensiveApplicationSection.vue | 35 +++- .../JRZQ6F2A/components/SummaryApplyStats.vue | 39 ++++- src/ui/JRZQ6F2A/index.vue | 40 +++-- src/ui/JRZQ6F2A/utils/dataParser.js | 157 ++++++++++-------- 12 files changed, 238 insertions(+), 144 deletions(-) diff --git a/src/ui/JRZQ6F2A/components/ApplicationCountSection.vue b/src/ui/JRZQ6F2A/components/ApplicationCountSection.vue index 1bb0829..5577281 100644 --- a/src/ui/JRZQ6F2A/components/ApplicationCountSection.vue +++ b/src/ui/JRZQ6F2A/components/ApplicationCountSection.vue @@ -52,6 +52,11 @@ const props = defineProps({ type: Object, required: true, default: () => ({}) + }, + // 维度:id(身份证) / cell(手机号) + dimension: { + type: String, + default: 'id' } }) @@ -61,7 +66,7 @@ const labels = periodKeys.map(key => PERIOD_MAP[key].label) // 总申请次数图表配置 const chartOption = computed(() => { const data = periodKeys.map(key => { - const counts = getApplicationCounts(props.data, key) + const counts = getApplicationCounts(props.data, key, props.dimension) return counts.total }) @@ -137,11 +142,11 @@ const chartOption = computed(() => { // 特殊时段(周末 / 夜间)图表配置 const specialChartOption = computed(() => { const weekendData = periodKeys.map(key => { - const s = getSpecialPeriodCounts(props.data, key) + const s = getSpecialPeriodCounts(props.data, key, props.dimension) return s.weekend || 0 }) const nightData = periodKeys.map(key => { - const s = getSpecialPeriodCounts(props.data, key) + const s = getSpecialPeriodCounts(props.data, key, props.dimension) return s.night || 0 }) diff --git a/src/ui/JRZQ6F2A/components/ApplicationTotalSection.vue b/src/ui/JRZQ6F2A/components/ApplicationTotalSection.vue index e1411ed..4b7fe48 100644 --- a/src/ui/JRZQ6F2A/components/ApplicationTotalSection.vue +++ b/src/ui/JRZQ6F2A/components/ApplicationTotalSection.vue @@ -1,9 +1,6 @@ - -{ -"cells": [], -"metadata": { -"language_info": { -"name": "python" -} -}, -"nbformat": 4, -"nbformat_minor": 2 -} \ No newline at end of file + \ No newline at end of file diff --git a/src/ui/JRZQ6F2A/components/RecentIntensiveApplicationSection.vue b/src/ui/JRZQ6F2A/components/RecentIntensiveApplicationSection.vue index 8226fb0..8e0fbf4 100644 --- a/src/ui/JRZQ6F2A/components/RecentIntensiveApplicationSection.vue +++ b/src/ui/JRZQ6F2A/components/RecentIntensiveApplicationSection.vue @@ -48,15 +48,38 @@ const props = defineProps({ required: true, default: () => ({}), }, + // 维度:id(身份证) / cell(手机号) + dimension: { + type: String, + default: 'id', + }, }) -const bankCons = computed(() => getValue(props.data?.als_lst_id_bank_consnum)) -const bankDays = computed(() => getValue(props.data?.als_lst_id_bank_csinteday)) -const nbankCons = computed(() => getValue(props.data?.als_lst_id_nbank_consnum)) -const nbankDays = computed(() => getValue(props.data?.als_lst_id_nbank_csinteday)) +const bankCons = computed(() => { + const dimKey = props.dimension === 'cell' ? 'cell' : 'id' + return getValue(props.data?.[`als_lst_${dimKey}_bank_consnum`]) +}) +const bankDays = computed(() => { + const dimKey = props.dimension === 'cell' ? 'cell' : 'id' + return getValue(props.data?.[`als_lst_${dimKey}_bank_csinteday`]) +}) +const nbankCons = computed(() => { + const dimKey = props.dimension === 'cell' ? 'cell' : 'id' + return getValue(props.data?.[`als_lst_${dimKey}_nbank_consnum`]) +}) +const nbankDays = computed(() => { + const dimKey = props.dimension === 'cell' ? 'cell' : 'id' + return getValue(props.data?.[`als_lst_${dimKey}_nbank_csinteday`]) +}) -const bankGap = computed(() => getValue(props.data?.als_lst_id_bank_inteday)) -const nbankGap = computed(() => getValue(props.data?.als_lst_id_nbank_inteday)) +const bankGap = computed(() => { + const dimKey = props.dimension === 'cell' ? 'cell' : 'id' + return getValue(props.data?.[`als_lst_${dimKey}_bank_inteday`]) +}) +const nbankGap = computed(() => { + const dimKey = props.dimension === 'cell' ? 'cell' : 'id' + return getValue(props.data?.[`als_lst_${dimKey}_nbank_inteday`]) +}) const hasAnyData = computed(() => { return ( diff --git a/src/ui/JRZQ6F2A/components/SummaryApplyStats.vue b/src/ui/JRZQ6F2A/components/SummaryApplyStats.vue index f20eb7e..b3e2259 100644 --- a/src/ui/JRZQ6F2A/components/SummaryApplyStats.vue +++ b/src/ui/JRZQ6F2A/components/SummaryApplyStats.vue @@ -1,16 +1,29 @@