feat: 完成客户第12条需求+多系统改造
1. 新增预警表添加工单号字段,支持按工单号检索预警 2. 添加工单过滤在制品/绩效报表/预警中心查询 3. 补全WMS台账字段口径与权限配置 4. 修复备料单与数量不符处理流程 5. 新增配送进度/库位联动/自动出库功能 6. 修复AGV配送状态更新逻辑 7. 优化退料与库存管理细节
This commit is contained in:
@@ -35,8 +35,18 @@ type MaterialQtyReport struct {
|
||||
DiffQty int `json:"diffQty,omitempty"`
|
||||
// 差异原因
|
||||
Cause string `json:"cause,omitempty"`
|
||||
// PENDING/RESOLVED
|
||||
// PENDING/PROCESSING/REPLENISHED/RETURNED/ADJUSTED/CLOSED
|
||||
Status string `json:"status,omitempty"`
|
||||
// 处理方式 REPLENISH补发/RETURN退库/ADJUST调整
|
||||
HandleType string `json:"handleType,omitempty"`
|
||||
// 处理生成的单据号(补料单号/退库单号)
|
||||
HandleDocNo string `json:"handleDocNo,omitempty"`
|
||||
// 处理说明
|
||||
HandleNote string `json:"handleNote,omitempty"`
|
||||
// 处理人
|
||||
HandledBy string `json:"handledBy,omitempty"`
|
||||
// 处理时间(unix 秒)
|
||||
HandledAt int64 `json:"handledAt,omitempty"`
|
||||
// 上报人
|
||||
Operator string `json:"operator,omitempty"`
|
||||
// CreatedAt holds the value of the "createdAt" field.
|
||||
@@ -51,9 +61,9 @@ func (*MaterialQtyReport) scanValues(columns []string) ([]any, error) {
|
||||
values := make([]any, len(columns))
|
||||
for i := range columns {
|
||||
switch columns[i] {
|
||||
case materialqtyreport.FieldID, materialqtyreport.FieldStationNo, materialqtyreport.FieldPlanQty, materialqtyreport.FieldActualQty, materialqtyreport.FieldDiffQty:
|
||||
case materialqtyreport.FieldID, materialqtyreport.FieldStationNo, materialqtyreport.FieldPlanQty, materialqtyreport.FieldActualQty, materialqtyreport.FieldDiffQty, materialqtyreport.FieldHandledAt:
|
||||
values[i] = new(sql.NullInt64)
|
||||
case materialqtyreport.FieldOrderNo, materialqtyreport.FieldSn, materialqtyreport.FieldMaterialCode, materialqtyreport.FieldMaterialName, materialqtyreport.FieldCause, materialqtyreport.FieldStatus, materialqtyreport.FieldOperator:
|
||||
case materialqtyreport.FieldOrderNo, materialqtyreport.FieldSn, materialqtyreport.FieldMaterialCode, materialqtyreport.FieldMaterialName, materialqtyreport.FieldCause, materialqtyreport.FieldStatus, materialqtyreport.FieldHandleType, materialqtyreport.FieldHandleDocNo, materialqtyreport.FieldHandleNote, materialqtyreport.FieldHandledBy, materialqtyreport.FieldOperator:
|
||||
values[i] = new(sql.NullString)
|
||||
case materialqtyreport.FieldCreatedAt, materialqtyreport.FieldResolvedAt:
|
||||
values[i] = new(sql.NullTime)
|
||||
@@ -138,6 +148,36 @@ func (_m *MaterialQtyReport) assignValues(columns []string, values []any) error
|
||||
} else if value.Valid {
|
||||
_m.Status = value.String
|
||||
}
|
||||
case materialqtyreport.FieldHandleType:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field handleType", values[i])
|
||||
} else if value.Valid {
|
||||
_m.HandleType = value.String
|
||||
}
|
||||
case materialqtyreport.FieldHandleDocNo:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field handleDocNo", values[i])
|
||||
} else if value.Valid {
|
||||
_m.HandleDocNo = value.String
|
||||
}
|
||||
case materialqtyreport.FieldHandleNote:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field handleNote", values[i])
|
||||
} else if value.Valid {
|
||||
_m.HandleNote = value.String
|
||||
}
|
||||
case materialqtyreport.FieldHandledBy:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field handledBy", values[i])
|
||||
} else if value.Valid {
|
||||
_m.HandledBy = value.String
|
||||
}
|
||||
case materialqtyreport.FieldHandledAt:
|
||||
if value, ok := values[i].(*sql.NullInt64); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field handledAt", values[i])
|
||||
} else if value.Valid {
|
||||
_m.HandledAt = value.Int64
|
||||
}
|
||||
case materialqtyreport.FieldOperator:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field operator", values[i])
|
||||
@@ -223,6 +263,21 @@ func (_m *MaterialQtyReport) String() string {
|
||||
builder.WriteString("status=")
|
||||
builder.WriteString(_m.Status)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("handleType=")
|
||||
builder.WriteString(_m.HandleType)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("handleDocNo=")
|
||||
builder.WriteString(_m.HandleDocNo)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("handleNote=")
|
||||
builder.WriteString(_m.HandleNote)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("handledBy=")
|
||||
builder.WriteString(_m.HandledBy)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("handledAt=")
|
||||
builder.WriteString(fmt.Sprintf("%v", _m.HandledAt))
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("operator=")
|
||||
builder.WriteString(_m.Operator)
|
||||
builder.WriteString(", ")
|
||||
|
||||
Reference in New Issue
Block a user