7.6 KiB
7.6 KiB
物料编号搜索功能设计说明
01-功能内容
本次功能是在项目中涉及物料搜索的页面和弹窗中,新增“物料编号/物料编码”独立搜索条件。
目标效果:
- 用户可以直接输入物料编号定位物料。
- 原有物料名称、图号/型号、库位、类型等搜索条件保持不变。
- 新增编号搜索与原有条件可以组合查询。
- 后端存储过程新增可选参数,未传物料编号时不影响原查询结果。
- 导出场景同步支持物料编号条件,避免页面查询和导出数据不一致。
覆盖范围:
| 模块 | 页面/组件 | 查询入口 |
|---|---|---|
| 仓储管理 | 库存盘点 | 主列表查询、导出 |
| 仓储管理 | 库存查询 | 主列表查询、导出 |
| 仓储管理 | 入库记录 | 主列表查询、导出 |
| 仓储管理 | 物料库位 | 主列表查询 |
| 仓储管理 | 领料/耗材 | 耗材物料选择查询 |
| 技术中心 | 物料查询 | 主列表查询 |
| 技术中心 | 物料维护 | 主列表查询 |
| 技术中心 | 图纸确认 | 物料选择弹窗 |
| 技术中心 | 图纸确认分配 | 物料选择弹窗 |
| 销售管理 | 订单管理 | 物料选择弹窗 |
| 销售管理 | 订单审核 | 物料选择弹窗 |
| 销售管理 | 订单查询 | 物料选择弹窗 |
| 装配管理 | 接收装配任务 | 物料选择弹窗 |
| 装配管理 | 接收滑台装配任务 | 物料选择弹窗 |
02-程序开发步骤
前端改造
- 定位所有已有物料搜索入口,重点筛选包含
物料名称_check、物料名称规格型号、仓储管理_通用库存_查询、物料管理_查询数据_分页的组件。 - 在搜索栏或物料选择弹窗中新增输入框:
placeholder="物料编号"或placeholder="物料编码"- 使用 Vue 2 Options API 的
data()字段维护输入值。
- 在查询方法中新增判断变量:
物料编码_check = 1/0物料编码 = 输入值
- 将新增参数追加到原有
param数组中。 - 导出方法同步追加相同参数,保证查询和导出一致。
- 保持原有
CreateData、ExecDatabase调用方式,不新增请求封装。
后端改造
- 对相关 SQL Server 存储过程增加可选参数:
@物料编码_check bit = null@物料编码 nvarchar(50) = null
- 在动态 SQL WHERE 条件中追加:
- 当
@物料编码_check = 1时,按物料编码模糊查询。
- 当
- 对
sp_executesql同步补充参数声明和值传递。 - 保持兼容性:未传编号条件时,原查询逻辑不变。
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.vuesrc/views/WarehouseManagement/InventoryQuery/index.vuesrc/views/WarehouseManagement/WarehousingRecord/WarehousingRecord.vuesrc/views/WarehouseManagement/MaterialLocation/index.vuesrc/views/WarehouseManagement/MaterialRequisition/index.vuesrc/views/TechnologyCenter/MaterialQuery/index.vuesrc/views/TechnologyCenter/MaterialMaintain/index.vuesrc/views/AssemblyManagement/ReceiveAssemblyTask/index.vuesrc/views/AssemblyManagement/ReceiveAssemblyTaskSliding/index.vuesrc/views/SalesManagement/OrderExamine/index.vuesrc/views/SalesManagement/OrderManagement/index.vuesrc/views/SalesManagement/OrderInquiry/index.vuesrc/views/TechnologyCenter/DrawingConfirmation/index.vuesrc/views/TechnologyCenter/DrawingConfirmationDistribution/index.vue
结果:全部 ok。
SQL 执行验证
验证数据库:
- SQL Server:
192.168.1.27 - 数据库:
ERPTOOL_JY_20250826Back
验证方式:直接调用相关存储过程并传入 @物料编码_check=1,@物料编码=N'0'。
验证通过的过程:
物料管理_查询数据_分页仓储管理_物料库位_查询数据仓储管理_耗材出库_查询仓储管理_库存盘点_查询仓储管理_库存查询_查询仓储管理_通用库存_查询报表_仓储管理_通用库存_查询仓储管理_入库记录_查询仓储管理_入库记录_导出表格_查询
结果:all sql execution ok。
06-决策记录
| 决策点 | 选择 | 原因 |
|---|---|---|
| 搜索字段命名 | 前端显示“物料编号/物料编码”,后端参数使用 物料编码 |
数据库字段主要为 物料编码,页面展示常称为物料编号 |
| 是否复用物料名称输入框 | 不复用,新增独立输入框 | 用户明确要求“添加物料编号搜索功能”,独立条件更清晰 |
| 后端参数是否必传 | 可选参数 | 保持旧页面、旧查询兼容 |
| 查询方式 | 模糊查询 | 与项目内物料名称、图号搜索习惯一致 |
| 共用弹窗处理 | 统一改 仓储管理_通用库存_查询 调用方 |
多个页面共用同一库存物料选择过程,统一补能避免重复逻辑 |
| 导出是否同步 | 同步 | 防止页面筛选结果和导出结果不一致 |
| 是否完整构建 | 未执行完整 build | 当前工作区已有 dist.7z 等既有脏文件,避免构建重写产物 |
07-后续注意事项
- 新增物料搜索页面时,如表格展示
物料编码,搜索栏应同步提供物料编号输入框。 - 新增后端查询过程时,建议统一支持:
@物料编码_check@物料编码
- 如果后续改为统一物料选择组件,可将物料编号、物料名称、图号/型号三个搜索项抽成共用弹窗,减少重复页面维护。