package cn.estsh.i3plus.pojo.mes.pcn.bean;


import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;

/**
 * @Author: Wynne.Lu
 * @CreateDate: 2019/9/25 8:07 PM
 * @Description:
 **/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name = "MES_PLC")
@Api("PLC配置表")
public class MesPlc extends BaseBean implements Serializable {

    private static final long serialVersionUID = -5346536604317095818L;
    @Column(name = "PLC_CODE")
    @ApiParam("PLC代码")
    private String plcCode;

    @Column(name = "PLC_NAME")
    @ApiParam("PLC名称")
    private String plcName;

    @Column(name = "PLC_MODEL")
    @ApiParam("PLC型号")
    private String plcModel;

    @Column(name = "PLC_IP")
    @ApiParam("PLC IP")
    private String plcIp;

    @Column(name = "CHANNEL")
    @ApiParam("通道")
    private String channel;

    @Column(name = "TAG_NAME")
    @ApiParam("标签名称")
    private String tagName;

    @Column(name = "TAG_ADDRESS")
    @ApiParam("标签地址")
    private String tagAddress;

    @Column(name = "DATA_TYPE")
    @ApiParam("标签数据类型")
    private String dataType;

    @Column(name = "GROUP_NAME")
    @ApiParam("分组名称")
    private String groupName;

    @Column(name = "DEVICE")
    @ApiParam("驱动")
    private String device;

    @Column(name = "EQUIPMENT_CODE")
    @ApiParam("设备代码")
    private String equipmentCode;

    @Column(name = "WORK_CENTER_CODE")
    @ApiParam("生产线")
    private String workCenterCode;

    @Column(name = "WORK_CELL_CODE")
    @ApiParam("工位")
    private String workCellCode;

    @Column(name = "PLC_CFG")
    @ApiParam("PLC的值的设定")
    private String plcCfg;

    @Column(name = "ANALYSIS_RULE")
    @ApiParam("解析规则")
    private String analysisRule;

    @Column(name = "IS_ANALYSIS")
    @ApiParam("是否解析")
    private String isAnalysis;

    @Column(name = "FEED_VALUE")
    @ApiParam("反馈值")
    private String feedValue;

    @Column(name = "OBJECT_CODE")
    @ApiParam("对象代码")
    private String objectCode;

    @Transient
    @ApiParam("设备名称")
    private String equipmentName;

    @Column(name = "TOOLING_CODE ")
    @ApiParam("工装代码")
    private String toolingCode;
}
