feat: 完成产线与仓储系统多模块迭代升级

本次迭代覆盖MES与WMS核心业务:
1. 新增接驳台托盘传感器读取与AGV对接能力
2. 完善工单排产、备料流程与权限体系拆分
3. 优化看板接口与前端路由、样式
4. 新增操作日志、库存盘点与角色保护逻辑
5. 修复代理地址、BOM保存等已知问题
This commit is contained in:
SunYF
2026-09-04 14:18:53 +08:00
parent c1fc6d32b2
commit b6799c9de4
138 changed files with 20613 additions and 2220 deletions
+12 -3
View File
@@ -2,6 +2,7 @@ package eventlog
import (
"context"
"time"
"bj_power_mes/ent"
"bj_power_mes/ent/eventlog"
@@ -36,11 +37,13 @@ func (w *Writer) Write(ctx context.Context, eventType, workOrderNo, operator, en
}
}
// Writer Query 支持按工单号/操作人/时间查询
func (w *Writer) Query(ctx context.Context, eventType, workOrderNo, operator string, page, pageSize int) ([]*ent.EventLog, int, error) {
// Writer Query 支持按事件类型/工单号/操作人/时间范围查询
// from/to 传时间戳毫秒(0 表示不限)。
func (w *Writer) Query(ctx context.Context, eventType, workOrderNo, operator string, fromMs, toMs int64, page, pageSize int) ([]*ent.EventLog, int, error) {
q := w.client.EventLog.Query()
if eventType != "" {
q = q.Where(eventlog.EventType(eventType))
// 前缀匹配:前端按业务域"族"筛选(如 work.order. / daily.plan.
q = q.Where(eventlog.EventTypeHasPrefix(eventType))
}
if workOrderNo != "" {
q = q.Where(eventlog.WorkOrderNo(workOrderNo))
@@ -48,6 +51,12 @@ func (w *Writer) Query(ctx context.Context, eventType, workOrderNo, operator str
if operator != "" {
q = q.Where(eventlog.Operator(operator))
}
if fromMs > 0 {
q = q.Where(eventlog.CreatedAtGTE(time.UnixMilli(fromMs)))
}
if toMs > 0 {
q = q.Where(eventlog.CreatedAtLTE(time.UnixMilli(toMs)))
}
total, err := q.Count(ctx)
if err != nil {
return nil, 0, err