package com.hh.lib_ampe.bean;



import java.util.ArrayList;

/**
 * 返回给小程序的结果
 */
public class BaseAmpeAppletResultBean<T> {


    private String action;
    private String event;
    private String taskId;
    private boolean success;
    private String message;
    private T data;

    public String getAction() {
        return action;
    }

    public void setAction(String action) {
        this.action = action;
    }

    public String getEvent() {
        return event;
    }

    public void setEvent(String event) {
        this.event = event;
    }

    public String getTaskId() {
        return taskId;
    }

    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }

    public boolean isSuccess() {
        return success;
    }

    public void setSuccess(boolean success) {
        this.success = success;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public T getData() {
        return data;
    }

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

/*    public static class Data {
        // 主要把int改为Integer，不然会出现默认值0


        // 二维码
        private String qrCode;


        // -----------身份证，刷脸共同的---------begin
        private String name;
        private String idNum;
        // -----------身份证，刷脸共同的---------begin

        // -----------刷脸-用户三要素---------begin
//        private String authCode;
//        private String fToken;
        String userId;
        String mobile;
        String avatar;
        // -----------刷脸-用户三要素--------end


        // -----------刷脸-支付宝结果---------begin
        String alipayUid;
        Integer code = null;
        String extInfo;
        String ftoken;
        Boolean isvResult = null;
        String subCode;
        String subMessage;
        String vid;

        String originFaceInfo;


        // -----------刷脸-支付宝结果---------end

        // -----------身份证---------begin
        String signingOrganization;
        String address;
        String nation;
        String sex;
        String beginTime;
        String endTime;
        String birthDate;
        String photoBase64;
        // -----------身份证---------end

        // -----------设备信息---------begin
        String sn;
        // 设备型号
        String deviceModel;
        // app版本号
        String appVersion;
        // android版本
        String androidVersion;
        // ip
        String deviceIP;
        // 设备固件号
        String deviceDisplay;
        // -----------设备信息---------end

        // -----------麦克风录音---------begin
        String voiceContent;
        *//**
         * 录音状态
         * -1 错误
         * 0  空闲
         * 1  录音中
         * 2  结束
         * 3  暂停
         * 4  停止
         *//*
        Integer microphoneState;
        *//**
         * 持续录音监听状态
         * 0 关闭
         * 1 开启
         *//*
        Integer microphoneListenerState;
        // -----------麦克风录音---------end

        *//**
         * 副屏展示状态
         * 0 关闭
         * 1 显示
         * -1 暂不支持（可能是单屏设备）
         *//*
        Integer getSecondaryScreenState;

        *//**
         *
         * 社保卡新增字段，有些字段与上方字段复用
         *
         *//*
        private String cardNumber;
        private String idNumber;
        private String issueDate;
        private String expireDate;
        private String fullVersion;
        private String cityCode;

        *//**
         * 读取NFC卡中的信息
         *//*
        private String nfc_cardInfo;
        private String nfc_resultInfo;
        private ArrayList<String> nfc_commandResults;



        public String getVoiceContent() {
            return voiceContent;
        }

        public void setVoiceContent(String voiceContent) {
            this.voiceContent = voiceContent;
        }


        public Integer getMicrophoneState() {
            return microphoneState;
        }

        public void setMicrophoneState(Integer microphoneState) {
            this.microphoneState = microphoneState;
        }

        public Integer getMicrophoneListenerState() {
            return microphoneListenerState;
        }

        public void setMicrophoneListenerState(Integer microphoneListenerState) {
            this.microphoneListenerState = microphoneListenerState;
        }

        public String getOriginFaceInfo() {
            return originFaceInfo;
        }

        public void setOriginFaceInfo(String originFaceInfo) {
            this.originFaceInfo = originFaceInfo;
        }

        public Boolean getIsvResult() {
            return isvResult;
        }

        public String getAlipayUid() {
            return alipayUid;
        }

        public void setAlipayUid(String alipayUid) {
            this.alipayUid = alipayUid;
        }

        public Integer getCode() {
            return code;
        }

        public void setCode(Integer code) {
            this.code = code;
        }

        public String getExtInfo() {
            return extInfo;
        }

        public void setExtInfo(String extInfo) {
            this.extInfo = extInfo;
        }

        public String getFtoken() {
            return ftoken;
        }

        public void setFtoken(String ftoken) {
            this.ftoken = ftoken;
        }

        public Boolean isIsvResult() {
            return isvResult;
        }

        public void setIsvResult(Boolean isvResult) {
            this.isvResult = isvResult;
        }

        public String getSubCode() {
            return subCode;
        }

        public void setSubCode(String subCode) {
            this.subCode = subCode;
        }

        public String getSubMessage() {
            return subMessage;
        }

        public void setSubMessage(String subMessage) {
            this.subMessage = subMessage;
        }

        public String getVid() {
            return vid;
        }

        public void setVid(String vid) {
            this.vid = vid;
        }

        public String getDeviceDisplay() {
            return deviceDisplay;
        }

        public void setDeviceDisplay(String deviceDisplay) {
            this.deviceDisplay = deviceDisplay;
        }

        public String getSn() {
            return sn;
        }

        public void setSn(String sn) {
            this.sn = sn;
        }


        public String getDeviceModel() {
            return deviceModel;
        }

        public void setDeviceModel(String deviceModel) {
            this.deviceModel = deviceModel;
        }

        public String getAppVersion() {
            return appVersion;
        }

        public void setAppVersion(String appVersion) {
            this.appVersion = appVersion;
        }

        public String getAndroidVersion() {
            return androidVersion;
        }

        public void setAndroidVersion(String androidVersion) {
            this.androidVersion = androidVersion;
        }

        public String getDeviceIP() {
            return deviceIP;
        }

        public void setDeviceIP(String deviceIP) {
            this.deviceIP = deviceIP;
        }

        public String getdeviceDisplay() {
            return deviceDisplay;
        }

        public void setdeviceDisplay(String deviceDisplay) {
            this.deviceDisplay = deviceDisplay;
        }

        public String getQrCode() {
            return qrCode;
        }

        public void setQrCode(String qrCode) {
            this.qrCode = qrCode;
        }

        public String getName() {
            return name;
        }

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

        public String getIdNum() {
            return idNum;
        }

        public void setIdNum(String idNum) {
            this.idNum = idNum;
        }

        public String getUserId() {
            return userId;
        }

        public void setUserId(String userId) {
            this.userId = userId;
        }

        public String getMobile() {
            return mobile;
        }

        public void setMobile(String mobile) {
            this.mobile = mobile;
        }

        public String getAvatar() {
            return avatar;
        }

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

        public String getSigningOrganization() {
            return signingOrganization;
        }

        public void setSigningOrganization(String signingOrganization) {
            this.signingOrganization = signingOrganization;
        }

        public String getAddress() {
            return address;
        }

        public void setAddress(String address) {
            this.address = address;
        }

        public String getNation() {
            return nation;
        }

        public void setNation(String nation) {
            this.nation = nation;
        }

        public String getSex() {
            return sex;
        }

        public void setSex(String sex) {
            this.sex = sex;
        }

        public String getBeginTime() {
            return beginTime;
        }

        public void setBeginTime(String beginTime) {
            this.beginTime = beginTime;
        }

        public String getEndTime() {
            return endTime;
        }

        public void setEndTime(String endTime) {
            this.endTime = endTime;
        }

        public String getBirthDate() {
            return birthDate;
        }

        public void setBirthDate(String birthDate) {
            this.birthDate = birthDate;
        }

        public String getPhotoBase64() {
            return photoBase64;
        }

        public void setPhotoBase64(String photoBase64) {

            if(StringUtils.isNotNull(photoBase64)){
                photoBase64 = photoBase64.replaceAll("\n","");
            }

            this.photoBase64 = photoBase64;
        }

        public Integer getGetSecondaryScreenState() {
            return getSecondaryScreenState;
        }

        public void setGetSecondaryScreenState(Integer getSecondaryScreenState) {
            this.getSecondaryScreenState = getSecondaryScreenState;
        }

        public String getCardNumber() {
            return cardNumber;
        }

        public void setCardNumber(String cardNumber) {
            this.cardNumber = cardNumber;
        }

        public String getIdNumber() {
            return idNumber;
        }

        public void setIdNumber(String idNumber) {
            this.idNumber = idNumber;
        }

        public String getIssueDate() {
            return issueDate;
        }

        public void setIssueDate(String issueDate) {
            this.issueDate = issueDate;
        }

        public String getExpireDate() {
            return expireDate;
        }

        public void setExpireDate(String expireDate) {
            this.expireDate = expireDate;
        }

        public String getFullVersion() {
            return fullVersion;
        }

        public void setFullVersion(String fullVersion) {
            this.fullVersion = fullVersion;
        }

        public String getCityCode() {
            return cityCode;
        }

        public void setCityCode(String cityCode) {
            this.cityCode = cityCode;
        }

        public String getNfc_cardInfo() {
            return nfc_cardInfo;
        }

        public void setNfc_cardInfo(String nfc_cardInfo) {
            this.nfc_cardInfo = nfc_cardInfo;
        }

        public String getNfc_resultInfo() {
            return nfc_resultInfo;
        }

        public void setNfc_resultInfo(String nfc_resultInfo) {
            this.nfc_resultInfo = nfc_resultInfo;
        }

        public ArrayList<String> getNfc_commandResults() {
            return nfc_commandResults;
        }

        public void setNfc_commandResults(ArrayList<String> nfc_commandResults) {
            this.nfc_commandResults = nfc_commandResults;
        }

        @Override
        public String toString() {
            return "Data{" +
                    "qrCode='" + qrCode + '\'' +
                    ", name='" + name + '\'' +
                    ", idNum='" + idNum + '\'' +
                    ", userId='" + userId + '\'' +
                    ", mobile='" + mobile + '\'' +
                    ", avatar='" + avatar + '\'' +
                    ", alipayUid='" + alipayUid + '\'' +
                    ", code=" + code +
                    ", extInfo='" + extInfo + '\'' +
                    ", ftoken='" + ftoken + '\'' +
                    ", isvResult=" + isvResult +
                    ", subCode='" + subCode + '\'' +
                    ", subMessage='" + subMessage + '\'' +
                    ", vid='" + vid + '\'' +
                    ", originFaceInfo='" + originFaceInfo + '\'' +
                    ", signingOrganization='" + signingOrganization + '\'' +
                    ", address='" + address + '\'' +
                    ", nation='" + nation + '\'' +
                    ", sex='" + sex + '\'' +
                    ", beginTime='" + beginTime + '\'' +
                    ", endTime='" + endTime + '\'' +
                    ", birthDate='" + birthDate + '\'' +
                    ", photoBase64='" + photoBase64 + '\'' +
                    ", sn='" + sn + '\'' +
                    ", deviceModel='" + deviceModel + '\'' +
                    ", appVersion='" + appVersion + '\'' +
                    ", androidVersion='" + androidVersion + '\'' +
                    ", deviceIP='" + deviceIP + '\'' +
                    ", deviceDisplay='" + deviceDisplay + '\'' +
                    ", voiceContent='" + voiceContent + '\'' +
                    ", microphoneState=" + microphoneState +
                    ", microphoneListenerState=" + microphoneListenerState +
                    ", getSecondaryScreenState=" + getSecondaryScreenState +
                    '}';
        }
    }*/


    @Override
    public String toString() {
        return "AmpeAppletResultBean{" +
                "action='" + action + '\'' +
                ", event='" + event + '\'' +
                ", taskId='" + taskId + '\'' +
                ", success=" + success +
                ", message='" + message + '\'' +
                ", data=" + data +
                '}';
    }
}
