package com.aegis.emergency.alert.domain;

import java.util.Date;
import com.aegis.common.core.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * 转事件记录实体类 duty_alert_convert
 *
 * 对应 duty_alert_convert 表
 *
 * @author aegis
 */
@Getter
@Setter
@ToString(callSuper = true)
public class DutyAlertConvert extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /** 转事件记录ID */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /** 警情ID */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long alertId;

    /** 事件ID（审核通过后创建事件时填充） */
    private Long eventId;

    /** 转事件时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date convertTime;

    /** 转事件原因/说明 */
    private String convertReason;

    /** 操作人ID */
    private Long operatorId;

    /** 操作人姓名 */
    private String operatorName;

    /** 是否需要审核：0-否，1-是 */
    private Boolean reviewRequired;

    /** 审核状态（枚举：{@link com.aegis.emergency.alert.constant.AlertConvertReviewStatus}） */
    private String reviewStatus;

    /** 备注 */
    private String remark;
}