feat(mes): 添加定时同步可生产数量到WMS及BOM项相关标准字段

- 在main.go中添加定时任务每10分钟同步可生产数量到WMS系统
- 为BomItem实体添加relatedStandard字段及相关CRUD方法
- 为InspectionRecord实体添加reportNo、materialCode、materialName等字段
- 更新ent schema确保新字段的验证和默认值设置
- 添加必要的数据库迁移和字段映射逻辑
This commit is contained in:
SunYF
2026-09-17 12:49:07 +08:00
parent b4b274301d
commit 1cc93795ce
191 changed files with 24504 additions and 1250 deletions
+5 -2
View File
@@ -22,6 +22,7 @@ type BomItemReq struct {
Unit string `json:"unit"`
ManageMode string `json:"manageMode"`
ProcessCode *int `json:"processCode"` // 装配工序 1~12;nil=不修改(兼容旧调用/移除时保留);0=显式清除
RelatedStandard string `json:"relatedStandard"` // 相关标准(检验细则)
UnitQty float64 `json:"unitQty"`
LossRate float64 `json:"lossRate"`
RequiredQty float64 `json:"requiredQty"`
@@ -50,7 +51,8 @@ func (s *Service) SaveBom(ctx context.Context, productCode, bomName string, item
if err == nil && exist != nil {
u := s.ctx.EntClient.BomItem.UpdateOneID(exist.ID).
SetMaterialName(it.MaterialName).SetSpec(it.Spec).SetUnit(it.Unit).
SetManageMode(it.ManageMode).SetUnitQty(it.UnitQty).SetLossRate(it.LossRate)
SetManageMode(it.ManageMode).SetUnitQty(it.UnitQty).SetLossRate(it.LossRate).
SetRelatedStandard(it.RelatedStandard)
if it.ProcessCode != nil {
u = u.SetProcessCode(*it.ProcessCode) // nil 时不覆盖既有工序配置
}
@@ -69,7 +71,8 @@ func (s *Service) SaveBom(ctx context.Context, productCode, bomName string, item
SetProductCode(productCode).SetBomName(bomName).SetMaterialCode(it.MaterialCode).
SetMaterialName(it.MaterialName).SetSpec(it.Spec).SetUnit(it.Unit).
SetManageMode(it.ManageMode).SetProcessCode(pc).
SetUnitQty(it.UnitQty).SetLossRate(it.LossRate)
SetUnitQty(it.UnitQty).SetLossRate(it.LossRate).
SetRelatedStandard(it.RelatedStandard)
if len(it.SerialSns) > 0 {
b.SetSerialSns(it.SerialSns)
}