package com.haha.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * ERP 店铺信息实体（从企得宝ERP同步的店铺缓存数据）
 */
@Data
@TableName("t_erp_shop")
public class ErpShop implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.ASSIGN_ID)
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /** ERP系统中的店铺ID */
    private Long erpShopId;

    /** 外部店铺ID */
    private String outShopId;

    /** ERP店铺名称 */
    private String shopName;

    /** 平台店铺编码 */
    private String shopPlatformCode;

    /** 卖家账号 */
    private String nickName;

    /** 店铺编码 */
    private String shopCode;

    /** 平台店铺ID */
    private String platformShopId;

    /** 授权到期时间 */
    private String accessTokenExpiredTime;

    /** 服务到期时间 */
    private String serviceExpirationTime;

    /** 授权标识：1-已授权 */
    private String authorizationFlag;

    /** 状态：0-停用，1-启用 */
    private Integer status;

    /** 是否允许绑定设备：0-不允许，1-允许（默认） */
    private Integer bindEnabled;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private LocalDateTime createTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private LocalDateTime updateTime;
}
