Skip to content

updatePartMain 链路分析

源文件:docs/front end/dm/lemes-web/src/views/devicemate/information/partMain/updatePartMain.vue

前端 API:docs/front end/dm/lemes-web/src/views/devicemate/api/information/partMain/partMain.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/PartMainController.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/PartMainServiceImpl.java

主表:part_main

Vue 组件总览

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

辅助组件说明

  • dialogs:负责通用弹窗容器、确认和关闭交互。

技术图

updatePartMain 页面数据流图

  • Flow 布局:standardupdatePartMain 页面摘要图

  • Summary 布局:standard

1. 页面概览

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

2. 上游入口

  • partMain 的组件 updatePartMain 在链路 index > updatePartMain 中递归引用当前节点。

3. 业务页面跳转链路

  • 当前节点未识别出业务页面跳转链路。

4. 前端真实调用链

  • <dialogs> @open -> approvalOpen -> getDetail
  • <el-button> @click -> removeImage -> deleteImg
  • <dialogs> @cancel / <dialogs> @close -> approvalClose -> reset

5. 接口总览

methodpath功能所属节点前端触发后端入口
GET/dm-store/partMain/detail/{id}详情回显主页面<dialogs> @open -> approvalOpen -> getDetailData -> getDetailpartMainDetail
GET/dm-store/partMain/deletePicture/{id}附件删除主页面<el-button> @click -> removeImage -> deleteImgdeletePicture
POST/dm-store/partMain/fileUpload附件上传主页面-fileUpload

6. 接口详细说明

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

接口信息

  • 请求地址:/dm-store/partMain/detail/{id}
  • 请求方式:GET
  • 功能简述:详情回显
  • 所属页面:主页面
  • 前端触发链路:
  • <dialogs> @open -> approvalOpen -> getDetailData -> getDetail
  • 后端入口:partMainDetail
  • Service 方法:findPartMainById

入参

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

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

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

出参

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

  • partNo;类型:String;说明:物料代号

  • partCode;类型:String;说明:物料编码;校验:必填 / 长度不超过 50

  • partName;类型:String;说明:物料名称;校验:必填 / 长度不超过 100

  • spec;类型:String;说明:物料规格;校验:长度不超过 100

  • uom;类型:String;说明:单位;校验:长度不超过 20

  • controlType;类型:Integer;说明:控制类型;校验:必填

  • price;类型:BigDecimal;说明:价格

  • preferredSupplier;类型:String;说明:首选供应商

  • isPeriod;类型:Integer;说明:是否有效期件

  • isLife;类型:Integer;说明:是否寿命件

  • maxLife;类型:BigDecimal;说明:最大寿命值

  • maxLifeUom;类型:String;说明:最大寿命单位;校验:长度不超过 5

  • useModel;类型:String;说明:使用机型;校验:长度不超过 20

  • preciousType;类型:Integer;说明:ABC分类

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

  • description;类型:String;说明:备注;校验:长度不超过 500

  • packageNumber;类型:Long;说明:包装数量

  • attachmentVoList

  • baseUrl;类型:String

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

后端逻辑链路

  1. 校验
  • 当前链路未识别出额外步骤。
  1. 预处理
  • 当前链路未识别出额外步骤。
  1. 核心业务
  • 按目标 id 拉取附件集合,并回填 attachmentVoList / baseUrl
  1. 状态变更
  • 当前链路无数据库写操作。
  1. 数据影响
  • 库存、金额、业务状态都不会发生持久化变更;若有价格处理,仅作用于返回值或导出值。
  1. 收尾
  • Controller 通过 success(...) 返回框架统一成功响应。

数据链路

接口调用类型库名.表名mapper.pagesql作用(简写)
GET /dm-store/partMain/detail/{id}查询?.part_mainMyBatis-Plus getById按 id 查询物料详情
GET /dm-store/partMain/detail/{id}远程读取?.附件数据fileClient.listFileWithTarget按业务目标查询附件并回填 attachmentVoList 或 baseUrl

数据流走向

  • 数据来源:
  • 前端页面通过 <dialogs> @open -> approvalOpen -> getDetailData -> getDetail 触发请求
  • 数据处理路径:
  • Controller:partMainDetail
  • Service:findPartMainById
  • 按目标 id 拉取附件集合,并回填 attachmentVoList / baseUrl
  • 数据落点:
  • ?.part_main
  • ?.附件数据

备注

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

6.2 GET /dm-store/partMain/deletePicture/:id

接口信息

  • 请求地址:/dm-store/partMain/deletePicture/{id}
  • 请求方式:GET
  • 功能简述:附件删除
  • 所属页面:主页面
  • 前端触发链路:
  • <el-button> @click -> removeImage -> deleteImg
  • 后端入口:deletePicture
  • Service 方法:deletePicture

入参

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

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

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

出参

  • 外层响应:ResultData

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

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

后端逻辑链路

  1. 校验
  • 当前链路未识别出额外步骤。
  1. 预处理
  • 当前链路未识别出额外步骤。
  1. 核心业务
  • 按目标 id 拉取附件集合,并回填 attachmentVoList / baseUrl
  • 附件删除会先查旧附件,再调用文件服务删除文件。
  1. 状态变更
  • 当前链路未识别出额外步骤。
  1. 数据影响
  • 当前链路未识别出额外步骤。
  1. 收尾
  • Controller 通过 success(...) 返回框架统一成功响应。

数据链路

接口调用类型库名.表名mapper.pagesql作用(简写)
GET /dm-store/partMain/deletePicture/{id}远程读取?.附件数据fileClient.listFileWithTarget按业务目标查询附件并回填 attachmentVoList 或 baseUrl
GET /dm-store/partMain/deletePicture/{id}远程写入?.附件数据fileClient.deleteFiles删除旧附件文件

数据流走向

  • 数据来源:
  • 前端页面通过 <el-button> @click -> removeImage -> deleteImg 触发请求
  • 数据处理路径:
  • Controller:deletePicture
  • Service:deletePicture
  • 按目标 id 拉取附件集合,并回填 attachmentVoList / baseUrl
  • 附件删除会先查旧附件,再调用文件服务删除文件。
  • 数据落点:
  • ?.附件数据
  • ?.附件数据

备注

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

6.3 POST /dm-store/partMain/fileUpload

接口信息

  • 请求地址:/dm-store/partMain/fileUpload
  • 请求方式:POST
  • 功能简述:附件上传
  • 所属页面:主页面
  • 后端入口:fileUpload
  • Service 方法:fileUpload

入参

  • 后端接口实际接收对象:MultipartFile
  • 参数位置:formData

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

  • multipartFile;类型:MultipartFile;说明:上传文件;校验:必填

出参

  • 外层响应:ResultData<LsscAttachmentVo>

  • 业务数据体:上传后的附件元数据

  • 当前链路只确认返回附件对象,未继续展开其全部字段定义。

后端逻辑链路

  1. 校验
  • 当前链路未识别出额外步骤。
  1. 预处理
  • 当前链路未识别出额外步骤。
  1. 核心业务
  • 文件上传接口会把文件直接转发给文件服务并返回附件元数据。
  1. 状态变更
  • 当前接口只写文件服务,不直接改主表。
  1. 数据影响
  • 返回附件元数据,真正业务绑定发生在后续保存或更新流程。
  1. 收尾
  • Controller 通过 success(...) 返回框架统一成功响应。

数据链路

接口调用类型库名.表名mapper.pagesql作用(简写)
POST /dm-store/partMain/fileUpload远程写入?.附件数据fileClient.uploadFile上传附件到文件服务

数据流走向

  • 数据来源:
  • 前端页面通过 当前页面动作 触发请求
  • 数据处理路径:
  • Controller:fileUpload
  • Service:fileUpload
  • 文件上传接口会把文件直接转发给文件服务并返回附件元数据。
  • 数据落点:
  • ?.附件数据

备注

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

重点组件说明

组件:index

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

7. 子组件列表

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

8. 修改入口

  • 改当前节点逻辑:先看上游入口,再看组件总览和业务页面跳转链路,最后核对接口与后端落点。
  • 当前自动分析未识别出额外高风险点,但仍建议顺着子组件列表逐级核对。