# 银行端小程序产品需求文档 (PRD) ## 版本历史 | 版本 | 日期 | 作者 | 变更说明 | |------|------|------|----------| | v1.0 | 2025-01-19 | 产品经理 | 初始版本,定义银行端小程序核心功能需求 | --- ## 1. 项目概述 ### 1.1 背景 基于宁夏智慧养殖监管平台的银行监管系统,为银行机构开发专用的微信小程序,实现移动端的信贷风险管理、抵押物监控、客户服务等核心业务功能。通过小程序的便携性和实时性,提升银行人员的工作效率和客户服务质量。 ### 1.2 业务目标 - **提升工作效率**:银行人员可随时随地处理业务,提高响应速度 - **降低风险成本**:实时监控抵押物状态,及时预警风险事件 - **优化客户体验**:为养殖企业客户提供便捷的金融服务入口 - **数字化转型**:推动银行业务向移动化、智能化方向发展 ### 1.3 产品定位 面向银行信贷风险管理人员和养殖企业客户的专业金融服务小程序,集成信贷管理、风险监控、客户服务于一体的移动端解决方案。 --- ## 2. 用户角色与用例 ### 2.1 核心用户角色 | 角色 | 描述 | 核心需求 | |------|------|----------| | 银行信贷经理 | 负责信贷业务审批和管理 | 客户信息查询、信贷审批、风险评估 | | 银行风控专员 | 负责风险监控和预警处理 | 抵押物监控、风险预警、数据分析 | | 银行客户经理 | 负责客户关系维护和服务 | 客户沟通、业务推广、服务支持 | | 养殖企业客户 | 银行信贷服务的使用者 | 贷款申请、还款管理、资产查询 | ### 2.2 用户故事 #### 用户故事1:移动端信贷管理 **As a** 银行信贷经理 **I want to** 在小程序中查看和处理信贷申请 **So that** 我可以随时随地处理业务,提高工作效率 #### 用户故事2:实时风险监控 **As a** 银行风控专员 **I want to** 实时监控抵押物状态和风险预警 **So that** 我可以及时发现和处理潜在风险 #### 用户故事3:便捷客户服务 **As a** 养殖企业客户 **I want to** 通过小程序查询贷款信息和还款计划 **So that** 我可以方便地管理自己的金融业务 --- ## 3. 功能需求 ### 3.1 核心功能模块 #### 3.1.1 用户认证与权限管理 **功能描述**:基于现有银行后端系统的用户认证和角色权限管理 **主要功能**: - 微信授权登录 - 手机号验证 - 角色权限验证 - 会话管理 - 安全退出 **验收标准**: - 支持微信一键登录 - 集成现有银行用户体系 - 实现基于角色的功能访问控制 - 会话超时自动跳转登录页 #### 3.1.2 客户信息管理 **功能描述**:银行客户信息的查询、管理和维护 **主要功能**: - 客户基本信息查询 - 客户信用评级查看 - 客户资产信息展示 - 客户联系记录管理 - 客户标签分类 **验收标准**: - 支持多条件客户搜索 - 客户信息实时同步 - 敏感信息权限控制 - 客户互动记录完整 #### 3.1.3 信贷业务管理 **功能描述**:信贷申请、审批、放款、还款全流程管理 **主要功能**: - 信贷申请查看和处理 - 信贷审批流程管理 - 放款进度跟踪 - 还款计划管理 - 逾期提醒处理 **验收标准**: - 审批流程状态实时更新 - 支持移动端审批操作 - 还款提醒及时推送 - 逾期处理流程完整 #### 3.1.4 抵押物监控 **功能描述**:养殖资产作为抵押物的实时监控和管理 **主要功能**: - 抵押物基本信息查看 - 抵押物价值评估 - 抵押物状态监控 - 抵押物变更记录 - 抵押物风险预警 **验收标准**: - 抵押物信息实时更新 - 价值评估算法准确 - 异常状态及时预警 - 变更记录完整追溯 #### 3.1.5 风险预警系统 **功能描述**:基于多维度数据的风险识别和预警 **主要功能**: - 风险等级评估 - 预警信息推送 - 风险处理建议 - 风险趋势分析 - 预警历史记录 **验收标准**: - 风险评估模型准确 - 预警推送及时有效 - 处理建议具有指导性 - 趋势分析直观易懂 #### 3.1.6 数据统计分析 **功能描述**:业务数据的统计分析和可视化展示 **主要功能**: - 业务数据概览 - 风险指标统计 - 客户分布分析 - 业绩指标展示 - 趋势图表分析 **验收标准**: - 数据统计准确及时 - 图表展示清晰美观 - 支持多维度分析 - 数据导出功能完善 ### 3.2 辅助功能模块 #### 3.2.1 消息通知 - 系统消息推送 - 业务提醒通知 - 风险预警通知 - 客户互动消息 #### 3.2.2 文档管理 - 合同文档查看 - 资料上传下载 - 文档版本管理 - 电子签名支持 #### 3.2.3 设置中心 - 个人信息设置 - 通知偏好设置 - 安全设置管理 - 系统参数配置 --- ## 4. 非功能需求 ### 4.1 性能要求 - **响应时间**:页面加载时间 < 3秒,接口响应时间 < 2秒 - **并发用户**:支持1000+并发用户同时使用 - **数据同步**:关键数据实时同步,延迟 < 5秒 - **离线支持**:支持基础功能离线查看 ### 4.2 安全要求 - **数据加密**:敏感数据传输和存储加密 - **访问控制**:基于角色的细粒度权限控制 - **审计日志**:完整的操作日志记录 - **合规性**:符合银行业数据安全规范 ### 4.3 兼容性要求 - **微信版本**:支持微信7.0+版本 - **设备兼容**:支持iOS 12+、Android 8+ - **屏幕适配**:支持主流手机屏幕尺寸 - **网络环境**:支持4G/5G/WiFi网络 ### 4.4 可扩展性要求 - **模块化设计**:支持功能模块独立开发和部署 - **接口标准化**:遵循RESTful API设计规范 - **配置化管理**:支持业务规则和参数配置化 - **多租户支持**:支持多银行机构独立使用 --- ## 5. 技术架构 ### 5.1 前端技术栈 - **开发框架**:Vue.js 3.x + uni-app - **状态管理**:Pinia - **UI组件**:自定义组件 + uni-app内置组件 - **网络请求**:基于uni.request()封装 - **构建工具**:HBuilderX + Vite ### 5.2 后端集成 - **API接口**:完全复用现有bank-backend系统 - **数据模型**:User、Account、Transaction、Role等 - **认证方式**:JWT Token认证 - **数据格式**:JSON格式数据交换 ### 5.3 部署架构 - **小程序发布**:微信小程序平台 - **后端服务**:复用现有bank-backend服务 - **数据库**:复用现有MySQL数据库 - **文件存储**:支持本地存储和云存储 --- ## 6. 数据字典 ### 6.1 核心数据实体 #### 6.1.1 用户信息 (User) | 字段名 | 类型 | 说明 | 示例 | |--------|------|------|------| | id | Integer | 用户ID | 1001 | | username | String | 用户名 | zhangsan | | real_name | String | 真实姓名 | 张三 | | phone | String | 手机号 | 13800138000 | | role_id | Integer | 角色ID | 1 | | status | Enum | 用户状态 | active | #### 6.1.2 账户信息 (Account) | 字段名 | 类型 | 说明 | 示例 | |--------|------|------|------| | id | Integer | 账户ID | 2001 | | account_number | String | 账户号码 | 6228480012345678 | | user_id | Integer | 用户ID | 1001 | | account_type | Enum | 账户类型 | savings | | balance | BigInt | 账户余额(分) | 100000 | | status | Enum | 账户状态 | active | #### 6.1.3 交易记录 (Transaction) | 字段名 | 类型 | 说明 | 示例 | |--------|------|------|------| | id | Integer | 交易ID | 3001 | | transaction_number | String | 交易流水号 | TXN20250119001 | | account_id | Integer | 账户ID | 2001 | | transaction_type | Enum | 交易类型 | deposit | | amount | BigInt | 交易金额(分) | 50000 | | status | Enum | 交易状态 | completed | --- ## 7. API规范 ### 7.1 设计原则 - **RESTful设计**:遵循REST架构风格 - **统一响应格式**:标准化的JSON响应结构 - **错误处理**:完善的错误码和错误信息 - **版本管理**:支持API版本控制 ### 7.2 核心接口 #### 7.2.1 用户认证 ``` POST /api/auth/login POST /api/auth/logout GET /api/auth/profile ``` #### 7.2.2 客户管理 ``` GET /api/users GET /api/users/:id POST /api/users PUT /api/users/:id ``` #### 7.2.3 账户管理 ``` GET /api/accounts GET /api/accounts/:id POST /api/accounts PUT /api/accounts/:id ``` #### 7.2.4 交易管理 ``` GET /api/transactions GET /api/transactions/:id POST /api/transactions/transfer GET /api/transactions/stats ``` ### 7.3 响应格式 ```json { "success": true, "data": {}, "message": "操作成功", "timestamp": "2025-01-19T10:30:00Z" } ``` --- ## 8. 部署要求 ### 8.1 硬件要求 - **服务器配置**:复用现有bank-backend服务器 - **存储空间**:小程序包大小 < 2MB - **网络带宽**:支持高并发访问 ### 8.2 软件要求 - **Node.js版本**:16.20.2(与保险小程序保持一致) - **微信开发者工具**:最新稳定版 - **后端服务**:复用现有bank-backend服务 ### 8.3 部署架构 - **开发环境**:本地开发 + 测试后端 - **测试环境**:微信开发者工具预览 - **生产环境**:微信小程序平台发布 --- ## 9. 项目计划 ### 9.1 开发阶段 #### 第一阶段:基础框架搭建(1周) - 项目初始化和环境配置 - 基础组件和工具类开发 - 用户认证和权限管理 - 基础页面框架搭建 #### 第二阶段:核心功能开发(3周) - 客户信息管理模块 - 信贷业务管理模块 - 抵押物监控模块 - 风险预警系统 #### 第三阶段:辅助功能开发(2周) - 数据统计分析模块 - 消息通知功能 - 文档管理功能 - 设置中心功能 #### 第四阶段:测试优化(1周) - 功能测试和性能优化 - 兼容性测试 - 安全性测试 - 用户体验优化 ### 9.2 里程碑 - **M1**:基础框架完成,用户认证可用 - **M2**:核心业务功能完成,基本可用 - **M3**:所有功能完成,进入测试阶段 - **M4**:测试完成,准备发布上线 --- ## 10. 风险与约束 ### 10.1 技术风险 - **微信平台限制**:小程序功能和性能限制 - **后端依赖**:依赖现有bank-backend系统稳定性 - **数据同步**:实时数据同步的技术挑战 - **安全合规**:银行业安全规范的严格要求 ### 10.2 业务风险 - **用户接受度**:银行人员对移动端工具的接受程度 - **业务复杂性**:银行业务流程的复杂性和特殊性 - **监管要求**:金融监管政策的变化影响 - **竞争压力**:同类产品的竞争压力 ### 10.3 项目约束 - **开发周期**:7周开发周期的时间约束 - **资源限制**:开发人员和测试资源的限制 - **预算控制**:项目预算和成本控制要求 - **质量标准**:银行级应用的高质量标准 --- ## 11. 附录 ### 11.1 参考文档 - 银行监管系统需求文档 - 现有bank-backend API文档 - 保险小程序开发经验总结 - 微信小程序开发规范 ### 11.2 术语表 - **PRD**:Product Requirements Document,产品需求文档 - **API**:Application Programming Interface,应用程序接口 - **JWT**:JSON Web Token,JSON网络令牌 - **RBAC**:Role-Based Access Control,基于角色的访问控制 ### 11.3 联系方式 - **产品经理**:负责需求确认和产品规划 - **技术负责人**:负责技术架构和开发指导 - **测试负责人**:负责测试计划和质量保证 - **项目经理**:负责项目进度和资源协调 --- **文档状态**:已完成 **最后更新**:2025-01-19 **下次评审**:待定