// Copyright (c) Shenyang Leading Edge Intelligent Technology Co., Ltd. All rights reserved.

package om

import (
	"LAPP_LF_MOM_BACKEND/grmi"
	"xorm.io/core"
)

/******************************************************************************
 *
 * @Struct Name              : SerialOrder
 *-----------------------------------------------------------------------------
 *
 * @Description              : SerialOrder的实体映射
 *
 * @Author                   : 代码生成器创建
 *
 * @Date                     : 2021-04-20 13:07:32
 *
 ******************************************************************************/
type SerialOrder struct {
	PlantNr           int               `xorm:"pk int 'PlantNr'" json:"OM_SerialOrder-PlantNr"`
	WorkOrderId       string            `xorm:"pk nvarchar(40) 'WorkOrderId'" json:"OM_SerialOrder-WorkOrderId"`
	SerialOrderId     string            `xorm:"pk nvarchar(100) 'SerialOrderId'" json:"OM_SerialOrder-SerialOrderId"`
	ArtId             string            `xorm:"nvarchar(40) 'ArtId' not null" json:"OM_SerialOrder-ArtId"`
	OrderType         string            `xorm:"nvarchar(20) 'OrderType' not null" json:"OM_SerialOrder-OrderType"`
	OrderType1        string            `xorm:"nvarchar(20) 'OrderType1' not null" json:"OM_SerialOrder-OrderType1"`
	OrderType2        string            `xorm:"nvarchar(20) 'OrderType2' not null" json:"OM_SerialOrder-OrderType2"`
	PlanResourceId    string            `xorm:"nvarchar(40) 'PlanResourceId' not null" json:"OM_SerialOrder-PlanResourceId"`
	UsedResourceId    string            `xorm:"nvarchar(40) 'UsedResourceId' not null" json:"OM_SerialOrder-UsedResourceId"`
	PlanQty           float64           `xorm:"float 'PlanQty' not null" json:"OM_SerialOrder-PlanQty"`
	QtyUomId          string            `xorm:"nvarchar(40) 'QtyUomId' not null" json:"OM_SerialOrder-QtyUomId"`
	OpTimePerItem     float64           `xorm:"float 'OpTimePerItem'" json:"OM_SerialOrder-OpTimePerItem"`
	TimeUomId         string            `xorm:"nvarchar(40) 'TimeUomId' not null" json:"OM_SerialOrder-TimeUomId"`
	PlanStartDate     grmi.Date         `xorm:"date 'PlanStartDate' not null" json:"OM_SerialOrder-PlanStartDate"`
	PlanEndDate       grmi.Date         `xorm:"date 'PlanEndDate' not null" json:"OM_SerialOrder-PlanEndDate"`
	SetupStartTime    grmi.DateTime     `xorm:"datetime 'SetupStartTime' not null" json:"OM_SerialOrder-SetupStartTime"`
	SetupEndTime      grmi.DateTime     `xorm:"datetime 'SetupEndTime' not null" json:"OM_SerialOrder-SetupEndTime"`
	PlanStartTime     grmi.DateTime     `xorm:"datetime 'PlanStartTime' not null" json:"OM_SerialOrder-PlanStartTime"`
	PlanEndTime       grmi.DateTime     `xorm:"datetime 'PlanEndTime' not null" json:"OM_SerialOrder-PlanEndTime"`
	ActStartTime      grmi.DateTime     `xorm:"datetime 'ActStartTime' not null" json:"OM_SerialOrder-ActStartTime"`
	ActEndTime        grmi.DateTime     `xorm:"datetime 'ActEndTime' not null" json:"OM_SerialOrder-ActEndTime"`
	ProjectId         string            `xorm:"nvarchar(40) 'ProjectId' not null" json:"OM_SerialOrder-ProjectId"`
	LastModify        grmi.DateTime     `xorm:"datetime 'LastModify' not null updated" json:"OM_SerialOrder-LastModify"`
	LastUser          string            `xorm:"nvarchar(20) 'LastUser' not null" json:"OM_SerialOrder-LastUser"`
	CreateTime        grmi.DateTime     `xorm:"datetime 'CreateTime' not null created" json:"OM_SerialOrder-CreateTime"`
	SerialOrderStatus SerialOrderStatus `json:"OM_SerialOrder-SerialOrderStatus" xorm:"-"`
}

/******************************************************************************
 *
 * @Function Name            : GetKey
 *-----------------------------------------------------------------------------
 *
 * @Description              : 获取实体的主键
 *
 * @Return Value             : 实体的主键
 *
 * @Author                   : 代码生成器创建
 *
 * @Date                     : 2021-04-20 13:07:32
 *
 ******************************************************************************/
func (self *SerialOrder) GetKey() core.PK {
	return core.PK{self.PlantNr, self.WorkOrderId, self.SerialOrderId}
}
