package com.hzs.common.domain.retail.member;

import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.hzs.common.core.annotation.Excel;
import com.hzs.common.core.web.domain.BaseEntity;
import lombok.*;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * 新零售会员区域配置
 */
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@KeySequence("CU_MEMBER_RETAIL_REGION_SEQ")
@TableName("CU_MEMBER_RETAIL_REGION")
public class CuMemberRetailRegion extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId("PK_ID")
    private Long pkId;

    /**
     * 会员ID
     */
    @TableField("PK_MEMBER")
    private Long pkMember;

    /**
     * 省
     */
    @TableField("PROVINCE")
    private Integer province;

    /**
     * 市
     */
    @TableField("CITY")
    private Integer city;

    /**
     * 县
     */
    @TableField("COUNTY")
    private Integer county;

    /**
     * 是否生效（0=是，1=否）
     */
    @TableField("EFFECTIVE")
    private Integer effective;

    /**
     * 生效结束时间
     */
    @Excel(name = "生效结束时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField("EFFECTIVE_END_DATE")
    private Date effectiveEndDate;

    /**
     * 来源（1=前台，2=后台）
     */
    @TableField("SOURCE")
    private Integer source;

    /**
     * 系统类型（2=新零售，3=美业）
     */
    @TableField("SYSTEM_TYPE")
    private Integer systemType;

    @TableField("REGION_VERTEX_PK_ID")
    private Long regionVertexPkId;
}
