package com.mosty.base.model.vo.sjzx;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mosty.base.model.BaseEntity;
import com.mosty.base.model.entity.sjzx.TbJqCjdb;
import com.mosty.base.model.entity.sjzx.TbJqZxr;
import com.mosty.base.model.entity.sjzx.TbSj;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;


/**
 * @Author aklcoming
 * @Date 2022-07-11 19:24:28
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "TbJqVo 对象", description = "警情VO")
public class TbJqVo extends BaseEntity implements Serializable, Cloneable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "警情表ID", name = "id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private String id;

    @ApiModelProperty(value = "警情ID（为110系统的警情表的ID）", name = "jq110Id")
    private String jq110Id;

    @ApiModelProperty(value = "接警单编号", name = "jjdbh")
    private String jjdbh;

    @ApiModelProperty(value = "接警单位编号", name = "jjdwbh")
    private String jjdwbh;

    @ApiModelProperty(value = "接警单位名称", name = "jjdwmc")
    private String jjdwmc;

    @ApiModelProperty(value = "关联接警单编号", name = "gljjdbh")
    private String gljjdbh;

    @ApiModelProperty(value = "接警员编号", name = "jjybh")
    private String jjybh;

    @ApiModelProperty(value = "接警员姓名", name = "jjyxm")
    private String jjyxm;

    @ApiModelProperty(value = "接警台编号", name = "jjtbh")
    private String jjtbh;

    @ApiModelProperty(value = "接警台IP", name = "jjtip")
    private String jjtip;

    @ApiModelProperty(value = "呼入时间", name = "hrsj")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date hrsj;

    @ApiModelProperty(value = "来话类型编号", name = "lhlxbh")
    private String lhlxbh;

    @ApiModelProperty(value = "报警方式编号", name = "bjfsbh")
    private String bjfsbh;

    @ApiModelProperty(value = "报警日期", name = "bjrq")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date bjrq;

    @ApiModelProperty(value = "报警时间", name = "bjsj")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date bjsj;

    @ApiModelProperty(value = "接警时间", name = "jjsj")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date jjsj;

    @ApiModelProperty(value = "警情发生开始日期年份", name = "jqfsksnf")
    private Integer jqfsksnf;

    @ApiModelProperty(value = "警情发生开始日期月份", name = "jqfsksyf")
    private Integer jqfsksyf;

    @ApiModelProperty(value = "警情发生开始日期年月", name = "jqfsksny")
    private Integer jqfsksny;

    @ApiModelProperty(value = "警情发生开始日期周数", name = "jqfskszs")
    private Integer jqfskszs;

    @ApiModelProperty(value = "警情发生开始日期", name = "jqfsksrq")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date jqfsksrq;

    @ApiModelProperty(value = "警情发生开始时间", name = "jqfskssj")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date jqfskssj;

    @ApiModelProperty(value = "警情发生开始小时数（存24小时制的数字）", name = "jqfsksxs")
    private Integer jqfsksxs;

    @ApiModelProperty(value = "警情发生结束时间", name = "jqfsjssj")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date jqfsjssj;

    @ApiModelProperty(value = "呼入时长", name = "hrsc")
    private Integer hrsc;

    @ApiModelProperty(value = "接警时长", name = "jjsc")
    private Integer jjsc;

    @ApiModelProperty(value = "接警录音号", name = "jjlyh")
    private String jjlyh;

    @ApiModelProperty(value = "报警电话", name = "bjdh")
    private String bjdh;

    @ApiModelProperty(value = "报警电话用户姓名", name = "bjdhYhxm")
    private String bjdhYhxm;

    @ApiModelProperty(value = "报警电话用户地址", name = "bjdhYhdz")
    private String bjdhYhdz;

    @ApiModelProperty(value = "报警人身份证号", name = "bjrSfzh")
    private String bjrSfzh;

    @ApiModelProperty(value = "报警人姓名", name = "bjrXm")
    private String bjrXm;

    @ApiModelProperty(value = "报警人性别", name = "bjrXb")
    private String bjrXb;

    @ApiModelProperty(value = "报警人联系电话", name = "bjrLxdh")
    private String bjrLxdh;

    @ApiModelProperty(value = "报警人住址单位", name = "bjrZzdw")
    private String bjrZzdw;

    @ApiModelProperty(value = "事发地址行政区划", name = "sfdzxzqh")
    private String sfdzxzqh;

    @ApiModelProperty(value = "事发地址", name = "sfdz")
    private String sfdz;

    @ApiModelProperty(value = "路灯杆编号", name = "ldgbh")
    private String ldgbh;

    @ApiModelProperty(value = "报警内容", name = "bjnr")
    private String bjnr;

    @ApiModelProperty(value = "警情级别", name = "jqjb")
    private String jqjb;

    @ApiModelProperty(value = "案由", name = "ay")
    private String ay;

    @ApiModelProperty(value = "报警类别", name = "bjlb")
    private String bjlb;

    @ApiModelProperty(value = "报警类型", name = "bjlx")
    private String bjlx;

    @ApiModelProperty(value = "报警细类", name = "bjxl")
    private String bjxl;

    @ApiModelProperty(value = "报警类别名称", name = "bjlbmc")
    private String bjlbmc;

    @ApiModelProperty(value = "报警类型名称", name = "bjlxmc")
    private String bjlxmc;

    @ApiModelProperty(value = "报警细类名称", name = "bjxlmc")
    private String bjxlmc;

    @ApiModelProperty(value = "被困人数", name = "bkrs")
    private Integer bkrs;

    @ApiModelProperty(value = "受伤人数", name = "ssrs")
    private Integer ssrs;

    @ApiModelProperty(value = "死亡人数", name = "swrs")
    private Integer swrs;

    @ApiModelProperty(value = "有无危险物质(0：无，1：有，默认为无)", name = "ywwxwz")
    private String ywwxwz;

    @ApiModelProperty(value = "有无爆炸/泄漏(0：无，1：有，默认为无)", name = "ywbzxl")
    private String ywbzxl;

    @ApiModelProperty(value = " 有无被困人员(0：无，1：有，默认为无)", name = "ywbkry")
    private String ywbkry;

    @ApiModelProperty(value = "是否涉外(0：无，1：有，默认为无)", name = "sfsw")
    private String sfsw;

    @ApiModelProperty(value = "是否是外语报警(0：无，1：有，默认为无)", name = "sfswybj")
    private String sfswybj;

    @ApiModelProperty(value = "经度", name = "jd")
    private BigDecimal jd;

    @ApiModelProperty(value = "纬度", name = "wd")
    private BigDecimal wd;

    @ApiModelProperty(value = "处置状态 0.未处置 1.处置中 2.已完成", name = "czzt")
    private String czzt;

    @ApiModelProperty(value = "重大警情添加类型 01.系统推送 02.手动添加 03.一键报警", name = "zdjqtjlx")
    private String zdjqtjlx;

    @ApiModelProperty(value = "管辖部门", name = "ssbm")
    private String ssbm;

    @ApiModelProperty(value = "管辖部门代码", name = "ssbmdm")
    private String ssbmdm;

    @ApiModelProperty(value = "管辖县公安局", name = "ssxgaj")
    private String ssxgaj;

    @ApiModelProperty(value = "管辖县公安局代码", name = "ssxgajdm")
    private String ssxgajdm;

    @ApiModelProperty(value = "管辖市公安局", name = "sssgaj")
    private String sssgaj;

    @ApiModelProperty(value = "管辖市公安局代码", name = "sssgajdm")
    private String sssgajdm;

    @ApiModelProperty(value = "备注", name = "bz")
    private String bz;

    @ApiModelProperty("距离")
    @TableField(exist = false)
    private BigDecimal distance;

    @ApiModelProperty("处警单列表")
    @TableField(exist = false)
    private List<TbJqCjdb> cjdbList;

    @ApiModelProperty("对应的事件对象")
    @TableField(exist = false)
    private TbSj sj;

    @ApiModelProperty(value = "是否重大警情(0：否，1：是)", name = "sfswybj")
    private String sfzdjq;

    @ApiModelProperty(value = "--D_BZ_SF（是否）是否街面警情", name = "sfjmjq")
    private String sfjmjq;

    @ApiModelProperty(value = "颜色 1红 2橙 3黄 4蓝", name = "color")
    private String color;
}
