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

package log

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

/******************************************************************************
 *
 * @Struct Name              : ArtDemandHeadCache
 *-----------------------------------------------------------------------------
 *
 * @Description              : ArtDemandHeadCache的实体映射
 *
 * @Author                   : 代码生成器创建
 *
 * @Date                     : 2021-06-15 15:28:12
 *
 ******************************************************************************/
type ArtDemandHeadCache struct {
	PlantNr            int           `xorm:"pk int 'PlantNr'" json:"LOG_ArtDemandHeadCache-PlantNr"`
	ArtId              string        `xorm:"pk nvarchar(40) 'ArtId'" json:"LOG_ArtDemandHeadCache-ArtId"`
	DemandId           string        `xorm:"pk nvarchar(40) 'DemandId'" json:"LOG_ArtDemandHeadCache-DemandId"`
	DemandType         string        `xorm:"nvarchar(40) 'DemandType' not null" json:"LOG_ArtDemandHeadCache-DemandType"`
	DemandYear         int           `xorm:"int 'DemandYear' not null" json:"LOG_ArtDemandHeadCache-DemandYear"`
	DemandMonth        int           `xorm:"int 'DemandMonth' not null" json:"LOG_ArtDemandHeadCache-DemandMonth"`
	DemandWeek         int           `xorm:"int 'DemandWeek' not null" json:"LOG_ArtDemandHeadCache-DemandWeek"`
	DemandDate         grmi.Date     `xorm:"date 'DemandDate' not null" json:"LOG_ArtDemandHeadCache-DemandDate"`
	DemandHour         int           `xorm:"int 'DemandHour' not null" json:"LOG_ArtDemandHeadCache-DemandHour"`
	DemandTime         grmi.DateTime `xorm:"datetime 'DemandTime'" json:"LOG_ArtDemandHeadCache-DemandTime"`
	DemandQty          float64       `xorm:"float 'DemandQty' not null" json:"LOG_ArtDemandHeadCache-DemandQty"`
	QtyUomId           string        `xorm:"nvarchar(40) 'QtyUomId' not null" json:"LOG_ArtDemandHeadCache-QtyUomId"`
	Status             int           `xorm:"int 'Status' not null" json:"LOG_ArtDemandHeadCache-Status"`
	DemandSendTime     grmi.DateTime `xorm:"datetime 'DemandSendTime'" json:"LOG_ArtDemandHeadCache-DemandSendTime"`
	DemandRecieveTime  grmi.DateTime `xorm:"datetime 'DemandRecieveTime'" json:"LOG_ArtDemandHeadCache-DemandRecieveTime"`
	DemandConfirmTime  grmi.DateTime `xorm:"datetime 'DemandConfirmTime'" json:"LOG_ArtDemandHeadCache-DemandConfirmTime"`
	DemandCloseTime    grmi.DateTime `xorm:"datetime 'DemandCloseTime'" json:"LOG_ArtDemandHeadCache-DemandCloseTime"`
	DemandDeliveredQty float64       `xorm:"float 'DemandDeliveredQty' not null" json:"LOG_ArtDemandHeadCache-DemandDeliveredQty"`
	DemandCtrlPara1    int           `xorm:"int 'DemandCtrlPara1' not null" json:"LOG_ArtDemandHeadCache-DemandCtrlPara1"`
	DemandCtrlPara2    int           `xorm:"int 'DemandCtrlPara2' not null" json:"LOG_ArtDemandHeadCache-DemandCtrlPara2"`
	DemandCtrlPara3    string        `xorm:"nvarchar(100) 'DemandCtrlPara3' not null" json:"LOG_ArtDemandHeadCache-DemandCtrlPara3"`
	DemandCtrlPara4    string        `xorm:"nvarchar(100) 'DemandCtrlPara4' not null" json:"LOG_ArtDemandHeadCache-DemandCtrlPara4"`
	DemandCtrlTime1    grmi.DateTime `xorm:"datetime 'DemandCtrlTime1'" json:"LOG_ArtDemandHeadCache-DemandCtrlTime1"`
	DemandCtrlTime2    grmi.DateTime `xorm:"datetime 'DemandCtrlTime2'" json:"LOG_ArtDemandHeadCache-DemandCtrlTime2"`
	OrderStatus        int           `xorm:"int 'OrderStatus' not null" json:"LOG_ArtDemandHeadCache-OrderStatus"`
	UnproducedQty      float64       `xorm:"float 'UnproducedQty' not null" json:"LOG_ArtDemandHeadCache-UnproducedQty"`
	OrderType          string        `xorm:"nvarchar(20) 'OrderType' not null" json:"LOG_ArtDemandHeadCache-OrderType"`
	WorkOrderId        string        `xorm:"nvarchar(40) 'WorkOrderId'" json:"LOG_ArtDemandHeadCache-WorkOrderId"`
	ProjectId          string        `xorm:"nvarchar(40) 'ProjectId' not null" json:"LOG_ArtDemandHeadCache-ProjectId"`
	DemandStatus       int           `xorm:"int 'DemandStatus' not null" json:"LOG_ArtDemandHeadCache-DemandStatus"`
	DemandCtrlPara5    int           `xorm:"int 'DemandCtrlPara5'" json:"LOG_ArtDemandHeadCache-DemandCtrlPara5"`
	DemandCtrlPara6    int           `xorm:"int 'DemandCtrlPara6'" json:"LOG_ArtDemandHeadCache-DemandCtrlPara6"`
	ChangeStatus       int           `xorm:"int 'ChangeStatus' not null" json:"LOG_ArtDemandHeadCache-ChangeStatus"`
	PlanResourceId     string        `xorm:"nvarchar(40) 'PlanResourceId'" json:"LOG_ArtDemandHeadCache-PlanResourceId"`
	PlanStartDate      grmi.Date     `xorm:"date 'PlanStartDate'" json:"LOG_ArtDemandHeadCache-PlanStartDate"`
	PlanEndDate        grmi.Date     `xorm:"date 'PlanEndDate'" json:"LOG_ArtDemandHeadCache-PlanEndDate"`
	PlanStartTime      grmi.DateTime `xorm:"datetime 'PlanStartTime'" json:"LOG_ArtDemandHeadCache-PlanStartTime"`
	PlanEndTime        grmi.DateTime `xorm:"datetime 'PlanEndTime'" json:"LOG_ArtDemandHeadCache-PlanEndTime"`
	ActStartTime       grmi.DateTime `xorm:"datetime 'ActStartTime'" json:"LOG_ArtDemandHeadCache-ActStartTime"`
	ActEndTime         grmi.DateTime `xorm:"datetime 'ActEndTime'" json:"LOG_ArtDemandHeadCache-ActEndTime"`
	CancelQty          float64       `xorm:"float 'CancelQty' not null" json:"LOG_ArtDemandHeadCache-CancelQty"`
	LastModify         grmi.DateTime `xorm:"datetime 'LastModify' not null updated" json:"LOG_ArtDemandHeadCache-LastModify"`
	LastUser           string        `xorm:"nvarchar(20) 'LastUser' not null" json:"LOG_ArtDemandHeadCache-LastUser"`
	CreateTime         grmi.DateTime `xorm:"datetime 'CreateTime' not null created" json:"LOG_ArtDemandHeadCache-CreateTime"`
}

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