package com.zcloud.personnel.positioning.domain.model;

import com.alibaba.cola.domain.Entity;
import com.jjb.saas.framework.domain.model.BaseE;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * web-domain
 *
 * @Author fangjiakai
 * @Date 2026-07-07
 */
@Data
@Entity
@EqualsAndHashCode(callSuper = true)
public class AlarmRecordE extends BaseE {
    /**
     * 告警编号
     */
    private String alarmNo;

    /**
     * FindS告警id
     */
    private Long findsAlarmId;

    /**
     * 告警类型编码
     */
    private String alarmCode;

    /**
     * 告警名称
     */
    private String alarmName;

    /**
     * 告警等级
     */
    private Integer level;

    /**
     * 告警说明
     */
    private String description;

    /**
     * 处置状态 INIT未处置 CLOSE已处置
     */
    private String disposeStatus;

    /**
     * 处理结果说明
     */
    private String disposeDescription;

    /**
     * 持续时长 秒
     */
    private Long duration;

    /**
     * 告警开始时间
     */
    private LocalDateTime startTime;

    /**
     * 告警结束时间
     */
    private LocalDateTime endTime;

    /**
     * 报警开始所在围栏
     */
    private String startFencesJson;

    /**
     * 报警结束所在围栏
     */
    private String endFencesJson;

    /**
     * 经度
     */
    private BigDecimal lon;

    /**
     * 纬度
     */
    private BigDecimal lat;

    /**
     * 高度
     */
    private BigDecimal alt;

    /**
     * 速度
     */
    private BigDecimal speed;

    /**
     * 方向
     */
    private BigDecimal direction;

    /**
     * 历元时间
     */
    private LocalDateTime gt;

    /**
     * 企业id/公司id（公司及子公司数据隔离）
     */
    private String corpinfoId;

    /**
     * 企业名称/公司名称
     */
    private String corpinfoName;

    /**
     * 所属组织编码
     */
    private String orgCode;

    /**
     * 所属组织名称
     */
    private String orgName;

    /**
     * 首个告警人员身份证号，关联资质库人员视图
     */
    private String firstIdCardNo;

    /**
     * 首个告警人员工号快照
     */
    private String firstStaffNoSnapshot;

    /**
     * 首个告警人员姓名快照
     */
    private String firstStaffNameSnapshot;

    /**
     * 告警关联终端号列表
     */
    private String terminalNoListJson;

    /**
     * 同步时间
     */
    private LocalDateTime syncTime;

    /**
     * 第三方原始数据
     */
    private String rawJson;
}
