package com.xinelu.manage.domain.signroutetriggercondition;

import com.xinelu.common.annotation.Excel;
import com.xinelu.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

/**
 * 签约患者管理任务（路径）触发条件关系对象 sign_route_trigger_condition
 *
 * @author haown
 * @date 2024-03-18
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "签约患者管理任务（路径）触发条件关系对象", description = "sign_route_trigger_condition")
public class SignRouteTriggerCondition extends BaseEntity {

	private static final long serialVersionUID=1L;

    /** 主键id */
    private Long id;

    /** 签约患者管理任务表id */
    @ApiModelProperty(value = "签约患者管理任务表id")
    @Excel(name = "签约患者管理任务表id")
    private Long patientManageRouteId;

    /** 路径名称（任务名称） */
    @ApiModelProperty(value = "路径名称")
    @Excel(name = "路径名称", readConverterExp = "任=务名称")
    private String routeName;

    /** 触发条件编码 */
    @ApiModelProperty(value = "触发条件编码")
    @Excel(name = "触发条件编码")
    private String triggerConditionCode;

    /** 触发条件名称，诊断：DIAGNOSIS，换药日期：DRESSING_CHANGE_DATE，治疗方式：TREATMENT_METHOD，手术名称：SURGICAL_NAME，药品名称：DRUG_NAME */
    @ApiModelProperty(value = "触发条件名称，诊断：MAIN_DIAGNOSIS，换药日期：DRESSING_CHANGE_DATE，治疗方式：TREATMENT_METHOD，手术名称：SURGICAL_NAME，药品名称：DRUG_NAME")
    @Excel(name = "触发条件名称，诊断：MAIN_DIAGNOSIS，换药日期：DRESSING_CHANGE_DATE，治疗方式：TREATMENT_METHOD，手术名称：SURGICAL_NAME，药品名称：DRUG_NAME")
    private String triggerConditionName;

    /** 触发条件运算符，包含：CONTAIN，不包含：NOT_CONTAIN，等于：EQUAL_TO，不等于：NOT_EQUAL_TO */
    @ApiModelProperty(value = "触发条件运算符，包含：CONTAIN，不包含：NOT_CONTAIN，等于：EQUAL_TO，不等于：NOT_EQUAL_TO")
    @Excel(name = "触发条件运算符，包含：CONTAIN，不包含：NOT_CONTAIN，等于：EQUAL_TO，不等于：NOT_EQUAL_TO")
    private String triggerConditionOperator;

    /** 触发条件值 */
    @ApiModelProperty(value = "触发条件值")
    @Excel(name = "触发条件值")
    private String triggerConditionValue;

    /** 排序 */
    @ApiModelProperty(value = "排序")
    @Excel(name = "排序")
    private Integer triggerConditionSort;

	/**
	 * and、or，说明：如果为or，则根据排序同前面条件或运算
	 */
	@ApiModelProperty(value = "and、or，说明：如果为or，则根据排序同前面条件或运算")
	@Excel(name = "and、or，说明：如果为or，则根据排序同前面条件或运算")
	private String triggerLogic;

    /** 备注信息 */
    @ApiModelProperty(value = "备注信息")
    @Excel(name = "备注信息")
    private String triggerConditionRemark;
}
