wms/nflg-wms-repository/CLAUDE.md

150 lines
5.5 KiB
Markdown
Raw Normal View History

[根目录](../CLAUDE.md) > **nflg-wms-repository**
# nflg-wms-repository - 数据层模块
## 模块职责
封装所有数据库操作,不可独立启动。为业务服务提供:
- 数据库实体 (Entity)
- MyBatis-Plus Mapper 接口及 XML 映射文件
- Service 接口 (IXxxService) 及实现 (XxxServiceImpl)
- 自定义 TypeHandler
- MyBatis 拦截器
## 关键依赖
- nflg-wms-common
- PostgreSQL (数据库驱动)
- MyBatis-Plus Spring Boot 3 Starter
- MyBatis-Plus JSqlParser
- Spring Retry (重试机制)
- Spring Security Crypto (密码加密)
- Redisson (分布式锁)
## 关键目录说明
| 路径 | 说明 |
|------|------|
| `entity/` | 数据库实体,约 120+ 个,覆盖系统全部数据表 |
| `mapper/` | Mapper 接口,约 120+ 个,继承 BaseMapper |
| `service/` | Service 接口,约 120+ 个I{Entity}Service 命名 |
| `service/impl/` | Service 实现类 |
| `handler/` | TypeHandler3 个) |
| `interceptor/` | MyBatis 拦截器1 个) |
| `resources/mapper/` | MyBatis XML 映射文件,约 142 个 |
## TypeHandler 清单
| 类 | 说明 |
|----|------|
| `UTCLocalDateTypeHandler` | UTC 时区 LocalDate 类型处理 |
| `UTCLocalDateTimeTypeHandler` | UTC 时区 LocalDateTime 类型处理 |
| `LtreeTypeHandler` | PostgreSQL ltree 类型与 Java String 的映射 |
## 拦截器
| 类 | 说明 |
|----|------|
| `AuditInnerInterceptor` | MyBatis-Plus 审计日志内部拦截器 |
## 入口点
无启动入口(基础库模块)。
## 核心实体分类
### 系统管理
- `User` / `VUser` / `VUserInterior` / `VUserSupplier` - 用户(含视图)
- `Role` / `UserRoleMap` - 角色与用户角色映射
- `Menu` / `MenuButton` / `MenuButtonApiMap` / `RoleMenuMap` / `RoleButtonMap` - 菜单权限
- `Api` - API 接口注册
- `Department` / `Position` - 部门与岗位
- `Language` / `WebComponent` / `WebComponentTranslate` - 多语言
- `Dictionary` / `DictionaryItem` / `DictionaryItemTranslate` - 字典
- `ParamConfig` - 系统参数配置
- `AdminPermission*` - 数据权限相关(表/列/角色映射)
- `AuditLog` / `OptRecord` - 审计日志与操作记录
- `UsageGuide` - 使用指南
- `Advertisement` / `Ad` / `AdSync` - 广告与 AD 域同步
- `FileUploadRecord` - 文件上传记录
### 入库管理
- `WmsPoReceipt` / `WmsPoReceiptItem` - PO 收货单
- `WmsQcReceive` / `WmsQcReceiveItem` / `WmsQcReceiveItemDetail` - 质检收货
- `WmsInProduceBack` / `WmsInProduceBackItem` - 生产退货入库
- `WmsInProduceBackTicket` / `WmsInProduceBackTicketItem` - 生产退货入库凭证
- `WmsInCostcenterBack` / `WmsInCostcenterBackItem` - 成本中心退货入库
- `WmsInCostcenterBackTicket` / `WmsInCostcenterBackTicketItem` - 成本中心退货凭证
- `WmsInProduceOrder` / `WmsInProduceOrderItem` - 生产订单入库
- `WmsInProduceOrderSurplus*` - 生产剩余入库
- `WmsInTask` / `WmsInTaskItem` - 入库任务
### 出库管理
- `WmsOutProduce` / `WmsOutProduceItem` - 生产领料出库
- `WmsOutProduceTicket` / `WmsOutProduceTicketItem` - 生产出库凭证
- `WmsOutCostcenter` / `WmsOutCostcenterItem` - 成本中心出库
- `WmsOutCostcenterTicket` / `WmsOutCostcenterTicketItem` - 成本中心出库凭证
- `WmsOutAssistance` / `WmsOutAssistanceItem` - 外协出库
- `WmsOutAssistanceTicket` / `WmsOutAssistanceTicketItem` - 外协出库凭证
- `WmsOutPurchase` / `WmsOutPurchaseItem` - 采购退货出库
- `WmsOutboundRecommendation` - 出库推荐
- `WmsComponentOutbound` / `WmsComponentOutboundItem` - 零部件出库
### 库存管理
- `WmsInventory` - 库存
- `WmsInventoryBarcodePrinting` - 库存条码打印
- `WmsInventoryCheckTask` / `WmsInventoryCheckTaskItem` / `WmsInventoryCheckTaskItemMaterial` - 盘点任务
- `WmsStorageBin` - 仓位
- `VStorage` - 库存视图
### 仓库/物料基础数据
- `WmsWarehouse` - 仓库 (对应 WmsWarehouseMapper)
- `WmsBin` - 库位
- `WmsBom` - 物料 BOM
- `WmsModel` - 型号
- `WmsMaterial` - 物料 (对应 WmsMaterialMapper)
- `WmsQrCodeMaster` - 二维码主表
- `BasdeSerialNumber` - 流水号
### 发货管理
- `WmsShipmentDelivery` / `WmsShipmentDeliveryItem` - 发运单
- `WmsShipmentMaterial` - 发货物料
- `WmsShipmentMaterialCode` / `WmsShipmentMaterialCodeItem*` - 物料码
- `WmsShipmentPackagingCode` / `WmsShipmentPackagingCodeItem` - 包装码
- `WmsShipmentSiteStock*` - 现场库存
### SRM 对接
- `WmsSrmOrder` / `WmsSrmOrderItem` - SRM 订单
- `WmsSrmMaterialReceipt` / `WmsSrmMaterialReceiptItem` - SRM 物料收货
- `WmsSrmQualityInspection` - SRM 质量检验
### 其他
- `WmsPackage` / `WmsPackageItem` - 包装
- `WmsReturnRequest` / `WmsReturnRequestItem` - 退货请求
- `WmsTransferCompany*` / `WmsTransferFactory*` - 公司间/工厂间调拨
- `WmsTransferOrders` - 调拨单
- `WmsGongzhuangTaizhang*` - 工装台账
- `WmsToolMaterial*` - 工具物料
- `WmsComponentPacking*` - 零部件包装
- `WmsStructuralPackage*` - 钢构包管理
- `WmsNormalPrintOrder` - 普通打印单
- `WmsTask` / `WmsTaskItem` - 任务
- `KitBackup` / `KitdetailBackup` - Kit 备份
## 测试
- `CodeGeneratorTest` - MyBatis-Plus 代码生成器
## 相关文件清单
- `src/main/java/com/nflg/wms/repository/` - 全部源码
- `src/main/resources/mapper/` - 142 个 MyBatis XML 映射文件
- `pom.xml` - 模块依赖定义
## 变更记录 (Changelog)
| 时间 | 操作 | 说明 |
|------|------|------|
| 2026-05-23 14:28:57 | 更新 | 补充 LtreeTypeHandlerPostgreSQL ltree 类型处理TypeHandler 清单从 2 个更正为 3 个 |
| 2026-05-23 14:16:58 | 初始化 | 首次生成模块文档 |