package com.cool.store.response;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

@Data
public class SysStoreAppResponse {

    @ApiModelProperty("主键id")
    private Long id;

    @ApiModelProperty("线索id")
    private Long lineId;

    @ApiModelProperty("筹建门店id")
    private Long shopId;

    private Long auditId;

    private FranInfo franInfo;

    private StoreDetail storeDetail;

    private SupervisorDetail supervisorDetail;

    private AuditDetail auditDetail;


    @Data
    public static class AuditDetail {
        @ApiModelProperty("0-视觉验收 1-培训登记审批 2-开业运营方案  3-证照审批 4-系统建店")
        private Integer auditType;
        @ApiModelProperty("结果类型 0通过,1拒绝")
        private Integer resultType;
        @ApiModelProperty("通过原因")
        private String passReason;
        @ApiModelProperty("拒绝原因")
        private String rejectReason;
    }

    @Data
    public static class FranInfo {

        @ApiModelProperty("加盟商姓名")
        private String franchiseeName;

        @ApiModelProperty("所属大区")
        private String subregion;

        @ApiModelProperty("加盟商编码")
        private String partnerNum;

        @ApiModelProperty("加盟商电话")
        private String franchiseeMobile;

        @ApiModelProperty("加盟商类型" +
                "0-新加盟商开单店;1-老加盟商开单店;" +
                "2-新加盟商开新区域单店;" +
                "3-新加盟商开老区域单店;" +
                "4-老加盟商开新区域单店;" +
                "5-老加盟商开老区域单店;" +
                "6-直营门店;" +
                "7-同异业转化;" +
                "8-老加盟商迁址开新店")
        private Integer franchiseeType;

        @ApiModelProperty("门店邀约人id")
        private String inviteUserId;

        @ApiModelProperty("门店邀约人姓名")
        private String storeInviteesName;

        @ApiModelProperty("招商姓名")
        private String InvestmentName;

        @ApiModelProperty("招商人id")
        private String InvestmentUserId;

        @ApiModelProperty("门店选址人姓名")
        private String sitterName;

        @ApiModelProperty("门店选址人id")
        private String sitterId;
    }

    @Data
    public static class StoreDetail {
        @ApiModelProperty("门店性质")
        private Integer storeNature;
        @ApiModelProperty("门店经营者")
        private Integer storeOperator;
        @ApiModelProperty("门店名称（默认带入一个门店名称，但是可修改）")
        private String storeName;
        @ApiModelProperty("大区描述")
        private String bigDesc;
        @ApiModelProperty("大区名称")
        private String bigName;
        @ApiModelProperty("大区code")
        private String bigCode;

        @ApiModelProperty("战区id")
        private Long fightId;
        @ApiModelProperty("战区描述")
        private String fightDesc;
        @ApiModelProperty("战区code")
        private String fightCode;
        @ApiModelProperty("战区名称")
        private String fightName;

        @ApiModelProperty("小区code")
        private String smallCode;
        @ApiModelProperty("小区描述")
        private String smallDesc;
        @ApiModelProperty("小区名称")
        private String smallName;

        @ApiModelProperty("主商圈类型 10-社区型;20-商业街边型;30-学校型;40-CBD/办公型;60-医院型;70-菜场型")
        private Integer mainBusinessType;
        @ApiModelProperty("次商圈类型 10-社区型;20-商业街边型;30-学校型;40-CBD/办公型;60-医院型;70-菜场型")
        private Integer subBusinessType;
        @ApiModelProperty("线下主要竞争对手 10-品牌水果店;20-夫妻水果店;30-菜场店;40-大商超;50-生鲜店;60-无")
        private Integer offlineCompetitor;
        @ApiModelProperty("线下主要竞争品牌")
        private String offlineCompetingBrand;
        @ApiModelProperty("周边500米内二手房均价")
        private Integer averagePriceSh;
        @ApiModelProperty("100米周末日均客流量指数 0：1000以下 1：1000-1万 2：1万以上")
        private Integer averageDailyRs;
        @ApiModelProperty("商圈门店类型 普通社区店 高档社区店")
        private String businessStoreType;
        @ApiModelProperty("预估营业额")
        private Integer estimatedTurnover;
        @ApiModelProperty("签约日期")
        private Date signDate;
        @ApiModelProperty("房东姓名")
        private String landlordName;
        @ApiModelProperty("合同交房日期")
        private Date contractDeliveryDate;
        @ApiModelProperty("房东联系电话")
        private String landlordMobile;
        @ApiModelProperty("预约量房日期")
        private Date reservation;
        @ApiModelProperty("门店月租金")
        private Integer storeRent;
        @ApiModelProperty("此店加盟费")
        private Integer storeFranchiseFee;
        @ApiModelProperty("此店保证金")
        private Integer storeSecurityDeposit;
        @ApiModelProperty("享受加盟费和保证金优惠原因")
        private String reasons;
        @ApiModelProperty("省")
        private String province;
        @ApiModelProperty("市")
        private String city;
        @ApiModelProperty("区")
        private String district;
        @ApiModelProperty("街道")
        private String township;
        @ApiModelProperty("详细地址")
        private String detailAddress;
        @ApiModelProperty("品牌使用费率")
        private String usageRate;

    }

    @Data
    public static class SupervisorDetail {

        @ApiModelProperty("督导姓名")
        private String supervisorName;

        @ApiModelProperty("督导工号")
        private String supervisorId;

        @ApiModelProperty("大区总姓名")
        private String regioGeneral;

        @ApiModelProperty("大区总工号")
        private String regioGeneralId;

    }


}
