package com.ozs.rpm.dto.kpim;

import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * @ClassName KpiConfigPO
 * @Desc KPI配置实体类
 * @Author jade
 * @Date 2019/2/22
 * @Version 1.0
 */
@Data
public class KpiConfigPO implements Serializable {

    @ApiModelProperty("唯一标识")
    protected String id;

    @ApiModelProperty("KPI名称")
    protected String name;

    @ApiModelProperty("KPI配置类型，参考类型维表")
    protected Integer type;

    @ApiModelProperty("规则类型ID，对应规则类型维表")
    protected Integer ruleTypeId;

    @ApiModelProperty("规则内容")
    protected String rule;

    @ApiModelProperty("KPI编码")
    protected String kpiCode;

    @ApiModelProperty("单位")
    protected String unit;

    @ApiModelProperty("KPI描述")
    protected String description;

    @ApiModelProperty("启用状态：0停用 1启用")
    protected Integer enableStatus;

    @ApiModelProperty("编辑状态：0不可编辑 1可编辑")
    protected Integer editStatus;

    @ApiModelProperty("修改时间")
    protected Date updateTime;

    @ApiModelProperty("修改人ID")
    protected String updateUserId;

    @ApiModelProperty("KPI类型名称")
    protected String typeName;

    @ApiModelProperty("规则类型名称")
    private String ruleTypeName;

    @ApiModelProperty("规则类型")
    private String ruleType;

    @ApiModelProperty("数据格式")
    private String format;

    @ApiModelProperty("修改人名称")
    private String updateUserName;

    @JsonIgnore
    @ApiModelProperty("关联关系，存储使用")
    private byte[] relationship;

	@ApiModelProperty("KPI关联函数ID")
	private String functionId;

	@ApiModelProperty("函数类型对应内容")
	private String functionValue;

}
