package com.njcn.gather.icd.mapping.pojo.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.JsonNode;
import com.njcn.gather.icd.mapping.typehandler.JsonNodeTypeHandler;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * ICD 存储记录。
 */
@Data
@TableName(value = "cs_icd_path", autoResultMap = true)
public class CsIcdPathPO implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId("ID")
    private String id;

    @TableField("Name")
    private String name;

    @TableField("Icd")
    private byte[] icdContent;

    @TableField("Angle")
    private Integer angle;

    @TableField("Use_Phase_Index")
    private Integer usePhaseIndex;

    @TableField("State")
    private Integer state;

    @TableField("Create_By")
    private String createBy;

    @TableField("Create_Time")
    private LocalDateTime createTime;

    @TableField("Update_By")
    private String updateBy;

    @TableField("Update_Time")
    private LocalDateTime updateTime;

    @TableField("Json_Str")
    private String jsonStr;

    @TableField("Xml_Str")
    private String xmlStr;

    @TableField("Result")
    private Integer result;

    @TableField(value = "Msg", typeHandler = JsonNodeTypeHandler.class)
    private JsonNode msg;

    @TableField("Type")
    private Integer type;

    @TableField("Reference_Icd_Id")
    private String referenceIcdId;
}
