package com.openhis.yb.dto;

import java.util.List;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;

import org.hibernate.validator.constraints.Length;

import com.alibaba.fastjson2.annotation.JSONField;

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

/**
 * 【3101】输入-规则分析信息（节点标识：data）
 *
 * @author Thanking
 */
@Data
@Accessors(chain = true)
public class Yb3101InputData {

    /**
     * 系统编码：调用方系统简码标识
     */
    @NotBlank
    @Length(max = 10)
    @JSONField(name = "syscode")
    private String syscode;

    /**
     * 参保人信息
     */
    @NotEmpty
    @JSONField(name = "patient_dtos")
    private List<Yb3101InputPatientDto> patientDtos;

    /**
     * 规则标识集合
     */
    @JSONField(name = "rule_ids")
    private List<String> ruleIds;

    /**
     * 任务ID：每次请求的唯一标识
     */
    @JSONField(name = "task_id")
    private String taskId;

    /**
     * 触发场景：此值与ruleIds指定其一即可,请优先指定此值
     */
    @Length(max = 3)
    @JSONField(name = "trig_scen")
    private String trigScen;

}
