Skip to content

锡膏胶水仓储表结构

**本文引用的文件** - [store.sql](file://docs/ddl/store.sql) - [PasteGlueBaseDo.java](file://lemes-cloud/lemes-business-devicemate/lemes-service-dm-store/lemes-service-dm-store-common/src/main/java/com/lenovo/lemes/service/dm/store/entity/PasteGlueBaseDo.java) - [PasteGlueInOrderDo.java](file://lemes-cloud/lemes-business-devicemate/lemes-service-dm-store/lemes-service-dm-store-common/src/main/java/com/lenovo/lemes/service/dm/store/entity/PasteGlueInOrderDo.java)

目录

  1. 简介
  2. 项目结构
  3. 核心组件
  4. 架构总览
  5. 详细组件分析
  6. 依赖关系分析
  7. 性能考虑
  8. 故障排查指南
  9. 结论
  10. 附录

简介

本文件面向锡膏胶水仓储管理场景,系统化梳理并解读数据库表结构与实体映射关系,重点覆盖以下方面:

  • 锡膏胶水基础属性表 paste_glue_base 的字段设计与业务含义
  • 入库单表 paste_glue_in_order 及其明细表 paste_glue_in_order_detail 的结构与职责
  • 库存明细表 paste_glue_store 的关键字段与生命周期管理
  • 特殊属性管理:存储条件 storage_condition、存储有效期 storage_validity_period、在线有效期 online_validity_period、回温条件 warm_condition 等
  • 批次管理、有效期控制、温度管理、搅拌要求等专业技术要求
  • 温控管理、先进先出(FIFO)策略、过期预警机制的实现思路
  • SMT 生产线的锡膏胶水管理最佳实践与质量控制要求

项目结构

本项目的数据库架构位于 docs/ddl/store.sql,其中定义了与仓储管理相关的多张表,涵盖物料主数据、出入库单据、库存明细、站点记录等。Java 实体类位于 lemes-cloud/lemes-business-devicemate/lemes-service-dm-store/lemes-service-dm-store-common/src/main/java/com/lenovo/lemes/service/dm/store/entity/ 目录下,对应 paste_glue_base、paste_glue_in_order、paste_glue_store 等核心表。

图表来源

章节来源

核心组件

本节聚焦三张核心表及其职责边界:

  • paste_glue_base:定义锡膏胶水的基础属性,包括类型、型号、存储条件、有效期、回温和搅拌等关键参数
  • paste_glue_in_order:记录入库单据,承载批次、生产日期、存储条件、存储次数等信息
  • paste_glue_store:库存明细,跟踪每支序列号的生命周期,包括入库、回温、存储次数、站点流转等

章节来源

架构总览

从数据流角度,入库单据驱动库存明细的产生;库存明细承载批次与有效期信息,支撑先进先出与过期预警;站点记录支持在SMT线体上的流转追踪。

图表来源

详细组件分析

表 paste_glue_base:基础属性表

  • 职责:集中管理锡膏胶水的通用属性,作为入库单据与库存明细的数据来源
  • 关键字段与业务含义
    • paste_glue_no:物料唯一编号
    • paste_glue_type / paste_glue_model:类型与型号,用于区分不同配方与规格
    • pack_keyword / ingredients:包装关键字与辅料描述
    • storage_condition / storage_area:存储条件与区域,用于温控与分区管理
    • storage_validity_period / online_validity_period:存储有效期与在线有效期,支撑有效期控制
    • warm_flag / warm_condition / warm_time:是否回温、回温条件与回温时间
    • stir_flag:是否需要搅拌
    • part_code / part_name:与物料主数据关联的编码与名称
  • 设计要点
    • 字段命名清晰,便于前端字典映射与业务展示
    • 有效期字段采用长整型,便于统一计算与比较
    • 回温相关字段独立,便于SMT线体作业指导

章节来源

表 paste_glue_in_order:入库单

  • 职责:记录一次入库操作的业务事实,包含批次、生产日期、存储条件、存储次数等
  • 关键字段与业务含义
    • store_in_order_no:入库单号,唯一索引
    • store_no / store_in_type:仓库与入库类型
    • paste_glue_no / paste_glue_type / paste_glue_model:与基础属性一致
    • produce_date / store_in_number / store_in_date:生产日期、入库数量、入库日期
    • bottle_label_expired:瓶标到期日,用于有效期控制
    • storage_condition / storage_area / storage_count:存储条件、区域与存储次数
    • remark:备注
  • 设计要点
    • 单据与明细解耦,明细通过序列号与库存明细关联
    • 存储次数用于追踪重复存储,辅助温控与有效期管理

章节来源

表 paste_glue_in_order_detail:入库单明细

  • 职责:承载入库单的序列号与批次信息,作为库存明细的输入
  • 关键字段
    • store_in_order_no:关联入库单
    • serial_no:序列号,唯一索引包含工厂维度,确保全局唯一
  • 设计要点
    • 序列号是后续库存与过站记录的关键纽带

章节来源

表 paste_glue_store:库存明细

  • 职责:记录每支序列号的实时状态,支撑先进先出、过期预警与站点流转
  • 关键字段与业务含义
    • serial_no:序列号,唯一索引
    • paste_glue_type / paste_glue_model / paste_glue_no:物料类型、型号与编号
    • produce_date / store_in_date:生产日期与入库日期
    • bottle_label_expired:瓶标到期日
    • storage_condition / storage_area / storage_count:存储条件、区域与存储次数
    • warm_flag / stir_flag / warm_time:回温与搅拌要求
    • station / line / scheduling:站点、线体与排程
    • remark / part_code / part_name:备注与物料编码/名称
  • 设计要点
    • 以序列号为核心追踪单元,便于批次追溯与SMT线体作业
    • 存储次数与站点字段支持温控与FIFO策略落地

章节来源

表 paste_glue_station_records:过站记录

  • 职责:记录序列号在各站点的流转与登记状态
  • 关键字段
    • serial_no:序列号
    • station:站点
    • remark / is_register:备注与是否注册
  • 设计要点
    • 与库存明细通过序列号关联,支撑线边作业与追溯

章节来源

类 PasteGlueBaseDo 与 PasteGlueInOrderDo:实体映射

  • PasteGlueBaseDo:映射 paste_glue_base,字段与DDL保持一致,包含校验注解与Swagger描述
  • PasteGlueInOrderDo:映射 paste_glue_in_order,字段与DDL保持一致,便于后端服务层直接使用

章节来源

依赖关系分析

  • 表间依赖
    • paste_glue_in_order_detail 依赖 paste_glue_in_order(单据-明细)
    • paste_glue_store 依赖 paste_glue_in_order_detail(序列号来源)
    • paste_glue_station_records 依赖 paste_glue_store(序列号来源)
  • Java 实体依赖
    • PasteGlueBaseDo 对应 paste_glue_base
    • PasteGlueInOrderDo 对应 paste_glue_in_order

图表来源

章节来源

性能考虑

  • 索引与唯一性
    • paste_glue_base:按工厂+paste_glue_no 建有唯一索引,保证基础属性唯一性
    • paste_glue_in_order:store_in_order_no 唯一索引,保障单据幂等
    • paste_glue_store:serial_no + factory_no 唯一索引,确保序列号全局唯一
  • 查询路径
    • 以序列号为主键进行查询,避免全表扫描
    • 有效期与存储条件字段可建立复合索引,加速FIFO与过期筛选
  • 更新策略
    • 基础属性中的有效期字段采用“忽略更新”策略,避免误更新导致有效期失效

章节来源

故障排查指南

  • 常见问题
    • 入库单据无法保存:检查 store_in_order_no 唯一性约束
    • 库存明细重复:检查 serial_no + factory_no 唯一性约束
    • 有效期计算异常:确认 produce_date 与 bottle_label_expired 的赋值逻辑
  • 排查步骤
    • 核对入库单据与明细是否匹配
    • 核对库存明细的序列号是否与入库明细一致
    • 核对存储条件与存储区域是否符合SMT线体要求
    • 核对回温和搅拌标志是否正确下发至线体作业系统

章节来源

结论

该数据库架构围绕“序列号”这一核心追踪单元,将入库单据、库存明细与站点记录有机串联,既满足SMT线体的先进先出与温控管理需求,又为批次追溯与过期预警提供了坚实的数据基础。通过基础属性表与入库单据的解耦设计,系统具备良好的扩展性与维护性。

附录

技术规范与最佳实践

  • 批次管理
    • LotNo 与序列号一一对应,入库时生成并写入库存明细
  • 有效期控制
    • 依据 produce_date 与 storage_validity_period/online_validity_period 计算到期日
    • 到期前触发预警,到期后禁止出库
  • 温度管理
    • 依据 storage_condition 与 warm_condition 控制存储与回温
    • warm_time 作为回温时长参考,线体作业需严格遵循
  • 搅拌要求
    • stir_flag 标识是否需要搅拌,线体作业需纳入作业指导
  • 先进先出(FIFO)
    • 以 produce_date 与 store_in_date 为排序依据,优先出库旧批次
  • 过站与追溯
    • paste_glue_station_records 记录站点流转,支持全流程追溯

图表来源