feat: 完成产线MES系统全流程功能迭代与优化

本提交完成了多个核心模块的功能完善与业务对齐:
1. 工位终端:固定工位配置、移除自选工位逻辑、适配配置化工位号
2. MES核心:重构工位组合逻辑、新增工单/流程状态管理、补全报工/追溯逻辑
3. WMS客户端:新增修改密码功能、优化帮助弹窗逻辑
4. 文档与权限:补充完整操作手册、统一菜单名称与权限描述
5. 修复多业务校验:排产数量校验、工单状态校验、工位绑定规则
This commit is contained in:
SunYF
2026-08-31 12:58:28 +08:00
parent a3145a8bd6
commit ae4c292487
53 changed files with 1475 additions and 912 deletions
+5 -4
View File
@@ -22,7 +22,7 @@ func processName(code int) string {
if n, ok := names[code]; ok {
return n
}
return "工" + itoa(code)
return "工" + itoa(code)
}
// evalLogic 依据考核逻辑判定
@@ -73,7 +73,7 @@ func (s *Service) OnlineWorkpiece(ctx context.Context, req OnlineReq, operator s
}
seq := req.ProcessSeq
if seq == "" {
seq = "123456789101112"
seq = FullProcessSeq
}
if req.WorkOrderId == 0 {
if wo, err := s.ctx.EntClient.WorkOrder.Query().Where(workorder.WorkOrderNo(req.OrderNo)).First(ctx); err == nil {
@@ -83,6 +83,7 @@ func (s *Service) OnlineWorkpiece(ctx context.Context, req OnlineReq, operator s
}
}
}
seq = NormalizeProcessSeq(seq)
err := s.ctx.EntClient.Workpiece.Create().
SetSn(req.Sn).SetOrderNo(req.OrderNo).SetWorkOrderId(req.WorkOrderId).
SetProcessSeq(seq).SetStatus("ONLINE").SetOnlineAt(time.Now()).Exec(ctx)
@@ -100,7 +101,7 @@ type ReportProcessReq struct {
Steps []StepDataReq `json:"steps"`
}
// ReportProcess 工位工序报工:写工实绩 + 步骤考核(step_data,扭矩在RANGE自动判定 OK/NG
// ReportProcess 工位报工:写工实绩 + 步骤考核(step_data,扭矩在RANGE自动判定 OK/NG
func (s *Service) ReportProcess(ctx context.Context, req ReportProcessReq, operator string) error {
if req.Sn == "" || req.ProcessCode == 0 {
return errors.New("sn 与 processCode 必填")
@@ -139,7 +140,7 @@ func (s *Service) ReportProcess(ctx context.Context, req ReportProcessReq, opera
SetCurrentProcess(req.ProcessCode).SetStatus("PROCESSING").Save(ctx)
s.ctx.EventLog.Write(ctx, "workpiece.process.report", wp.OrderNo, operator, "workpiece", req.Sn,
"工位工序报工", map[string]any{"processCode": req.ProcessCode, "result": result})
"工位报工", map[string]any{"processCode": req.ProcessCode, "result": result})
return nil
}