package com.sptg.video.cloud.api.beans;

import com.sptg.video.cloud.api.entity.VCAccount;
import lombok.Getter;
import lombok.Setter;

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

/**
 * @author zwx
 * @create 2020/10/17 9:03
 * 所有接口的返回值
 */
@Setter
@Getter
public class ApiResultBean<T> implements Serializable{

    /**
     * 返回编码
     */
    private String returnCode;

    /**
     * 返回信息
     */
    private  String msg;

    /**
     * 返回子编码
     */
    private String subCode;

    /**
     * 返回子信息
     */
    private String subMsg;

    /**
     * api方法名
     */
    private String apiMethod;

    /**
     * 签名错误码
     */
    private String errorCode;

    /**
     * 签名提交请求信息
     */
    private String body;

    //------------------------各接口返回的业务信息------------------------

    /**
     * 登录接口返回
     */
    private String token;

    /**
     * 以下接口返回
     * 1、设备列表
     * 2、录像信息
     */
    private PageInfo<T> pageInfo;

    /**
     * 其他接口结果信息
     */
    private T result;

    /**
     * RTSP播放地址
     * 获取设备播放地址接口才返回
     */
    private String rtspUrl;

    /**
     * 部分接口返回的列表信息
     */
    private List<T> listInfo;

    /**
     * 用户信息
     */
    private VCAccount account;

}
