package com.cool.store.request.hqt;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
public class HqtBuildAPIRequest {

    /**
     * @description:
     * 2148799018--加盟建店
     * 2148784001--加盟公司建店
     * 2148799024--对外业务
     * 目前只推送2148799018--加盟建店
     */
    @JsonProperty(" bizType")
    private String  bizType = "2148799018";

    /**
     * projectNo 门店编码
     */
    @JsonProperty("projectNo")
    private String projectNo;

    /**
     * name 店名
     */
    @JsonProperty("name")
    private String name;


    /**
     * field13__c 门店属性
     * 新开店:o1
     * 老店翻新:o2
     * 老店新开:o5
     *  迁址:option46
     *  二次设计:o3
     *  维修改造: o4
     */
    @JsonProperty("field13__c")
    private Field13__c field13__c;

    /**
     * field124__c  所属片区
     */
    @JsonProperty("field124__c")
    private Field124__c field124__c;


    /**
     * field94__c 所属督导
     */
    @JsonProperty("field94__c")
    private String field94__c;


    /**
     * field5__c 联系人 (老板)
     */
    @JsonProperty("field5__c")
    private String field5__c;

    /**
     * field6__c 联系人(老板)手机号
     */
    @JsonProperty("field6__c")
    private String field6__c;


    /**
     * street 详细地址
     */
    @JsonProperty("street")
    private String street;


    /**
     * field8__c 是否已收设计费
     * 是:option44
     * 否:option45
     */
    @JsonProperty("field8__c")
    private Field8__c field8__c;
    /**
     * field123__c 品牌
     * 正新鸡排:option486
     * 正烧记:option488
     * 茂掌柜:option490
     * 正新三明治:option622
     * 大鼓米线:option624
     * 串小妹:option626
     */
    @JsonProperty("field123__c")
    private Field123__c field123__c;


    /**
     * field4__c  督导手机号
     */
    @JsonProperty("field4__c")
    private String field4__c;

    //是否对接CRM
    @JsonProperty("field180__c")
    private String field180__c = "crm";

    @JsonProperty("运营顾问")
    private String field190__c;

    @JsonProperty("招商所属大区")
    private String field188__c;

    @JsonProperty("负责人邮箱")
    private String field191__c;

    /**
     * 招商大区负责人邮箱
     */
    @JsonProperty("field197__c")
    private String field197__c;

    /**
     * 特殊情况说明
     */
    @JsonProperty("field195__c")
    private String field195__c;

    /**
     * 装修设计要求
     */
    @JsonProperty("field194__c")
    private Field8__c field194__c;

    /**
     * 装修等级
     */
    @JsonProperty("field193__c")
    private Field8__c field193__c;

    /**
     * 门店类型
     */
    @JsonProperty("field192__c")
    private Field8__c field192__c;

    @Data
    public static class Field124__c {
        /**
         * @description: 红圈通 区域编码
         */
        @JsonProperty("code")
        private String code;

        @JsonProperty("bizType")
        /**
         默认值
         */
        private String bizType = "202684487985";
        /**
         * @description:默认值
         */
        @JsonProperty("metaName")
        private String metaName = "CustomObject494__c";
        /**
         * @description: 红圈通 区域名称
         */
        @JsonProperty("name")
        private String name;
    }

    @Data
    public static class Field123__c {
        @JsonProperty("defaultItem")
        /**
         * @description: 默认值
         */
        private Boolean defaultItem = false;
        /**
         * field123__c 品牌
         * 正新鸡排:option486
         * 正烧记:option488
         * 茂掌柜:option490
         * 正新三明治:option622
         * 大鼓米线:option624
         * 串小妹:option626
         */
        @JsonProperty("id")
        /**
         * @description: 如该值=ConstantGroup485/option486
         * 默认设置了前缀ConstantGroup485/
         */
        private String id = "ConstantGroup485/";

        @JsonProperty("label")
        /**
         * @description: 品牌名称：如正新鸡排
         */
        private String label;

        @JsonProperty("name")
        /**
         * @description: 对应红圈通品牌编码如：ption486
         */
        private String name;

        @JsonProperty("path")
        /**
         * @description: 如该值=ConstantGroup485/option486
         * 默认设置了前缀ConstantGroup485/
         * path = id
         */
        private String path = "ConstantGroup485/";
    }

    @Data
    public static class Field13__c {
        @JsonProperty("defaultItem")
        /**
         * @description: 默认值
         */
        private Boolean defaultItem = false;

        /**
         * field13__c 门店装修属性
         * 新开店:o1
         * 老店翻新:o2
         * 老店新开:o5
         *  迁址:option46
         *  二次设计:o3
         *  维修改造: o4
         */
        @JsonProperty("id")
        /**
         * @description: 如：o1
         */
        private String id;

        /**
         * @description: 如：新开店
         */
        @JsonProperty("label")
        private String label;

        /**
         * @description: 如：如：o1  name = id
         */
        @JsonProperty("name")
        private String name;
    }

    @Data
    @NoArgsConstructor
    public static class Field8__c {
        @JsonProperty("defaultItem")
        /**
         * @description: 默认值
         */
        private Boolean defaultItem = false;
        /**
         * field8__c 是否已收设计费
         * 是:option44
         * 否:option45
         */
        @JsonProperty("id")
        /**
         * @description: 如：option44
         */
        private String id;
        /**
         * @description: 如：是
         */
        @JsonProperty("label")
        private String label;
        /**
         * @description: 如：option44 name = id
         */
        @JsonProperty("name")
        private String name;

        public Field8__c(String code, String label) {
            this.id = code;
            this.name = code;
            this.label = label;
        }
    }
}

