package com.hzs.system.config.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.hzs.common.core.annotation.Excel;
import com.hzs.common.core.annotation.Transaction;
import com.hzs.common.core.constant.EnumsPrefixConstants;
import lombok.Data;

import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

/**
 * <p>
 * 机器跟创客空间绑定 VO
 * </p>
 *
 * @author zhangjing
 * @since 2023-08-08
 */
@Data
public class BdMachineMakerSpaceVO {

    private static final long serialVersionUID = 1L;

    private Long pkId;

    /**
     * 会员主键
     */
    private Long pkMember;


    /**
     * 会员ID集合
     */
    private List<Long> pkMemberList;

    private List<BdMachineMakerSpaceVO> mmsList;

    private String productName;

    private String barCode;

    /**
     * 条码编号集合
     */
    private List<String> barCodeList;

    /**
     * 条码主键
     */
    private Long pkBarCodeItems;

    /**
     * 创建人ID
     */
    private Long pkCreator;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date creationTime;

    /**
     * 修改人ID
     */
    private Long pkModified;

    /**
     * 修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date modifiedTime;

    /**
     * 逻辑删除 (0=未删除，1已删除)
     */
    @JsonIgnore
    private Integer delFlag;

    /**
     * 国家
     */
    private Integer pkCountry;

    /**
     * 条码状态 1=已生成 2=已打印 3=已绑定 EBarcodeStatus
     */
    @Transaction(transactionKey = EnumsPrefixConstants.BARCODE_STATUS)
    private Integer codeStatus;
    private String codeStatusVal;


    /**
     * 绑定开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startDate;
    /**
     * 绑定结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endDate;
    /**
     * 创客空间名称
     */
    @Excel(name = "门店名称")
    private String storeName;

    /**
     * 创客空间ID
     */
    private Long pkMakerSpace;

    /**
     * 门店图片
     */
    private String path;

    /**
     * 省
     */
    @Excel(name = "省")
    private String provinceName;

    /**
     * 市
     */
    @Excel(name = "市")
    private String cityName;

    /**
     * 县
     */
    @Excel(name = "区/县")
    private String countyName;

    /**
     * 地址
     */
    @Excel(name = "详细地址")
    private String storeAddress;


    /**
     * 联系人
     */
    private String storePerson;

    /**
     * 联系方式
     */
    private String storePhone;

    /**
     * 会员编号
     */
    private String memberCode;

    /**
     * 会员姓名
     */
    private String memberName;

    /**
     * 省
     */
    private Integer storeProvince;
    /**
     * 市
     */
    private Integer storeCity;
    /**
     * 县
     */
    private Integer storeCounty;




}
