feat(mes): 添加定时同步可生产数量到WMS及BOM项相关标准字段
- 在main.go中添加定时任务每10分钟同步可生产数量到WMS系统 - 为BomItem实体添加relatedStandard字段及相关CRUD方法 - 为InspectionRecord实体添加reportNo、materialCode、materialName等字段 - 更新ent schema确保新字段的验证和默认值设置 - 添加必要的数据库迁移和字段映射逻辑
This commit is contained in:
@@ -18,7 +18,7 @@ type InspectionRecord struct {
|
||||
config `json:"-"`
|
||||
// ID of the ent.
|
||||
ID int `json:"id,omitempty"`
|
||||
// 记录类型 CHECKIN/POINT/PROCESS/DONE/ALARM
|
||||
// 记录类型 CHECKIN/POINT/PROCESS/DONE/ALARM/INCOMING/FINAL
|
||||
Category string `json:"category,omitempty"`
|
||||
// 工位号
|
||||
StationNo string `json:"stationNo,omitempty"`
|
||||
@@ -46,6 +46,22 @@ type InspectionRecord struct {
|
||||
StepName string `json:"stepName,omitempty"`
|
||||
// 实测值(过程巡检录入)
|
||||
MeasuredValue string `json:"measuredValue,omitempty"`
|
||||
// 报检单号
|
||||
ReportNo string `json:"reportNo,omitempty"`
|
||||
// 物料编码(图号)
|
||||
MaterialCode string `json:"materialCode,omitempty"`
|
||||
// 物料名称
|
||||
MaterialName string `json:"materialName,omitempty"`
|
||||
// 生产厂家
|
||||
Manufacturer string `json:"manufacturer,omitempty"`
|
||||
// 检验单号
|
||||
InspectionNo string `json:"inspectionNo,omitempty"`
|
||||
// 附件ID,逗号分隔(关联 attachment 表)
|
||||
AttachmentIds string `json:"attachmentIds,omitempty"`
|
||||
// 处置类型 退货/返修/退换
|
||||
DisposalType string `json:"disposalType,omitempty"`
|
||||
// 处置说明
|
||||
DisposalRemark string `json:"disposalRemark,omitempty"`
|
||||
// CreatedAt holds the value of the "createdAt" field.
|
||||
CreatedAt time.Time `json:"createdAt,omitempty"`
|
||||
selectValues sql.SelectValues
|
||||
@@ -60,7 +76,7 @@ func (*InspectionRecord) scanValues(columns []string) ([]any, error) {
|
||||
values[i] = new([]byte)
|
||||
case inspectionrecord.FieldID, inspectionrecord.FieldProcessCode, inspectionrecord.FieldStepId:
|
||||
values[i] = new(sql.NullInt64)
|
||||
case inspectionrecord.FieldCategory, inspectionrecord.FieldStationNo, inspectionrecord.FieldShift, inspectionrecord.FieldOrderNo, inspectionrecord.FieldSn, inspectionrecord.FieldResult, inspectionrecord.FieldPhoto, inspectionrecord.FieldRemark, inspectionrecord.FieldOperator, inspectionrecord.FieldStepName, inspectionrecord.FieldMeasuredValue:
|
||||
case inspectionrecord.FieldCategory, inspectionrecord.FieldStationNo, inspectionrecord.FieldShift, inspectionrecord.FieldOrderNo, inspectionrecord.FieldSn, inspectionrecord.FieldResult, inspectionrecord.FieldPhoto, inspectionrecord.FieldRemark, inspectionrecord.FieldOperator, inspectionrecord.FieldStepName, inspectionrecord.FieldMeasuredValue, inspectionrecord.FieldReportNo, inspectionrecord.FieldMaterialCode, inspectionrecord.FieldMaterialName, inspectionrecord.FieldManufacturer, inspectionrecord.FieldInspectionNo, inspectionrecord.FieldAttachmentIds, inspectionrecord.FieldDisposalType, inspectionrecord.FieldDisposalRemark:
|
||||
values[i] = new(sql.NullString)
|
||||
case inspectionrecord.FieldCreatedAt:
|
||||
values[i] = new(sql.NullTime)
|
||||
@@ -171,6 +187,54 @@ func (_m *InspectionRecord) assignValues(columns []string, values []any) error {
|
||||
} else if value.Valid {
|
||||
_m.MeasuredValue = value.String
|
||||
}
|
||||
case inspectionrecord.FieldReportNo:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field reportNo", values[i])
|
||||
} else if value.Valid {
|
||||
_m.ReportNo = value.String
|
||||
}
|
||||
case inspectionrecord.FieldMaterialCode:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field materialCode", values[i])
|
||||
} else if value.Valid {
|
||||
_m.MaterialCode = value.String
|
||||
}
|
||||
case inspectionrecord.FieldMaterialName:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field materialName", values[i])
|
||||
} else if value.Valid {
|
||||
_m.MaterialName = value.String
|
||||
}
|
||||
case inspectionrecord.FieldManufacturer:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field manufacturer", values[i])
|
||||
} else if value.Valid {
|
||||
_m.Manufacturer = value.String
|
||||
}
|
||||
case inspectionrecord.FieldInspectionNo:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field inspectionNo", values[i])
|
||||
} else if value.Valid {
|
||||
_m.InspectionNo = value.String
|
||||
}
|
||||
case inspectionrecord.FieldAttachmentIds:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field attachmentIds", values[i])
|
||||
} else if value.Valid {
|
||||
_m.AttachmentIds = value.String
|
||||
}
|
||||
case inspectionrecord.FieldDisposalType:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field disposalType", values[i])
|
||||
} else if value.Valid {
|
||||
_m.DisposalType = value.String
|
||||
}
|
||||
case inspectionrecord.FieldDisposalRemark:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field disposalRemark", values[i])
|
||||
} else if value.Valid {
|
||||
_m.DisposalRemark = value.String
|
||||
}
|
||||
case inspectionrecord.FieldCreatedAt:
|
||||
if value, ok := values[i].(*sql.NullTime); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field createdAt", values[i])
|
||||
@@ -255,6 +319,30 @@ func (_m *InspectionRecord) String() string {
|
||||
builder.WriteString("measuredValue=")
|
||||
builder.WriteString(_m.MeasuredValue)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("reportNo=")
|
||||
builder.WriteString(_m.ReportNo)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("materialCode=")
|
||||
builder.WriteString(_m.MaterialCode)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("materialName=")
|
||||
builder.WriteString(_m.MaterialName)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("manufacturer=")
|
||||
builder.WriteString(_m.Manufacturer)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("inspectionNo=")
|
||||
builder.WriteString(_m.InspectionNo)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("attachmentIds=")
|
||||
builder.WriteString(_m.AttachmentIds)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("disposalType=")
|
||||
builder.WriteString(_m.DisposalType)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("disposalRemark=")
|
||||
builder.WriteString(_m.DisposalRemark)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("createdAt=")
|
||||
builder.WriteString(_m.CreatedAt.Format(time.ANSIC))
|
||||
builder.WriteByte(')')
|
||||
|
||||
Reference in New Issue
Block a user