package com.aegis.emergency.plan.domain;

import com.aegis.common.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * 预案行动项模板实体类 plan_step
 *
 * @author
 */
@Getter
@Setter
@ToString(callSuper = true)
@TableName(value = "plan_step", autoResultMap = true)
public class PlanStep extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /** 行动项模板ID */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /** 预案ID */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long planId;

    /** 行动项名称 */
    private String stepName;

    /** 顺序 */
    private Integer stepOrder;

    /** 行动项描述 */
    private String description;

    /** 建议执行方模板ID（指向 PlanParticipant，若为 null 则表示未绑定） */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long suggestedParticipantId;

    /** 预计耗时（分钟） */
    private Integer estimatedDuration;

    /** 删除标志 */
    private String delFlag;
}