package com.ruoyi.excel.wecom.model;

import java.util.List;

/**
 * 企业微信客户详情模型
 */
public class WecomCustomer {
    private ExternalContact externalContact;
    private FollowInfo followInfo;

    public ExternalContact getExternalContact() {
        return externalContact;
    }

    public void setExternalContact(ExternalContact externalContact) {
        this.externalContact = externalContact;
    }

    public FollowInfo getFollowInfo() {
        return followInfo;
    }

    public void setFollowInfo(FollowInfo followInfo) {
        this.followInfo = followInfo;
    }

    /**
     * 外部联系人基本信息
     */
    public static class ExternalContact {
        private String externalUserid;
        private String name;
        private String position;
        private String avatar;
        private String corpName;
        private String corpFullName;
        private Integer type;
        private Integer gender;
        private String unionid;
        private ExternalProfile externalProfile;

        public String getExternalUserid() {
            return externalUserid;
        }

        public void setExternalUserid(String externalUserid) {
            this.externalUserid = externalUserid;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getPosition() {
            return position;
        }

        public void setPosition(String position) {
            this.position = position;
        }

        public String getAvatar() {
            return avatar;
        }

        public void setAvatar(String avatar) {
            this.avatar = avatar;
        }

        public String getCorpName() {
            return corpName;
        }

        public void setCorpName(String corpName) {
            this.corpName = corpName;
        }

        public String getCorpFullName() {
            return corpFullName;
        }

        public void setCorpFullName(String corpFullName) {
            this.corpFullName = corpFullName;
        }

        public Integer getType() {
            return type;
        }

        public void setType(Integer type) {
            this.type = type;
        }

        public Integer getGender() {
            return gender;
        }

        public void setGender(Integer gender) {
            this.gender = gender;
        }

        public String getUnionid() {
            return unionid;
        }

        public void setUnionid(String unionid) {
            this.unionid = unionid;
        }

        public ExternalProfile getExternalProfile() {
            return externalProfile;
        }

        public void setExternalProfile(ExternalProfile externalProfile) {
            this.externalProfile = externalProfile;
        }
    }

    /**
     * 外部个人资料
     */
    public static class ExternalProfile {
        private List<ExternalAttr> externalAttr;

        public List<ExternalAttr> getExternalAttr() {
            return externalAttr;
        }

        public void setExternalAttr(List<ExternalAttr> externalAttr) {
            this.externalAttr = externalAttr;
        }
    }

    /**
     * 外部属性
     */
    public static class ExternalAttr {
        private Integer type;
        private String name;
        private Text text;
        private Web web;
        private Miniprogram miniprogram;

        public Integer getType() {
            return type;
        }

        public void setType(Integer type) {
            this.type = type;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public Text getText() {
            return text;
        }

        public void setText(Text text) {
            this.text = text;
        }

        public Web getWeb() {
            return web;
        }

        public void setWeb(Web web) {
            this.web = web;
        }

        public Miniprogram getMiniprogram() {
            return miniprogram;
        }

        public void setMiniprogram(Miniprogram miniprogram) {
            this.miniprogram = miniprogram;
        }
    }

    /**
     * 文本属性
     */
    public static class Text {
        private String value;

        public String getValue() {
            return value;
        }

        public void setValue(String value) {
            this.value = value;
        }
    }

    /**
     * 网页属性
     */
    public static class Web {
        private String url;
        private String title;

        public String getUrl() {
            return url;
        }

        public void setUrl(String url) {
            this.url = url;
        }

        public String getTitle() {
            return title;
        }

        public void setTitle(String title) {
            this.title = title;
        }
    }

    /**
     * 小程序属性
     */
    public static class Miniprogram {
        private String appid;
        private String pagepath;
        private String title;

        public String getAppid() {
            return appid;
        }

        public void setAppid(String appid) {
            this.appid = appid;
        }

        public String getPagepath() {
            return pagepath;
        }

        public void setPagepath(String pagepath) {
            this.pagepath = pagepath;
        }

        public String getTitle() {
            return title;
        }

        public void setTitle(String title) {
            this.title = title;
        }
    }

    /**
     * 跟进信息
     */
    public static class FollowInfo {
        private String userid;
        private String remark;
        private String description;
        private Long createtime;
        private List<String> tagId;
        private String remarkCorpName;

        private List<String> remarkMobiles;
        private String operUserid;
        private Integer addWay;
        private String state;

        public String getUserid() {
            return userid;
        }

        public void setUserid(String userid) {
            this.userid = userid;
        }

        public String getRemark() {
            return remark;
        }

        public void setRemark(String remark) {
            this.remark = remark;
        }

        public String getDescription() {
            return description;
        }

        public void setDescription(String description) {
            this.description = description;
        }

        public Long getCreatetime() {
            return createtime;
        }

        public void setCreatetime(Long createtime) {
            this.createtime = createtime;
        }

        public List<String> getTagId() {
            return tagId;
        }

        public void setTagId(List<String> tagId) {
            this.tagId = tagId;
        }

        public String getRemarkCorpName() {
            return remarkCorpName;
        }

        public void setRemarkCorpName(String remarkCorpName) {
            this.remarkCorpName = remarkCorpName;
        }

        public List<String> getRemarkMobiles() {
            return remarkMobiles;
        }

        public void setRemarkMobiles(List<String> remarkMobiles) {
            this.remarkMobiles = remarkMobiles;
        }

        public String getOperUserid() {
            return operUserid;
        }

        public void setOperUserid(String operUserid) {
            this.operUserid = operUserid;
        }

        public Integer getAddWay() {
            return addWay;
        }

        public void setAddWay(Integer addWay) {
            this.addWay = addWay;
        }


        public String getState() {
            return state;
        }

        public void setState(String state) {
            this.state = state;
        }
    }

    /**
     * 视频号信息
     */
    public static class WechatChannels {
        private String nickname;
        private Integer source;

        public String getNickname() {
            return nickname;
        }

        public void setNickname(String nickname) {
            this.nickname = nickname;
        }

        public Integer getSource() {
            return source;
        }

        public void setSource(Integer source) {
            this.source = source;
        }
    }
}