package schema import ( "time" "entgo.io/ent" "entgo.io/ent/dialect/entsql" "entgo.io/ent/schema" "entgo.io/ent/schema/field" "entgo.io/ent/schema/index" ) // StepData 步骤考核数据:某工件某工序步骤采集/手填实际值,按考核标准判定 OK/NG type StepData struct { ent.Schema } func (StepData) Annotations() []schema.Annotation { return []schema.Annotation{entsql.Annotation{Table: "step_data"}} } func (StepData) Fields() []ent.Field { return []ent.Field{ field.Int("id").Positive(), field.String("sn").MaxLen(64).Comment("工件SN"), field.Int("processId").Optional().Comment("工件工序实绩ID"), field.Int("stepId").Comment("步骤ID"), field.String("stepName").Default("").MaxLen(128), field.Int("criterionId").Optional().Comment("考核标准ID"), field.String("criterionName").Default("").MaxLen(64), field.String("criterionLogic").Default("NONE").MaxLen(16), field.Float("value").Default(0).Comment("实际测量值"), field.String("valueText").Default("").MaxLen(64).Comment("文本值(OK/NG/钢印号)"), field.Bool("isOK").Default(true).Comment("是否合格(可人工修正)"), field.String("operator").Default("").MaxLen(64), field.Time("createdAt").Default(time.Now).Immutable(), } } func (StepData) Indexes() []ent.Index { return []ent.Index{ index.Fields("sn"), index.Fields("processId"), index.Fields("stepId"), } }