refactor: 重构工艺工序相关命名与数据模型
1. 全局替换"工序"为"工艺"统一术语,包括页面文案、枚举、注释
2. 重构工单与工件工艺数据模型:
- 新增工艺组合表flow_material作为备料/齐套唯一源头
- 新增工位状态表station_state支持自主停单/恢复接单
- 移除station_process派工表,改用工单工艺组合作为路线唯一源头
- 替换processCode为flowId作为工艺关联标识
- 重构工件当前进度字段为currentStationNo
3. 删除冗余的静态备份资源文件
4. 调整物料选择组件默认启用仅显示激活物料
5. 优化工单创建/编辑逻辑,新增工艺组合校验与保存
This commit is contained in:
@@ -4,6 +4,7 @@ import (
|
||||
"context"
|
||||
"strconv"
|
||||
|
||||
"bj_power_mes/ent/dock"
|
||||
"bj_power_mes/ent/permission"
|
||||
"bj_power_mes/ent/role"
|
||||
"bj_power_mes/ent/station"
|
||||
@@ -177,6 +178,8 @@ func (s *Service) Seed(ctx context.Context) error {
|
||||
seedStations(ctx, s)
|
||||
// 5. 接驳台主数据(真源在 MES,2026-09-21 自 WMS 迁入);系统预置只读
|
||||
seedDocks(ctx, s)
|
||||
// 6. 接驳台↔工位 1:1 绑定(系统预置只读主数据,页面不可更改,由种子初始化)
|
||||
bindStationDocks(ctx, s)
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -238,6 +241,29 @@ func seedStations(ctx context.Context, s *Service) {
|
||||
}
|
||||
}
|
||||
|
||||
// bindStationDocks 接驳台↔工位 1:1 绑定:接驳台为系统预置只读主数据,绑定关系由种子初始化、页面不可更改。
|
||||
// 内置且带接驳台的工位(station_no 1~10)各绑定一个产线接驳台(DOCK01~DOCK10);以 dock.station_no 为对照真源,
|
||||
// 若当前绑定不一致则回填,幂等可重复执行。库房/虚拟接驳台(station_no=0)及无接驳台工位不参与绑定。
|
||||
func bindStationDocks(ctx context.Context, s *Service) {
|
||||
docks, err := s.ctx.EntClient.Dock.Query().
|
||||
Where(dock.StationNoGT(0), dock.DockTypeEQ("line")).
|
||||
All(ctx)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
for _, d := range docks {
|
||||
st, err := s.ctx.EntClient.Station.Query().
|
||||
Where(station.StationNo(d.StationNo)).First(ctx)
|
||||
if err != nil || st == nil {
|
||||
continue
|
||||
}
|
||||
if !st.HasDock || !st.IsBuiltin || st.DockCode == d.DockCode {
|
||||
continue
|
||||
}
|
||||
_, _ = s.ctx.EntClient.Station.UpdateOneID(st.ID).SetDockCode(d.DockCode).Save(ctx)
|
||||
}
|
||||
}
|
||||
|
||||
// mergeCodes 合并两份权限码列表(去重、保序)
|
||||
func mergeCodes(a, b []string) []string {
|
||||
seen := map[string]bool{}
|
||||
|
||||
Reference in New Issue
Block a user