package com.xyzshell.andinfo.models

import com.google.gson.annotations.SerializedName

/**
 * 设备信息上传请求数据模型
 */
data class DeviceInfoRequest(
    @SerializedName("cpuInfo")
    val cpuInfo: String,

    @SerializedName("gpuInfo")
    val gpuInfo: String,

    @SerializedName("screenInfo")
    val screenInfo: String,

    @SerializedName("memoryInfo")
    val memoryInfo: String,

    @SerializedName("diskInfo")
    val diskInfo: String,

    @SerializedName("networkInfo")
    val networkInfo: String,

    @SerializedName("batteryInfo")
    val batteryInfo: String,

    @SerializedName("deviceInfo")
    val deviceInfo: String,

    @SerializedName("appInfo")
    val appInfo: String,

    @SerializedName("systemInfo")
    val systemInfo: String,

    @SerializedName("locationInfo")
    val locationInfo: String,

    @SerializedName("cameraInfo")
    val cameraInfo: String,

    @SerializedName("sensorInfo")
    val sensorInfo: String,

    @SerializedName("propsInfo")
    val propsInfo: String,

    @SerializedName("bluetoothInfo")
    val bluetoothInfo: String,

    @SerializedName("wifiInfo")
    val wifiInfo: String,

    @SerializedName("nfcInfo")
    val nfcInfo: String,

    @SerializedName("usbInfo")
    val usbInfo: String,

    @SerializedName("buildInfo")
    val buildInfo: String,

    @SerializedName("deviceId")
    val deviceId: String,

    @SerializedName("deviceName")
    val deviceName: String,

    @SerializedName("drmInfo")
    val drmInfo: String,

    @SerializedName("inputInfo")
    val inputInfo: String,

    @SerializedName("gaid")
    val gaid: String
)

/**
 * 加密请求数据模型
 */
data class EncryptedRequest(
    @SerializedName("encrypted")
    val encrypted: String
)

/**
 * API 响应数据模型
 */
data class ApiResponse(
    @SerializedName("data")
    val data: Any?,

    @SerializedName("message")
    val message: String,

    @SerializedName("status")
    val status: String  // "Success" 或 "Fail"
) {
    /**
     * 判断请求是否成功
     */
    fun isSuccess(): Boolean = status == "Success"
}

