Appearance
maintain 链路分析
源文件:
docs/front end/dm/lemes-web/src/views/devicemate/report/maintain/maintain.vue前端 API:
docs/front end/dm/lemes-web/src/views/devicemate/api/report/maintain/index.js后端落点:
lemes-cloud/lemes-business-devicemate/lemes-service-dm-device/lemes-service-dm-device-server/src/main/java/com/lenovo/lemes/service/dm/device/controller/MaintenanceWorkOrdersController.java/lemes-cloud/lemes-business-devicemate/lemes-service-dm-device/lemes-service-dm-device-server/src/main/java/com/lenovo/lemes/service/dm/device/service/impl/MaintenanceWorkOrdersServiceImpl.java主表:
maintenance_work_orders
Vue 组件总览
| 组件 | 层级路径 | 角色 | 是否主链路 | 是否直接CRUD | 独立MD | 跳转 | 一句话作用 |
|---|---|---|---|---|---|---|---|
index | index | 主页面 | 是 | 否 | 当前页 | 查看 | 承接 maintain 页面主入口、列表查询和业务操作入口。 |
辅助组件说明
chart:辅助组件,负责页面局部交互或展示,不直接承载新增/编辑主业务逻辑。boxSearch:负责查询条件区,支持搜索和清空事件触发。iTable:负责通用列表渲染、分页、多选、排序和操作列承载。selectLineDevice:辅助组件,负责页面局部交互或展示,不直接承载新增/编辑主业务逻辑。
技术图

Flow 布局:
standard
Summary 布局:
standard
1. 页面概览
- 当前节点对应文件
docs/front end/dm/lemes-web/src/views/devicemate/report/maintain/maintain.vue。 - 当前节点识别到 0 个重点组件、7 个辅助组件。
- 当前节点识别到 1 条业务页面跳转链路、3 个真实接口。
- 搜索动作会把
filterList同步到searchFilter,并把页码重置为第 1 页。 - 重置动作会清空查询条件,再走一次分页查询。
- 导出动作会把当前筛选条件、排序字段以及勾选 ids 一起传给导出接口。
2. 上游入口
- 当前节点是本次递归文档的根入口。
3. 业务页面跳转链路
- 方法
goPlanDetail->/default/devicemate/maintain/plan/detail->detail,参数planNo。
4. 前端真实调用链
- <el-date-picker> @change -> dateChange ->
maintenanceWorkOrdersCountAjax - <el-select> @change -> productLineChange ->
maintenanceWorkOrdersCountAjax - <boxSearch> @research -> research ->
workOrderCountByPlanNoAjax - <boxSearch> @reempty -> reempty ->
workOrderCountByPlanNoAjax - <iTable> @size-change / <iTable> @current-change -> currentChange ->
workOrderCountByPlanNoAjax - <el-button> @click -> exportAction ->
exportExcelAjax - activated 生命周期 -> activated ->
maintenanceWorkOrdersCountAjax/workOrderCountByPlanNoAjax
5. 接口总览
| method | path | 功能 | 所属节点 | 前端触发 | 后端入口 |
|---|---|---|---|---|---|
| POST | /dm-device/maintenanceTasks/workOrderStat/exportExcel | Excel 导出 | 主页面 | <el-button> @click -> exportAction -> exportExcelAjax | - |
| POST | /dm-device/maintenanceTasks/workOrderCountByPlanNo | 业务请求 | 主页面 | <boxSearch> @research -> research -> currentChange -> getPage -> workOrderCountByPlanNoAjax | - |
| POST | /dm-device/maintenanceWorkOrders/maintenanceWorkOrdersCount | 业务请求 | 主页面 | <el-date-picker> @change -> dateChange -> getmaintenanceWorkOrdersCount -> maintenanceWorkOrdersCountAjax | maintenanceWorkOrdersCount |
6. 接口详细说明
6.1 POST /dm-device/maintenanceTasks/workOrderStat/exportExcel
接口信息
- 请求地址:
/dm-device/maintenanceTasks/workOrderStat/exportExcel - 请求方式:
POST - 功能简述:Excel 导出
- 所属页面:主页面
- 前端触发链路:
- <el-button> @click -> exportAction -> exportExcelAjax
入参
- 参数位置:
body
json
{
"ids": [],
"field": "",
"order": "",
"planNo": "",
"planName": "",
"productLineSet": ""
}- 当前链路未展开到更细的字段级定义。
出参
外层响应:文件下载流
业务数据体:Excel 二进制响应
前端通过下载服务直接处理文件响应,不经过普通 JSON 列表渲染。
后端逻辑链路
- 校验
- 当前链路未识别出额外步骤。
- 预处理
- 当前链路未识别出额外步骤。
- 核心业务
- 当前链路未识别出额外步骤。
- 状态变更
- 当前链路无数据库写操作。
- 数据影响
- 库存、金额、业务状态都不会发生持久化变更;若有价格处理,仅作用于返回值或导出值。
- 收尾
- 当前链路未识别出额外步骤。
数据链路
| 接口 | 调用类型 | 库名.表名 | mapper.page | sql作用(简写) |
|---|---|---|---|---|
POST /dm-device/maintenanceTasks/workOrderStat/exportExcel | 查询 | ?.maintenance_work_orders | MyBatis-Plus ServiceImpl.list | 按筛选条件导出物料主数据 |
数据流走向
- 数据来源:
- 前端页面通过 <el-button> @click -> exportAction -> exportExcelAjax 触发请求
- 数据处理路径:
- 数据落点:
- ?.maintenance_work_orders
备注
- 当前只定位到前端接口与后端落点文件,未从 Controller 中匹配到完全一致的方法映射。
- 前端请求路径含服务前缀
/dm-device,合理推断该前缀来自网关或服务路由。
6.2 POST /dm-device/maintenanceTasks/workOrderCountByPlanNo
接口信息
- 请求地址:
/dm-device/maintenanceTasks/workOrderCountByPlanNo - 请求方式:
POST - 功能简述:业务请求
- 所属页面:主页面
- 前端触发链路:
- <boxSearch> @research -> research -> currentChange -> getPage -> workOrderCountByPlanNoAjax
- <boxSearch> @reempty -> reempty -> currentChange -> getPage -> workOrderCountByPlanNoAjax
- <iTable> @size-change / <iTable> @current-change -> currentChange -> getPage -> workOrderCountByPlanNoAjax
- activated 生命周期 -> activated -> currentChange -> getPage -> workOrderCountByPlanNoAjax
入参
参数位置:
unknown当前链路未展开到更细的字段级定义。
出参
外层响应:ResultData
业务数据体:框架统一成功响应
当前链路重点在业务动作与后端处理,公共包裹字段未继续展开。
后端逻辑链路
- 校验
- 当前链路未识别出额外步骤。
- 预处理
- 当前链路未识别出额外步骤。
- 核心业务
- 当前链路未识别出额外步骤。
- 状态变更
- 当前链路未识别出额外步骤。
- 数据影响
- 当前链路未识别出额外步骤。
- 收尾
- 当前链路未识别出额外步骤。
数据链路
- 当前链路未识别到明确数据库表操作。
数据流走向
- 数据来源:
- 前端页面通过 <boxSearch> @research -> research -> currentChange -> getPage -> workOrderCountByPlanNoAjax 触发请求
- 数据处理路径:
- 数据落点:
- 当前链路未识别到明确数据落点。
备注
- 当前只定位到前端接口与后端落点文件,未从 Controller 中匹配到完全一致的方法映射。
- 前端请求路径含服务前缀
/dm-device,合理推断该前缀来自网关或服务路由。
6.3 POST /dm-device/maintenanceWorkOrders/maintenanceWorkOrdersCount
接口信息
- 请求地址:
/dm-device/maintenanceWorkOrders/maintenanceWorkOrdersCount - 请求方式:
POST - 功能简述:业务请求
- 所属页面:主页面
- 前端触发链路:
- <el-date-picker> @change -> dateChange -> getmaintenanceWorkOrdersCount -> maintenanceWorkOrdersCountAjax
- <el-select> @change -> productLineChange -> getmaintenanceWorkOrdersCount -> maintenanceWorkOrdersCountAjax
- activated 生命周期 -> activated -> getmaintenanceWorkOrdersCount -> maintenanceWorkOrdersCountAjax
- 后端入口:
maintenanceWorkOrdersCount - Service 方法:
maintenanceWorkOrdersCount
入参
参数位置:
unknown当前链路未展开到更细的字段级定义。
出参
外层响应:ResultData
业务数据体:框架统一成功响应
当前链路重点在业务动作与后端处理,公共包裹字段未继续展开。
后端逻辑链路
- 校验
- Controller 入口为
maintenanceWorkOrdersCount(@RequestBody WorkOrdersQueryVo vo),由@Validated和请求对象注解触发基础参数校验。
- 预处理
- 当前链路未识别出额外步骤。
- 核心业务
- 当前链路未识别出额外步骤。
- 状态变更
- 当前链路未识别出额外步骤。
- 数据影响
- 当前链路未识别出额外步骤。
- 收尾
- Controller 通过
success(...)返回框架统一成功响应。
数据链路
- 当前链路未识别到明确数据库表操作。
数据流走向
- 数据来源:
- 前端页面通过 <el-date-picker> @change -> dateChange -> getmaintenanceWorkOrdersCount -> maintenanceWorkOrdersCountAjax 触发请求
- 数据处理路径:
- Controller:
maintenanceWorkOrdersCount - Service:
maintenanceWorkOrdersCount - 数据落点:
- 当前链路未识别到明确数据落点。
备注
- 前端请求路径含服务前缀
/dm-device,合理推断该前缀来自网关或服务路由。
重点组件说明
组件:index
- 角色:主页面
- 层级路径:
index - 是否直接CRUD:否
- 一句话作用:承接 maintain 页面主入口、列表查询和业务操作入口。
7. 子组件列表
detail:路由路径/default/devicemate/maintain/plan/detail
8. 修改入口
- 改当前节点逻辑:先看上游入口,再看组件总览和业务页面跳转链路,最后核对接口与后端落点。
- 改跳页逻辑:不仅要改当前页的方法和参数,还要同步检查目标页文档是否受影响。
- 当前自动分析未识别出额外高风险点,但仍建议顺着子组件列表逐级核对。