Files
ccdi/ruoyi-ui/src/views/ccdiProject/components/detail/preliminaryCheck.mock.js

193 lines
5.1 KiB
JavaScript

export const mockOverviewData = {
summary: {
title: "风险仪表盘",
subtitle: "风险仪表盘数据概览",
actions: [],
stats: [
{ key: "people", label: "总人数", value: 500, icon: "el-icon-user", tone: "blue" },
{ key: "riskPeople", label: "高风险", value: 10, icon: "el-icon-warning-outline", tone: "red" },
{ key: "medium", label: "中风险", value: 20, icon: "el-icon-s-opportunity", tone: "amber" },
{ key: "low", label: "低风险", value: 38, icon: "el-icon-data-line", tone: "green" },
{ key: "count", label: "无风险人员", value: 432, icon: "el-icon-document", tone: "blue" },
],
},
riskPeople: {
overviewList: [
{
name: "李四",
idNo: "331081199003230321",
department: "信息二部",
riskCount: 5,
riskLevel: "高风险",
riskLevelType: "danger",
modelCount: 3,
riskPoint: "跨地域转账频繁交易",
actionLabel: "查看详情",
},
{
name: "王五",
idNo: "331081199003231077",
department: "办公室",
riskCount: 2,
riskLevel: "中风险",
riskLevelType: "warning",
modelCount: 2,
riskPoint: "多工资转入频繁交易",
actionLabel: "查看详情",
},
{
name: "赵六",
idNo: "331081199003231099",
department: "信息五部",
riskCount: 2,
riskLevel: "低风险",
riskLevelType: "info",
modelCount: 1,
riskPoint: "频繁小额转账",
actionLabel: "查看详情",
},
],
},
riskModels: {
cardList: [
{ key: "large", title: "大额交易频繁", count: 45, peopleCount: 9 },
{ key: "salary", title: "可疑部门产薪异常", count: 32, peopleCount: 6 },
{ key: "transfer", title: "频繁转账交易", count: 28, peopleCount: 5 },
],
filterOptions: {
modelOptions: [
{ label: "大额交易频繁", value: "large" },
{ label: "频繁转账交易", value: "transfer" },
],
warningTypeOptions: [
{ label: "高风险", value: "high" },
{ label: "中风险", value: "medium" },
],
},
filterValues: {
model: "large",
warningType: "high",
},
peopleList: [
{
name: "黄明",
idNo: "331081199403150329",
department: "风险管理部",
warningType: "高风险",
modelName: "大额交易频繁",
actionLabel: "查看详情",
},
{
name: "王江",
idNo: "331081199102031209",
department: "运营管理部",
warningType: "中风险",
modelName: "频繁转账交易",
actionLabel: "查看详情",
},
],
},
riskDetails: {
transactionList: [
{
tradeDate: "2024-01-15",
counterparty: "李七",
direction: "转出",
accountNo: "李七(08901)",
summary: "转账",
amount: 500000,
actionLabel: "查看详情",
},
{
tradeDate: "2024-01-16",
counterparty: "王五",
direction: "转出",
accountNo: "王五(08901)",
summary: "转账",
amount: -200000,
actionLabel: "查看详情",
},
],
abnormalAccountList: [
{
accountNo: "62209****1234",
accountName: "李四",
bankName: "中国农业银行",
lastTradeDate: "2024-01-15",
handler: "正常",
actionLabel: "查看详情",
},
{
accountNo: "62209****5678",
accountName: "王五",
bankName: "中国工商银行",
lastTradeDate: "2024-01-10",
handler: "正常",
actionLabel: "查看详情",
},
],
},
};
const summaryStatMetaMap = mockOverviewData.summary.stats.reduce((acc, item) => {
acc[item.key] = {
icon: item.icon,
tone: item.tone,
};
return acc;
}, {});
function normalizeSummaryStats(stats) {
if (!Array.isArray(stats)) {
return [];
}
return stats.map((item) => ({
...summaryStatMetaMap[item.key],
...item,
}));
}
export function createOverviewLoadedData({ dashboardData, riskPeopleData } = {}) {
return {
...mockOverviewData,
summary: {
...mockOverviewData.summary,
...(dashboardData || {}),
actions: mockOverviewData.summary.actions,
stats: normalizeSummaryStats(dashboardData && dashboardData.stats),
},
riskPeople: {
...mockOverviewData.riskPeople,
overviewList: Array.isArray(riskPeopleData && riskPeopleData.overviewList)
? riskPeopleData.overviewList
: [],
},
};
}
export const mockOverviewStateData = {
loaded: mockOverviewData,
empty: {
summary: {
...mockOverviewData.summary,
stats: mockOverviewData.summary.stats.map((item) => ({
...item,
value: 0,
})),
},
riskPeople: {
overviewList: [],
},
riskModels: {
...mockOverviewData.riskModels,
cardList: [],
peopleList: [],
},
riskDetails: {
transactionList: [],
abnormalAccountList: [],
},
},
loading: mockOverviewData,
};