package com.openhis.yb.dto;

import java.util.Date;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

import org.hibernate.validator.constraints.Length;

import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;

import lombok.Data;
import lombok.experimental.Accessors;

/**
 * 【3101】输入-诊断信息（节点标识：fsi_diagnose_dtos）
 * 
 * @author Thanking
 */
@Data
@Accessors(chain = true)
public class Yb3101InputFsiDiagnoseDto {

    /**
     * 诊断标识：诊断记录唯一标识
     */
    @NotBlank
    @Length(max = 50)
    @JSONField(name = "dise_id")
    private String diseId;

    /**
     * 出入诊断类别：参考字典表
     */
    @NotBlank
    @Length(max = 3)
    @JSONField(name = "inout_dise_type")
    private String inoutDiseType;

    /**
     * 主诊断标志：参考字典表
     */
    @NotBlank
    @Length(max = 3)
    @JSONField(name = "maindise_flag")
    private String maindiseFlag;

    /**
     * 诊断排序号：例如：1,2,3…
     */
    @NotBlank
    @Length(max = 2)
    @JSONField(name = "dias_srt_no")
    private String diasSrtNo;

    /**
     * 诊断(疾病)编码
     */
    @NotBlank
    @Length(max = 30)
    @JSONField(name = "dise_codg")
    private String diseCodg;

    /**
     * 诊断(疾病)名称
     */
    @NotBlank
    @Length(max = 200)
    @JSONField(name = "dise_name")
    private String diseName;

    /**
     * 诊断日期：格式：yyyy-MM-dd HH:mm:ss
     */
    @NotNull
    @JSONField(name = "dise_date")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date diseDate;

}
