package com.rdiot.yx485.bean;


import com.rdiot.yx485.http.entity.BaseReplyBean;

import java.io.Serializable;
import java.util.List;

public class PersonBean extends BaseReplyBean {
    /**
     * record_id : string
     * user_name : string
     * password : string
     * phone : string
     * status : string
     * photo : string
     * default_home_id : string
     * default_home_name : string
     * created_at : string
     * set_password : true
     * homes : [{"record_id":"string","name":"string","province":"string","city":"string","district":"string","address":"string","ad_code":"string","member":[{"record_id":"string","home_id":"string","user_id":"string","is_default":true,"user_name":"string","phone":"string","photo":"string","remark":"string"}],"admin_id":"string","admin_name":"string","is_default":true,"is_online":true,"room":[{"record_id":"string","name":"string","home_id":"string","home_name":"string","devices":[{"record_id":"string","name":"string","device_code":"string","type_id":"string","type_name":"string","icon":"string","is_master":true,"home_id":"string","room_id":"string","is_online":true,"power":0,"temperature":0,"humidity":0}]}],"devices":[{"record_id":"string","name":"string","device_code":"string","type_id":"string","type_name":"string","icon":"string","is_master":true,"home_id":"string","room_id":"string","is_online":true,"power":0,"temperature":0,"humidity":0}]}]
     * home_count : 0
     * all_devices : 0
     */
    public UserInfo data;

    public static class UserInfo implements Serializable {
        public String record_id;
        public String user_name;
        public String password;
        public String phone;
        public String status;
        public String photo;
        public String default_home_id;
        public String default_home_name;
        public String created_at;
        public boolean set_password;
        public int home_count;
        public int all_devices;
        public List<HomesBean> homes;

        @Override
        public String toString() {
            return "PersonBean{" +
                    "record_id='" + record_id + '\'' +
                    ", user_name='" + user_name + '\'' +
                    ", password='" + password + '\'' +
                    ", phone='" + phone + '\'' +
                    ", status='" + status + '\'' +
                    ", photo='" + photo + '\'' +
                    ", default_home_id='" + default_home_id + '\'' +
                    ", default_home_name='" + default_home_name + '\'' +
                    ", created_at='" + created_at + '\'' +
                    ", set_password=" + set_password +
                    ", home_count=" + home_count +
                    ", all_devices=" + all_devices +
                    ", homes=" + homes +
                    '}';
        }

        public static class HomesBean implements Serializable {
            /**
             * record_id : string
             * name : string
             * province : string
             * city : string
             * district : string
             * address : string
             * ad_code : string
             * member : [{"record_id":"string","home_id":"string","user_id":"string","is_default":true,"user_name":"string","phone":"string","photo":"string","remark":"string"}]
             * admin_id : string
             * admin_name : string
             * is_default : true
             * is_online : true
             * room : [{"record_id":"string","name":"string","home_id":"string","home_name":"string","devices":[{"record_id":"string","name":"string","device_code":"string","type_id":"string","type_name":"string","icon":"string","is_master":true,"home_id":"string","room_id":"string","is_online":true,"power":0,"temperature":0,"humidity":0}]}]
             * devices : [{"record_id":"string","name":"string","device_code":"string","type_id":"string","type_name":"string","icon":"string","is_master":true,"home_id":"string","room_id":"string","is_online":true,"power":0,"temperature":0,"humidity":0}]
             */

            public String record_id;
            public String name;
            public String province;
            public String city;
            public String district;
            public String address;
            public String ad_code;
            public String admin_id;
            public String admin_name;
            public boolean is_default;
            public boolean is_online;
            public List<MemberBean> member;
            public List<RoomBean> room;
            public List<DevicesBeanX> devices;

            @Override
            public String toString() {
                return "HomesBean{" +
                        "record_id='" + record_id + '\'' +
                        ", name='" + name + '\'' +
                        ", province='" + province + '\'' +
                        ", city='" + city + '\'' +
                        ", district='" + district + '\'' +
                        ", address='" + address + '\'' +
                        ", ad_code='" + ad_code + '\'' +
                        ", admin_id='" + admin_id + '\'' +
                        ", admin_name='" + admin_name + '\'' +
                        ", is_default=" + is_default +
                        ", is_online=" + is_online +
                        ", member=" + member +
                        ", room=" + room +
                        ", devices=" + devices +
                        '}';
            }

            public static class MemberBean implements Serializable {
                /**
                 * record_id : string
                 * home_id : string
                 * user_id : string
                 * is_default : true
                 * user_name : string
                 * phone : string
                 * photo : string
                 * remark : string
                 */

                public String record_id;
                public String home_id;
                public String user_id;
                public boolean is_default;
                public String user_name;
                public String phone;
                public String photo;
                public String remark;

                @Override
                public String toString() {
                    return "MemberBean{" +
                            "record_id='" + record_id + '\'' +
                            ", home_id='" + home_id + '\'' +
                            ", user_id='" + user_id + '\'' +
                            ", is_default=" + is_default +
                            ", user_name='" + user_name + '\'' +
                            ", phone='" + phone + '\'' +
                            ", photo='" + photo + '\'' +
                            ", remark='" + remark + '\'' +
                            '}';
                }
            }

            public static class RoomBean implements Serializable {
                /**
                 * record_id : string
                 * name : string
                 * home_id : string
                 * home_name : string
                 * devices : [{"record_id":"string","name":"string","device_code":"string","type_id":"string","type_name":"string","icon":"string","is_master":true,"home_id":"string","room_id":"string","is_online":true,"power":0,"temperature":0,"humidity":0}]
                 */

                public String record_id;
                public String name;
                public String home_id;
                public String home_name;
                public List<DevicesBean> devices;

                @Override
                public String toString() {
                    return "RoomBean{" +
                            "record_id='" + record_id + '\'' +
                            ", name='" + name + '\'' +
                            ", home_id='" + home_id + '\'' +
                            ", home_name='" + home_name + '\'' +
                            ", devices=" + devices +
                            '}';
                }

                public static class DevicesBean implements Serializable {
                    /**
                     * record_id : string
                     * name : string
                     * device_code : string
                     * type_id : string
                     * type_name : string
                     * icon : string
                     * is_master : true
                     * home_id : string
                     * room_id : string
                     * is_online : true
                     * power : 0
                     * temperature : 0
                     * humidity : 0
                     */

                    public String record_id;
                    public String name;
                    public String device_code;
                    public String type_id;
                    public String type_name;
                    public String icon;
                    public boolean is_master;
                    public String home_id;
                    public String room_id;
                    public boolean is_online;
                    public int power;
                    public int temperature;
                    public int humidity;

                    @Override
                    public String toString() {
                        return "DevicesBean{" +
                                "record_id='" + record_id + '\'' +
                                ", name='" + name + '\'' +
                                ", device_code='" + device_code + '\'' +
                                ", type_id='" + type_id + '\'' +
                                ", type_name='" + type_name + '\'' +
                                ", icon='" + icon + '\'' +
                                ", is_master=" + is_master +
                                ", home_id='" + home_id + '\'' +
                                ", room_id='" + room_id + '\'' +
                                ", is_online=" + is_online +
                                ", power=" + power +
                                ", temperature=" + temperature +
                                ", humidity=" + humidity +
                                '}';
                    }
                }
            }

            public static class DevicesBeanX implements Serializable {
                /**
                 * record_id : string
                 * name : string
                 * device_code : string
                 * type_id : string
                 * type_name : string
                 * icon : string
                 * is_master : true
                 * home_id : string
                 * room_id : string
                 * is_online : true
                 * power : 0
                 * temperature : 0
                 * humidity : 0
                 */

                public String record_id;
                public String name;
                public String device_code;
                public String type_id;
                public String type_name;
                public String icon;
                public boolean is_master;
                public String home_id;
                public String room_id;
                public boolean is_online;
                public int power;
                public int temperature;
                public int humidity;
            }
        }
    }
}
