package com.yuchen.saas.park.api.response;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

@Data
@ApiModel(value = "停车位响应对象", description = "停车位响应对象")
public class ParkingSpaceResponse implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 车位id
     */
    @ApiModelProperty(value = "车位id")
    @JsonSerialize(
            using = ToStringSerializer.class
    )
    private Long id;

    /**
     * 所属园区
     */
    @ApiModelProperty(value = "所属园区")
    private String name;

    /**
     * 所属园区ID
     */
    @JsonSerialize(
            using = ToStringSerializer.class
    )
    @ApiModelProperty(value = "所属园区ID")
    private Long parkId;

    /**
     * 停车场
     */
    @ApiModelProperty(value = "停车场")
    private String parkingName;

    /**
     * 停车场id
     */
    @ApiModelProperty(value = "停车场id")
    @JsonSerialize(
            using = ToStringSerializer.class
    )
    private Long parkingId;

    /**
     *区域
     */
    @ApiModelProperty(value = "区域")
    private String spaceName;

    /**
     *区域ID
     */
    @ApiModelProperty(value = "区域ID")
    @JsonSerialize(
            using = ToStringSerializer.class
    )
    private Long spaceId;

    /**
     *车位号
     */
    @ApiModelProperty(value = "车位号")
    private String spaceNo;

    /**
     *产权类型名称
     */
    @ApiModelProperty(value = "产权类型:1、是公有2是私有")
    private String rightTypeName;

    /**
     *产权类型
     */
    @ApiModelProperty(value = "产权类型:1、是公有2是私有")
    private Integer rightType;


    /**
     *产权归属
     */
    @ApiModelProperty(value = "产权归属")
    private String rightAttributionName;

    /**
     *产权归属ID
     */
    @ApiModelProperty(value = "产权归属id")
    @JsonSerialize(
            using = ToStringSerializer.class
    )
    private String rightAttributionId;

    /**
     *是否商用
     */
    @ApiModelProperty(value = "是否商用:0不是,1是")
    private String hasCommercial;

    /**
     *是否商用
     */
    @ApiModelProperty(value = "是否商用:0不是,1是")
    private Integer hasCommercialType;

    /**
     *商用有效期
     */
    @ApiModelProperty(value = "商用有效期")
    private String commercialValidity;

    /**
     *车位类型
     */
    @ApiModelProperty(value = "车位类型:1、固定车位2、非固定车位3、临时停车4、未定义")
    private String parkingSpaceTypeName;

    /**
     *车位类型
     */
    @ApiModelProperty(value = "车位类型:1、固定车位2、非固定车位3、临时停车4、未定义")
    private Integer parkingSpaceType;

    /**
     *使用对象
     */
    @ApiModelProperty(value = "使用对象")
    private String useObjectName;

    /**
     *使用对象ID
     */
    @JsonSerialize(
            using = ToStringSerializer.class
    )
    @ApiModelProperty(value = "使用对象ID")
    private Long useObjectId;

    /**
     *停车状态:1、无停车2、停车中3、占用中
     */
    @ApiModelProperty(value = "停车状态:1、无停车2、停车中3、占用中")
    private String parkingStatusName;

    /**
     *停车状态:1、无停车2、停车中3、占用中
     */
    @ApiModelProperty(value = "停车状态:1、无停车2、停车中3、占用中")
    private Integer parkingStatus;

    /**
     *监控设备id
     */
    @ApiModelProperty(value = "监控设备id")
    @JsonSerialize(
            using = ToStringSerializer.class
    )
    private Long deviceId;

}
