Files
JY1.0/docs/物料编码搜索功能/物料编号搜索功能设计说明.md

7.6 KiB
Raw Permalink Blame History

物料编号搜索功能设计说明

01-功能内容

本次功能是在项目中涉及物料搜索的页面和弹窗中,新增“物料编号/物料编码”独立搜索条件。

目标效果:

  1. 用户可以直接输入物料编号定位物料。
  2. 原有物料名称、图号/型号、库位、类型等搜索条件保持不变。
  3. 新增编号搜索与原有条件可以组合查询。
  4. 后端存储过程新增可选参数,未传物料编号时不影响原查询结果。
  5. 导出场景同步支持物料编号条件,避免页面查询和导出数据不一致。

覆盖范围:

模块 页面/组件 查询入口
仓储管理 库存盘点 主列表查询、导出
仓储管理 库存查询 主列表查询、导出
仓储管理 入库记录 主列表查询、导出
仓储管理 物料库位 主列表查询
仓储管理 领料/耗材 耗材物料选择查询
技术中心 物料查询 主列表查询
技术中心 物料维护 主列表查询
技术中心 图纸确认 物料选择弹窗
技术中心 图纸确认分配 物料选择弹窗
销售管理 订单管理 物料选择弹窗
销售管理 订单审核 物料选择弹窗
销售管理 订单查询 物料选择弹窗
装配管理 接收装配任务 物料选择弹窗
装配管理 接收滑台装配任务 物料选择弹窗

02-程序开发步骤

前端改造

  1. 定位所有已有物料搜索入口,重点筛选包含 物料名称_check物料名称规格型号仓储管理_通用库存_查询物料管理_查询数据_分页 的组件。
  2. 在搜索栏或物料选择弹窗中新增输入框:
    • placeholder="物料编号"placeholder="物料编码"
    • 使用 Vue 2 Options API 的 data() 字段维护输入值。
  3. 在查询方法中新增判断变量:
    • 物料编码_check = 1/0
    • 物料编码 = 输入值
  4. 将新增参数追加到原有 param 数组中。
  5. 导出方法同步追加相同参数,保证查询和导出一致。
  6. 保持原有 CreateDataExecDatabase 调用方式,不新增请求封装。

后端改造

  1. 对相关 SQL Server 存储过程增加可选参数:
    • @物料编码_check bit = null
    • @物料编码 nvarchar(50) = null
  2. 在动态 SQL WHERE 条件中追加:
    • @物料编码_check = 1 时,按物料编码模糊查询。
  3. sp_executesql 同步补充参数声明和值传递。
  4. 保持兼容性:未传编号条件时,原查询逻辑不变。

03-推进台账

轮次 做了什么 改了哪些文件/对象 验证了什么 下一步
1 全局扫描物料搜索入口 src/views/** 找到物料名称搜索、物料选择弹窗、库存类查询入口 确定改造范围
2 仓储核心页面新增编号搜索 库存盘点、库存查询、入库记录 前端参数可生成 物料编码_check/物料编码 补后端过程
3 共用物料选择弹窗新增编号搜索 销售、装配、技术确认相关页面 统一覆盖 仓储管理_通用库存_查询 补共用查询过程
4 剩余物料主数据类入口新增编号搜索 物料查询、物料维护、物料库位、耗材领料 页面输入框与参数完整 补对应过程
5 执行 SQL Server 存储过程改造 9 个存储过程 直接调用过程验证编号条件不报错 前端解析验证
6 前端结构验证 14 个 .vue 文件 vue-template-compiler 模板解析通过 形成文档

04-任务矩阵

任务编号 任务内容 状态 验收标准
M-001 库存盘点增加物料编号搜索 已完成 页面可输入物料编号查询,导出同条件
M-002 库存查询增加物料编号搜索 已完成 主查询和导出均带编号条件
M-003 入库记录增加物料编号搜索 已完成 主查询和导出均带编号条件
M-004 物料库位增加物料编号搜索 已完成 可按物料编号定位库位记录
M-005 耗材领料增加物料编号搜索 已完成 耗材列表可按编号查询
M-006 物料查询增加物料编码搜索 已完成 物料主文件查询可按编码过滤
M-007 物料维护增加物料编码搜索 已完成 维护列表可按编码过滤
M-008 共用库存物料选择弹窗增加编号搜索 已完成 销售、装配、技术确认弹窗可按编号查
M-009 后端查询过程增加编号参数 已完成 存储过程直接传编号参数执行成功
M-010 前端模板结构验证 已完成 改动 .vue 模板解析全部通过

05-验收证据

前端解析验证

验证命令:

node -e "使用 vue-template-compiler 解析改动的 .vue 文件"

验证范围:

  • src/views/WarehouseManagement/InventoryCheck/index.vue
  • src/views/WarehouseManagement/InventoryQuery/index.vue
  • src/views/WarehouseManagement/WarehousingRecord/WarehousingRecord.vue
  • src/views/WarehouseManagement/MaterialLocation/index.vue
  • src/views/WarehouseManagement/MaterialRequisition/index.vue
  • src/views/TechnologyCenter/MaterialQuery/index.vue
  • src/views/TechnologyCenter/MaterialMaintain/index.vue
  • src/views/AssemblyManagement/ReceiveAssemblyTask/index.vue
  • src/views/AssemblyManagement/ReceiveAssemblyTaskSliding/index.vue
  • src/views/SalesManagement/OrderExamine/index.vue
  • src/views/SalesManagement/OrderManagement/index.vue
  • src/views/SalesManagement/OrderInquiry/index.vue
  • src/views/TechnologyCenter/DrawingConfirmation/index.vue
  • src/views/TechnologyCenter/DrawingConfirmationDistribution/index.vue

结果:全部 ok

SQL 执行验证

验证数据库:

  • SQL Server192.168.1.27
  • 数据库:ERPTOOL_JY_20250826Back

验证方式:直接调用相关存储过程并传入 @物料编码_check=1,@物料编码=N'0'

验证通过的过程:

  • 物料管理_查询数据_分页
  • 仓储管理_物料库位_查询数据
  • 仓储管理_耗材出库_查询
  • 仓储管理_库存盘点_查询
  • 仓储管理_库存查询_查询
  • 仓储管理_通用库存_查询
  • 报表_仓储管理_通用库存_查询
  • 仓储管理_入库记录_查询
  • 仓储管理_入库记录_导出表格_查询

结果:all sql execution ok

06-决策记录

决策点 选择 原因
搜索字段命名 前端显示“物料编号/物料编码”,后端参数使用 物料编码 数据库字段主要为 物料编码,页面展示常称为物料编号
是否复用物料名称输入框 不复用,新增独立输入框 用户明确要求“添加物料编号搜索功能”,独立条件更清晰
后端参数是否必传 可选参数 保持旧页面、旧查询兼容
查询方式 模糊查询 与项目内物料名称、图号搜索习惯一致
共用弹窗处理 统一改 仓储管理_通用库存_查询 调用方 多个页面共用同一库存物料选择过程,统一补能避免重复逻辑
导出是否同步 同步 防止页面筛选结果和导出结果不一致
是否完整构建 未执行完整 build 当前工作区已有 dist.7z 等既有脏文件,避免构建重写产物

07-后续注意事项

  1. 新增物料搜索页面时,如表格展示 物料编码,搜索栏应同步提供物料编号输入框。
  2. 新增后端查询过程时,建议统一支持:
    • @物料编码_check
    • @物料编码
  3. 如果后续改为统一物料选择组件,可将物料编号、物料名称、图号/型号三个搜索项抽成共用弹窗,减少重复页面维护。