diff --git a/pages.config.ts b/pages.config.ts
index 67b9841..3c7a4b5 100644
--- a/pages.config.ts
+++ b/pages.config.ts
@@ -58,13 +58,36 @@ export default defineUniPages({
{ path: 'me/index', style: { navigationBarTitleText: '银行中心' } },
],
},
+ {
+ root: 'pagesGovernment',
+ pages: [
+ { path: 'dashboard/index', style: { navigationBarTitleText: '政务工作台' } },
+ { path: 'bank/list', style: { navigationBarTitleText: '银行管理' } },
+ { path: 'bank/detail', style: { navigationBarTitleText: '银行详情' } },
+ { path: 'supervise/list', style: { navigationBarTitleText: '合规检查' } },
+ { path: 'risk/list', style: { navigationBarTitleText: '风险预警' } },
+ { path: 'me/index', style: { navigationBarTitleText: '个人中心' } },
+ ],
+ },
+ {
+ root: 'pagesInsurance',
+ pages: [
+ { path: 'dashboard/index', style: { navigationBarTitleText: '保险工作台' } },
+ { path: 'policy/list', style: { navigationBarTitleText: '保单管理' } },
+ { path: 'policy/detail', style: { navigationBarTitleText: '保单详情' } },
+ { path: 'claim/list', style: { navigationBarTitleText: '理赔处理' } },
+ { path: 'claim/detail', style: { navigationBarTitleText: '理赔详情' } },
+ { path: 'bank/list', style: { navigationBarTitleText: '合作银行' } },
+ { path: 'me/index', style: { navigationBarTitleText: '个人中心' } },
+ ],
+ },
],
// 分包预下载配置
preloadRule: {
'pages/login/index': {
network: 'all',
- packages: ['pagesMerchant', 'pagesBank'],
+ packages: ['pagesMerchant', 'pagesBank', 'pagesGovernment', 'pagesInsurance'],
},
},
})
diff --git a/src/pages.json b/src/pages.json
index 5fdd2b3..c12eac5 100644
--- a/src/pages.json
+++ b/src/pages.json
@@ -19,7 +19,9 @@
"network": "all",
"packages": [
"pagesMerchant",
- "pagesBank"
+ "pagesBank",
+ "pagesGovernment",
+ "pagesInsurance"
]
}
},
@@ -264,12 +266,6 @@
"navigationBarTitleText": "提现记录"
}
},
- {
- "path": "me/index",
- "style": {
- "navigationBarTitleText": "银行中心"
- }
- },
{
"path": "report/list",
"style": {
@@ -299,6 +295,102 @@
"style": {
"navigationBarTitleText": "拜访详情"
}
+ },
+ {
+ "path": "me/index",
+ "style": {
+ "navigationBarTitleText": "银行中心"
+ }
+ }
+ ]
+ },
+ {
+ "root": "pagesGovernment",
+ "pages": [
+ // GENERATED BY UNI-PAGES, PLATFORM: H5
+ {
+ "path": "dashboard/index",
+ "style": {
+ "navigationBarTitleText": "政务工作台"
+ }
+ },
+ {
+ "path": "bank/list",
+ "style": {
+ "navigationBarTitleText": "银行管理"
+ }
+ },
+ {
+ "path": "bank/detail",
+ "style": {
+ "navigationBarTitleText": "银行详情"
+ }
+ },
+ {
+ "path": "supervise/list",
+ "style": {
+ "navigationBarTitleText": "合规检查"
+ }
+ },
+ {
+ "path": "risk/list",
+ "style": {
+ "navigationBarTitleText": "风险预警"
+ }
+ },
+ {
+ "path": "me/index",
+ "style": {
+ "navigationBarTitleText": "个人中心"
+ }
+ }
+ ]
+ },
+ {
+ "root": "pagesInsurance",
+ "pages": [
+ // GENERATED BY UNI-PAGES, PLATFORM: H5
+ {
+ "path": "dashboard/index",
+ "style": {
+ "navigationBarTitleText": "保险工作台"
+ }
+ },
+ {
+ "path": "policy/list",
+ "style": {
+ "navigationBarTitleText": "保单管理"
+ }
+ },
+ {
+ "path": "policy/detail",
+ "style": {
+ "navigationBarTitleText": "保单详情"
+ }
+ },
+ {
+ "path": "claim/list",
+ "style": {
+ "navigationBarTitleText": "理赔处理"
+ }
+ },
+ {
+ "path": "claim/detail",
+ "style": {
+ "navigationBarTitleText": "理赔详情"
+ }
+ },
+ {
+ "path": "bank/list",
+ "style": {
+ "navigationBarTitleText": "合作银行"
+ }
+ },
+ {
+ "path": "me/index",
+ "style": {
+ "navigationBarTitleText": "个人中心"
+ }
}
]
}
diff --git a/src/pages/login/index.vue b/src/pages/login/index.vue
index a5a0a15..15ca3c5 100644
--- a/src/pages/login/index.vue
+++ b/src/pages/login/index.vue
@@ -25,6 +25,8 @@ const clientTypes = [
{ type: ClientType.USER, ...CLIENT_TYPE_CONFIG[ClientType.USER] },
{ type: ClientType.MERCHANT, ...CLIENT_TYPE_CONFIG[ClientType.MERCHANT] },
{ type: ClientType.BANK, ...CLIENT_TYPE_CONFIG[ClientType.BANK] },
+ { type: ClientType.GOVERNMENT, ...CLIENT_TYPE_CONFIG[ClientType.GOVERNMENT] },
+ { type: ClientType.INSURANCE, ...CLIENT_TYPE_CONFIG[ClientType.INSURANCE] },
]
// 选择客户端类型
diff --git a/src/pagesGovernment/bank/detail.vue b/src/pagesGovernment/bank/detail.vue
new file mode 100644
index 0000000..c20c65b
--- /dev/null
+++ b/src/pagesGovernment/bank/detail.vue
@@ -0,0 +1,142 @@
+
+{
+ style: {
+ navigationBarTitleText: '银行详情',
+ navigationBarBackgroundColor: '#fff',
+ navigationBarTextStyle: 'black',
+ },
+}
+
+
+
+
+
+
+
+ {{ bankInfo.name }}
+ 机构代码:{{ bankInfo.code }}
+
+
+
+
+ 核心指标
+
+
+
+
+
+
+
+
+
+ 监管记录
+
+
+
+
+
+
+
+ {{ item.title }}
+ {{ item.time }}
+
+
+ 检查结论:{{ item.resultText }}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pagesGovernment/bank/list.vue b/src/pagesGovernment/bank/list.vue
new file mode 100644
index 0000000..f2fa32e
--- /dev/null
+++ b/src/pagesGovernment/bank/list.vue
@@ -0,0 +1,161 @@
+
+{
+ style: {
+ navigationBarTitleText: '银行监管',
+ navigationBarBackgroundColor: '#fff',
+ navigationBarTextStyle: 'black',
+ },
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.name }}
+
+ 正常
+ 关注
+
+
+
+
+ {{ item.loanAmount }}
+ 监管贷款余额(万)
+
+
+ {{ item.customerCount }}
+ 在贷户数
+
+
+ {{ item.overdueRate }}%
+ 不良贷款率
+
+
+
+
+ 更新时间:{{ item.updateTime }}
+ 查看详情 >
+
+
+
+
+
+
+
+
+
diff --git a/src/pagesGovernment/dashboard/index.vue b/src/pagesGovernment/dashboard/index.vue
new file mode 100644
index 0000000..915da85
--- /dev/null
+++ b/src/pagesGovernment/dashboard/index.vue
@@ -0,0 +1,334 @@
+
+{
+ style: {
+ navigationBarTitleText: '政务工作台',
+ navigationBarBackgroundColor: '#0957DE',
+ navigationBarTextStyle: 'white',
+ },
+}
+
+
+
+
+
+
+
+
+
+
+
+ {{ stats.bankCount }}
+ 监管机构
+
+
+
+ {{ stats.loanBalance }}
+ 监管贷款余额
+
+
+
+ {{ stats.nplRatio }}
+ 不良贷款率
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.title }}
+ {{ item.time }}
+
+ 处理
+
+
+
+
+
+
+
+
+
+ {{ alert.levelText }}
+ {{ alert.message }}
+ {{ alert.bankName }}
+
+
+
+
+
+
+
+
+
diff --git a/src/pagesGovernment/me/index.vue b/src/pagesGovernment/me/index.vue
new file mode 100644
index 0000000..bf33a12
--- /dev/null
+++ b/src/pagesGovernment/me/index.vue
@@ -0,0 +1,98 @@
+
+{
+ style: {
+ navigationBarTitleText: '个人中心',
+ navigationBarBackgroundColor: '#0957DE',
+ navigationBarTextStyle: 'white',
+ },
+}
+
+
+
+
+
+
+
+
+
+
+ 监管员001
+ 市金融监管局 · 银行监管处
+
+
+
+
+
+
+
+ 退出登录
+
+
+
+
+
+
+
diff --git a/src/pagesGovernment/risk/list.vue b/src/pagesGovernment/risk/list.vue
new file mode 100644
index 0000000..25042b1
--- /dev/null
+++ b/src/pagesGovernment/risk/list.vue
@@ -0,0 +1,128 @@
+
+{
+ style: {
+ navigationBarTitleText: '风险预警',
+ navigationBarBackgroundColor: '#fff',
+ navigationBarTextStyle: 'black',
+ },
+}
+
+
+
+
+
+
+
+
+
+ {{ item.title }}
+ {{ item.time }}
+
+ {{ item.desc }}
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pagesGovernment/supervise/list.vue b/src/pagesGovernment/supervise/list.vue
new file mode 100644
index 0000000..09c40ae
--- /dev/null
+++ b/src/pagesGovernment/supervise/list.vue
@@ -0,0 +1,134 @@
+
+{
+ style: {
+ navigationBarTitleText: '贷款抽查',
+ navigationBarBackgroundColor: '#fff',
+ navigationBarTextStyle: 'black',
+ },
+}
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.title }}
+
+ 待执行
+
+
+
+ 被检机构:
+ {{ item.bankName }}
+
+
+ 计划日期:
+ {{ item.date }}
+
+
+
+
+
+
+
+
+ 暂无已完成任务
+
+
+
+
+
+
+
+
+
diff --git a/src/pagesInsurance/bank/list.vue b/src/pagesInsurance/bank/list.vue
new file mode 100644
index 0000000..028741d
--- /dev/null
+++ b/src/pagesInsurance/bank/list.vue
@@ -0,0 +1,126 @@
+
+{
+ style: {
+ navigationBarTitleText: '合作银行',
+ },
+}
+
+
+
+
+
+
+
+ 签约银行
+
+
+
+
+
+ {{ item.name }}
+
+ 合作{{ item.years }}年
+ 保单{{ item.policyCount }}
+
+
+ 对接人:
+ {{ item.contact }}
+
+ 联系
+
+
+
+
+
+
+
+
+
diff --git a/src/pagesInsurance/claim/detail.vue b/src/pagesInsurance/claim/detail.vue
new file mode 100644
index 0000000..a46fd4e
--- /dev/null
+++ b/src/pagesInsurance/claim/detail.vue
@@ -0,0 +1,200 @@
+
+{
+ style: {
+ navigationBarTitleText: '理赔详情',
+ },
+}
+
+
+
+
+
+
+
+
+
+ 申请信息
+
+
+ 理赔单号
+ {{ claim.claimNo }}
+
+
+ 申请时间
+ {{ claim.createTime }}
+
+
+ 理赔原因
+ {{ claim.reason }}
+
+
+ 附件材料
+ 查看附件 (3)
+
+
+
+
+
+
+ 关联保单
+
+
+ 保单号
+ {{ claim.policyNo }}
+
+
+ 被保险人
+ {{ claim.customerName }}
+
+
+ 承保金额
+ ¥{{ (500000).toLocaleString() }}
+
+
+ 查看保单详情
+
+
+
+
+ 审核流程
+
+
+
+
+
+
+
+
+
+
+ 驳回
+ 通过初审
+
+
+
+
+
+
+
diff --git a/src/pagesInsurance/claim/list.vue b/src/pagesInsurance/claim/list.vue
new file mode 100644
index 0000000..05c8a14
--- /dev/null
+++ b/src/pagesInsurance/claim/list.vue
@@ -0,0 +1,255 @@
+
+{
+ style: {
+ navigationBarTitleText: '理赔处理',
+ },
+}
+
+
+
+
+
+
+
+
+
+ CASE NO.{{ item.claimNo }}
+ {{ item.time }}
+
+
+
+
+ 申请金额
+ ¥{{ item.amount.toLocaleString() }}
+
+
+
+ 申请银行:
+ {{ item.bankName }}
+
+
+ 关联客户:
+ {{ item.customerName }}
+
+
+
+
+
+ 理赔原因:
+ {{ item.reason }}
+
+
+
+ {{ item.statusText }}
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pagesInsurance/dashboard/index.vue b/src/pagesInsurance/dashboard/index.vue
new file mode 100644
index 0000000..fac607f
--- /dev/null
+++ b/src/pagesInsurance/dashboard/index.vue
@@ -0,0 +1,355 @@
+
+{
+ style: {
+ navigationBarTitleText: '保险工作台',
+ navigationBarBackgroundColor: '#0957DE',
+ navigationBarTextStyle: 'white',
+ },
+}
+
+
+
+
+
+
+
+
+
+
+
+ {{ stats.policyCount }}
+ 有效保单
+
+
+
+ {{ stats.totalPremium }}万
+ 保费总额
+
+
+
+ {{ stats.pendingClaim }}
+ 待理赔
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.bankName }} - {{ item.customerName }}
+ 理赔金额:¥{{ item.amount.toLocaleString() }}
+
+ {{ item.time }}
+
+
+
+
+
+
+
+
+
+
+ 新增保单
+
+ 86
+ +12%
+
+
+
+ 保费收入
+
+ ¥128万
+ +8%
+
+
+
+ 理赔案件
+
+ 12
+ -5%
+
+
+
+ 赔付率
+
+ 2.3%
+ -
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pagesInsurance/me/index.vue b/src/pagesInsurance/me/index.vue
new file mode 100644
index 0000000..2d4b28c
--- /dev/null
+++ b/src/pagesInsurance/me/index.vue
@@ -0,0 +1,103 @@
+
+{
+ style: {
+ navigationBarTitleText: '个人中心',
+ navigationBarBackgroundColor: '#0957DE',
+ navigationBarTextStyle: 'white',
+ },
+}
+
+
+
+
+
+
+
+
+
+
+ 保险专员007
+ 核保部 / 高级专员
+
+
+
+
+
+
+
+ 退出登录
+
+
+
+
+
+
+
diff --git a/src/pagesInsurance/policy/detail.vue b/src/pagesInsurance/policy/detail.vue
new file mode 100644
index 0000000..6cb7a89
--- /dev/null
+++ b/src/pagesInsurance/policy/detail.vue
@@ -0,0 +1,231 @@
+
+{
+ style: {
+ navigationBarTitleText: '保单详情',
+ },
+}
+
+
+
+
+
+
+
+
+
+ 基本信息
+
+
+ 投保人
+ {{ policy.customerName }}
+
+
+ 身份证号
+ {{ policy.idCard }}
+
+
+ 联系电话
+ {{ policy.phone }}
+
+
+ 受益人
+ {{ policy.beneficiary }}({{ policy.bankName }})
+
+
+
+
+
+
+ 保障内容
+
+
+ 个人消费信贷保证保险
+ ¥{{ policy.amount.toLocaleString() }}
+
+
+
+
+ 保险费
+ ¥{{ policy.premium.toLocaleString() }}
+
+
+ 保险期限
+ {{ policy.startDate }} 至 {{ policy.endDate }}
+
+
+
+
+
+ 理赔记录
+
+
+
+ {{ claim.reason }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pagesInsurance/policy/list.vue b/src/pagesInsurance/policy/list.vue
new file mode 100644
index 0000000..092fa74
--- /dev/null
+++ b/src/pagesInsurance/policy/list.vue
@@ -0,0 +1,275 @@
+
+{
+ style: {
+ navigationBarTitleText: '保单管理',
+ },
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 投保客户
+ {{ item.customerName }}
+
+
+ 贷款银行
+ {{ item.bankName }}
+
+
+ 保额/保费
+
+ ¥{{ item.amount.toLocaleString() }}
+ / ¥{{ item.premium.toLocaleString() }}
+
+
+
+ 保险期限
+ {{ item.startDate }} 至 {{ item.endDate }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/store/user.ts b/src/store/user.ts
index a36141c..d773bdb 100644
--- a/src/store/user.ts
+++ b/src/store/user.ts
@@ -12,6 +12,8 @@ export enum ClientType {
USER = 'user',
MERCHANT = 'merchant',
BANK = 'bank',
+ GOVERNMENT = 'government',
+ INSURANCE = 'insurance',
}
/** 客户端类型配置 */
@@ -37,6 +39,20 @@ export const CLIENT_TYPE_CONFIG = {
description: '账款审核、金融服务',
homePage: '/pagesBank/dashboard/index',
},
+ [ClientType.GOVERNMENT]: {
+ label: '政务端',
+ icon: 'i-carbon-building-government',
+ color: '#d53f8c',
+ description: '合规监管、风险预警',
+ homePage: '/pagesGovernment/dashboard/index',
+ },
+ [ClientType.INSURANCE]: {
+ label: '保险端',
+ icon: 'i-carbon-umbrella',
+ color: '#3182ce',
+ description: '保单管理、理赔服务',
+ homePage: '/pagesInsurance/dashboard/index',
+ },
}
export const useUserStore = defineStore('user', {
diff --git a/src/tabbar/config.ts b/src/tabbar/config.ts
index 1277874..8a714fc 100644
--- a/src/tabbar/config.ts
+++ b/src/tabbar/config.ts
@@ -123,13 +123,71 @@ export const bankTabbarList: CustomTabBarItem[] = [
},
]
+// ==================== 政务端 Tabbar 配置 ====================
+export const governmentTabbarList: CustomTabBarItem[] = [
+ {
+ text: '工作台',
+ pagePath: 'pagesGovernment/dashboard/index',
+ iconType: 'unocss',
+ icon: 'i-carbon-dashboard',
+ },
+ {
+ pagePath: 'pagesGovernment/supervise/list',
+ text: '检查',
+ iconType: 'unocss',
+ icon: 'i-carbon-task',
+ },
+ {
+ pagePath: 'pagesGovernment/report/list',
+ text: '报表',
+ iconType: 'unocss',
+ icon: 'i-carbon-document',
+ },
+ {
+ pagePath: 'pagesGovernment/me/index',
+ text: '我的',
+ iconType: 'unocss',
+ icon: 'i-carbon-user',
+ },
+]
+
+// ==================== 保险端 Tabbar 配置 ====================
+export const insuranceTabbarList: CustomTabBarItem[] = [
+ {
+ text: '工作台',
+ pagePath: 'pagesInsurance/dashboard/index',
+ iconType: 'unocss',
+ icon: 'i-carbon-dashboard',
+ },
+ {
+ pagePath: 'pagesInsurance/policy/list',
+ text: '保单',
+ iconType: 'unocss',
+ icon: 'i-carbon-document-protected',
+ },
+ {
+ pagePath: 'pagesInsurance/claim/list',
+ text: '理赔',
+ iconType: 'unocss',
+ icon: 'i-carbon-request-quote',
+ },
+ {
+ pagePath: 'pagesInsurance/me/index',
+ text: '我的',
+ iconType: 'unocss',
+ icon: 'i-carbon-user',
+ },
+]
+
// 根据客户端类型获取对应的 tabbar 配置
-export type ClientTypeKey = 'user' | 'merchant' | 'bank'
+export type ClientTypeKey = 'user' | 'merchant' | 'bank' | 'government' | 'insurance'
export function getTabbarListByClientType(clientType: ClientTypeKey): CustomTabBarItem[] {
const tabbarMap: Record = {
user: userTabbarList,
merchant: merchantTabbarList,
bank: bankTabbarList,
+ government: governmentTabbarList,
+ insurance: insuranceTabbarList,
}
return tabbarMap[clientType] || userTabbarList
}