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

package me

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

/******************************************************************************
 *
 * @Struct Name              : Project
 *-----------------------------------------------------------------------------
 *
 * @Description              : Project的实体映射
 *
 * @Author                   : 代码生成器创建
 *
 * @Date                     : 2021-10-19 11:07:11
 *
 ******************************************************************************/
type Project struct {
	PlantNr                          int             `xorm:"pk int 'PlantNr'" json:"ME_Project-PlantNr"`
	ProjectId                        string          `xorm:"pk nvarchar(40) 'ProjectId'" json:"ME_Project-ProjectId"`
	Descr                            string          `xorm:"nvarchar(40) 'Descr' not null" json:"ME_Project-Descr"`
	CustomerId                       string          `xorm:"nvarchar(40) 'CustomerId' not null" json:"ME_Project-CustomerId"`
	PlantSiteCode                    int             `xorm:"int 'PlantSiteCode' not null" json:"ME_Project-PlantSiteCode"`
	EdiType                          string          `xorm:"nvarchar(20) 'EdiType' not null" json:"ME_Project-EdiType"`
	EnabledToggle                    bool            `xorm:"bit 'EnabledToggle' not null" json:"ME_Project-EnabledToggle"`
	EmailServerHost                  string          `xorm:"nvarchar(100) 'EmailServerHost' not null" json:"ME_Project-EmailServerHost"`
	EmailServerPort                  int             `xorm:"int 'EmailServerPort' not null" json:"ME_Project-EmailServerPort"`
	FromEmail                        string          `xorm:"nvarchar(100) 'FromEmail' not null" json:"ME_Project-FromEmail"`
	FromPwd                          string          `xorm:"nvarchar(40) 'FromPwd' not null" json:"ME_Project-FromPwd"`
	CustOrderSnr                     string          `xorm:"nvarchar(40) 'CustOrderSnr' not null" json:"ME_Project-CustOrderSnr"`
	WorkOrderSnr                     string          `xorm:"nvarchar(40) 'WorkOrderSnr' not null" json:"ME_Project-WorkOrderSnr"`
	ManualWorkOrderSnr               string          `xorm:"nvarchar(40) 'ManualWorkOrderSnr' not null" json:"ME_Project-ManualWorkOrderSnr"`
	ReorderSnr                       string          `xorm:"nvarchar(40) 'ReorderSnr' not null" json:"ME_Project-ReorderSnr"`
	PackOrderSnr                     string          `xorm:"nvarchar(40) 'PackOrderSnr' not null" json:"ME_Project-PackOrderSnr"`
	PackSyncSnr                      string          `xorm:"nvarchar(40) 'PackSyncSnr' not null" json:"ME_Project-PackSyncSnr"`
	ShipOrderSnr                     string          `xorm:"nvarchar(40) 'ShipOrderSnr' not null" json:"ME_Project-ShipOrderSnr"`
	ShipCarSnr                       string          `xorm:"nvarchar(40) 'ShipCarSnr' not null" json:"ME_Project-ShipCarSnr"`
	ShipFileSnr                      string          `xorm:"nvarchar(40) 'ShipFileSnr' not null" json:"ME_Project-ShipFileSnr"`
	ShipFileFolder                   string          `xorm:"nvarchar(100) 'ShipFileFolder' not null" json:"ME_Project-ShipFileFolder"`
	AsnSnr                           string          `xorm:"nvarchar(40) 'AsnSnr' not null" json:"ME_Project-AsnSnr"`
	AsnFileType                      string          `xorm:"nvarchar(40) 'AsnFileType' not null" json:"ME_Project-AsnFileType"`
	AsnFolder                        string          `xorm:"nvarchar(100) 'AsnFolder' not null" json:"ME_Project-AsnFolder"`
	BackFlushObject                  string          `xorm:"nvarchar(20) 'BackFlushObject' not null" json:"ME_Project-BackFlushObject"`
	BackFlushMode                    string          `xorm:"nvarchar(20) 'BackFlushMode' not null" json:"ME_Project-BackFlushMode"`
	BackFlushRule                    string          `xorm:"nvarchar(100) 'BackFlushRule' not null" json:"ME_Project-BackFlushRule"`
	BackFlushFolder                  string          `xorm:"nvarchar(100) 'BackFlushFolder' not null" json:"ME_Project-BackFlushFolder"`
	PackOrderRFIDSnr                 string          `xorm:"nvarchar(40) 'PackOrderRFIDSnr' not null" json:"ME_Project-PackOrderRFIDSnr"`
	PackOrderOutLineRFIDSnr          string          `xorm:"nvarchar(40) 'PackOrderOutLineRFIDSnr' not null" json:"ME_Project-PackOrderOutLineRFIDSnr"`
	PreOrderSnr                      string          `xorm:"nvarchar(40) 'PreOrderSnr' not null" json:"ME_Project-PreOrderSnr"`
	CtrlPara1                        int             `xorm:"int 'CtrlPara1' not null" json:"ME_Project-CtrlPara1"`
	CtrlPara2                        int             `xorm:"int 'CtrlPara2' not null" json:"ME_Project-CtrlPara2"`
	CtrlStr1                         string          `xorm:"nvarchar(255) 'CtrlStr1' not null" json:"ME_Project-CtrlStr1"`
	CtrlStr2                         string          `xorm:"nvarchar(255) 'CtrlStr2' not null" json:"ME_Project-CtrlStr2"`
	CtrlTime1                        grmi.DateTime   `xorm:"datetime 'CtrlTime1' not null" json:"ME_Project-CtrlTime1"`
	CtrlTime2                        grmi.DateTime   `xorm:"datetime 'CtrlTime2' not null" json:"ME_Project-CtrlTime2"`
	SerialOrderSnr                   string          `xorm:"nvarchar(40) 'SerialOrderSnr'" json:"ME_Project-SerialOrderSnr"`
	INTSerialOrderSnr                string          `xorm:"nvarchar(40) 'INTSerialOrderSnr'" json:"ME_Project-INTSerialOrderSnr"`
	FileServerHost                   string          `xorm:"nvarchar(100) 'FileServerHost' not null" json:"ME_Project-FileServerHost"`
	CalloffFolder                    string          `xorm:"nvarchar(100) 'CalloffFolder' not null" json:"ME_Project-CalloffFolder"`
	CalloffFileNameRegexp            string          `xorm:"nvarchar(100) 'CalloffFileNameRegexp' not null" json:"ME_Project-CalloffFileNameRegexp"`
	CalloffVerifyCheckSequenceToggle bool            `xorm:"bit 'CalloffVerifyCheckSequenceToggle' not null" json:"ME_Project-CalloffVerifyCheckSequenceToggle"`
	CalloffVerifyProductFamilyToggle bool            `xorm:"bit 'CalloffVerifyProductFamilyToggle' not null" json:"ME_Project-CalloffVerifyProductFamilyToggle"`
	LastModify                       grmi.DateTime   `xorm:"datetime 'LastModify' not null updated" json:"ME_Project-LastModify"`
	LastUser                         string          `xorm:"nvarchar(20) 'LastUser' not null" json:"ME_Project-LastUser"`
	CreateTime                       grmi.DateTime   `xorm:"datetime 'CreateTime' not null created" json:"ME_Project-CreateTime"`
	ProductFamily                    []ProductFamily `xorm:"-" json:"ME_Project-ProductFamily"`
}

/******************************************************************************
 *
 * @Function Name            : GetKey
 *-----------------------------------------------------------------------------
 *
 * @Description              : 获取实体的主键
 *
 * @Return Value             : 实体的主键
 *
 * @Author                   : 代码生成器创建
 *
 * @Date                     : 2021-10-19 11:07:11
 *
 ******************************************************************************/
func (self *Project) GetKey() core.PK {
	return core.PK{self.PlantNr, self.ProjectId}
}
