package com.sptg.device.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 com.sptg.common.core.entity.BaseEntity;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * title: Device
 * package: com.sptg.device.api.entity
 * description: 流量卡实体类
 *
 *                  
 *                 
 */
@Setter
@Getter
@TableName(value = "flow_card")
public class FlowCard {

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

    /**
     * 流量卡号
     */
    @TableField(value = "s_card_num")
    private String cardNum;

    /**
     * 运营商
     */
    @TableField(value = "i_operator")
    private Integer operator;

    /**
     * 套餐名称
     */
    @TableField(value = "s_pack_name")
    private String packName;

    /**
     * 套餐总流量
     */
    @TableField(value = "d_pack_flow")
    private Double packFlow;

    /**
     * 卡有效开始时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @TableField(value = "t_begin_date")
    private Date beginDate;

    /**
     * 卡有效结束时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @TableField(value = "t_end_date")
    private Date endDate;

    /**
     * 号码状态
     * 0:未绑定    1：已绑定
     */
    @TableField(value = "i_card_status")
    private Integer cardStatus;

    /**
     * 小区Id
     */
    @TableField(value = "l_residential_id")
    private Long residentialId;

    /**
     * 单元Id
     */
    @TableField(value = "l_unit_id")
    private Long unitId;

    /**
     * 所属机构ID
     */
    @TableField(value = "l_org_id")
    private Long orgId;

    /**
     * 所属机构ID
     */
    @TableField(value = "s_org_name")
    private String orgName;

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

    /**
     * 删除标记：{ -1：已删除，0：正常 }
     */
    @TableField(value = "i_status")
    private Integer status;


    /**
     * 创建人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;

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

    /**
     * 原数据Id
     */
    @TableField(value = "old_id")
    private String oldId;

}
