package com.lukouguoji.module_base.bean

import androidx.databinding.ObservableBoolean

/**
 * 国际进港航空舱单（包含主单和分单）
 */
data class GjjAirManifest(
    // 主单原始舱单
    var maWb: GjjImportManifest? = null,
    // 分单原始舱单列表
    var haWbList: List<GjjImportManifest>? = null
) {
    // ========== UI扩展字段 ==========
    // 选中状态（用于列表多选）
    val checked: ObservableBoolean = ObservableBoolean(false)

    // 展开/收起状态（用于子列表显示控制）
    @Transient
    val showMore: ObservableBoolean = ObservableBoolean(false)

    // 兼容现有API的isSelected属性
    var isSelected: Boolean
        get() = checked.get()
        set(value) = checked.set(value)

    /**
     * 获取主单用于显示
     */
    fun getMainManifest(): GjjImportManifest {
        return maWb ?: GjjImportManifest()
    }
}
