fujian_water_biz_doc/water_biz_interface_design.md

180 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 福建水务业务系统接口设计
## 目录
- [1. 接口概述](#1-接口概述)
- [2. 外部接口](#2-外部接口)
- [3. 内部接口](#3-内部接口)
- [4. 接口标准](#4-接口标准)
## 1. 接口概述
福建水务业务系统提供丰富的接口用于与外部系统集成以及系统内部各模块间的数据交换。接口设计遵循标准化、安全性、可扩展性的原则采用REST风格设计支持JSON数据格式。
## 2. 外部接口
### 2.1 与银行接口
#### 2.1.1 银行代扣接口
**功能描述**:通过银行系统自动从用户账户中扣除水费。
**接口规范**
- 接口方式文件交换或WebService
- 数据格式文本文件或XML
- 交换频率:每日或实时
#### 2.1.2 银行实时缴费接口
**功能描述**:用户在银行柜台、网上银行或手机银行实时缴纳水费。
**接口规范**
- 接口方式WebService或HTTP接口
- 数据格式XML或JSON
- 交换频率:实时
### 2.2 支付宝接口
**功能描述**:用户通过支付宝缴纳水费。
**接口规范**
- 接口方式HTTP接口
- 数据格式JSON
- 交换频率:实时
### 2.3 微信支付接口
**功能描述**:用户通过微信支付缴纳水费。
**接口规范**
- 接口方式HTTP接口
- 数据格式XML或JSON
- 交换频率:实时
### 2.4 短信接口
**功能描述**:向用户发送各类业务通知短信。
**接口规范**
- 接口方式HTTP接口
- 数据格式JSON
- 交换频率:实时
### 2.5 物联网集抄平台接口
**功能描述**:与物联网集抄平台交互,获取智能水表数据。
**接口规范**
- 接口方式HTTP接口或WebService
- 数据格式JSON或XML
- 交换频率:定时或实时
## 3. 内部接口
### 3.1 用户接口
#### 3.1.1 用户信息查询接口
**功能描述**:查询用户基本信息。
**接口规范**
- 请求方式GET
- 请求路径:/api/users/{userId}
- 返回格式JSON
#### 3.1.2 用户信息更新接口
**功能描述**:更新用户基本信息。
**接口规范**
- 请求方式PUT
- 请求路径:/api/users/{userId}
- 请求/返回格式JSON
### 3.2 水表接口
#### 3.2.1 水表信息查询接口
**功能描述**:查询水表基本信息。
**接口规范**
- 请求方式GET
- 请求路径:/api/meters/{meterId}
- 返回格式JSON
#### 3.2.2 水表读数上传接口
**功能描述**:上传水表读数。
**接口规范**
- 请求方式POST
- 请求路径:/api/meters/{meterId}/readings
- 请求/返回格式JSON
### 3.3 账单接口
#### 3.3.1 账单查询接口
**功能描述**:查询用户账单信息。
**接口规范**
- 请求方式GET
- 请求路径:/api/users/{userId}/bills
- 返回格式JSON
#### 3.3.2 缴费接口
**功能描述**:处理用户缴费。
**接口规范**
- 请求方式POST
- 请求路径:/api/bills/{billId}/payments
- 请求/返回格式JSON
### 3.4 工单接口
#### 3.4.1 工单创建接口
**功能描述**:创建业务工单。
**接口规范**
- 请求方式POST
- 请求路径:/api/workorders
- 请求/返回格式JSON
#### 3.4.2 工单状态更新接口
**功能描述**:更新工单处理状态。
**接口规范**
- 请求方式PUT
- 请求路径:/api/workorders/{workorderId}/status
- 请求/返回格式JSON
## 4. 接口标准
### 4.1 接口协议
系统接口主要采用以下协议:
- **RESTful API**:适用于系统内部模块间的交互以及移动应用等轻量级客户端
- **WebService**:适用于与外部系统的集成,特别是银行等传统机构
- **消息队列**:适用于异步处理的场景,如批量数据处理、通知推送等
### 4.2 数据格式
接口数据主要采用以下格式:
- **JSON**主要用于RESTful API接口结构简单清晰适合Web应用
- **XML**主要用于WebService接口兼容性好适合与传统系统对接
- **文本文件**:主要用于批量数据交换,如银行代扣文件等
### 4.3 接口安全
接口安全采用以下机制:
- **令牌认证**使用JWT(JSON Web Token)进行身份认证
- **签名验证**:请求参数签名,确保数据完整性
- **IP白名单**限制接口调用者的IP地址
- **传输加密**使用HTTPS协议加密传输数据
- **接口限流**:限制单位时间内的请求次数
- **访问日志**:记录所有接口调用情况