Skip to content

detail 链路分析

源文件:docs/front end/dm/lemes-web/src/views/devicemate/personalInventory/applyBorrow/detail.vue

前端 API:docs/front end/dm/lemes-web/src/views/devicemate/api/personalInventory/applyBorrow/applyBorrow.js

后端落点:lemes-cloud/lemes-business-devicemate/lemes-service-dm-store/lemes-service-dm-store-server/src/main/java/com/lenovo/lemes/service/dm/store/controller/StoreMainController.java / lemes-cloud/lemes-business-devicemate/lemes-service-dm-store/lemes-service-dm-store-server/src/main/java/com/lenovo/lemes/service/dm/store/service/impl/StoreMainServiceImpl.java

主表:store_main

Vue 组件总览

组件层级路径角色是否主链路是否直接CRUD独立MD跳转一句话作用
indexindex主页面当前页查看承接 detail 页面主入口、列表查询和业务操作入口。

辅助组件说明

  • iTable:负责通用列表渲染、分页、多选、排序和操作列承载。

技术图

detail 页面数据流图

  • Flow 布局:standarddetail 页面摘要图

  • Summary 布局:standard

1. 页面概览

  • 当前节点对应文件 docs/front end/dm/lemes-web/src/views/devicemate/personalInventory/applyBorrow/detail.vue
  • 当前节点识别到 0 个重点组件、1 个辅助组件。
  • 当前节点识别到 1 条业务页面跳转链路、3 个真实接口。

2. 上游入口

  • applyBorrow 通过 方法 goDetail 跳转到当前页,路由为 /default/devicemate/personalInventory/applyBorrow/detail,携带参数 id

3. 业务页面跳转链路

  • <el-button> @click -> /personalInventory/applyBorrow -> 未解析目标页

4. 前端真实调用链

  • activated 生命周期 -> activated -> storeAll / getProductLineList / getOrderNoDetail

5. 接口总览

methodpath功能所属节点前端触发后端入口
GET/dm-store/PersonalApplyBorrowOrders/detail/{id}详情回显主页面activated 生命周期 -> activated -> getOrderDetailsById -> getOrderNoDetail-
POST/dm-store/productLine/queryList业务请求主页面activated 生命周期 -> activated -> getProductLine -> getProductLineList-
POST/dm-store/storeMain/queryStoreMain业务请求主页面activated 生命周期 -> activated -> getStoreList -> storeAllqueryStoreMain

6. 接口详细说明

6.1 GET /dm-store/PersonalApplyBorrowOrders/detail/:id

接口信息

  • 请求地址:/dm-store/PersonalApplyBorrowOrders/detail/{id}
  • 请求方式:GET
  • 功能简述:详情回显
  • 所属页面:主页面
  • 前端触发链路:
  • activated 生命周期 -> activated -> getOrderDetailsById -> getOrderNoDetail

入参

  • 后端接口实际接收对象:Long
  • 参数位置:path
json
{
  "id": 1
}

已在源码中确认的有效字段包括:

  • id;类型:Long;说明:路径中的业务 id;校验:必填

出参

  • 外层响应:ResultData<PartMainVo>
  • 业务数据体:单个 PartMainVo 对象
json
{
  "id": 1,
  "partNo": "...",
  "partCode": "...",
  "partName": "...",
  "spec": "...",
  "uom": "...",
  "controlType": "...",
  "price": "...",
  "preferredSupplier": "...",
  "isPeriod": "...",
  "isLife": "...",
  "maxLife": "...",
  "maxLifeUom": "...",
  "useModel": "...",
  "preciousType": "...",
  "validFlag": 1,
  "description": "...",
  "packageNumber": "...",
  "attachmentVoList": "...",
  "baseUrl": "..."
}
  • id

  • partNo

  • partCode

  • partName

  • spec

  • uom

  • controlType

  • price

  • preferredSupplier

  • isPeriod

  • isLife

  • maxLife

  • maxLifeUom

  • useModel

  • preciousType

  • validFlag;类型:Integer;说明:是否可用 0-否 1-是

  • description

  • packageNumber

  • attachmentVoList

  • baseUrl

  • 详情接口会把附件集合写入 attachmentVoList,并补充前端可直接回显的 baseUrl

后端逻辑链路

  1. 校验
  • 当前链路未识别出额外步骤。
  1. 预处理
  • 当前链路未识别出额外步骤。
  1. 核心业务
  • 当前链路未识别出额外步骤。
  1. 状态变更
  • 当前链路无数据库写操作。
  1. 数据影响
  • 库存、金额、业务状态都不会发生持久化变更;若有价格处理,仅作用于返回值或导出值。
  1. 收尾
  • 当前链路未识别出额外步骤。

数据链路

接口调用类型库名.表名mapper.pagesql作用(简写)
GET /dm-store/PersonalApplyBorrowOrders/detail/{id}查询?.store_mainMyBatis-Plus getById按 id 查询物料详情

数据流走向

  • 数据来源:
  • 前端页面通过 activated 生命周期 -> activated -> getOrderDetailsById -> getOrderNoDetail 触发请求
  • 数据处理路径:
  • 数据落点:
  • ?.store_main

备注

  • 当前只定位到前端接口与后端落点文件,未从 Controller 中匹配到完全一致的方法映射。
  • 前端请求路径含服务前缀 /dm-store,合理推断该前缀来自网关或服务路由。
  • PartMainServiceImpl 类上存在 @DSTransactional,但只读接口本身不会产生写事务效果。

6.2 POST /dm-store/productLine/queryList

接口信息

  • 请求地址:/dm-store/productLine/queryList
  • 请求方式:POST
  • 功能简述:业务请求
  • 所属页面:主页面
  • 前端触发链路:
  • activated 生命周期 -> activated -> getProductLine -> getProductLineList

入参

  • 参数位置:unknown

  • 当前链路未展开到更细的字段级定义。

出参

  • 外层响应:ResultData

  • 业务数据体:框架统一成功响应

  • 当前链路重点在业务动作与后端处理,公共包裹字段未继续展开。

后端逻辑链路

  1. 校验
  • 当前链路未识别出额外步骤。
  1. 预处理
  • 当前链路未识别出额外步骤。
  1. 核心业务
  • 当前链路未识别出额外步骤。
  1. 状态变更
  • 当前链路未识别出额外步骤。
  1. 数据影响
  • 当前链路未识别出额外步骤。
  1. 收尾
  • 当前链路未识别出额外步骤。

数据链路

  • 当前链路未识别到明确数据库表操作。

数据流走向

  • 数据来源:
  • 前端页面通过 activated 生命周期 -> activated -> getProductLine -> getProductLineList 触发请求
  • 数据处理路径:
  • 数据落点:
  • 当前链路未识别到明确数据落点。

备注

  • 当前只定位到前端接口与后端落点文件,未从 Controller 中匹配到完全一致的方法映射。
  • 前端请求路径含服务前缀 /dm-store,合理推断该前缀来自网关或服务路由。
  • PartMainServiceImpl 类上存在 @DSTransactional,但只读接口本身不会产生写事务效果。

6.3 POST /dm-store/storeMain/queryStoreMain

接口信息

  • 请求地址:/dm-store/storeMain/queryStoreMain
  • 请求方式:POST
  • 功能简述:业务请求
  • 所属页面:主页面
  • 前端触发链路:
  • activated 生命周期 -> activated -> getStoreList -> storeAll
  • 后端入口:queryStoreMain
  • Service 方法:findStoreMain

入参

  • 参数位置:unknown

  • 当前链路未展开到更细的字段级定义。

出参

  • 外层响应:ResultData

  • 业务数据体:框架统一成功响应

  • 当前链路重点在业务动作与后端处理,公共包裹字段未继续展开。

后端逻辑链路

  1. 校验
  • Controller 入口为 queryStoreMain(@Validated @RequestBody(required = false) StoreMainQueryVo storeMainQueryVo),由 @Validated 和请求对象注解触发基础参数校验。
  1. 预处理
  • Service 内先构造 LambdaQueryWrapper 作为条件容器。
  1. 核心业务
  • 使用 ServiceImpl 通用查询能力拉取目标数据集合。
  1. 状态变更
  • 当前链路未识别出额外步骤。
  1. 数据影响
  • 当前链路未识别出额外步骤。
  1. 收尾
  • 当前链路未识别出额外步骤。

数据链路

  • 当前链路未识别到明确数据库表操作。

数据流走向

  • 数据来源:
  • 前端页面通过 activated 生命周期 -> activated -> getStoreList -> storeAll 触发请求
  • 数据处理路径:
  • Controller:queryStoreMain
  • Service:findStoreMain
  • 使用 ServiceImpl 通用查询能力拉取目标数据集合。
  • 数据落点:
  • 当前链路未识别到明确数据落点。

备注

  • 前端请求路径含服务前缀 /dm-store,合理推断该前缀来自网关或服务路由。
  • PartMainServiceImpl 类上存在 @DSTransactional,但只读接口本身不会产生写事务效果。

重点组件说明

组件:index

  • 角色:主页面
  • 层级路径:index
  • 是否直接CRUD:否
  • 一句话作用:承接 detail 页面主入口、列表查询和业务操作入口。

7. 子组件列表

  • 当前节点没有继续下钻的子文档。

8. 修改入口

  • 改当前节点逻辑:先看上游入口,再看组件总览和业务页面跳转链路,最后核对接口与后端落点。
  • 改跳页逻辑:不仅要改当前页的方法和参数,还要同步检查目标页文档是否受影响。
  • 当前自动分析未识别出额外高风险点,但仍建议顺着子组件列表逐级核对。