package com.mosty.base.model.entity.wzzx;


import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mosty.base.model.BaseEntity;
import com.vividsolutions.jts.geom.LineString;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

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

/**
 * @Author aklcoming
 * @Date 2022-07-14 15:38:06
 */
@Data
@TableName("tb_wz_xfwz")
@ApiModel(value = "Entity Of tb_wz_xfwz")
@Accessors(chain = true)
public class TbWzXfwz extends BaseEntity implements Serializable {
    
    @ApiModelProperty(value = "唯一标识ID", name = "id")
    private String id;
    
    @ApiModelProperty(value = "报备业务ID", name = "bbId")
    private String bbId;
    
    @ApiModelProperty(value = "用户ID", name = "yhId")
    private String yhId;
    
    @ApiModelProperty(value = "用户身份证号", name = "yhSfzh")
    private String yhSfzh;
    
    @ApiModelProperty(value = "用户姓名", name = "yhXm")
    private String yhXm;
    
    @ApiModelProperty(value = "警组ID", name = "jzId")
    private String jzId;
    
    @ApiModelProperty(value = "警组名称", name = "jzMc")
    private String jzMc;

    @ApiModelProperty(value = "坐标线", dataType = "java.util.List")
    private LineString zb;

    @ApiModelProperty(value = "坐标线（保存redis使用）", dataType = "java.util.List")
    @TableField(exist = false)
    private List<BigDecimal[]> zbList;
    
    @ApiModelProperty(value = "坐标点数量", name = "zbsl")
    private long zbsl;
    
    @ApiModelProperty(value = "定位日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date dwrq;
    
    @TableField(fill = FieldFill.INSERT)
    @ApiModelProperty(value = "开始时间", name = "kssj")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date kssj;
    
    @TableField(fill = FieldFill.INSERT)
    @ApiModelProperty(value = "结束时间", name = "jssj")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date jssj;
   
    @ApiModelProperty(value = "巡防时长（分）", name = "sc")
    private Integer sc;
    
    @ApiModelProperty(value = "巡防里程（米）", name = "lc")
    private Integer lc;

    @ApiModelProperty(value = "地球经度")
    private BigDecimal jd;

    @ApiModelProperty(value = "地球纬度")
    private BigDecimal wd;

    @TableField(fill = FieldFill.INSERT)
    @ApiModelProperty(value = "结束时间", name = "zhgxsj")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date zhgxsj;

    @ApiModelProperty(value = "所属部门id")
    private String ssbmid;

    @ApiModelProperty(value = "所属部门")
    private String ssbm;

    @ApiModelProperty(value = "所属部门代码")
    private String ssbmdm;

    @ApiModelProperty(value = "所属县公安局id")
    private String ssxgajid;

    @ApiModelProperty(value = "所属县公安局")
    private String ssxgaj;

    @ApiModelProperty(value = "所属县公安局代码")
    private String ssxgajdm;

    @ApiModelProperty(value = "所属市公安局id")
    private String sssgajid;

    @ApiModelProperty(value = "所属市公安局")
    private String sssgaj;

    @ApiModelProperty(value = "所属市公安局代码")
    private String sssgajdm;

    @ApiModelProperty(value = "在线状态", name = "zxzt")
    @TableField(exist = false)
    private String zxzt;

}
