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

package base

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

/******************************************************************************
 *
 * @Struct Name              : OPCComRule
 *-----------------------------------------------------------------------------
 *
 * @Description              : OPCComRule的实体映射
 *
 * @Author                   : 代码生成器创建
 *
 * @Date                     : 2021-08-13 16:59:07
 *
 ******************************************************************************/
type OPCComRule struct {
	PlantNr            int                `xorm:"pk int 'PlantNr'" json:"OPCComRule-PlantNr"`
	OperationId        int                `xorm:"pk int 'OperationId'" json:"OPCComRule-OperationId"`
	RuleId             int                `xorm:"pk int 'RuleId'" json:"OPCComRule-RuleId"`
	WorkPlaceNr        int                `xorm:"pk int 'WorkPlaceNr'" json:"OPCComRule-WorkPlaceNr"`
	PO                 int                `xorm:"int 'PO' not null" json:"OPCComRule-PO"`
	StepNo             int                `xorm:"int 'StepNo' not null" json:"OPCComRule-StepNo"`
	StepDesc           string             `xorm:"nvarchar(100) 'StepDesc' not null" json:"OPCComRule-StepDesc"`
	ProjectId          string             `xorm:"nvarchar(40) 'ProjectId' not null" json:"OPCComRule-ProjectId"`
	ActionType         string             `xorm:"nvarchar(20) 'ActionType' not null" json:"OPCComRule-ActionType"`
	DBlockAddress      string             `xorm:"nvarchar(40) 'DBlockAddress' not null" json:"OPCComRule-DBlockAddress"`
	DBlockValueType    string             `xorm:"nvarchar(40) 'DBlockValueType' not null" json:"OPCComRule-DBlockValueType"`
	DBlockValue        string             `xorm:"nvarchar(100) 'DBlockValue' not null" json:"OPCComRule-DBlockValue"`
	Formula            string             `xorm:"nvarchar(40) 'Formula' not null" json:"OPCComRule-Formula"`
	OperatorSimbol     string             `xorm:"nvarchar(40) 'OperatorSimbol' not null" json:"OPCComRule-OperatorSimbol"`
	LastModify         grmi.DateTime      `xorm:"datetime 'LastModify' not null updated" json:"OPCComRule-LastModify"`
	LastUser           string             `xorm:"nvarchar(20) 'LastUser' not null" json:"OPCComRule-LastUser"`
	CreateTime         grmi.DateTime      `xorm:"datetime 'CreateTime' not null created" json:"OPCComRule-CreateTime"`
	OPCComDetailRuleLi []OPCComDetailRule `xorm:"-" json:"OPCComRule-OPCComDetailRuleLi"`
}

/******************************************************************************
 *
 * @Function Name            : GetKey
 *-----------------------------------------------------------------------------
 *
 * @Description              : 获取实体的主键
 *
 * @Return Value             : 实体的主键
 *
 * @Author                   : 代码生成器创建
 *
 * @Date                     : 2021-08-13 16:59:07
 *
 ******************************************************************************/
func (self *OPCComRule) GetKey() core.PK {
	return core.PK{self.PlantNr, self.OperationId, self.RuleId, self.WorkPlaceNr}
}
