package com.sv.entity.face;

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

public class FaceRecognizeResponse implements Serializable {

    /**
     * data : {"status":"recognized","track":6,"timestamp":1533808724,"face":{"image":"[encoded data, 9996 characters]","rect":{"top":918,"right":872,"bottom":990,"left":798}},"person":{"feature_id":0,"confidence":78.397995,"tag":"{\"description\": \"\", \"remark\": \"\", \"subject_type\": 0, \"name\": \"ndy\", \"inviter_id\": null, \"start_time\": 0, \"title\": \"\", \"interviewee\": \"\", \"avatar\": \"/static/upload/photo/2018-08-09/v2_cec2cd5140b55db4051d9c69775ec6ebaea5947b.jpg\", \"origin_photo_id\": 3, \"birthday\": null, \"id\": 5, \"entry_date\": null, \"department\": \"\", \"interviewee_pinyin\": \"\", \"job_number\": \"\", \"end_time\": 0}","id":"5"},"quality":0.9968518905807287}
     * screen : {"camera_address":"rtsp://192.168.1.160:8554/0/0/0","allowed_subject_ids":[],"network_switcher_status":null,"box_token":"95a0f5b6-924d-4323-9296-39d258f2b3f9","description":null,"allow_all_subjects":true,"box_heartbeat":1533806262,"network_switcher":"","camera_name":"","camera_status":0,"allow_visitor":true,"screen_token":"3c566c3f-6d7f-437a-af56-8ba4a7852745","network_switcher_token":null,"box_status":"0","network_switcher_drive":0,"type":1,"id":1,"camera_position":"测试","box_address":"192.168.1.50"}
     * person : {"src":"data:image/jpeg;base64,[encoded data, 9996 characters]","remark":"","subject_type":0,"description":"","inviter_id":null,"timestamp":1533808724,"start_time":0,"title":"","interviewee":"","job_number":"","entry_date":null,"origin_photo_id":3,"birthday":null,"avatar":"/static/upload/photo/2018-08-09/v2_cec2cd5140b55db4051d9c69775ec6ebaea5947b.jpg","department":"","end_time":0,"interviewee_pinyin":"","id":5,"name":"ndy"}
     * error : 允许进入
     * open_door : true
     * type : recognized
     */

    private DataBean data;
    private ScreenBean screen;
    private PersonBeanX person;
    private String error;
    private boolean open_door;
    private String type;

    public DataBean getData() {
        return data;
    }

    public void setData(DataBean data) {
        this.data = data;
    }

    public ScreenBean getScreen() {
        return screen;
    }

    public void setScreen(ScreenBean screen) {
        this.screen = screen;
    }

    public PersonBeanX getPerson() {
        return person;
    }

    public void setPerson(PersonBeanX person) {
        this.person = person;
    }

    public String getError() {
        return error;
    }

    public void setError(String error) {
        this.error = error;
    }

    public boolean isOpen_door() {
        return open_door;
    }

    public void setOpen_door(boolean open_door) {
        this.open_door = open_door;
    }

    public String getType() {
        return type;
    }

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

    public static class DataBean {
        /**
         * status : recognized
         * track : 6
         * timestamp : 1533808724
         * face : {"image":"[encoded data, 9996 characters]","rect":{"top":918,"right":872,"bottom":990,"left":798}}
         * person : {"feature_id":0,"confidence":78.397995,"tag":"{\"description\": \"\", \"remark\": \"\", \"subject_type\": 0, \"name\": \"ndy\", \"inviter_id\": null, \"start_time\": 0, \"title\": \"\", \"interviewee\": \"\", \"avatar\": \"/static/upload/photo/2018-08-09/v2_cec2cd5140b55db4051d9c69775ec6ebaea5947b.jpg\", \"origin_photo_id\": 3, \"birthday\": null, \"id\": 5, \"entry_date\": null, \"department\": \"\", \"interviewee_pinyin\": \"\", \"job_number\": \"\", \"end_time\": 0}","id":"5"}
         * quality : 0.9968518905807287
         */

        private String status;
        private int track;
        private FaceBean face;
        private PersonBean person;
        private double quality;

        public String getStatus() {
            return status;
        }

        public void setStatus(String status) {
            this.status = status;
        }

        public int getTrack() {
            return track;
        }

        public void setTrack(int track) {
            this.track = track;
        }


        public FaceBean getFace() {
            return face;
        }

        public void setFace(FaceBean face) {
            this.face = face;
        }

        public PersonBean getPerson() {
            return person;
        }

        public void setPerson(PersonBean person) {
            this.person = person;
        }

        public double getQuality() {
            return quality;
        }

        public void setQuality(double quality) {
            this.quality = quality;
        }

        public static class FaceBean {
            /**
             * image : [encoded data, 9996 characters]
             * rect : {"top":918,"right":872,"bottom":990,"left":798}
             */

            private String image;
            private RectBean rect;

            public String getImage() {
                return image;
            }

            public void setImage(String image) {
                this.image = image;
            }

            public RectBean getRect() {
                return rect;
            }

            public void setRect(RectBean rect) {
                this.rect = rect;
            }

            public static class RectBean {
                /**
                 * top : 918
                 * right : 872
                 * bottom : 990
                 * left : 798
                 */

                private int top;
                private int right;
                private int bottom;
                private int left;

                public int getTop() {
                    return top;
                }

                public void setTop(int top) {
                    this.top = top;
                }

                public int getRight() {
                    return right;
                }

                public void setRight(int right) {
                    this.right = right;
                }

                public int getBottom() {
                    return bottom;
                }

                public void setBottom(int bottom) {
                    this.bottom = bottom;
                }

                public int getLeft() {
                    return left;
                }

                public void setLeft(int left) {
                    this.left = left;
                }
            }
        }

        public static class PersonBean {
            /**
             * feature_id : 0
             * confidence : 78.397995
             * tag : {"description": "", "remark": "", "subject_type": 0, "name": "ndy", "inviter_id": null, "start_time": 0, "title": "", "interviewee": "", "avatar": "/static/upload/photo/2018-08-09/v2_cec2cd5140b55db4051d9c69775ec6ebaea5947b.jpg", "origin_photo_id": 3, "birthday": null, "id": 5, "entry_date": null, "department": "", "interviewee_pinyin": "", "job_number": "", "end_time": 0}
             * id : 5
             */

            private int feature_id;
            private double confidence;
            private String tag;
            private String id;

            public int getFeature_id() {
                return feature_id;
            }

            public void setFeature_id(int feature_id) {
                this.feature_id = feature_id;
            }

            public double getConfidence() {
                return confidence;
            }

            public void setConfidence(double confidence) {
                this.confidence = confidence;
            }

            public String getTag() {
                return tag;
            }

            public void setTag(String tag) {
                this.tag = tag;
            }

            public String getId() {
                return id;
            }

            public void setId(String id) {
                this.id = id;
            }
        }
    }

    public static class ScreenBean {
        /**
         * camera_address : rtsp://192.168.1.160:8554/0/0/0
         * allowed_subject_ids : []
         * network_switcher_status : null
         * box_token : 95a0f5b6-924d-4323-9296-39d258f2b3f9
         * description : null
         * allow_all_subjects : true
         * box_heartbeat : 1533806262
         * network_switcher :
         * camera_name :
         * camera_status : 0
         * allow_visitor : true
         * screen_token : 3c566c3f-6d7f-437a-af56-8ba4a7852745
         * network_switcher_token : null
         * box_status : 0
         * network_switcher_drive : 0
         * type : 1
         * id : 1
         * camera_position : 测试
         * box_address : 192.168.1.50
         */

        private String camera_address;
        private Object network_switcher_status;
        private String box_token;
        private Object description;
        private boolean allow_all_subjects;
        private int box_heartbeat;
        private String network_switcher;
        private String camera_name;
        private int camera_status;
        private boolean allow_visitor;
        private String screen_token;
        private Object network_switcher_token;
        private String box_status;
        private int network_switcher_drive;
        private int type;
        private int id;
        private String camera_position;
        private String box_address;
        private List<?> allowed_subject_ids;

        public String getCamera_address() {
            return camera_address;
        }

        public void setCamera_address(String camera_address) {
            this.camera_address = camera_address;
        }

        public Object getNetwork_switcher_status() {
            return network_switcher_status;
        }

        public void setNetwork_switcher_status(Object network_switcher_status) {
            this.network_switcher_status = network_switcher_status;
        }

        public String getBox_token() {
            return box_token;
        }

        public void setBox_token(String box_token) {
            this.box_token = box_token;
        }

        public Object getDescription() {
            return description;
        }

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

        public boolean isAllow_all_subjects() {
            return allow_all_subjects;
        }

        public void setAllow_all_subjects(boolean allow_all_subjects) {
            this.allow_all_subjects = allow_all_subjects;
        }

        public int getBox_heartbeat() {
            return box_heartbeat;
        }

        public void setBox_heartbeat(int box_heartbeat) {
            this.box_heartbeat = box_heartbeat;
        }

        public String getNetwork_switcher() {
            return network_switcher;
        }

        public void setNetwork_switcher(String network_switcher) {
            this.network_switcher = network_switcher;
        }

        public String getCamera_name() {
            return camera_name;
        }

        public void setCamera_name(String camera_name) {
            this.camera_name = camera_name;
        }

        public int getCamera_status() {
            return camera_status;
        }

        public void setCamera_status(int camera_status) {
            this.camera_status = camera_status;
        }

        public boolean isAllow_visitor() {
            return allow_visitor;
        }

        public void setAllow_visitor(boolean allow_visitor) {
            this.allow_visitor = allow_visitor;
        }

        public String getScreen_token() {
            return screen_token;
        }

        public void setScreen_token(String screen_token) {
            this.screen_token = screen_token;
        }

        public Object getNetwork_switcher_token() {
            return network_switcher_token;
        }

        public void setNetwork_switcher_token(Object network_switcher_token) {
            this.network_switcher_token = network_switcher_token;
        }

        public String getBox_status() {
            return box_status;
        }

        public void setBox_status(String box_status) {
            this.box_status = box_status;
        }

        public int getNetwork_switcher_drive() {
            return network_switcher_drive;
        }

        public void setNetwork_switcher_drive(int network_switcher_drive) {
            this.network_switcher_drive = network_switcher_drive;
        }

        public int getType() {
            return type;
        }

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

        public int getId() {
            return id;
        }

        public void setId(int id) {
            this.id = id;
        }

        public String getCamera_position() {
            return camera_position;
        }

        public void setCamera_position(String camera_position) {
            this.camera_position = camera_position;
        }

        public String getBox_address() {
            return box_address;
        }

        public void setBox_address(String box_address) {
            this.box_address = box_address;
        }

        public List<?> getAllowed_subject_ids() {
            return allowed_subject_ids;
        }

        public void setAllowed_subject_ids(List<?> allowed_subject_ids) {
            this.allowed_subject_ids = allowed_subject_ids;
        }
    }

    public static class PersonBeanX {
        /**
         * src : data:image/jpeg;base64,[encoded data, 9996 characters]
         * remark :
         * subject_type : 0
         * description :
         * inviter_id : null
         * timestamp : 1533808724
         * start_time : 0
         * title :
         * interviewee :
         * job_number :
         * entry_date : null
         * origin_photo_id : 3
         * birthday : null
         * avatar : /static/upload/photo/2018-08-09/v2_cec2cd5140b55db4051d9c69775ec6ebaea5947b.jpg
         * department :
         * end_time : 0
         * interviewee_pinyin :
         * id : 5
         * name : ndy
         */

        private String src;
        private String remark;
        private int subject_type;
        private String description;
        private Object inviter_id;
        private int timestamp;
        private int start_time;
        private String title;
        private String interviewee;
        private String job_number;
        private Object entry_date;
        private int origin_photo_id;
        private Object birthday;
        private String avatar;
        private String department;
        private int end_time;
        private String interviewee_pinyin;
        private int id;
        private String name;

        public String getSrc() {
            return src;
        }

        public void setSrc(String src) {
            this.src = src;
        }

        public String getRemark() {
            return remark;
        }

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

        public int getSubject_type() {
            return subject_type;
        }

        public void setSubject_type(int subject_type) {
            this.subject_type = subject_type;
        }

        public String getDescription() {
            return description;
        }

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

        public Object getInviter_id() {
            return inviter_id;
        }

        public void setInviter_id(Object inviter_id) {
            this.inviter_id = inviter_id;
        }

        public int getTimestamp() {
            return timestamp;
        }

        public void setTimestamp(int timestamp) {
            this.timestamp = timestamp;
        }

        public int getStart_time() {
            return start_time;
        }

        public void setStart_time(int start_time) {
            this.start_time = start_time;
        }

        public String getTitle() {
            return title;
        }

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

        public String getInterviewee() {
            return interviewee;
        }

        public void setInterviewee(String interviewee) {
            this.interviewee = interviewee;
        }

        public String getJob_number() {
            return job_number;
        }

        public void setJob_number(String job_number) {
            this.job_number = job_number;
        }

        public Object getEntry_date() {
            return entry_date;
        }

        public void setEntry_date(Object entry_date) {
            this.entry_date = entry_date;
        }

        public int getOrigin_photo_id() {
            return origin_photo_id;
        }

        public void setOrigin_photo_id(int origin_photo_id) {
            this.origin_photo_id = origin_photo_id;
        }

        public Object getBirthday() {
            return birthday;
        }

        public void setBirthday(Object birthday) {
            this.birthday = birthday;
        }

        public String getAvatar() {
            return avatar;
        }

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

        public String getDepartment() {
            return department;
        }

        public void setDepartment(String department) {
            this.department = department;
        }

        public int getEnd_time() {
            return end_time;
        }

        public void setEnd_time(int end_time) {
            this.end_time = end_time;
        }

        public String getInterviewee_pinyin() {
            return interviewee_pinyin;
        }

        public void setInterviewee_pinyin(String interviewee_pinyin) {
            this.interviewee_pinyin = interviewee_pinyin;
        }

        public int getId() {
            return id;
        }

        public void setId(int id) {
            this.id = id;
        }

        public String getName() {
            return name;
        }

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