package com.tofly.es;

import com.baomidou.mybatisplus.annotation.FieldFill;
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 io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * 巡检设备信息上传表
 *
 * @author BZ-DJJ
 */
@Data
@Document(indexName = "hnlspda_" + "#{T(com.tofly.common.core.util.Date8Util).getYearMonth()}", type = "pdadevice")
public class PdaDeviceUpload implements Serializable {
    private static final long serialVersionUID = 1L;


    /**
     * 数据唯一标识
     */
    @TableId(value = "ID", type = IdType.INPUT)
    @ApiModelProperty(value = "数据唯一标识")
    private Long id;
    @ApiModelProperty(value = "上报用户ID")
    private Long userId;
    @ApiModelProperty(value = "上报用户名称")
    private String userName;
    /**
     * 用户唯一标识
     */
    @ApiModelProperty(value = "用户唯一标识")
    @TableField(value = "CREATE_USER", fill = FieldFill.INSERT)
    private Long createUser;
    @ApiModelProperty(hidden = true)
    private String createUserName;
    /**
     * gps状态 0:关闭 1:打开
     */
    @ApiModelProperty(value = "gps状态 0:关闭 1:打开")
    private String gpsState;
    /**
     * 定位网络(gps 1,基站2,wifi 3)
     */
    @ApiModelProperty(value = "定位网络(1 卫星定位,2 前次定位,4 缓存定位,5 Wifi定位,6 基站定位,8 离线定位,9 最后位置缓存)")
    private String network;
    /**
     * 网络状态 0:关闭 1:打开
     */
    @ApiModelProperty(value = "网络状态 0:关闭 1:打开")
    private String networkState;
    /**
     * 设备检测时间
     */
    @ApiModelProperty(value = "设备检测时间")

    private Date checkTime;
    /**
     * 上传时间
     */
    @ApiModelProperty(value = "上传时间")
    private Date uploadTime;
    /**
     * 设备电量
     */
    @ApiModelProperty(value = "设备电量")
    private String electricity;
    /**
     * 工作状态  1:上班  2:工作中  3:下班  4:异常
     */
    @ApiModelProperty(value = "工作状态  1:上班  2:工作中  3:下班  4:异常")
    private String workState;
    /**
     * 定位精度
     */
    @ApiModelProperty(value = "定位精度")
    private String gpsPrecision;
    /**
     * 卫星个数
     */
    @ApiModelProperty(value = "卫星个数")
    private Integer gpsStar;
    /**
     * 剩余空间
     */
    @ApiModelProperty(value = "剩余空间")
    private String residualSpace;
    /**
     * 车载设备唯一标识,关联表TF_YWPN_GPSDEVICE_W关键值
     */
    @ApiModelProperty(value = "车载设备唯一标识,关联表TF_YWPN_GPSDEVICE_W关键值")
    private Long gpsDeviceid;
    /**
     * 0:人巡 1:车巡
     */
    @ApiModelProperty(value = "0:人巡 1:车巡")
    private String gpsType;
    /**
     * 手机设备唯一标识
     */
    @ApiModelProperty(value = "手机设备唯一标识")
    private String pdaid;
    /**
     * 监控日期 yyyy/mm/dd
     */
    @ApiModelProperty(value = "监控日期 yyyy/mm/dd")
    private Date monitorDate;

}