This commit is contained in:
liangzai 2025-04-10 16:05:16 +08:00
parent bbeb97db21
commit 52d8f2874f
4 changed files with 105 additions and 151 deletions

View File

@ -24,7 +24,7 @@ const route = useRoute()
//
onMounted(() => {
getGlobalNotify()
// getGlobalNotify()
})
//

View File

@ -50,7 +50,9 @@ const currentStatus =
text: "暂无相关婚姻记录",
bgClass: "bg-gray-200",
textClass: "text-gray-500",
description: "由于民政部门系统正在升级,当前查询功能暂未恢复。<br />1. 当系统恢复查询功能时,我们将第一时间更新报告(您可以在我的历史查询记录中查看),并通过短信通知您。<br />2. 如果30个工作日内未能查询到相关信息我们承诺将为您退款26.8元的婚姻状态查询费用。",
// description: "<br />1. <br />2. 30退26.8",
description: "暂无婚姻相关记录",
} : {
text: "无相关记录",
bgClass: "bg-gray-200",

View File

@ -113,7 +113,7 @@ const reportName = ref("")
const reportDateTime = ref(null)
const feature = ref("")
const isEmpty = ref(false)
const reportScore = ref(75); //
const reportScore = ref(0); //
onBeforeMount(() => {
const query = new URLSearchParams(window.location.search);
@ -201,12 +201,12 @@ const maskValue = computed(() => {
//
const calculateScore = (reportData) => {
// 0
// 00
let score = 0;
// 90
// 9090
const maxScore = 90;
//
//
const relativeWeights = {
//
'G34BJ03': 250, //
@ -237,7 +237,7 @@ const calculateScore = (reportData) => {
const availableAPIs = reportData.map(item => item.data.apiID).filter(id => relativeWeights[id]);
//
if (availableAPIs.length === 0) return 60; // 60
if (availableAPIs.length === 0) return 30; // 30
//
let totalWeight = 0;
@ -255,7 +255,7 @@ const calculateScore = (reportData) => {
actualWeights[apiID] = relativeWeights[apiID] * pointValue;
});
//
// -
reportData.forEach(item => {
const apiID = item.data.apiID;
const data = item.data.data;
@ -263,7 +263,7 @@ const calculateScore = (reportData) => {
//
if (!actualWeights[apiID]) return;
// API ID
// API ID
switch (apiID) {
case 'G09SC02': //
//
@ -271,61 +271,58 @@ const calculateScore = (reportData) => {
case 'G27BJ05': //
if (data) {
// 0
let noRisk = true;
//
let hasRisk = false;
for (const key in data) {
if (data[key] !== 0 && data[key] !== '0') {
noRisk = false;
if (data[key] !== 0 && data[key] !== '0' &&
key.indexOf('allnum') > -1 &&
!isNaN(parseInt(data[key])) &&
parseInt(data[key]) > 0) {
hasRisk = true;
break;
}
}
if (noRisk || !Object.keys(data).length) {
if (hasRisk) {
score += actualWeights[apiID];
}
} else {
//
score += actualWeights[apiID];
}
break;
case 'G28BJ05': //
if (data) {
// 0
let noRisk = true;
//
let hasRisk = false;
for (const key in data) {
if (data[key] !== 0 && data[key] !== '0') {
noRisk = false;
if (data[key] !== 0 && data[key] !== '0' &&
(key.indexOf('lendamt') > -1 || key.indexOf('num') > -1) &&
!isNaN(parseInt(data[key])) &&
parseInt(data[key]) > 0) {
hasRisk = true;
break;
}
}
if (noRisk || !Object.keys(data).length) {
if (hasRisk) {
score += actualWeights[apiID];
}
} else {
//
score += actualWeights[apiID];
}
break;
case 'G26BJ05': //
if (data) {
// 0
//
const excludeFields = ['swift_number', 'code', 'flag_specialList_c'];
let noRisk = true;
let hasRisk = false;
for (const key in data) {
if (!excludeFields.includes(key) && data[key] !== 0 && data[key] !== '0') {
noRisk = false;
hasRisk = true;
break;
}
}
if (noRisk || !Object.keys(data).length) {
if (hasRisk) {
score += actualWeights[apiID];
}
} else {
//
score += actualWeights[apiID];
}
break;
@ -334,23 +331,20 @@ const calculateScore = (reportData) => {
//
switch (data.risk_level) {
case 'A': //
score += actualWeights[apiID];
//
break;
case 'F': //
score += actualWeights[apiID] * 0.7;
score += actualWeights[apiID] * 0.3;
break;
case 'C': //
case 'D': //
score += actualWeights[apiID] * 0.3;
score += actualWeights[apiID] * 0.7;
break;
case 'B': //
case 'E': //
//
score += actualWeights[apiID];
break;
}
} else {
//
score += actualWeights[apiID];
}
break;
@ -385,12 +379,9 @@ const calculateScore = (reportData) => {
hasRisk = true;
}
if (!hasRisk) {
if (hasRisk) {
score += actualWeights[apiID];
}
} else {
//
score += actualWeights[apiID];
}
break;
@ -399,38 +390,29 @@ const calculateScore = (reportData) => {
// filterType
switch (data.filterType) {
case '0': //
score += actualWeights[apiID];
break;
case '3': //
score += actualWeights[apiID] * 0.7;
break;
case '2': //
score += actualWeights[apiID] * 0.3;
break;
case '1': //
//
break;
}
} else {
//
case '3': //
score += actualWeights[apiID] * 0.3;
break;
case '2': //
score += actualWeights[apiID] * 0.7;
break;
case '1': //
score += actualWeights[apiID];
break;
}
}
break;
case 'G19BJ02': //
if (data && data.is_second_card === false) {
score += actualWeights[apiID];
} else if (!data) {
//
if (data && data.is_second_card === true) {
score += actualWeights[apiID];
}
break;
case 'G02BJ02': //
if (data && data.online_months >= 6) {
score += actualWeights[apiID];
} else if (!data) {
//
if (data && data.online_months < 6) {
score += actualWeights[apiID];
}
break;
@ -439,19 +421,13 @@ const calculateScore = (reportData) => {
case 'G17BJ02': //
case 'KZEYS': //
case 'G20GZ01': //
if (data && data.is_consistent) {
score += actualWeights[apiID];
} else if (!data) {
//
if (data && data.is_consistent === false) {
score += actualWeights[apiID];
}
break;
case 'FIN019': //
if (data && data.is_blacklisted === false) {
score += actualWeights[apiID];
} else if (!data) {
//
if (data && data.is_blacklisted === true) {
score += actualWeights[apiID];
}
break;

View File

@ -111,6 +111,7 @@ const orderId = ref(null);
const orderNo = ref("")
const isEmpty = ref(false)
const isPending = ref(false)
const reportScore = ref(0)
onBeforeMount(() => {
const query = new URLSearchParams(window.location.search);
orderNo.value = query.get("out_trade_no");
@ -126,12 +127,12 @@ onBeforeMount(() => {
//
const calculateScore = (reportData) => {
// 0
// 00
let score = 0;
// 90
// 9090
const maxScore = 90;
//
//
const relativeWeights = {
//
'G34BJ03': 250, //
@ -162,7 +163,7 @@ const calculateScore = (reportData) => {
const availableAPIs = reportData.map(item => item.data.apiID).filter(id => relativeWeights[id]);
//
if (availableAPIs.length === 0) return 60; // 60
if (availableAPIs.length === 0) return 30; // 30
//
let totalWeight = 0;
@ -180,7 +181,7 @@ const calculateScore = (reportData) => {
actualWeights[apiID] = relativeWeights[apiID] * pointValue;
});
//
// -
reportData.forEach(item => {
const apiID = item.data.apiID;
const data = item.data.data;
@ -188,7 +189,7 @@ const calculateScore = (reportData) => {
//
if (!actualWeights[apiID]) return;
// API ID
// API ID
switch (apiID) {
case 'G09SC02': //
//
@ -196,61 +197,58 @@ const calculateScore = (reportData) => {
case 'G27BJ05': //
if (data) {
// 0
let noRisk = true;
//
let hasRisk = false;
for (const key in data) {
if (data[key] !== 0 && data[key] !== '0') {
noRisk = false;
if (data[key] !== 0 && data[key] !== '0' &&
key.indexOf('allnum') > -1 &&
!isNaN(parseInt(data[key])) &&
parseInt(data[key]) > 0) {
hasRisk = true;
break;
}
}
if (noRisk || !Object.keys(data).length) {
if (hasRisk) {
score += actualWeights[apiID];
}
} else {
//
score += actualWeights[apiID];
}
break;
case 'G28BJ05': //
if (data) {
// 0
let noRisk = true;
//
let hasRisk = false;
for (const key in data) {
if (data[key] !== 0 && data[key] !== '0') {
noRisk = false;
if (data[key] !== 0 && data[key] !== '0' &&
(key.indexOf('lendamt') > -1 || key.indexOf('num') > -1) &&
!isNaN(parseInt(data[key])) &&
parseInt(data[key]) > 0) {
hasRisk = true;
break;
}
}
if (noRisk || !Object.keys(data).length) {
if (hasRisk) {
score += actualWeights[apiID];
}
} else {
//
score += actualWeights[apiID];
}
break;
case 'G26BJ05': //
if (data) {
// 0
//
const excludeFields = ['swift_number', 'code', 'flag_specialList_c'];
let noRisk = true;
let hasRisk = false;
for (const key in data) {
if (!excludeFields.includes(key) && data[key] !== 0 && data[key] !== '0') {
noRisk = false;
hasRisk = true;
break;
}
}
if (noRisk || !Object.keys(data).length) {
if (hasRisk) {
score += actualWeights[apiID];
}
} else {
//
score += actualWeights[apiID];
}
break;
@ -259,23 +257,20 @@ const calculateScore = (reportData) => {
//
switch (data.risk_level) {
case 'A': //
score += actualWeights[apiID];
//
break;
case 'F': //
score += actualWeights[apiID] * 0.7;
score += actualWeights[apiID] * 0.3;
break;
case 'C': //
case 'D': //
score += actualWeights[apiID] * 0.3;
score += actualWeights[apiID] * 0.7;
break;
case 'B': //
case 'E': //
//
score += actualWeights[apiID];
break;
}
} else {
//
score += actualWeights[apiID];
}
break;
@ -310,12 +305,9 @@ const calculateScore = (reportData) => {
hasRisk = true;
}
if (!hasRisk) {
if (hasRisk) {
score += actualWeights[apiID];
}
} else {
//
score += actualWeights[apiID];
}
break;
@ -324,38 +316,29 @@ const calculateScore = (reportData) => {
// filterType
switch (data.filterType) {
case '0': //
score += actualWeights[apiID];
break;
case '3': //
score += actualWeights[apiID] * 0.7;
break;
case '2': //
score += actualWeights[apiID] * 0.3;
break;
case '1': //
//
break;
}
} else {
//
case '3': //
score += actualWeights[apiID] * 0.3;
break;
case '2': //
score += actualWeights[apiID] * 0.7;
break;
case '1': //
score += actualWeights[apiID];
break;
}
}
break;
case 'G19BJ02': //
if (data && data.is_second_card === false) {
score += actualWeights[apiID];
} else if (!data) {
//
if (data && data.is_second_card === true) {
score += actualWeights[apiID];
}
break;
case 'G02BJ02': //
if (data && data.online_months >= 6) {
score += actualWeights[apiID];
} else if (!data) {
//
if (data && data.online_months < 6) {
score += actualWeights[apiID];
}
break;
@ -364,19 +347,13 @@ const calculateScore = (reportData) => {
case 'G17BJ02': //
case 'KZEYS': //
case 'G20GZ01': //
if (data && data.is_consistent) {
score += actualWeights[apiID];
} else if (!data) {
//
if (data && data.is_consistent === false) {
score += actualWeights[apiID];
}
break;
case 'FIN019': //
if (data && data.is_blacklisted === false) {
score += actualWeights[apiID];
} else if (!data) {
//
if (data && data.is_blacklisted === true) {
score += actualWeights[apiID];
}
break;
@ -423,7 +400,6 @@ const getReport = async () => {
isPending.value = true
}
isDone.value = true
console.log(isDone.value)
}
}