北京金水信息技术发展有限公司
2025年11月
现有业务系统由多家单位开发,在技术架构、数据格式、页面风格、菜单布局等方面存在差异,缺乏统一的接入要求和规范。本次项目将建立统一的技术架构、框架及界面风格,实现太湖水文业务系统统一集成管理,为各层级水文单位和部门提供统一而又个性化的业务支持。
前端界面采取强关联、松耦合方式进行集成整合,整合后的平台由两部分组成:
| 组成部分 | 说明 |
|---|---|
| 太湖流域水文综合驾驶舱 | 驾驶舱数据由各子系统提供对应的数据接口,系统集成单位进行数据集成整合 |
| 太湖流域水文综合业务平台 | 业务平台由集成单位提供用户、权限、系统菜单管理,各业务子系统提供具体的功能页进行路由嵌套,实现多系统集成管理 |
平台布局规范:
| 技术项 | 标准要求 |
|---|---|
| 核心框架 | Vue 3.0 版本 |
| UI组件库 | Element Plus,需引入官方样式文件,禁止修改核心样式(可通过自定义主题文件调整色彩,主题变量需提交备案) |
| 路由管理 | Vue Router,路由路径使用 /模块/功能 格式(如 /dataCenter/realtimeData),禁止使用动态路由参数隐藏功能 |
| 网络请求 | Axios,统一封装请求拦截器(添加Token、请求头)和响应拦截器(统一错误处理) |
| 兼容性要求 | 支持龙芯浏览器、360安全浏览器、华为浏览器 |
接口架构:
/api/v1//api/v1/waterData/realtime)请求方式: GET、POST
数据格式:
请求头规范:
Authorization(Token信息)Content-Type(application/json)响应格式标准:
成功响应:
{
"status": 200,
"message": "操作成功",
"result": [
{"key1": "value1", "key2": "value2"}
]
}
失败响应:
{
"status": 404,
"message": "具体错误原因",
"data": null
}
状态码规范:
| 状态码 | 含义 |
|---|---|
| 200 | 成功 |
| 400 | 参数错误 |
| 401 | 未授权 |
| 403 | 权限不足 |
| 404 | 资源不存在 |
| 500 | 系统错误 |
数据类型规范:
yyyy-MM-dd HH:mm:ss(如 2025-11-17 10:30:00)true/false(禁止使用 1/0)接口注入:
主色调:
禁用规则:
排序规则: 按"业务优先级+用户习惯"排序
命名规则:
所有前端组件需基于 Element Plus 开发,禁止自定义与标准组件功能重复的组件。
按钮规范:
表单规范:
*表格规范:
弹窗规范:
图表规范:
操作反馈:
数据操作:
异常处理:
主色调: 蓝色 #1c97e7
选择蓝色作为主色调的原因:
行高计算公式: 行高值 = 字号 × 1.5
| 字号 | 行高 |
|---|---|
| 14px | 21px |
| 16px | 24px |
#f2f2f2#e1e5e6#c2c2c2#646464#646464#a6a6a6#1c97e7#646464#1c97e7#646464#646464消息类型配色:
| 类型 | 主色 |
|---|---|
| 任务执行成功 | #1c97e7 |
| 任务执行失败 | #f74c47 |
| 任务正在执行 | #79c662 |
| 即将到期/即将失败 | #ffb83d |
#f5f5f5#1c97e7,距离左边缘15px基础样式:
列表页创建类按钮:
查询栏按钮:
| 按钮 | 背景色 | 字体颜色 | 边框 | 尺寸 |
|---|---|---|---|---|
| 查询 | #1c97e7 |
#fff |
无 | 34×80px |
| 重置 | #fff |
#1c97e7 |
#1c97e7 |
34×80px |
| 高级 | #f0f0f0 |
#1f1f1f |
无 | 34×80px |
保存按钮:
#1c97e7#fff删除按钮:
#eb462b#fff取消/关闭按钮:
#fff#e1e5e6#646464字体规范:
| 元素 | 字体大小 | 颜色 |
|---|---|---|
| 饼状图图例 | 13px | #1f1f1f |
| 饼状图配置文字 | 13px | #646464 |
| 其他统计图图例 | 13px | #1f1f1f |
| Y轴/X轴文字 | 12px | #646464 |
| Y轴外轴单位 | 12px | #c2c2c2 |
柱状图配色:
| 数量 | 配色方案 |
|---|---|
| 1个柱状图 | #1c97e7 |
| 2个柱状图 | #1c97e7 + #26b8f3 |
| 3个柱状图 | 2个#1c97e7 + 1个#26b8f3 |
| 4个柱状图 | 2个#1c97e7 + 2个#26b8f3 |
饼状图配色:
| 数量 | 配色方案 |
|---|---|
| 单色 | #1c97e7 |
| 双色 | #1c97e7 + #ffcc4d |
| 三色及以上 | 遵循色卡优先级:#1c97e7 + #ffcc4d + #93d347 + #ff8562 + #16aeed + #1c6de7 + ... |
状态颜色语义:
| 颜色 | 含义 | 使用场景 |
|---|---|---|
| 红色 | 警告、危险 | 未通过、异常、错误 |
| 绿色 | 理想、希望、生长 | 审批通过、运行中 |
| 蓝色 | 沉稳、理智、准确 | 审核通过、使用中 |
| 灰色 | 记忆、流失、诚恳、沉稳 | 已取消、未使用 |
本方案旨在构建统一信息共享平台,通过标准化接口集成各业务系统,实现跨系统数据安全共享。核心目标包括:
| 层级 | 职责 |
|---|---|
| 接入层 | 接收各业务系统请求,提供负载均衡、请求转发能力,支持 HTTP/HTTPS 协议,兼容 RESTful、WebService 接口风格 |
| 验证层 | 集中处理 Token 验证、用户身份验证、业务系统合法性校验,是安全防护核心层 |
| 接口适配层 | 对各业务系统接口进行标准化封装,屏蔽底层差异,提供统一调用入口 |
| 日志记录层 | 实时采集接口调用全量信息,包括请求参数、响应数据、调用时长等,支持持久化存储与快速查询 |
| 数据交互层 | 负责平台与各业务系统的数据传输,支持 JSON、XML 等通用数据格式,确保数据一致性 |
| 组件 | 说明 |
|---|---|
| 接口网关 | 统一接入入口,集成负载均衡、路由转发、限流熔断功能(采用 Spring Cloud Gateway) |
| 身份认证中心 | 管理 Token 发放、用户信息校验、业务系统注册授权 |
| 接口注册中心 | 存储各业务系统接口元数据(地址、参数、返回格式、权限要求等) |
| 日志存储与分析组件 | 采用 ELK 栈(Elasticsearch + Logstash + Kibana)或 ClickHouse,支持海量日志存储与可视化分析 |
Token 生成与发放:
业务系统注册:业务系统需先在平台完成注册,提交系统名称、负责人、接口用途等信息,经审核通过后,由身份认证中心发放系统唯一标识(AppID)和密钥(AppSecret)
Token 申请:业务系统通过 AppID + AppSecret 发起 POST 请求(/api/token/get),携带参数:
timestamp:时间戳,精确到秒nonce:随机字符串,32位signature:签名,算法:SHA256(AppID + AppSecret + timestamp + nonce)Token 返回:平台验证通过后,返回:
Access Token:有效期为2小时,字符串,64位Refresh Token:有效期为7天,用于刷新 Access TokenToken 验证规则:
Authorization 字段,格式:Bearer {Access Token}/api/token/refresh)异常处理:
用户身份标识:
UserID 和 UserToken(用户登录凭证,有效期12小时)验证流程:
异常处理:
接口设计标准:
/api/{业务域}/{系统标识}/{接口版本}/{接口名称}
/api/order/systemA/v1/queryOrder状态码规范:
| HTTP状态码 | 含义 | 业务状态码 |
|---|---|---|
| 200 OK | 请求成功 | {"code":200,"message":"success","data":{...}} |
| 400 Bad Request | 请求参数错误 | - |
| 500 Internal Server Error | 服务器内部错误 | - |
| - | 业务异常 | 600~699(如601:数据不存在、602:参数校验失败) |
请求参数规范:
order_no)page(页码,默认1)、page_size(每页条数,默认20,最大100)参数响应数据规范:
code(状态码)、message(提示信息)、data(业务数据)、timestamp(响应时间戳)四个字段message:"订单号不存在,order_no=123456")记录内容:
| 类别 | 记录项 |
|---|---|
| 基础信息 | 调用时间(精确到毫秒)、调用接口地址、请求方 IP、业务系统 AppID、用户 UserID |
| 请求信息 | HTTP 方法、请求头(脱敏处理 Authorization、Cookie)、请求参数(脱敏敏感字段如手机号、身份证号) |
| 响应信息 | 响应状态码、响应体(脱敏敏感数据)、调用时长(毫秒级) |
| 异常信息 | 异常类型、异常堆栈信息(仅存储关键片段)、错误码 |
记录存储与查询:
禁用弱加密算法(如 TLS 1.0/1.1)
请求/响应中的手机号、身份证号、银行卡号等敏感信息,存储时采用掩码处理
示例:手机号 138****1234
按 AppID 设置接口调用频率限制(如每秒100次)
防止恶意请求攻击
日志数据仅授权人员可查询
操作日志留存180天
文档版本: V1.0
编制单位: 北京金水信息技术发展有限公司
编制日期: 2025年11月