package com.sptg.permissions.api.entity;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter;
import lombok.Setter;

import java.util.Date;

/**
 * title: DeviceAuthorize
 * package: com.sptg.permissions.api.entity
 * description: 设备权限
 *
 *                  
 *                
 */
@Setter
@Getter
@TableName(value = "device_authorize")
public class DeviceAuthorize {

    /**
     * 主键，自增
     */
    @TableId(value = "l_id",type = IdType.AUTO)
    private Long id;

    /**
     * 所属机构位置
     */
    @TableField(value = "s_org_position")
    private String orgPosition;

    /**
     * 设备Id
     */
    @TableField(value = "l_device_id")
    private Long deviceId;

    /**
     * 设备所属小区Id
     */
    @TableField(value = "l_xq_id")
    private Long xqId;

    /**
     * 设备所属单元Id
     */
    @TableField(value = "l_dy_id")
    private Long dyId;

    /**
     * 设备所属小区所在省（id）
     */
    @TableField(value = "s_device_region_province")
    private String deviceRegionProvince;

    /**
     * 设备所属小区所在市（id）
     */
    @TableField(value = "s_device_region_city")
    private String deviceRegionCity;

    /**
     * 设备所属小区所在区（id）
     */
    @TableField(value = "s_device_region_area")
    private String deviceRegionArea;

    /**
     * 设备名称
     */
    @TableField(value = "s_device_name")
    private String deviceName;

    /**
     * 设备序列号
     */
    @TableField(value = "s_device_serial_number")
    private String deviceSerialNumber;

    /**
     * 设备类型：{1：门禁机，2：管理机}
     */
    @TableField(value = "i_device_type_number")
    private Integer deviceTypeNumber;

    /**
     * 设备跟机构Id
     */
    @TableField(value = "l_device_root_org_id")
    private Long deviceRootOrgId;

    /**
     * 设备根机构名称
     */
    @TableField(value = "s_device_root_org_name")
    private String deviceRootOrgName;

    /**
     * 设备安装位置类型 : { 0-小区东 1-小区西 2-小区南 3-小区北 4-单元 5-停车场 }
     */
    @TableField(value = "i_install_path_type")
    private Integer installPathType;

    /**
     * 设备创建时间
     */
    @TableField(value = "t_device_create_data")
    private Date deviceCreateDate;

    /**
     * 创建人账号Id
     */
    @TableField(value = "l_create_account_id")
    private Long createAccountId;

    /**
     * 创建时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @TableField(value = "t_create_date")
    private Date createDate;

}
