package schema import ( "entgo.io/ent" "entgo.io/ent/schema/field" "entgo.io/ent/schema/index" ) // InboundOrder 入库单 type InboundOrder struct { ent.Schema } func (InboundOrder) Fields() []ent.Field { return []ent.Field{ field.String("inbound_no").Unique().Comment("入库单号"), // 类型:purchase(采购) semi(半成品) finished(成品) return(退货) field.String("inbound_type").Default("purchase").Comment("入库类型"), field.String("material_code").Comment("物料编码"), field.String("material_name").Optional().Comment("物料名称(冗余)"), // 管理粒度 1批次(结构件)/2序列号(精密件),冗余自物料档案,便于单单据直接判断 field.Int("manage_mode").Default(1).Comment("管理粒度 1批次/2序列号"), field.String("batch_no").Optional().Comment("批次号(结构件)"), field.String("zone_code").Optional().Comment("入库区域"), field.Int("quantity").Default(0).Comment("本次入库总数量(批次合计或SN条数)"), field.String("operator").Optional().Comment("操作人"), field.String("remark").Optional().Comment("备注"), field.Int64("created_at").DefaultFunc(nowUnix).Comment("创建时间"), } } func (InboundOrder) Indexes() []ent.Index { return []ent.Index{ index.Fields("material_code"), index.Fields("inbound_type"), index.Fields("operator"), } }