package com.yidian.bcommon.http.bean

import com.google.gson.annotations.SerializedName
import java.io.Serializable

/**
 * TowerPro的配置信息
 *
 * author: yinjiacheng
 * date: 7/12/21 10:10 PM
 * description: open-tower-api.go2yd.com/api/resource
 */
class GetCommonConfigBean {

  data class GetCommonConfigResponse(
    @SerializedName("appid")
    val appid: String,
    @SerializedName("created_at")
    val createdAt: String,
    @SerializedName("creator")
    val creator: String,
    @SerializedName("data")
    val `data`: Data,
    @SerializedName("env")
    val env: Int,
    @SerializedName("_id")
    val id: String,
    @SerializedName("keyTag")
    val keyTag: String,
    @SerializedName("note")
    val note: String,
    @SerializedName("os")
    val os: Int,
    @SerializedName("status")
    val status: String,
    @SerializedName("uniqueKey")
    val uniqueKey: String,
    @SerializedName("updated_at")
    val updatedAt: String,
    @SerializedName("version")
    val version: String
  ) : Serializable

  data class Data(
    @SerializedName("is_show_app_upgrade")
    val isShowAppUpgrade: Int,
    @SerializedName("is_show_feedback")
    val isShowFeedback: Int,
    @SerializedName("merchant_manager_center")
    val merchantManagerCenter: MerchantManagerCenter
  ) : Serializable

  data class MerchantManagerCenter(
    @SerializedName("disable_text")
    val disableText: String,
    @SerializedName("disable_url")
    val disableUrl: String,
    @SerializedName("items")
    val items: List<Item>,
    @SerializedName("show")
    val show: Int,
    @SerializedName("is_show_wallet")
    val isShowWallet: Int
  ) : Serializable

  data class Item(
    @SerializedName("functions")
    val functions: List<Function>,
    @SerializedName("group_id")
    val groupId: Int,
    @SerializedName("group_name")
    val groupName: String,
    @SerializedName("show")
    val show: Int
  ) : Serializable

  data class Function(
    @SerializedName("function_id")
    val functionId: Int,
    @SerializedName("function_name")
    val functionName: String,
    @SerializedName("icon_url")
    val iconUrl: String,
    @SerializedName("link_url")
    val linkUrl: String,
    @SerializedName("show")
    val show: Int
  ) : Serializable

}
