package com.jeequan.jeepay.core.entity;

import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import com.jeequan.jeepay.core.model.BaseModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

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

/**
 * <p>
 * 商户门店表
 * </p>
 *
 * @author [mybatis plus generator]
 * @since 2021-12-28
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(value = "t_mch_store", autoResultMap = true)
public class MchStore extends BaseModel implements Serializable {

    private static final long serialVersionUID=1L;


    // 蚂蚁店铺创建状态(与支付宝一致): 0-未创建; 99-已完结; -1-失败; 031-已提交审核
    public final static String ALIPAY_SHOP_STATUS_NOT_EXISTS = "0";
    public final static String ALIPAY_SHOP_STATUS_SUCCESS = "99";
    public final static String ALIPAY_SHOP_STATUS_FAIL = "-1";
    public final static String ALIPAY_SHOP_STATUS_AUDITING = "031";

    /**
     * 门店ID
     */
    @TableId(value = "store_id")
    private String storeId;

    /**
     * 门店名称
     */
    private String storeName;

    /**
     * 商户号
     */
    private String mchNo;

    /**
     * 服务商号
     */
    private String agentNo;

    /**
     * 顶级服务商号
     */
    private String topAgentNo;

    /**
     * 绑定应用ID
     */
    private String bindAppId;

    /**
     * 是否默认: 0-否、 1-是（api接口未显式指定门店则使用默认门店下单）
     */
    private Byte defaultFlag;

    /**
     * 经度
     */
    private String lng;

    /**
     * 纬度
     */
    private String lat;

    /**
     * 门头照
     */
    private String storeOuterImg;

    /**
     * 内景照
     */
    private String storeInnerImg;

    /**
     * 门店Logo
     */
    private String storeLogo;

    /**
     * 省市县编码 (非必填， 放在外层用作搜索方便)
     */
    @TableField(typeHandler = FastjsonTypeHandler.class)
    private JSONArray areaCode;

    /**
     * 联系人手机号
     */
    private String contactPhone;

    /**
     * 所在地址
     */
    private String address;

    /**
     * 蚂蚁店铺ID
     */
    private String alipayShopId;

    /**
     * 蚂蚁店铺申请单ID
     */
    private String alipayShopCreateId;

    /**
     * 蚂蚁店铺创建状态(与支付宝一致): 0-未创建; 99-已完结; -1-失败; 031-已提交审核
     */
    private String alipayShopStatus;

    /**
     * 备注
     */
    private String remark;

    /**
     * 创建时间
     */
    private Date createdAt;

    /**
     * 更新时间
     */
    private Date updatedAt;


}
