diff --git a/output/新-数据库设计说明书.docx b/output/新-数据库设计说明书.docx index 26e6aca..1306ac3 100644 Binary files a/output/新-数据库设计说明书.docx and b/output/新-数据库设计说明书.docx differ diff --git a/output/新-数据库设计说明书_processed.md b/output/新-数据库设计说明书_processed.md index 2d0123e..21c9983 100644 --- a/output/新-数据库设计说明书_processed.md +++ b/output/新-数据库设计说明书_processed.md @@ -78,7 +78,7 @@ CJKmainfont: "PingFang SC" | 抄表管理 | `reading_*` | 抄表册本、抄表记录、价格政策、异常处理等 | 4个 | | 账务管理 | `billing_*`, `payment_*`, `prepay_*` | 开账记录、缴费记录、预付款账户、收费项目明细、票据信息、收费员会话等 | 6个 | | 账务调整 | `account_adjustment_*`, `split_*`, `refund_*`, `bad_debt_*` | 账务调整、分账、退款、呆坏账处理等 | 14个 | -| 工单管理 | `workorder_*` | 工单信息、工单回执等 | 2个 | +| 工单管理 | `workorder_*`, `business_*`, `report_*`, `audit_*` | 业务工单、上报工单、稽查工单、表务工单、工单日志、工单附件等 | 6个 | | 报装管理 | `installation_*` | 报装申请、报装流程等 | 2个 | | 银行接口 | `bank_*` | 银行交易记录等 | 1个 | | 第三方支付 | `thirdpay_*` | 第三方绑定、支付交易等 | 2个 | @@ -94,7 +94,7 @@ CJKmainfont: "PingFang SC" | 代收业务 | `realtime_payment_*` | 实时收费、接口日志、错误日志等 | 3个 | | 报装工程 | `construction_*` | 现场踏勘、施工方案、合同、施工进度等 | 4个 | | 移动端 | `mobile_*` | 移动端用户会话、缓存、登录日志、抄表任务、问题上报等 | 11个 | -| **总计** | | **涵盖水务营收系统全业务流程** | **143个** | +| **总计** | | **涵盖水务营收系统全业务流程** | **147个** | ## 系统公共表 (system_*) (基于 `sw_system_publcli.sql`) @@ -1598,7 +1598,103 @@ CJKmainfont: "PingFang SC" ## 工单管理表 (workorder_*) -### workorder_info (工单信息表) +### business_work_order (业务工单表) +| 字段名 | 类型 | 是否可空 | 默认值 | 注释 | +| :--- | :--- | :--- | :--- | :--- | +| id | int8 | N | nextval() | 主键 | +| order_no | varchar(32) | N | | 工单编号 | +| order_type | varchar(20) | N | | 工单类型:客户服务、账务处理、投诉建议、故障报修 | +| title | varchar(100) | N | | 工单标题 | +| description | varchar(500) | Y | | 工单描述 | +| priority | varchar(10) | N | 中 | 优先级:紧急、高、中、低 | +| customer_id | int8 | Y | | 客户ID | +| contact_phone | varchar(20) | Y | | 联系电话 | +| assign_user | varchar(100) | Y | | 指派人员 | +| order_status | int2 | N | 0 | 工单状态:0-待处理,1-处理中,2-已完成,3-已关闭 | +| expected_time | timestamp(6) | Y | | 预期完成时间 | +| actual_time | timestamp(6) | Y | | 实际完成时间 | +| process_note | text | Y | | 处理说明 | +| create_time | timestamp(6) | N | pg_systimestamp() | 创建时间 | +| update_time | timestamp(6) | N | pg_systimestamp() | 更新时间 | +| creator | varchar(100) | Y | | 创建人id | +| updater | varchar(100) | Y | | 更新人id | +| deleted | int2 | N | 0 | 是否删除 | +| tenant_id | int8 | N | 0 | 租户id | + +### work_order_log (工单处理日志表) +| 字段名 | 类型 | 是否可空 | 默认值 | 注释 | +| :--- | :--- | :--- | :--- | :--- | +| id | int8 | N | nextval() | 主键 | +| work_order_id | int8 | N | | 工单ID | +| operation_type | varchar(20) | N | | 操作类型:创建、派发、处理、完成、关闭 | +| operation_user | varchar(100) | N | | 操作人员 | +| operation_content | varchar(500) | Y | | 操作内容 | +| operation_time | timestamp(6) | N | pg_systimestamp() | 操作时间 | +| create_time | timestamp(6) | N | pg_systimestamp() | 创建时间 | +| creator | varchar(100) | Y | | 创建人id | +| tenant_id | int8 | N | 0 | 租户id | + +### work_order_attachment (工单附件表) +| 字段名 | 类型 | 是否可空 | 默认值 | 注释 | +| :--- | :--- | :--- | :--- | :--- | +| id | int8 | N | nextval() | 主键 | +| work_order_id | int8 | N | | 工单ID | +| file_name | varchar(200) | N | | 文件名称 | +| file_path | varchar(500) | N | | 文件路径 | +| file_size | int8 | Y | | 文件大小 | +| file_type | varchar(50) | Y | | 文件类型 | +| upload_time | timestamp(6) | N | pg_systimestamp() | 上传时间 | +| upload_user | varchar(100) | Y | | 上传人员 | +| create_time | timestamp(6) | N | pg_systimestamp() | 创建时间 | +| creator | varchar(100) | Y | | 创建人id | +| tenant_id | int8 | N | 0 | 租户id | + +### report_work_order (上报工单表) +| 字段名 | 类型 | 是否可空 | 默认值 | 注释 | +| :--- | :--- | :--- | :--- | :--- | +| id | int8 | N | nextval() | 主键 | +| report_no | varchar(32) | N | | 上报编号 | +| report_type | varchar(20) | N | | 上报类型:水表故障、管道问题、水质问题、其他问题 | +| report_title | varchar(100) | N | | 上报标题 | +| report_content | text | Y | | 上报内容 | +| report_location | varchar(200) | Y | | 上报地点 | +| longitude | numeric(15,6) | Y | | 经度 | +| latitude | numeric(15,6) | Y | | 纬度 | +| report_user | varchar(100) | N | | 上报人员 | +| report_time | timestamp(6) | N | pg_systimestamp() | 上报时间 | +| handle_status | int2 | N | 0 | 处理状态:0-待处理,1-处理中,2-已完成 | +| handle_user | varchar(100) | Y | | 处理人员 | +| handle_result | text | Y | | 处理结果 | +| create_time | timestamp(6) | N | pg_systimestamp() | 创建时间 | +| update_time | timestamp(6) | N | pg_systimestamp() | 更新时间 | +| creator | varchar(100) | Y | | 创建人id | +| updater | varchar(100) | Y | | 更新人id | +| deleted | int2 | N | 0 | 是否删除 | +| tenant_id | int8 | N | 0 | 租户id | + +### audit_work_order (稽查工单表) +| 字段名 | 类型 | 是否可空 | 默认值 | 注释 | +| :--- | :--- | :--- | :--- | :--- | +| id | int8 | N | nextval() | 主键 | +| audit_no | varchar(32) | N | | 稽查编号 | +| audit_type | varchar(20) | N | | 稽查类型:抄表稽查、水价稽查 | +| customer_id | int8 | N | | 客户ID | +| meter_id | int8 | Y | | 水表ID | +| audit_user | varchar(100) | N | | 稽查人员 | +| audit_time | timestamp(6) | N | | 稽查时间 | +| audit_result | varchar(20) | N | | 稽查结果:合格、不合格 | +| audit_note | text | Y | | 稽查备注 | +| evidence_files | text | Y | | 证据文件路径(JSON格式) | +| create_time | timestamp(6) | N | pg_systimestamp() | 创建时间 | +| update_time | timestamp(6) | N | pg_systimestamp() | 更新时间 | +| creator | varchar(100) | Y | | 创建人id | +| updater | varchar(100) | Y | | 更新人id | +| deleted | int2 | N | 0 | 是否删除 | +| tenant_id | int8 | N | 0 | 租户id | + +### workorder_info (表务工单信息表) +**说明**: 此表主要用于表务系统的换表、移表等工单管理,业务工单使用business_work_order表。 + | 字段名 | 类型 | 是否可空 | 默认值 | 注释 | | :--- | :--- | :--- | :--- | :--- | | id | int8 | N | nextval() | 主键 | @@ -3177,14 +3273,14 @@ CJKmainfont: "PingFang SC" **图表 1** -![图表 1](temp_mermaid_新-数据库设计说明书_43770/diagram_1.png) +![图表 1](temp_mermaid_新-数据库设计说明书_7752/diagram_1.png) ### 业务核心表关系图 **图表 2** -![图表 2](temp_mermaid_新-数据库设计说明书_43770/diagram_2.png) +![图表 2](temp_mermaid_新-数据库设计说明书_7752/diagram_2.png) ## 业务视图设计 diff --git a/output/新-概要设计说明书.docx b/output/新-概要设计说明书.docx index 2c4b81d..3610286 100644 Binary files a/output/新-概要设计说明书.docx and b/output/新-概要设计说明书.docx differ diff --git a/output/新-概要设计说明书_processed.md b/output/新-概要设计说明书_processed.md index e92f6d8..4dde0c7 100644 --- a/output/新-概要设计说明书_processed.md +++ b/output/新-概要设计说明书_processed.md @@ -85,6 +85,7 @@ CJKmainfont: "PingFang SC" - [模块6: 催缴管理](#模块6-催缴管理) - [模块7: 统计分析](#模块7-统计分析) - [模块8: 代收业务](#模块8-代收业务) + - [模块9: 业务工单](#模块9-业务工单) - [中间件和其他设计](#中间件和其他设计-1) - [对外接口](#对外接口-2) - [子系统3设计: 表务系统](#子系统3设计-表务系统) @@ -92,9 +93,8 @@ CJKmainfont: "PingFang SC" - [模块列表](#模块列表-2) - [模块设计](#模块设计-2) - [模块1: 表务基础管理](#模块1-表务基础管理) - - [模块2: 表务工单管理](#模块2-表务工单管理) - - [模块3: 仓库与库存管理](#模块3-仓库与库存管理) - - [模块4: 设备档案管理](#模块4-设备档案管理) + - [模块2: 仓库与库存管理](#模块2-仓库与库存管理) + - [模块3: 设备档案管理](#模块3-设备档案管理) - [子系统4设计: 报装系统](#子系统4设计-报装系统) - [功能与界面](#功能与界面-3) - [模块设计](#模块设计-3) @@ -222,7 +222,7 @@ CJKmainfont: "PingFang SC" **图表 1** -![图表 1](temp_mermaid_新-概要设计说明书_43770/diagram_1.png) +![图表 1](temp_mermaid_新-概要设计说明书_7752/diagram_1.png) ### 层级说明 @@ -257,7 +257,7 @@ CJKmainfont: "PingFang SC" **图表 2** -![图表 2](temp_mermaid_新-概要设计说明书_43770/diagram_2.png) +![图表 2](temp_mermaid_新-概要设计说明书_7752/diagram_2.png) ## 物理架构 @@ -269,13 +269,13 @@ CJKmainfont: "PingFang SC" **图表 3** -![图表 3](temp_mermaid_新-概要设计说明书_43770/diagram_3.png) +![图表 3](temp_mermaid_新-概要设计说明书_7752/diagram_3.png) ### 网络连接 **图表 4** -![图表 4](temp_mermaid_新-概要设计说明书_43770/diagram_4.png) +![图表 4](temp_mermaid_新-概要设计说明书_7752/diagram_4.png) ### 硬件配置规格 @@ -319,7 +319,7 @@ CJKmainfont: "PingFang SC" **图表 5** -![图表 5](temp_mermaid_新-概要设计说明书_43770/diagram_5.png) +![图表 5](temp_mermaid_新-概要设计说明书_7752/diagram_5.png) ### 容器化部署架构 @@ -329,7 +329,7 @@ CJKmainfont: "PingFang SC" **图表 6** -![图表 6](temp_mermaid_新-概要设计说明书_43770/diagram_6.png) +![图表 6](temp_mermaid_新-概要设计说明书_7752/diagram_6.png) ## 对外接口 @@ -362,7 +362,7 @@ CJKmainfont: "PingFang SC" **图表 7** -![图表 7](temp_mermaid_新-概要设计说明书_43770/diagram_7.png) +![图表 7](temp_mermaid_新-概要设计说明书_7752/diagram_7.png) ### 主要接口定义 @@ -430,7 +430,7 @@ CJKmainfont: "PingFang SC" **图表 8** -![图表 8](temp_mermaid_新-概要设计说明书_43770/diagram_8.png) +![图表 8](temp_mermaid_新-概要设计说明书_7752/diagram_8.png) **功能群说明:** @@ -447,7 +447,7 @@ CJKmainfont: "PingFang SC" **图表 9** -![图表 9](temp_mermaid_新-概要设计说明书_43770/diagram_9.png) +![图表 9](temp_mermaid_新-概要设计说明书_7752/diagram_9.png) ## 模块设计 @@ -585,7 +585,7 @@ CJKmainfont: "PingFang SC" **图表 10** -![图表 10](temp_mermaid_新-概要设计说明书_43770/diagram_10.png) +![图表 10](temp_mermaid_新-概要设计说明书_7752/diagram_10.png) ### 客户服务业务群 @@ -595,7 +595,7 @@ CJKmainfont: "PingFang SC" **图表 11** -![图表 11](temp_mermaid_新-概要设计说明书_43770/diagram_11.png) +![图表 11](temp_mermaid_新-概要设计说明书_7752/diagram_11.png) ## 模块设计 @@ -663,7 +663,7 @@ CJKmainfont: "PingFang SC" **图表 12** -![图表 12](temp_mermaid_新-概要设计说明书_43770/diagram_12.png) +![图表 12](temp_mermaid_新-概要设计说明书_7752/diagram_12.png) **业务规则:** @@ -704,7 +704,7 @@ CJKmainfont: "PingFang SC" **图表 13** -![图表 13](temp_mermaid_新-概要设计说明书_43770/diagram_13.png) +![图表 13](temp_mermaid_新-概要设计说明书_7752/diagram_13.png) **业务规则:** @@ -777,6 +777,26 @@ CJKmainfont: "PingFang SC" - **第三方支付**: 集成微信、支付宝等支付网关。 - **对账管理**: 定期与各渠道进行账务核对。 +### 模块9: 业务工单 + +**功能概述:** + +业务工单模块负责管理水务系统中的各类业务工单,实现工单的统一管理和流转,整合了原表务系统的工单管理功能。 + +**核心功能:** + +- **业务清单管理**: 查询和管理通过系统办理的日常业务工单及其进度信息。 +- **上报清单管理**: 处理通过移动端上报的问题工单,包括现场发现的问题。 +- **稽查工单管理**: 处理抄表稽查和水价稽查工单,确保数据准确性。 +- **换表工单管理**: 处理水表更换相关的工单,与表务仓库系统协同作业。 + +**业务规则:** + +1. 工单编号系统自动生成,支持不同类型的编号规则 +2. 紧急工单需要在规定时间内快速响应 +3. 工单处理过程需要详细记录操作日志 +4. 换表工单需要与表务仓库系统同步水表状态 + ## 中间件和其他设计 **缓存设计:** @@ -815,9 +835,10 @@ CJKmainfont: "PingFang SC" | 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | |---|---|---|---| | METER-001 | 表务基础管理 | 管理水表相关的基础参数 | 自行开发 | -| METER-002 | 表务工单管理 | 处理换表、修表、检表等日常业务 | 自行开发 | -| METER-003 | 仓库与库存管理 | 管理水表的入库、出库、盘点和调拨 | 自行开发 | -| METER-004 | 设备档案管理 | 管理每一块水表的唯一电子档案 | 自行开发 | +| METER-002 | 仓库与库存管理 | 管理水表的入库、出库、盘点和调拨 | 自行开发 | +| METER-003 | 设备档案管理 | 管理每一块水表的唯一电子档案 | 自行开发 | + +**注意**: 表务工单管理功能已整合到营收系统的业务工单模块中,实现统一的工单管理。 ## 模块设计 @@ -829,21 +850,14 @@ CJKmainfont: "PingFang SC" - **水表型号管理**: 根据厂家和口径,管理具体的水表型号。 - **水表量程管理**: 定义水表的计量范围。 -### 模块2: 表务工单管理 -- **功能描述**: 聚焦于业务流程驱动,管理所有与水表相关的现场作业任务。 -- **核心功能**: - - **工单创建**: 可由系统(如到期提醒)、其他子系统(如营收系统上报故障)或人工创建换表、维修、巡检等工单。 - - **工单流转**: 实现工单的派发、接收、处理、回填、审核的全流程闭环管理。 - - **领料与退料**: 工单处理过程中,涉及水表更换时,触发向仓库的领料申请;旧表则触发退料入库流程。 - -### 模块3: 仓库与库存管理 +### 模块2: 仓库与库存管理 - **功能描述**: 负责水表的实物管理,与工单流程解耦,作为一个独立的资源中心。 - **核心功能**: - **入库管理**: 包括新表采购入库、旧表回收(维修或报废)入库。 - **出库管理**: 根据工单领料申请,发放新水表。 - **库存管理**: 提供库存查询、盘点、调拨、库存预警等功能。 -### 模块4: 设备档案管理 +### 模块3: 设备档案管理 - **功能描述**: 作为表务系统的核心,统一管理所有水表的基础信息和生命周期状态。 - **核心功能**: - **水表信息登录**: 记录新购水表的型号、规格、供应商、批次等信息。 @@ -889,7 +903,7 @@ CJKmainfont: "PingFang SC" **图表 14** -![图表 14](temp_mermaid_新-概要设计说明书_43770/diagram_14.png) +![图表 14](temp_mermaid_新-概要设计说明书_7752/diagram_14.png) **业务规则:** diff --git a/output/新-详细设计说明书.docx b/output/新-详细设计说明书.docx index 9206c84..cfca2f1 100644 Binary files a/output/新-详细设计说明书.docx and b/output/新-详细设计说明书.docx differ diff --git a/output/新-详细设计说明书_processed.md b/output/新-详细设计说明书_processed.md index b6c23cc..60b66a1 100644 --- a/output/新-详细设计说明书_processed.md +++ b/output/新-详细设计说明书_processed.md @@ -238,35 +238,54 @@ CJKmainfont: "PingFang SC" - [功能描述](#功能描述-23) - [功能3: 银行托收](#功能3-银行托收) - [功能描述](#功能描述-24) + - [模块9: 业务工单](#模块9-业务工单) + - [功能](#功能-10) + - [功能1: 业务清单管理](#功能1-业务清单管理) + - [功能描述](#功能描述-25) + - [业务工单流程图](#业务工单流程图) + - [业务规则](#业务规则-22) + - [数据设计](#数据设计-17) + - [方法说明](#方法说明-17) + - [功能2: 上报清单管理](#功能2-上报清单管理) + - [功能描述](#功能描述-26) + - [上报工单处理流程图](#上报工单处理流程图) + - [业务规则](#业务规则-23) + - [数据设计](#数据设计-18) + - [功能3: 稽查工单管理](#功能3-稽查工单管理) + - [功能描述](#功能描述-27) + - [稽查工单流程图](#稽查工单流程图) + - [业务规则](#业务规则-24) + - [数据设计](#数据设计-19) + - [功能4: 换表工单管理](#功能4-换表工单管理) + - [功能描述](#功能描述-28) + - [换表工单业务流程图](#换表工单业务流程图) + - [业务规则](#业务规则-25) + - [数据设计](#数据设计-20) + - [方法说明](#方法说明-18) + - [接口](#接口-4) + - [接口1: 创建业务工单接口](#接口1-创建业务工单接口) + - [接口2: 工单处理接口](#接口2-工单处理接口) - [子系统3设计: 表务系统](#子系统3设计-表务系统) - [功能与界面](#功能与界面-2) - [模块列表](#模块列表-2) - [模块设计](#模块设计-2) - - [模块1: 表务工单管理](#模块1-表务工单管理) - - [功能](#功能-10) - - [功能1: 换表工单](#功能1-换表工单) - - [功能描述](#功能描述-25) - - [换表工单业务流程图](#换表工单业务流程图) - - [业务规则](#业务规则-22) - - [数据设计](#数据设计-17) - - [方法说明](#方法说明-17) - - [模块2: 表务仓库管理](#模块2-表务仓库管理) + - [模块1: 表务仓库管理](#模块1-表务仓库管理) - [功能](#功能-11) - [功能1: 水表库存管理](#功能1-水表库存管理) - - [功能描述](#功能描述-26) - - [业务规则](#业务规则-23) - - [数据设计](#数据设计-18) - - [方法说明](#方法说明-18) + - [功能描述](#功能描述-29) + - [业务规则](#业务规则-26) + - [数据设计](#数据设计-21) + - [方法说明](#方法说明-19) - [功能2: 物料管理](#功能2-物料管理) - - [功能描述](#功能描述-27) - - [业务规则](#业务规则-24) - - [模块3: 表务基础管理](#模块3-表务基础管理) + - [功能描述](#功能描述-30) + - [业务规则](#业务规则-27) + - [模块2: 表务基础管理](#模块2-表务基础管理) - [功能](#功能-12) - [功能1: 水表档案管理](#功能1-水表档案管理) - - [功能描述](#功能描述-28) - - [业务规则](#业务规则-25) - - [数据设计](#数据设计-19) - - [方法说明](#方法说明-19) + - [功能描述](#功能描述-31) + - [业务规则](#业务规则-28) + - [数据设计](#数据设计-22) + - [方法说明](#方法说明-20) - [子系统4设计: 报装系统](#子系统4设计-报装系统) - [功能与界面](#功能与界面-3) - [模块列表](#模块列表-3) @@ -274,28 +293,28 @@ CJKmainfont: "PingFang SC" - [模块1: 报装流程管理](#模块1-报装流程管理) - [功能](#功能-13) - [功能1: 报装流程](#功能1-报装流程) - - [功能描述](#功能描述-29) + - [功能描述](#功能描述-32) - [新用户报装业务流程图](#新用户报装业务流程图) - - [业务规则](#业务规则-26) - - [数据设计](#数据设计-20) - - [方法说明](#方法说明-20) + - [业务规则](#业务规则-29) + - [数据设计](#数据设计-23) + - [方法说明](#方法说明-21) - [模块2: 现场踏勘管理](#模块2-现场踏勘管理) - [功能](#功能-14) - [功能1: 现场勘查](#功能1-现场勘查) - - [功能描述](#功能描述-30) - - [业务规则](#业务规则-27) - - [数据设计](#数据设计-21) - - [方法说明](#方法说明-21) + - [功能描述](#功能描述-33) + - [业务规则](#业务规则-30) + - [数据设计](#数据设计-24) + - [方法说明](#方法说明-22) - [功能2: 技术方案设计](#功能2-技术方案设计) - - [功能描述](#功能描述-31) - - [业务规则](#业务规则-28) + - [功能描述](#功能描述-34) + - [业务规则](#业务规则-31) - [模块3: 报装档案管理](#模块3-报装档案管理) - [功能](#功能-15) - [功能1: 报装档案管理](#功能1-报装档案管理) - - [功能描述](#功能描述-32) - - [业务规则](#业务规则-29) - - [数据设计](#数据设计-22) - - [方法说明](#方法说明-22) + - [功能描述](#功能描述-35) + - [业务规则](#业务规则-32) + - [数据设计](#数据设计-25) + - [方法说明](#方法说明-23) - [子系统5设计: 客户服务](#子系统5设计-客户服务) - [功能与界面](#功能与界面-4) - [模块列表](#模块列表-4) @@ -303,34 +322,34 @@ CJKmainfont: "PingFang SC" - [模块1: 账户绑定管理](#模块1-账户绑定管理) - [功能](#功能-16) - [功能1: 账户绑定](#功能1-账户绑定) - - [功能描述](#功能描述-33) - - [业务规则](#业务规则-30) - - [数据设计](#数据设计-23) - - [方法说明](#方法说明-23) + - [功能描述](#功能描述-36) + - [业务规则](#业务规则-33) + - [数据设计](#数据设计-26) + - [方法说明](#方法说明-24) - [功能2: 账户管理](#功能2-账户管理) - - [功能描述](#功能描述-34) - - [业务规则](#业务规则-31) + - [功能描述](#功能描述-37) + - [业务规则](#业务规则-34) - [模块2: 信息查询服务](#模块2-信息查询服务) - [功能](#功能-17) - [功能1: 账单查询](#功能1-账单查询) - - [功能描述](#功能描述-35) - - [业务规则](#业务规则-32) - - [数据设计](#数据设计-24) - - [方法说明](#方法说明-24) + - [功能描述](#功能描述-38) + - [业务规则](#业务规则-35) + - [数据设计](#数据设计-27) + - [方法说明](#方法说明-25) - [模块3: 在线缴费服务](#模块3-在线缴费服务) - [功能](#功能-18) - [功能1: 多渠道支付](#功能1-多渠道支付) - - [功能描述](#功能描述-36) - - [业务规则](#业务规则-33) - - [数据设计](#数据设计-25) - - [方法说明](#方法说明-25) + - [功能描述](#功能描述-39) + - [业务规则](#业务规则-36) + - [数据设计](#数据设计-28) + - [方法说明](#方法说明-26) - [模块4: 电子发票服务](#模块4-电子发票服务) - [功能](#功能-19) - [功能1: 发票管理](#功能1-发票管理) - - [功能描述](#功能描述-37) - - [业务规则](#业务规则-34) - - [数据设计](#数据设计-26) - - [方法说明](#方法说明-26) + - [功能描述](#功能描述-40) + - [业务规则](#业务规则-37) + - [数据设计](#数据设计-29) + - [方法说明](#方法说明-27) - [子系统6设计: 手机抄表APP](#子系统6设计-手机抄表app) - [功能与界面](#功能与界面-5) - [模块列表](#模块列表-5) @@ -338,68 +357,68 @@ CJKmainfont: "PingFang SC" - [模块1: 登录模块](#模块1-登录模块) - [功能](#功能-20) - [功能1: 核心登录功能](#功能1-核心登录功能) - - [功能描述](#功能描述-38) - - [业务规则](#业务规则-35) + - [功能描述](#功能描述-41) + - [业务规则](#业务规则-38) - [业务流程](#业务流程-13) - [界面设计要点](#界面设计要点) - - [数据设计](#数据设计-27) - - [方法说明](#方法说明-27) + - [数据设计](#数据设计-30) + - [方法说明](#方法说明-28) - [模块2: 首页搜索模块](#模块2-首页搜索模块) - [功能](#功能-21) - [功能1: 搜索框功能](#功能1-搜索框功能) - - [功能描述](#功能描述-39) - - [业务规则](#业务规则-36) + - [功能描述](#功能描述-42) + - [业务规则](#业务规则-39) - [业务流程](#业务流程-14) - [界面设计要点](#界面设计要点-1) - - [数据设计](#数据设计-28) - - [方法说明](#方法说明-28) + - [数据设计](#数据设计-31) + - [方法说明](#方法说明-29) - [模块3: 采集任务管理模块](#模块3-采集任务管理模块) - [功能](#功能-22) - [功能1: 任务列表管理](#功能1-任务列表管理) - - [功能描述](#功能描述-40) - - [业务规则](#业务规则-37) + - [功能描述](#功能描述-43) + - [业务规则](#业务规则-40) - [业务流程](#业务流程-15) - [界面设计要点](#界面设计要点-2) - - [数据设计](#数据设计-29) - - [方法说明](#方法说明-29) + - [数据设计](#数据设计-32) + - [方法说明](#方法说明-30) - [功能2: 单户采集详情](#功能2-单户采集详情) - - [功能描述](#功能描述-41) - - [业务规则](#业务规则-38) + - [功能描述](#功能描述-44) + - [业务规则](#业务规则-41) - [界面设计要点](#界面设计要点-3) - [模块4: 换表工单模块](#模块4-换表工单模块) - [功能](#功能-23) - [功能1: 换表工单处理流程](#功能1-换表工单处理流程) - - [功能描述](#功能描述-42) - - [业务规则](#业务规则-39) + - [功能描述](#功能描述-45) + - [业务规则](#业务规则-42) - [业务流程](#业务流程-16) - [界面设计要点](#界面设计要点-4) - - [数据设计](#数据设计-30) - - [方法说明](#方法说明-30) + - [数据设计](#数据设计-33) + - [方法说明](#方法说明-31) - [模块5: 其他工单模块](#模块5-其他工单模块) - [功能](#功能-24) - [功能1: 复水工单](#功能1-复水工单) - - [功能描述](#功能描述-43) + - [功能描述](#功能描述-46) - [业务流程](#业务流程-17) - [功能2: 稽查任务](#功能2-稽查任务) - - [功能描述](#功能描述-44) + - [功能描述](#功能描述-47) - [功能3: 抄表稽查](#功能3-抄表稽查) - - [功能描述](#功能描述-45) + - [功能描述](#功能描述-48) - [界面设计要点](#界面设计要点-5) - [功能4: 问题上报](#功能4-问题上报) - - [功能描述](#功能描述-46) + - [功能描述](#功能描述-49) - [界面设计要点](#界面设计要点-6) - - [数据设计](#数据设计-31) + - [数据设计](#数据设计-34) - [模块6: 个人信息与系统设置模块](#模块6-个人信息与系统设置模块) - [功能](#功能-25) - [功能1: 个人信息管理](#功能1-个人信息管理) - - [功能描述](#功能描述-47) + - [功能描述](#功能描述-50) - [界面设计要点](#界面设计要点-7) - [功能2: 账户安全配置](#功能2-账户安全配置) - - [功能描述](#功能描述-48) + - [功能描述](#功能描述-51) - [功能3: 系统维护选项](#功能3-系统维护选项) - - [功能描述](#功能描述-49) + - [功能描述](#功能描述-52) - [界面设计要点](#界面设计要点-8) - - [数据设计](#数据设计-32) + - [数据设计](#数据设计-35) - [关键业务规则与注意事项](#关键业务规则与注意事项) - [数据校验规则](#数据校验规则) - [状态一致性规则](#状态一致性规则) @@ -529,7 +548,7 @@ CJKmainfont: "PingFang SC" **图表 1** -![图表 1](temp_mermaid_新-详细设计说明书_43770/diagram_1.png) +![图表 1](temp_mermaid_新-详细设计说明书_7752/diagram_1.png) ### 系统数据流向图 @@ -537,7 +556,7 @@ CJKmainfont: "PingFang SC" **图表 2** -![图表 2](temp_mermaid_新-详细设计说明书_43770/diagram_2.png) +![图表 2](temp_mermaid_新-详细设计说明书_7752/diagram_2.png) ### 表现层 @@ -571,7 +590,7 @@ CJKmainfont: "PingFang SC" **图表 3** -![图表 3](temp_mermaid_新-详细设计说明书_43770/diagram_3.png) +![图表 3](temp_mermaid_新-详细设计说明书_7752/diagram_3.png) ### 容器化部署架构 @@ -579,7 +598,7 @@ CJKmainfont: "PingFang SC" **图表 4** -![图表 4](temp_mermaid_新-详细设计说明书_43770/diagram_4.png) +![图表 4](temp_mermaid_新-详细设计说明书_7752/diagram_4.png) ### 硬件配置规格表 @@ -1070,7 +1089,7 @@ h、**错误响应码** **图表 5** -![图表 5](temp_mermaid_新-详细设计说明书_43770/diagram_5.png) +![图表 5](temp_mermaid_新-详细设计说明书_7752/diagram_5.png) ###### 数据设计 @@ -1105,7 +1124,7 @@ h、**错误响应码** **图表 6** -![图表 6](temp_mermaid_新-详细设计说明书_43770/diagram_6.png) +![图表 6](temp_mermaid_新-详细设计说明书_7752/diagram_6.png) ###### 业务规则 @@ -1272,7 +1291,7 @@ f、**响应参数** **图表 7** -![图表 7](temp_mermaid_新-详细设计说明书_43770/diagram_7.png) +![图表 7](temp_mermaid_新-详细设计说明书_7752/diagram_7.png) ###### 数据设计 @@ -1406,7 +1425,7 @@ f、**响应参数** **图表 8** -![图表 8](temp_mermaid_新-详细设计说明书_43770/diagram_8.png) +![图表 8](temp_mermaid_新-详细设计说明书_7752/diagram_8.png) ###### 输入输出数据 @@ -1509,7 +1528,7 @@ f、**响应参数** **图表 9** -![图表 9](temp_mermaid_新-详细设计说明书_43770/diagram_9.png) +![图表 9](temp_mermaid_新-详细设计说明书_7752/diagram_9.png) ###### 数据设计 @@ -1570,7 +1589,7 @@ f、**响应参数** **图表 10** -![图表 10](temp_mermaid_新-详细设计说明书_43770/diagram_10.png) +![图表 10](temp_mermaid_新-详细设计说明书_7752/diagram_10.png) ###### 数据设计 @@ -1631,7 +1650,7 @@ f、**响应参数** **图表 11** -![图表 11](temp_mermaid_新-详细设计说明书_43770/diagram_11.png) +![图表 11](temp_mermaid_新-详细设计说明书_7752/diagram_11.png) ###### 数据设计 @@ -1691,7 +1710,7 @@ f、**响应参数** **图表 12** -![图表 12](temp_mermaid_新-详细设计说明书_43770/diagram_12.png) +![图表 12](temp_mermaid_新-详细设计说明书_7752/diagram_12.png) ###### 数据设计 @@ -1752,7 +1771,7 @@ f、**响应参数** **图表 13** -![图表 13](temp_mermaid_新-详细设计说明书_43770/diagram_13.png) +![图表 13](temp_mermaid_新-详细设计说明书_7752/diagram_13.png) ###### 数据设计 @@ -1813,7 +1832,7 @@ f、**响应参数** **图表 14** -![图表 14](temp_mermaid_新-详细设计说明书_43770/diagram_14.png) +![图表 14](temp_mermaid_新-详细设计说明书_7752/diagram_14.png) ###### 数据设计 @@ -1891,7 +1910,7 @@ f、**响应参数** **图表 15** -![图表 15](temp_mermaid_新-详细设计说明书_43770/diagram_15.png) +![图表 15](temp_mermaid_新-详细设计说明书_7752/diagram_15.png) ###### 数据设计 @@ -1969,7 +1988,7 @@ f、**响应参数** **图表 16** -![图表 16](temp_mermaid_新-详细设计说明书_43770/diagram_16.png) +![图表 16](temp_mermaid_新-详细设计说明书_7752/diagram_16.png) ###### 数据设计 @@ -2124,7 +2143,7 @@ f、**响应参数** **图表 17** -![图表 17](temp_mermaid_新-详细设计说明书_43770/diagram_17.png) +![图表 17](temp_mermaid_新-详细设计说明书_7752/diagram_17.png) ###### 数据设计 @@ -2154,6 +2173,276 @@ f、**响应参数** 与银行系统对接,支持银行托收业务,包括托收文件生成、托收结果处理、托收对账等功能。 +### 模块9: 业务工单 + +#### 功能 + +业务工单模块负责管理水务系统中的各类业务工单,包括客户服务工单、维修工单、稽查工单等,实现工单的全生命周期管理。 + +##### 功能1: 业务清单管理 + +###### 功能描述 + +业务清单管理用于查询和管理通过系统办理的日常业务工单及其进度信息,包括客户工单和账务处理工单。 + +###### 业务工单流程图 + + +**图表 18** + +![图表 18](temp_mermaid_新-详细设计说明书_7752/diagram_18.png) + + +###### 业务规则 + +1. **工单创建规则**: + - 工单编号系统自动生成,格式:BW+年月日+4位流水号 + - 紧急工单需要在1小时内响应 + - 普通工单需要在8小时内派发 + +2. **工单分类规则**: + - 客户服务类:开户、过户、更名、停用等 + - 账务处理类:调账、退款、销账等 + - 投诉建议类:服务投诉、建议反馈等 + - 故障报修类:设施故障、管道漏水等 + +3. **工单处理规则**: + - 工单必须在规定时间内处理完成 + - 处理过程需要详细记录操作日志 + - 重要工单需要上级审核确认 + +###### 数据设计 + +主要涉及以下数据表: +- `business_work_order`:业务工单表 +- `work_order_log`:工单处理日志表 +- `work_order_attachment`:工单附件表 + +###### 方法说明 + +| 方法名 | 方法作用 | 输入参数(是否必填) | 返回数据 | +|---|---|---|---| +| createBusinessWorkOrder | 创建业务工单 | workOrderInfo:工单信息(必填) | WorkOrder对象 | +| queryWorkOrderList | 查询工单列表 | queryCondition:查询条件(选填) | PageInfo | +| processWorkOrder | 处理工单 | workOrderId:工单ID(必填),processInfo:处理信息(必填) | Boolean类型:true/false | +| closeWorkOrder | 完成工单 | workOrderId:工单ID(必填),closeInfo:完成信息(必填) | Boolean类型:true/false | + +##### 功能2: 上报清单管理 + +###### 功能描述 + +上报清单管理用于处理通过移动端上报的问题工单,包括抄表员现场发现的问题、客户报告的异常等。 + +###### 上报工单处理流程图 + + +**图表 19** + +![图表 19](temp_mermaid_新-详细设计说明书_7752/diagram_19.png) + + +###### 业务规则 + +1. **上报规则**: + - 上报必须包含现场照片或视频 + - 上报地点必须准确定位 + - 紧急问题需要标注紧急级别 + +2. **处理规则**: + - 紧急上报1小时内响应 + - 普通上报24小时内处理 + - 处理结果需要现场确认 + +###### 数据设计 + +主要涉及以下数据表: +- `report_work_order`:上报工单表 +- `report_attachment`:上报附件表 +- `report_location`:上报位置表 + +##### 功能3: 稽查工单管理 + +###### 功能描述 + +稽查工单管理用于处理抄表稽查和水价稽查工单,确保抄表数据和水价政策的准确执行。 + +###### 稽查工单流程图 + + +**图表 20** + +![图表 20](temp_mermaid_新-详细设计说明书_7752/diagram_20.png) + + +###### 业务规则 + +1. **稽查标准**: + - 抄表稽查:核实抄表数据准确性 + - 水价稽查:核实价格政策执行情况 + - 稽查必须有现场证据支持 + +2. **稽查频率**: + - 重点客户每月稽查 + - 普通客户季度抽查 + - 异常客户随时稽查 + +###### 数据设计 + +主要涉及以下数据表: +- `audit_work_order`:稽查工单表 +- `audit_result`:稽查结果表 +- `audit_evidence`:稽查证据表 + +##### 功能4: 换表工单管理 + +###### 功能描述 + +换表工单管理处理因故障、到期、客户申请等原因需要更换水表的业务工单,与表务系统的工单管理功能整合。 + +###### 换表工单业务流程图 + + +**图表 21** + +![图表 21](temp_mermaid_新-详细设计说明书_7752/diagram_21.png) + + +###### 业务规则 + +1. **换表条件**: + - 水表故障无法正常计量 + - 水表到期需要强制更换 + - 客户申请且符合换表条件 + +2. **换表流程**: + - 必须先申请新表再进行换表 + - 换表过程需要拍照记录 + - 新旧表码必须准确记录 + +3. **质量控制**: + - 换表工单必须当日完成 + - 换表质量需要客户签字确认 + - 异常情况需要详细说明 + +###### 数据设计 + +主要涉及以下数据表: +- `meter_work_order`:表务工单表(复用表务系统) +- `meter_replacement_log`:水表更换日志表 +- `work_order_material`:工单用料表 + +###### 方法说明 + +| 方法名 | 方法作用 | 输入参数(是否必填) | 返回数据 | +|---|---|---|---| +| createMeterWorkOrder | 创建换表工单 | workOrderInfo:工单信息(必填) | WorkOrder对象 | +| assignMeterWorkOrder | 派发换表工单 | workOrderId:工单ID(必填),assigneeId:指派人员ID(必填) | Boolean类型:true/false | +| completeMeterReplacement | 完成换表 | workOrderId:工单ID(必填),replacementInfo:换表信息(必填) | Boolean类型:true/false | +| queryMeterWorkOrderList | 查询换表工单列表 | queryCondition:查询条件(选填) | PageInfo | + +#### 接口 + +##### 接口1: 创建业务工单接口 + +a、**接口名称** + +| 创建业务工单接口 | +|---| + +b、**接口描述** + +| 1. 创建各类业务工单
2. 自动分配工单编号
3. 设置工单优先级和处理期限 | +|---| + +c、**请求地址** + +| /admin-api/revenue/work-order/create | +|---| + +d、**请求方式** + +| POST | +|---| + +e、**请求参数** + +2) Body参数 + +| 参数名 | 必选 | 类型 | 限制条件 | 说明 | 备注 | +|---|---|---|---|---|---| +| orderType | 是 | string | | 工单类型 | 客户服务/账务处理/投诉建议/故障报修 | +| title | 是 | string | 长度≤100 | 工单标题 | | +| description | 是 | string | 长度≤500 | 工单描述 | | +| priority | 是 | string | | 优先级 | 紧急/高/中/低 | +| customerId | 否 | number | > 0 | 客户ID | 客户相关工单必填 | +| contactPhone | 否 | string | | 联系电话 | | + +f、**响应参数** + +2) 返回示例 + +```json +{ + "code": 0, + "msg": "成功", + "data": { + "workOrderId": 1001, + "orderNo": "BW20241219001", + "status": "待处理", + "expectedTime": "2024-12-20 18:00:00" + } +} +``` + +##### 接口2: 工单处理接口 + +a、**接口名称** + +| 工单处理接口 | +|---| + +b、**接口描述** + +| 1. 处理工单并更新状态
2. 记录处理日志
3. 支持附件上传 | +|---| + +c、**请求地址** + +| /admin-api/revenue/work-order/process | +|---| + +d、**请求方式** + +| POST | +|---| + +e、**请求参数** + +2) Body参数 + +| 参数名 | 必选 | 类型 | 限制条件 | 说明 | 备注 | +|---|---|---|---|---|---| +| workOrderId | 是 | number | > 0 | 工单ID | | +| processResult | 是 | string | | 处理结果 | 完成/转派/升级 | +| processNote | 是 | string | 长度≤500 | 处理说明 | | +| attachments | 否 | array | | 附件列表 | 支持图片、文档 | + +f、**响应参数** + +2) 返回示例 + +```json +{ + "code": 0, + "msg": "成功", + "data": { + "workOrderId": 1001, + "status": "已完成", + "processTime": "2024-12-19 15:30:00" + } +} +``` + # 子系统3设计: 表务系统 ## 功能与界面 @@ -2165,73 +2454,21 @@ f、**响应参数** **主要功能模块:** -- **表务工单管理**:工单创建、派发、处理、验收的全流程管理 - **表务仓库管理**:水表库存管理、出入库记录、库存预警、物料管理 - **表务基础管理**:水表档案、维修记录、使用历史、技术参数管理 +**注意**:表务工单管理功能已整合到营收系统的业务工单模块中,避免功能重复。 + ## 模块列表 | 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | |---|---|---|---| -| METER-001 | 表务工单管理 | 水表维修更换工单全流程管理 | 自行开发 | -| METER-002 | 表务仓库管理 | 水表库存管理和出入库管理 | 自行开发 | -| METER-003 | 表务基础管理 | 水表档案和历史记录管理 | 自行开发 | +| METER-001 | 表务仓库管理 | 水表库存管理和出入库管理 | 自行开发 | +| METER-002 | 表务基础管理 | 水表档案和历史记录管理 | 自行开发 | ## 模块设计 -### 模块1: 表务工单管理 - -#### 功能 - -##### 功能1: 换表工单 - -###### 功能描述 - -换表工单管理因故障、到期等原因需要更换水表的业务流程,实现工单的全生命周期管理。 - -###### 换表工单业务流程图 - - -**图表 18** - -![图表 18](temp_mermaid_新-详细设计说明书_43770/diagram_18.png) - - -###### 业务规则 - -1. **工单创建规则**: - - 工单编号系统自动生成,格式:WO+年月日+4位流水号 - - 紧急工单需要在2小时内响应 - - 普通工单需要在24小时内派发 - -2. **工单派发规则**: - - 按照维修人员的工作区域自动分配 - - 考虑维修人员的工作负荷平衡 - - 特殊技能要求的工单需要指定人员 - -3. **工单完成规则**: - - 必须上传现场处理照片 - - 更换的水表需要更新档案信息 - - 工单回填必须包含处理结果和用料清单 - -###### 数据设计 - -主要涉及以下数据表: -- `meter_work_order`:表务工单表 -- `meter_repair_record`:水表维修记录表 -- `meter_replacement_log`:水表更换日志表 -- `work_order_material`:工单用料表 - -###### 方法说明 - -| 方法名 | 方法作用 | 输入参数(是否必填) | 返回数据 | -|---|---|---|---| -| createWorkOrder | 创建表务工单 | workOrderInfo:工单信息(必填) | WorkOrder对象 | -| assignWorkOrder | 派发工单 | workOrderId:工单ID(必填),assigneeId:指派人员ID(必填) | Boolean类型:true/false | -| completeWorkOrder | 完成工单 | workOrderId:工单ID(必填),completionInfo:完成信息(必填) | Boolean类型:true/false | -| queryWorkOrderList | 查询工单列表 | queryCondition:查询条件(选填) | PageInfo | - -### 模块2: 表务仓库管理 +### 模块1: 表务仓库管理 #### 功能 @@ -2277,7 +2514,7 @@ f、**响应参数** 2. **领用管理**:工单领用物料需要登记,完工后核销 3. **采购管理**:根据消耗情况制定采购计划 -### 模块3: 表务基础管理 +### 模块2: 表务基础管理 #### 功能 @@ -2349,40 +2586,40 @@ f、**响应参数** - 总流程图 -**图表 19** +**图表 22** -![图表 19](temp_mermaid_新-详细设计说明书_43770/diagram_19.png) +![图表 22](temp_mermaid_新-详细设计说明书_7752/diagram_22.png) - 申请受理阶段 -**图表 20** +**图表 23** -![图表 20](temp_mermaid_新-详细设计说明书_43770/diagram_20.png) +![图表 23](temp_mermaid_新-详细设计说明书_7752/diagram_23.png) - 现场勘查设计阶段 -**图表 21** +**图表 24** -![图表 21](temp_mermaid_新-详细设计说明书_43770/diagram_21.png) +![图表 24](temp_mermaid_新-详细设计说明书_7752/diagram_24.png) - 工程施工阶段 -**图表 22** +**图表 25** -![图表 22](temp_mermaid_新-详细设计说明书_43770/diagram_22.png) +![图表 25](temp_mermaid_新-详细设计说明书_7752/diagram_25.png) - 验收移交阶段 -**图表 23** +**图表 26** -![图表 23](temp_mermaid_新-详细设计说明书_43770/diagram_23.png) +![图表 26](temp_mermaid_新-详细设计说明书_7752/diagram_26.png) ###### 业务规则 @@ -2728,9 +2965,9 @@ f、**响应参数** ###### 业务流程 -**图表 24** +**图表 27** -![图表 24](temp_mermaid_新-详细设计说明书_43770/diagram_24.png) +![图表 27](temp_mermaid_新-详细设计说明书_7752/diagram_27.png) ###### 界面设计要点 @@ -3024,9 +3261,9 @@ flowchart TD ###### 业务流程 -**图表 27** +**图表 30** -![图表 27](temp_mermaid_新-详细设计说明书_43770/diagram_27.png) +![图表 30](temp_mermaid_新-详细设计说明书_7752/diagram_30.png) ###### 界面设计要点 @@ -3362,9 +3599,9 @@ flowchart TD **业务流程:** -**图表 29** +**图表 32** -![图表 29](temp_mermaid_新-详细设计说明书_43770/diagram_29.png) +![图表 32](temp_mermaid_新-详细设计说明书_7752/diagram_32.png) **接口参数:** @@ -3429,9 +3666,9 @@ flowchart TD **业务流程:** -**图表 30** +**图表 33** -![图表 30](temp_mermaid_新-详细设计说明书_43770/diagram_30.png) +![图表 33](temp_mermaid_新-详细设计说明书_7752/diagram_33.png) **接口参数:** @@ -3468,9 +3705,9 @@ flowchart TD **业务流程:** -**图表 31** +**图表 34** -![图表 31](temp_mermaid_新-详细设计说明书_43770/diagram_31.png) +![图表 34](temp_mermaid_新-详细设计说明书_7752/diagram_34.png) ## 物联网接口 @@ -3490,9 +3727,9 @@ flowchart TD **业务流程:** -**图表 32** +**图表 35** -![图表 32](temp_mermaid_新-详细设计说明书_43770/diagram_32.png) +![图表 35](temp_mermaid_新-详细设计说明书_7752/diagram_35.png) ## 政务系统接口 diff --git a/project_progress.md b/project_progress.md index 0193ff6..3b7fabd 100644 --- a/project_progress.md +++ b/project_progress.md @@ -156,6 +156,7 @@ | 2024-12-19 | 数据库系统变更为达梦数据库 | 将三个设计文档中的数据库从OpenGauss 5.0+替换为达梦数据库 8.0+,包括:1. 详细设计说明书中的13处架构图和技术描述更新;2. 概要设计说明书中的13处分布式架构和容器配置更新;3. 数据库设计说明书中的数据库系统描述更新。同时更新所有文档版本至V1.3,完善版本历史记录 | 用户要求采用达梦数据库而不是OpenGauss | 正面影响,采用国产达梦数据库作为主力数据库方案,符合国产化替代要求。达梦数据库8.0+具有良好的性能和稳定性,支持主从架构和分布式部署,满足水务营收系统的高可用性和扩展性需求。文档的一致性得到保证,为后续的数据库选型和部署提供了明确指导 | | 2024-12-19 | 单点登录采用OAuth2.0协议 | 在三个设计文档中完善单点登录设计,明确采用OAuth2.0协议实现。包括:1. 详细设计说明书中新增OAuth2.0授权码模式流程、6个OAuth2.0接口设计、4个相关数据表;2. 概要设计说明书中更新单点登录模块描述,强调基于OAuth2.0协议;3. 数据库设计说明书中新增OAuth2.0客户端信息表、访问令牌表、刷新令牌表、授权码表。所有文档版本更新至V1.4 | 用户要求单点登录采用OAuth2.0协议 | 正面影响,OAuth2.0是业界标准的开放授权协议,具有良好的安全性和扩展性。支持授权码模式和客户端凭证模式,满足不同应用场景需求。完善的数据表设计支持令牌管理、客户端管理等功能,为系统的安全认证和第三方集成提供了标准化的技术基础 | | 2024-12-19 | OAuth2.0表设计修正 | 根据实际SQL文件(oauth_table.sql)修正OAuth2.0表设计,确保文档与实际表结构保持一致。包括:1. 数据库设计说明书中更新5个OAuth2.0表的详细字段定义:system_oauth2_client、system_oauth2_access_token、system_oauth2_refresh_token、system_oauth2_code、system_oauth2_approve;2. 详细设计说明书中更新OAuth2.0数据表引用,修正表名为system_oauth2_*系列;3. 文档版本更新至V1.5 | 用户提供实际的OAuth2.0表SQL文件 | 正面影响,确保设计文档与实际SQL表结构完全一致,避免开发过程中的混乱。实际的表结构更加完善,包含了OAuth2.0批准表(system_oauth2_approve),支持用户授权记录管理,字段设计更加规范,符合PostgreSQL数据库特性,为OAuth2.0功能的实现提供了准确的数据模型指导 | +| 2024-12-19 | 业务工单模块设计整合 | 参考营收系统详细设计说明书,在新版设计文档中新增业务工单模块,并将表务系统的工单管理功能整合到业务工单中。包括:1. 详细设计说明书中新增营收系统模块9-业务工单,包含业务清单管理、上报清单管理、稽查工单管理、换表工单管理4个功能模块;2. 概要设计说明书中同步新增业务工单模块描述,调整表务系统模块结构;3. 数据库设计说明书中新增4个业务工单相关表:business_work_order、report_work_order、audit_work_order、work_order_log,并更新总表数量为147个 | 用户要求参考营收系统详细设计说明书添加业务工单模块,并将表务工单管理整合到业务工单中 | 正面影响,实现了工单管理的统一化设计,避免了功能重复。业务工单模块覆盖了客户服务、账务处理、投诉建议、故障报修等全业务场景,支持工单全生命周期管理。表务系统专注于仓库管理和设备档案管理,功能边界更加清晰。新增的4个工单表设计完善了工单数据模型,支持不同类型工单的差异化管理需求 | ## 项目完成总结 diff --git a/task_checklist.md b/task_checklist.md index 6924332..fb782ec 100644 --- a/task_checklist.md +++ b/task_checklist.md @@ -191,10 +191,11 @@ - [ ] 阶梯水价计算流程 - [ ] 欠费催缴流程 -- [ ] **工单管理流程** - - [ ] 表务工单流转流程 - - [ ] 维修工单处理流程 - - [ ] 客户投诉处理流程 +- [x] **业务工单管理流程** ✅ (2024-12-19) + - [x] 业务工单统一管理设计 ✅ + - [x] 表务工单整合到业务工单模块 ✅ + - [x] 工单全生命周期管理流程 ✅ + - [x] 四类工单管理:业务清单、上报清单、稽查工单、换表工单 ✅ ### 📋 安全设计完善 diff --git a/新-数据库设计说明书.md b/新-数据库设计说明书.md index cfdc084..b93020f 100644 --- a/新-数据库设计说明书.md +++ b/新-数据库设计说明书.md @@ -67,7 +67,7 @@ | 抄表管理 | `reading_*` | 抄表册本、抄表记录、价格政策、异常处理等 | 4个 | | 账务管理 | `billing_*`, `payment_*`, `prepay_*` | 开账记录、缴费记录、预付款账户、收费项目明细、票据信息、收费员会话等 | 6个 | | 账务调整 | `account_adjustment_*`, `split_*`, `refund_*`, `bad_debt_*` | 账务调整、分账、退款、呆坏账处理等 | 14个 | -| 工单管理 | `workorder_*` | 工单信息、工单回执等 | 2个 | +| 工单管理 | `workorder_*`, `business_*`, `report_*`, `audit_*` | 业务工单、上报工单、稽查工单、表务工单、工单日志、工单附件等 | 6个 | | 报装管理 | `installation_*` | 报装申请、报装流程等 | 2个 | | 银行接口 | `bank_*` | 银行交易记录等 | 1个 | | 第三方支付 | `thirdpay_*` | 第三方绑定、支付交易等 | 2个 | @@ -83,7 +83,7 @@ | 代收业务 | `realtime_payment_*` | 实时收费、接口日志、错误日志等 | 3个 | | 报装工程 | `construction_*` | 现场踏勘、施工方案、合同、施工进度等 | 4个 | | 移动端 | `mobile_*` | 移动端用户会话、缓存、登录日志、抄表任务、问题上报等 | 11个 | -| **总计** | | **涵盖水务营收系统全业务流程** | **143个** | +| **总计** | | **涵盖水务营收系统全业务流程** | **147个** | ## 系统公共表 (system_*) (基于 `sw_system_publcli.sql`) @@ -1587,7 +1587,103 @@ ## 工单管理表 (workorder_*) -### workorder_info (工单信息表) +### business_work_order (业务工单表) +| 字段名 | 类型 | 是否可空 | 默认值 | 注释 | +| :--- | :--- | :--- | :--- | :--- | +| id | int8 | N | nextval() | 主键 | +| order_no | varchar(32) | N | | 工单编号 | +| order_type | varchar(20) | N | | 工单类型:客户服务、账务处理、投诉建议、故障报修 | +| title | varchar(100) | N | | 工单标题 | +| description | varchar(500) | Y | | 工单描述 | +| priority | varchar(10) | N | 中 | 优先级:紧急、高、中、低 | +| customer_id | int8 | Y | | 客户ID | +| contact_phone | varchar(20) | Y | | 联系电话 | +| assign_user | varchar(100) | Y | | 指派人员 | +| order_status | int2 | N | 0 | 工单状态:0-待处理,1-处理中,2-已完成,3-已关闭 | +| expected_time | timestamp(6) | Y | | 预期完成时间 | +| actual_time | timestamp(6) | Y | | 实际完成时间 | +| process_note | text | Y | | 处理说明 | +| create_time | timestamp(6) | N | pg_systimestamp() | 创建时间 | +| update_time | timestamp(6) | N | pg_systimestamp() | 更新时间 | +| creator | varchar(100) | Y | | 创建人id | +| updater | varchar(100) | Y | | 更新人id | +| deleted | int2 | N | 0 | 是否删除 | +| tenant_id | int8 | N | 0 | 租户id | + +### work_order_log (工单处理日志表) +| 字段名 | 类型 | 是否可空 | 默认值 | 注释 | +| :--- | :--- | :--- | :--- | :--- | +| id | int8 | N | nextval() | 主键 | +| work_order_id | int8 | N | | 工单ID | +| operation_type | varchar(20) | N | | 操作类型:创建、派发、处理、完成、关闭 | +| operation_user | varchar(100) | N | | 操作人员 | +| operation_content | varchar(500) | Y | | 操作内容 | +| operation_time | timestamp(6) | N | pg_systimestamp() | 操作时间 | +| create_time | timestamp(6) | N | pg_systimestamp() | 创建时间 | +| creator | varchar(100) | Y | | 创建人id | +| tenant_id | int8 | N | 0 | 租户id | + +### work_order_attachment (工单附件表) +| 字段名 | 类型 | 是否可空 | 默认值 | 注释 | +| :--- | :--- | :--- | :--- | :--- | +| id | int8 | N | nextval() | 主键 | +| work_order_id | int8 | N | | 工单ID | +| file_name | varchar(200) | N | | 文件名称 | +| file_path | varchar(500) | N | | 文件路径 | +| file_size | int8 | Y | | 文件大小 | +| file_type | varchar(50) | Y | | 文件类型 | +| upload_time | timestamp(6) | N | pg_systimestamp() | 上传时间 | +| upload_user | varchar(100) | Y | | 上传人员 | +| create_time | timestamp(6) | N | pg_systimestamp() | 创建时间 | +| creator | varchar(100) | Y | | 创建人id | +| tenant_id | int8 | N | 0 | 租户id | + +### report_work_order (上报工单表) +| 字段名 | 类型 | 是否可空 | 默认值 | 注释 | +| :--- | :--- | :--- | :--- | :--- | +| id | int8 | N | nextval() | 主键 | +| report_no | varchar(32) | N | | 上报编号 | +| report_type | varchar(20) | N | | 上报类型:水表故障、管道问题、水质问题、其他问题 | +| report_title | varchar(100) | N | | 上报标题 | +| report_content | text | Y | | 上报内容 | +| report_location | varchar(200) | Y | | 上报地点 | +| longitude | numeric(15,6) | Y | | 经度 | +| latitude | numeric(15,6) | Y | | 纬度 | +| report_user | varchar(100) | N | | 上报人员 | +| report_time | timestamp(6) | N | pg_systimestamp() | 上报时间 | +| handle_status | int2 | N | 0 | 处理状态:0-待处理,1-处理中,2-已完成 | +| handle_user | varchar(100) | Y | | 处理人员 | +| handle_result | text | Y | | 处理结果 | +| create_time | timestamp(6) | N | pg_systimestamp() | 创建时间 | +| update_time | timestamp(6) | N | pg_systimestamp() | 更新时间 | +| creator | varchar(100) | Y | | 创建人id | +| updater | varchar(100) | Y | | 更新人id | +| deleted | int2 | N | 0 | 是否删除 | +| tenant_id | int8 | N | 0 | 租户id | + +### audit_work_order (稽查工单表) +| 字段名 | 类型 | 是否可空 | 默认值 | 注释 | +| :--- | :--- | :--- | :--- | :--- | +| id | int8 | N | nextval() | 主键 | +| audit_no | varchar(32) | N | | 稽查编号 | +| audit_type | varchar(20) | N | | 稽查类型:抄表稽查、水价稽查 | +| customer_id | int8 | N | | 客户ID | +| meter_id | int8 | Y | | 水表ID | +| audit_user | varchar(100) | N | | 稽查人员 | +| audit_time | timestamp(6) | N | | 稽查时间 | +| audit_result | varchar(20) | N | | 稽查结果:合格、不合格 | +| audit_note | text | Y | | 稽查备注 | +| evidence_files | text | Y | | 证据文件路径(JSON格式) | +| create_time | timestamp(6) | N | pg_systimestamp() | 创建时间 | +| update_time | timestamp(6) | N | pg_systimestamp() | 更新时间 | +| creator | varchar(100) | Y | | 创建人id | +| updater | varchar(100) | Y | | 更新人id | +| deleted | int2 | N | 0 | 是否删除 | +| tenant_id | int8 | N | 0 | 租户id | + +### workorder_info (表务工单信息表) +**说明**: 此表主要用于表务系统的换表、移表等工单管理,业务工单使用business_work_order表。 + | 字段名 | 类型 | 是否可空 | 默认值 | 注释 | | :--- | :--- | :--- | :--- | :--- | | id | int8 | N | nextval() | 主键 | diff --git a/新-概要设计说明书.md b/新-概要设计说明书.md index bc76920..5c000ca 100644 --- a/新-概要设计说明书.md +++ b/新-概要设计说明书.md @@ -74,6 +74,7 @@ - [模块6: 催缴管理](#模块6-催缴管理) - [模块7: 统计分析](#模块7-统计分析) - [模块8: 代收业务](#模块8-代收业务) + - [模块9: 业务工单](#模块9-业务工单) - [中间件和其他设计](#中间件和其他设计-1) - [对外接口](#对外接口-2) - [子系统3设计: 表务系统](#子系统3设计-表务系统) @@ -81,9 +82,8 @@ - [模块列表](#模块列表-2) - [模块设计](#模块设计-2) - [模块1: 表务基础管理](#模块1-表务基础管理) - - [模块2: 表务工单管理](#模块2-表务工单管理) - - [模块3: 仓库与库存管理](#模块3-仓库与库存管理) - - [模块4: 设备档案管理](#模块4-设备档案管理) + - [模块2: 仓库与库存管理](#模块2-仓库与库存管理) + - [模块3: 设备档案管理](#模块3-设备档案管理) - [子系统4设计: 报装系统](#子系统4设计-报装系统) - [功能与界面](#功能与界面-3) - [模块设计](#模块设计-3) @@ -1152,6 +1152,26 @@ flowchart TD - **第三方支付**: 集成微信、支付宝等支付网关。 - **对账管理**: 定期与各渠道进行账务核对。 +### 模块9: 业务工单 + +**功能概述:** + +业务工单模块负责管理水务系统中的各类业务工单,实现工单的统一管理和流转,整合了原表务系统的工单管理功能。 + +**核心功能:** + +- **业务清单管理**: 查询和管理通过系统办理的日常业务工单及其进度信息。 +- **上报清单管理**: 处理通过移动端上报的问题工单,包括现场发现的问题。 +- **稽查工单管理**: 处理抄表稽查和水价稽查工单,确保数据准确性。 +- **换表工单管理**: 处理水表更换相关的工单,与表务仓库系统协同作业。 + +**业务规则:** + +1. 工单编号系统自动生成,支持不同类型的编号规则 +2. 紧急工单需要在规定时间内快速响应 +3. 工单处理过程需要详细记录操作日志 +4. 换表工单需要与表务仓库系统同步水表状态 + ## 中间件和其他设计 **缓存设计:** @@ -1190,9 +1210,10 @@ flowchart TD | 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | |---|---|---|---| | METER-001 | 表务基础管理 | 管理水表相关的基础参数 | 自行开发 | -| METER-002 | 表务工单管理 | 处理换表、修表、检表等日常业务 | 自行开发 | -| METER-003 | 仓库与库存管理 | 管理水表的入库、出库、盘点和调拨 | 自行开发 | -| METER-004 | 设备档案管理 | 管理每一块水表的唯一电子档案 | 自行开发 | +| METER-002 | 仓库与库存管理 | 管理水表的入库、出库、盘点和调拨 | 自行开发 | +| METER-003 | 设备档案管理 | 管理每一块水表的唯一电子档案 | 自行开发 | + +**注意**: 表务工单管理功能已整合到营收系统的业务工单模块中,实现统一的工单管理。 ## 模块设计 @@ -1204,21 +1225,14 @@ flowchart TD - **水表型号管理**: 根据厂家和口径,管理具体的水表型号。 - **水表量程管理**: 定义水表的计量范围。 -### 模块2: 表务工单管理 -- **功能描述**: 聚焦于业务流程驱动,管理所有与水表相关的现场作业任务。 -- **核心功能**: - - **工单创建**: 可由系统(如到期提醒)、其他子系统(如营收系统上报故障)或人工创建换表、维修、巡检等工单。 - - **工单流转**: 实现工单的派发、接收、处理、回填、审核的全流程闭环管理。 - - **领料与退料**: 工单处理过程中,涉及水表更换时,触发向仓库的领料申请;旧表则触发退料入库流程。 - -### 模块3: 仓库与库存管理 +### 模块2: 仓库与库存管理 - **功能描述**: 负责水表的实物管理,与工单流程解耦,作为一个独立的资源中心。 - **核心功能**: - **入库管理**: 包括新表采购入库、旧表回收(维修或报废)入库。 - **出库管理**: 根据工单领料申请,发放新水表。 - **库存管理**: 提供库存查询、盘点、调拨、库存预警等功能。 -### 模块4: 设备档案管理 +### 模块3: 设备档案管理 - **功能描述**: 作为表务系统的核心,统一管理所有水表的基础信息和生命周期状态。 - **核心功能**: - **水表信息登录**: 记录新购水表的型号、规格、供应商、批次等信息。 diff --git a/新-详细设计说明书.md b/新-详细设计说明书.md index e536c26..45b52c5 100644 --- a/新-详细设计说明书.md +++ b/新-详细设计说明书.md @@ -227,35 +227,54 @@ - [功能描述](#功能描述-23) - [功能3: 银行托收](#功能3-银行托收) - [功能描述](#功能描述-24) + - [模块9: 业务工单](#模块9-业务工单) + - [功能](#功能-10) + - [功能1: 业务清单管理](#功能1-业务清单管理) + - [功能描述](#功能描述-25) + - [业务工单流程图](#业务工单流程图) + - [业务规则](#业务规则-22) + - [数据设计](#数据设计-17) + - [方法说明](#方法说明-17) + - [功能2: 上报清单管理](#功能2-上报清单管理) + - [功能描述](#功能描述-26) + - [上报工单处理流程图](#上报工单处理流程图) + - [业务规则](#业务规则-23) + - [数据设计](#数据设计-18) + - [功能3: 稽查工单管理](#功能3-稽查工单管理) + - [功能描述](#功能描述-27) + - [稽查工单流程图](#稽查工单流程图) + - [业务规则](#业务规则-24) + - [数据设计](#数据设计-19) + - [功能4: 换表工单管理](#功能4-换表工单管理) + - [功能描述](#功能描述-28) + - [换表工单业务流程图](#换表工单业务流程图) + - [业务规则](#业务规则-25) + - [数据设计](#数据设计-20) + - [方法说明](#方法说明-18) + - [接口](#接口-4) + - [接口1: 创建业务工单接口](#接口1-创建业务工单接口) + - [接口2: 工单处理接口](#接口2-工单处理接口) - [子系统3设计: 表务系统](#子系统3设计-表务系统) - [功能与界面](#功能与界面-2) - [模块列表](#模块列表-2) - [模块设计](#模块设计-2) - - [模块1: 表务工单管理](#模块1-表务工单管理) - - [功能](#功能-10) - - [功能1: 换表工单](#功能1-换表工单) - - [功能描述](#功能描述-25) - - [换表工单业务流程图](#换表工单业务流程图) - - [业务规则](#业务规则-22) - - [数据设计](#数据设计-17) - - [方法说明](#方法说明-17) - - [模块2: 表务仓库管理](#模块2-表务仓库管理) + - [模块1: 表务仓库管理](#模块1-表务仓库管理) - [功能](#功能-11) - [功能1: 水表库存管理](#功能1-水表库存管理) - - [功能描述](#功能描述-26) - - [业务规则](#业务规则-23) - - [数据设计](#数据设计-18) - - [方法说明](#方法说明-18) + - [功能描述](#功能描述-29) + - [业务规则](#业务规则-26) + - [数据设计](#数据设计-21) + - [方法说明](#方法说明-19) - [功能2: 物料管理](#功能2-物料管理) - - [功能描述](#功能描述-27) - - [业务规则](#业务规则-24) - - [模块3: 表务基础管理](#模块3-表务基础管理) + - [功能描述](#功能描述-30) + - [业务规则](#业务规则-27) + - [模块2: 表务基础管理](#模块2-表务基础管理) - [功能](#功能-12) - [功能1: 水表档案管理](#功能1-水表档案管理) - - [功能描述](#功能描述-28) - - [业务规则](#业务规则-25) - - [数据设计](#数据设计-19) - - [方法说明](#方法说明-19) + - [功能描述](#功能描述-31) + - [业务规则](#业务规则-28) + - [数据设计](#数据设计-22) + - [方法说明](#方法说明-20) - [子系统4设计: 报装系统](#子系统4设计-报装系统) - [功能与界面](#功能与界面-3) - [模块列表](#模块列表-3) @@ -263,28 +282,28 @@ - [模块1: 报装流程管理](#模块1-报装流程管理) - [功能](#功能-13) - [功能1: 报装流程](#功能1-报装流程) - - [功能描述](#功能描述-29) + - [功能描述](#功能描述-32) - [新用户报装业务流程图](#新用户报装业务流程图) - - [业务规则](#业务规则-26) - - [数据设计](#数据设计-20) - - [方法说明](#方法说明-20) + - [业务规则](#业务规则-29) + - [数据设计](#数据设计-23) + - [方法说明](#方法说明-21) - [模块2: 现场踏勘管理](#模块2-现场踏勘管理) - [功能](#功能-14) - [功能1: 现场勘查](#功能1-现场勘查) - - [功能描述](#功能描述-30) - - [业务规则](#业务规则-27) - - [数据设计](#数据设计-21) - - [方法说明](#方法说明-21) + - [功能描述](#功能描述-33) + - [业务规则](#业务规则-30) + - [数据设计](#数据设计-24) + - [方法说明](#方法说明-22) - [功能2: 技术方案设计](#功能2-技术方案设计) - - [功能描述](#功能描述-31) - - [业务规则](#业务规则-28) + - [功能描述](#功能描述-34) + - [业务规则](#业务规则-31) - [模块3: 报装档案管理](#模块3-报装档案管理) - [功能](#功能-15) - [功能1: 报装档案管理](#功能1-报装档案管理) - - [功能描述](#功能描述-32) - - [业务规则](#业务规则-29) - - [数据设计](#数据设计-22) - - [方法说明](#方法说明-22) + - [功能描述](#功能描述-35) + - [业务规则](#业务规则-32) + - [数据设计](#数据设计-25) + - [方法说明](#方法说明-23) - [子系统5设计: 客户服务](#子系统5设计-客户服务) - [功能与界面](#功能与界面-4) - [模块列表](#模块列表-4) @@ -292,34 +311,34 @@ - [模块1: 账户绑定管理](#模块1-账户绑定管理) - [功能](#功能-16) - [功能1: 账户绑定](#功能1-账户绑定) - - [功能描述](#功能描述-33) - - [业务规则](#业务规则-30) - - [数据设计](#数据设计-23) - - [方法说明](#方法说明-23) + - [功能描述](#功能描述-36) + - [业务规则](#业务规则-33) + - [数据设计](#数据设计-26) + - [方法说明](#方法说明-24) - [功能2: 账户管理](#功能2-账户管理) - - [功能描述](#功能描述-34) - - [业务规则](#业务规则-31) + - [功能描述](#功能描述-37) + - [业务规则](#业务规则-34) - [模块2: 信息查询服务](#模块2-信息查询服务) - [功能](#功能-17) - [功能1: 账单查询](#功能1-账单查询) - - [功能描述](#功能描述-35) - - [业务规则](#业务规则-32) - - [数据设计](#数据设计-24) - - [方法说明](#方法说明-24) + - [功能描述](#功能描述-38) + - [业务规则](#业务规则-35) + - [数据设计](#数据设计-27) + - [方法说明](#方法说明-25) - [模块3: 在线缴费服务](#模块3-在线缴费服务) - [功能](#功能-18) - [功能1: 多渠道支付](#功能1-多渠道支付) - - [功能描述](#功能描述-36) - - [业务规则](#业务规则-33) - - [数据设计](#数据设计-25) - - [方法说明](#方法说明-25) + - [功能描述](#功能描述-39) + - [业务规则](#业务规则-36) + - [数据设计](#数据设计-28) + - [方法说明](#方法说明-26) - [模块4: 电子发票服务](#模块4-电子发票服务) - [功能](#功能-19) - [功能1: 发票管理](#功能1-发票管理) - - [功能描述](#功能描述-37) - - [业务规则](#业务规则-34) - - [数据设计](#数据设计-26) - - [方法说明](#方法说明-26) + - [功能描述](#功能描述-40) + - [业务规则](#业务规则-37) + - [数据设计](#数据设计-29) + - [方法说明](#方法说明-27) - [子系统6设计: 手机抄表APP](#子系统6设计-手机抄表app) - [功能与界面](#功能与界面-5) - [模块列表](#模块列表-5) @@ -327,68 +346,68 @@ - [模块1: 登录模块](#模块1-登录模块) - [功能](#功能-20) - [功能1: 核心登录功能](#功能1-核心登录功能) - - [功能描述](#功能描述-38) - - [业务规则](#业务规则-35) + - [功能描述](#功能描述-41) + - [业务规则](#业务规则-38) - [业务流程](#业务流程-13) - [界面设计要点](#界面设计要点) - - [数据设计](#数据设计-27) - - [方法说明](#方法说明-27) + - [数据设计](#数据设计-30) + - [方法说明](#方法说明-28) - [模块2: 首页搜索模块](#模块2-首页搜索模块) - [功能](#功能-21) - [功能1: 搜索框功能](#功能1-搜索框功能) - - [功能描述](#功能描述-39) - - [业务规则](#业务规则-36) + - [功能描述](#功能描述-42) + - [业务规则](#业务规则-39) - [业务流程](#业务流程-14) - [界面设计要点](#界面设计要点-1) - - [数据设计](#数据设计-28) - - [方法说明](#方法说明-28) + - [数据设计](#数据设计-31) + - [方法说明](#方法说明-29) - [模块3: 采集任务管理模块](#模块3-采集任务管理模块) - [功能](#功能-22) - [功能1: 任务列表管理](#功能1-任务列表管理) - - [功能描述](#功能描述-40) - - [业务规则](#业务规则-37) + - [功能描述](#功能描述-43) + - [业务规则](#业务规则-40) - [业务流程](#业务流程-15) - [界面设计要点](#界面设计要点-2) - - [数据设计](#数据设计-29) - - [方法说明](#方法说明-29) + - [数据设计](#数据设计-32) + - [方法说明](#方法说明-30) - [功能2: 单户采集详情](#功能2-单户采集详情) - - [功能描述](#功能描述-41) - - [业务规则](#业务规则-38) + - [功能描述](#功能描述-44) + - [业务规则](#业务规则-41) - [界面设计要点](#界面设计要点-3) - [模块4: 换表工单模块](#模块4-换表工单模块) - [功能](#功能-23) - [功能1: 换表工单处理流程](#功能1-换表工单处理流程) - - [功能描述](#功能描述-42) - - [业务规则](#业务规则-39) + - [功能描述](#功能描述-45) + - [业务规则](#业务规则-42) - [业务流程](#业务流程-16) - [界面设计要点](#界面设计要点-4) - - [数据设计](#数据设计-30) - - [方法说明](#方法说明-30) + - [数据设计](#数据设计-33) + - [方法说明](#方法说明-31) - [模块5: 其他工单模块](#模块5-其他工单模块) - [功能](#功能-24) - [功能1: 复水工单](#功能1-复水工单) - - [功能描述](#功能描述-43) + - [功能描述](#功能描述-46) - [业务流程](#业务流程-17) - [功能2: 稽查任务](#功能2-稽查任务) - - [功能描述](#功能描述-44) + - [功能描述](#功能描述-47) - [功能3: 抄表稽查](#功能3-抄表稽查) - - [功能描述](#功能描述-45) + - [功能描述](#功能描述-48) - [界面设计要点](#界面设计要点-5) - [功能4: 问题上报](#功能4-问题上报) - - [功能描述](#功能描述-46) + - [功能描述](#功能描述-49) - [界面设计要点](#界面设计要点-6) - - [数据设计](#数据设计-31) + - [数据设计](#数据设计-34) - [模块6: 个人信息与系统设置模块](#模块6-个人信息与系统设置模块) - [功能](#功能-25) - [功能1: 个人信息管理](#功能1-个人信息管理) - - [功能描述](#功能描述-47) + - [功能描述](#功能描述-50) - [界面设计要点](#界面设计要点-7) - [功能2: 账户安全配置](#功能2-账户安全配置) - - [功能描述](#功能描述-48) + - [功能描述](#功能描述-51) - [功能3: 系统维护选项](#功能3-系统维护选项) - - [功能描述](#功能描述-49) + - [功能描述](#功能描述-52) - [界面设计要点](#界面设计要点-8) - - [数据设计](#数据设计-32) + - [数据设计](#数据设计-35) - [关键业务规则与注意事项](#关键业务规则与注意事项) - [数据校验规则](#数据校验规则) - [状态一致性规则](#状态一致性规则) @@ -2732,6 +2751,365 @@ flowchart TD 与银行系统对接,支持银行托收业务,包括托收文件生成、托收结果处理、托收对账等功能。 +### 模块9: 业务工单 + +#### 功能 + +业务工单模块负责管理水务系统中的各类业务工单,包括客户服务工单、维修工单、稽查工单等,实现工单的全生命周期管理。 + +##### 功能1: 业务清单管理 + +###### 功能描述 + +业务清单管理用于查询和管理通过系统办理的日常业务工单及其进度信息,包括客户工单和账务处理工单。 + +###### 业务工单流程图 + +```mermaid +flowchart TD + A[工单来源] --> B{工单类型} + B -->|客户服务| C[客户服务工单] + B -->|账务处理| D[账务处理工单] + B -->|投诉建议| E[投诉建议工单] + B -->|故障报修| F[故障报修工单] + + C --> G[工单创建] + D --> G + E --> G + F --> G + + G --> H[工单分类] + H --> I[工单派发] + I --> J[工单处理] + J --> K{处理结果} + + K -->|完成| L[工单完成] + K -->|需要协调| M[工单转派] + K -->|需要升级| N[工单升级] + + M --> J + N --> O[上级处理] + O --> P[处理完成] + L --> Q[工单归档] + P --> Q + Q --> R([工单结束]) +``` + +###### 业务规则 + +1. **工单创建规则**: + - 工单编号系统自动生成,格式:BW+年月日+4位流水号 + - 紧急工单需要在1小时内响应 + - 普通工单需要在8小时内派发 + +2. **工单分类规则**: + - 客户服务类:开户、过户、更名、停用等 + - 账务处理类:调账、退款、销账等 + - 投诉建议类:服务投诉、建议反馈等 + - 故障报修类:设施故障、管道漏水等 + +3. **工单处理规则**: + - 工单必须在规定时间内处理完成 + - 处理过程需要详细记录操作日志 + - 重要工单需要上级审核确认 + +###### 数据设计 + +主要涉及以下数据表: +- `business_work_order`:业务工单表 +- `work_order_log`:工单处理日志表 +- `work_order_attachment`:工单附件表 + +###### 方法说明 + +| 方法名 | 方法作用 | 输入参数(是否必填) | 返回数据 | +|---|---|---|---| +| createBusinessWorkOrder | 创建业务工单 | workOrderInfo:工单信息(必填) | WorkOrder对象 | +| queryWorkOrderList | 查询工单列表 | queryCondition:查询条件(选填) | PageInfo | +| processWorkOrder | 处理工单 | workOrderId:工单ID(必填),processInfo:处理信息(必填) | Boolean类型:true/false | +| closeWorkOrder | 完成工单 | workOrderId:工单ID(必填),closeInfo:完成信息(必填) | Boolean类型:true/false | + +##### 功能2: 上报清单管理 + +###### 功能描述 + +上报清单管理用于处理通过移动端上报的问题工单,包括抄表员现场发现的问题、客户报告的异常等。 + +###### 上报工单处理流程图 + +```mermaid +flowchart TD + A[移动端上报] --> B[上报清单录入] + B --> C[问题分类] + C --> D{问题类型} + + D -->|水表故障| E[表务工单] + D -->|管道问题| F[维修工单] + D -->|水质问题| G[水质检测工单] + D -->|其他问题| H[一般处理工单] + + E --> I[工单登记] + F --> I + G --> I + H --> I + + I --> J[工单派发] + J --> K[现场处理] + K --> L[工单回填] + L --> M[内勤审核] + M --> N{审核结果} + + N -->|通过| O[工单完成] + N -->|不通过| P[退回重处理] + P --> K + O --> Q([工单结束]) +``` + +###### 业务规则 + +1. **上报规则**: + - 上报必须包含现场照片或视频 + - 上报地点必须准确定位 + - 紧急问题需要标注紧急级别 + +2. **处理规则**: + - 紧急上报1小时内响应 + - 普通上报24小时内处理 + - 处理结果需要现场确认 + +###### 数据设计 + +主要涉及以下数据表: +- `report_work_order`:上报工单表 +- `report_attachment`:上报附件表 +- `report_location`:上报位置表 + +##### 功能3: 稽查工单管理 + +###### 功能描述 + +稽查工单管理用于处理抄表稽查和水价稽查工单,确保抄表数据和水价政策的准确执行。 + +###### 稽查工单流程图 + +```mermaid +flowchart TD + A[稽查任务下达] --> B{稽查类型} + B -->|抄表稽查| C[抄表数据核实] + B -->|水价稽查| D[水价政策核实] + + C --> E[现场抄表核对] + D --> F[价格政策核对] + + E --> G[稽查结果记录] + F --> G + + G --> H{稽查结果} + H -->|合格| I[稽查通过] + H -->|不合格| J[问题处理] + + J --> K[整改要求] + K --> L[重新稽查] + L --> G + + I --> M[稽查报告] + M --> N([稽查完成]) +``` + +###### 业务规则 + +1. **稽查标准**: + - 抄表稽查:核实抄表数据准确性 + - 水价稽查:核实价格政策执行情况 + - 稽查必须有现场证据支持 + +2. **稽查频率**: + - 重点客户每月稽查 + - 普通客户季度抽查 + - 异常客户随时稽查 + +###### 数据设计 + +主要涉及以下数据表: +- `audit_work_order`:稽查工单表 +- `audit_result`:稽查结果表 +- `audit_evidence`:稽查证据表 + +##### 功能4: 换表工单管理 + +###### 功能描述 + +换表工单管理处理因故障、到期、客户申请等原因需要更换水表的业务工单,与表务系统的工单管理功能整合。 + +###### 换表工单业务流程图 + +```mermaid +flowchart TD + A[换表需求] --> B{换表原因} + B -->|故障换表| C[故障登记] + B -->|到期换表| D[到期提醒] + B -->|客户申请| E[申请受理] + + C --> F[创建换表工单] + D --> F + E --> F + + F --> G[工单信息完善] + G --> H[仓库申请水表] + H --> I[工单派发] + I --> J[现场换表] + + J --> K[旧表拆除] + K --> L[新表安装] + L --> M[表码记录] + M --> N[工单回填] + + N --> O[内勤审核] + O --> P{审核结果} + P -->|通过| Q[更新客户档案] + P -->|不通过| R[退回重做] + R --> J + + Q --> S[旧表回库] + S --> T([换表完成]) +``` + +###### 业务规则 + +1. **换表条件**: + - 水表故障无法正常计量 + - 水表到期需要强制更换 + - 客户申请且符合换表条件 + +2. **换表流程**: + - 必须先申请新表再进行换表 + - 换表过程需要拍照记录 + - 新旧表码必须准确记录 + +3. **质量控制**: + - 换表工单必须当日完成 + - 换表质量需要客户签字确认 + - 异常情况需要详细说明 + +###### 数据设计 + +主要涉及以下数据表: +- `meter_work_order`:表务工单表(复用表务系统) +- `meter_replacement_log`:水表更换日志表 +- `work_order_material`:工单用料表 + +###### 方法说明 + +| 方法名 | 方法作用 | 输入参数(是否必填) | 返回数据 | +|---|---|---|---| +| createMeterWorkOrder | 创建换表工单 | workOrderInfo:工单信息(必填) | WorkOrder对象 | +| assignMeterWorkOrder | 派发换表工单 | workOrderId:工单ID(必填),assigneeId:指派人员ID(必填) | Boolean类型:true/false | +| completeMeterReplacement | 完成换表 | workOrderId:工单ID(必填),replacementInfo:换表信息(必填) | Boolean类型:true/false | +| queryMeterWorkOrderList | 查询换表工单列表 | queryCondition:查询条件(选填) | PageInfo | + +#### 接口 + +##### 接口1: 创建业务工单接口 + +a、**接口名称** + +| 创建业务工单接口 | +|---| + +b、**接口描述** + +| 1. 创建各类业务工单
2. 自动分配工单编号
3. 设置工单优先级和处理期限 | +|---| + +c、**请求地址** + +| /admin-api/revenue/work-order/create | +|---| + +d、**请求方式** + +| POST | +|---| + +e、**请求参数** + +2) Body参数 + +| 参数名 | 必选 | 类型 | 限制条件 | 说明 | 备注 | +|---|---|---|---|---|---| +| orderType | 是 | string | | 工单类型 | 客户服务/账务处理/投诉建议/故障报修 | +| title | 是 | string | 长度≤100 | 工单标题 | | +| description | 是 | string | 长度≤500 | 工单描述 | | +| priority | 是 | string | | 优先级 | 紧急/高/中/低 | +| customerId | 否 | number | > 0 | 客户ID | 客户相关工单必填 | +| contactPhone | 否 | string | | 联系电话 | | + +f、**响应参数** + +2) 返回示例 + +```json +{ + "code": 0, + "msg": "成功", + "data": { + "workOrderId": 1001, + "orderNo": "BW20241219001", + "status": "待处理", + "expectedTime": "2024-12-20 18:00:00" + } +} +``` + +##### 接口2: 工单处理接口 + +a、**接口名称** + +| 工单处理接口 | +|---| + +b、**接口描述** + +| 1. 处理工单并更新状态
2. 记录处理日志
3. 支持附件上传 | +|---| + +c、**请求地址** + +| /admin-api/revenue/work-order/process | +|---| + +d、**请求方式** + +| POST | +|---| + +e、**请求参数** + +2) Body参数 + +| 参数名 | 必选 | 类型 | 限制条件 | 说明 | 备注 | +|---|---|---|---|---|---| +| workOrderId | 是 | number | > 0 | 工单ID | | +| processResult | 是 | string | | 处理结果 | 完成/转派/升级 | +| processNote | 是 | string | 长度≤500 | 处理说明 | | +| attachments | 否 | array | | 附件列表 | 支持图片、文档 | + +f、**响应参数** + +2) 返回示例 + +```json +{ + "code": 0, + "msg": "成功", + "data": { + "workOrderId": 1001, + "status": "已完成", + "processTime": "2024-12-19 15:30:00" + } +} +``` + # 子系统3设计: 表务系统 ## 功能与界面 @@ -2743,110 +3121,21 @@ flowchart TD **主要功能模块:** -- **表务工单管理**:工单创建、派发、处理、验收的全流程管理 - **表务仓库管理**:水表库存管理、出入库记录、库存预警、物料管理 - **表务基础管理**:水表档案、维修记录、使用历史、技术参数管理 +**注意**:表务工单管理功能已整合到营收系统的业务工单模块中,避免功能重复。 + ## 模块列表 | 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | |---|---|---|---| -| METER-001 | 表务工单管理 | 水表维修更换工单全流程管理 | 自行开发 | -| METER-002 | 表务仓库管理 | 水表库存管理和出入库管理 | 自行开发 | -| METER-003 | 表务基础管理 | 水表档案和历史记录管理 | 自行开发 | +| METER-001 | 表务仓库管理 | 水表库存管理和出入库管理 | 自行开发 | +| METER-002 | 表务基础管理 | 水表档案和历史记录管理 | 自行开发 | ## 模块设计 -### 模块1: 表务工单管理 - -#### 功能 - -##### 功能1: 换表工单 - -###### 功能描述 - -换表工单管理因故障、到期等原因需要更换水表的业务流程,实现工单的全生命周期管理。 - -###### 换表工单业务流程图 - -```mermaid -flowchart TD - A[工单来源] --> B{工单类型} - B -->|抄表故障| C[抄表员故障上报] - B -->|客户报修| D[客户自助报障] - B -->|定期换表| E[系统生成换表计划] - B -->|水表到期| F[到期自动提醒] - - C --> G[创建表务工单] - D --> G - E --> G - F --> G - - G --> H[工单信息录入] - H --> I[选择处理人员] - I --> J[派发工单] - - J --> K[维修人员接单] - K --> L[现场处理] - L --> M{是否需要换表?} - - M -->|是| N[申请新水表] - M -->|否| O[现场维修] - - N --> P[从仓库领取水表] - P --> Q[拆除旧水表] - Q --> R[安装新水表] - R --> S[记录新旧表信息] - - O --> T[维修完成] - T --> U[上传处理照片] - - S --> U - U --> V[工单回填] - V --> W[内勤审核] - W --> X{审核是否通过?} - X -->|否| Y[退回重新处理] - Y --> L - X -->|是| Z[工单完成] - Z --> AA[更新水表档案] - AA --> BB([工单结束]) -``` - -###### 业务规则 - -1. **工单创建规则**: - - 工单编号系统自动生成,格式:WO+年月日+4位流水号 - - 紧急工单需要在2小时内响应 - - 普通工单需要在24小时内派发 - -2. **工单派发规则**: - - 按照维修人员的工作区域自动分配 - - 考虑维修人员的工作负荷平衡 - - 特殊技能要求的工单需要指定人员 - -3. **工单完成规则**: - - 必须上传现场处理照片 - - 更换的水表需要更新档案信息 - - 工单回填必须包含处理结果和用料清单 - -###### 数据设计 - -主要涉及以下数据表: -- `meter_work_order`:表务工单表 -- `meter_repair_record`:水表维修记录表 -- `meter_replacement_log`:水表更换日志表 -- `work_order_material`:工单用料表 - -###### 方法说明 - -| 方法名 | 方法作用 | 输入参数(是否必填) | 返回数据 | -|---|---|---|---| -| createWorkOrder | 创建表务工单 | workOrderInfo:工单信息(必填) | WorkOrder对象 | -| assignWorkOrder | 派发工单 | workOrderId:工单ID(必填),assigneeId:指派人员ID(必填) | Boolean类型:true/false | -| completeWorkOrder | 完成工单 | workOrderId:工单ID(必填),completionInfo:完成信息(必填) | Boolean类型:true/false | -| queryWorkOrderList | 查询工单列表 | queryCondition:查询条件(选填) | PageInfo | - -### 模块2: 表务仓库管理 +### 模块1: 表务仓库管理 #### 功能 @@ -2892,7 +3181,7 @@ flowchart TD 2. **领用管理**:工单领用物料需要登记,完工后核销 3. **采购管理**:根据消耗情况制定采购计划 -### 模块3: 表务基础管理 +### 模块2: 表务基础管理 #### 功能