package com.cool.store.entity.store;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.*;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 店型主表
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "zxjp_store_type")
public class StoreTypeDO implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    /** 店型编码 */
    @Column(name = "store_type_code")
    private String storeTypeCode;

    /** 店型名称 */
    @Column(name = "store_type_name")
    private String storeTypeName;

    /** 品牌 */
    private String brand;

    /** 门店类型 */
    @Column(name = "store_type")
    private Integer storeType;

    /** 店型描述 */
    private String description;

    /** 主图 */
    @Column(name = "image_url")
    private String imageUrl;

    /** 视频 */
    @Column(name = "video_url")
    private String videoUrl;

    /** 720°VR */
    @Column(name = "vr_video_url")
    private String vrVideoUrl;

    /** 加盟费 */
    @Column(name = "franchise_fee")
    private BigDecimal franchiseFee;

    /** 加盟费原价 */
    @Column(name = "original_franchise_fee")
    private BigDecimal originalFranchiseFee;

    /** 品牌使用费 */
    @Column(name = "brand_usage_fee")
    private BigDecimal brandUsageFee;

    /** 品牌使用费原价 */
    @Column(name = "original_brand_usage_fee")
    private BigDecimal originalBrandUsageFee;

    /** 管理费 */
    @Column(name = "management_fee")
    private BigDecimal managementFee;

    /** 管理费原价 */
    @Column(name = "original_management_fee")
    private BigDecimal originalManagementFee;

    /** 系统使用费 */
    @Column(name = "system_usage_fee")
    private BigDecimal systemUsageFee;

    /** 系统使用费原价 */
    @Column(name = "original_system_usage_fee")
    private BigDecimal originalSystemUsageFee;

    /** 合同保证金 */
    @Column(name = "contract_deposit")
    private BigDecimal contractDeposit;

    /** 合同保证金原价 */
    @Column(name = "original_contract_deposit")
    private BigDecimal originalContractDeposit;

    /** 设备保证金 */
    @Column(name = "device_deposit")
    private BigDecimal deviceDeposit;

    /** 原设备保证金 */
    @Column(name = "original_device_deposit")
    private BigDecimal originalDeviceDeposit;

    /** 系统设计费 */
    @Column(name = "design_fee")
    private BigDecimal designFee;

    /** 系统设计费原价 */
    @Column(name = "original_design_fee")
    private BigDecimal originalDesignFee;

    /**
     * 首次订货费用
     */
    @Column(name = "first_order_fee")
    private BigDecimal firstOrderFee;

    /** 排序 */
    @Column(name = "sort_order")
    private Integer sortOrder;

    /** 是否启用 */
    @Column(name = "is_active")
    private Boolean active;

    /** 删除标识 */
    private Boolean deleted;

    /** 创建时间 */
    @Column(name = "create_time")
    private Date createTime;

    /** 更新时间 */
    @Column(name = "update_time")
    private Date updateTime;
}
