package com.yiqi.system.domain;

import java.math.BigDecimal;
import java.util.Date;

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.yiqi.common.annotation.Excel;
import com.yiqi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 门店对象 sys_store
 *
 * @author ruoyi
 * @date 2023-07-25
 */
@TableName("sys_store")
@ApiModel("门店 基本信息")
@Data
public class SysStore extends BaseEntity{

    private static final long serialVersionUID=1L;

    @TableId(type = IdType.AUTO)
    private Long id;

    /** 门店编码 */
    @ApiModelProperty("门店编码")
    private String code;

    /** 门店名称 */
    @ApiModelProperty("门店名称")
    private String name;

    /** 所属工厂ID */
    @ApiModelProperty("所属工厂ID")
    private Long factoryId;

    /** 门店类型 */
    @ApiModelProperty("门店类型")
    private String storeType;

    /** 所属区域 */
    @ApiModelProperty("所属区域")
    private Long bindAreaId;

    /** 是否打印小票（0，正常，1，禁用） */
    @ApiModelProperty("是否打印小票（0，正常，1，禁用")
    private String isPrint;

    /** 是否参与结算 */
    @ApiModelProperty("是否参与结算")
    private String isSettlement;

    /** 条码是否打印 */
    @ApiModelProperty("条码是否打印")
    private String isCarCodePrintName;

    /** 小票打印数量 */
    @ApiModelProperty("小票打印数量")
    private Long printNum;

    /** 小票是否打印 */
    @ApiModelProperty("小票是否打印")
    private String isPrintName;

    /** 负责人姓名 */
    @ApiModelProperty("负责人姓名")
    private String contactName;

    /** 负责人职务 */
    @ApiModelProperty("负责人职务")
    private String contactPost;

    /** 负责人身份证 */
    @ApiModelProperty("负责人身份证")
    private String contactIdcard;

    /** 负责人办公电话 */
    @ApiModelProperty("负责人办公电话")
    private String contactWorkTel;

    /** 负责人手机 */
    @ApiModelProperty("负责人手机")
    private String contactPhone;

    /** 传真 */
    @ApiModelProperty("传真")
    private String contactFax;

    /** 邮编 */
    @ApiModelProperty("邮编")
    private String contactZipCode;

    /** 邮箱 */
    @ApiModelProperty("邮箱")
    private String contactEmail;

    /** 省份ID */
    @ApiModelProperty("省份ID")
    private Long provinceId;

    /** 省份名 */
    @ApiModelProperty("省份名")
    private String provinceName;

    /** 城市ID */
    @ApiModelProperty("城市ID")
    private Long cityId;

    /** 城市名 */
    @ApiModelProperty("城市名")
    private String cityName;

    /** 区域ID */
    @ApiModelProperty("区域ID")
    private Long areaId;

    /** 区域名 */
    @ApiModelProperty("区域名")
    private String areaName;

    /** 地址 */
    @ApiModelProperty("地址")
    private String address;

    /** 门牌号 */
    @ApiModelProperty("门牌号")
    private String addressDetail;

    /** 纬度 */
    @ApiModelProperty("纬度")
    private BigDecimal latitude;

    /** 经度 */
    @ApiModelProperty("经度")
    private BigDecimal longitude;

    /** 办公面积（平米） */
    @ApiModelProperty("办公面积（平米）")
    private Long officeArea;

    /** 开店时间 */
    @ApiModelProperty("开店时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date openDate;

    /** 开始营业时间 */
    @ApiModelProperty("开始营业时间")
    private String businessStartTime;

    /** 结束营业时间 */
    @ApiModelProperty("结束营业时间")
    private String businessEndTime;

    /** 企业性质 */
    @ApiModelProperty("企业性质")
    private String companyType;

    /** 企业业务介绍 */
    @ApiModelProperty("企业业务介绍")
    private String companyDetail;

    /** 负责人QQ */
    @ApiModelProperty("负责人QQ")
    private String contactQq;

    /** 门店图片 */
    @ApiModelProperty("门店图片")
    private String companyPic;

    /** 企业营业执照 */
    @ApiModelProperty("企业营业执照")
    private String companyLicencePic;

    /** 开户行名称 */
    @ApiModelProperty("开户行名称")
    private String bankName;

    /** 银行卡用户姓名 */
    @ApiModelProperty("银行卡用户姓名")
    private String bankUserName;

    /** 银行卡号 */
    @ApiModelProperty("银行卡号")
    private String bankCardNumber;


    /** 门店状态 */
    @ApiModelProperty("门店状态(0=正常,1=禁用)")
    private String status;

    /** 删除标志 */
    @ApiModelProperty("删除标志(0代表存在 2代表删除)")
    private String delFlag;

    @ApiModelProperty("微信门店ID")
    private String wxStoreId;

    /** 余额 */
    @Excel(name = "材料备用金余额")
    @ApiModelProperty("材料备用金余额")
    private BigDecimal materialBalance;


    /** 免洗余额 */
    @Excel(name = "免洗余额")
    @ApiModelProperty("免洗余额")
    private BigDecimal noWashBalance;
}
