package com.lukouguoji.gjc.dialog

import android.content.Context
import androidx.lifecycle.MutableLiveData
import com.lukouguoji.gjc.R
import com.lukouguoji.gjc.databinding.DialogIntExpMoveClearBinding
import com.lukouguoji.module_base.base.BaseDialogModel
import com.lukouguoji.module_base.ktx.verifyNullOrEmpty
import com.lukouguoji.module_base.util.DeviceUtil
import dev.utils.app.info.KeyValue

/**
 * 国际出港移库 - 清仓操作对话框
 * 手机为底部弹层（layout/ 变体），平板为居中弹框（layout-sw600dp/ 变体）
 */
class IntExpMoveClearDialogModel(
    private val callback: (IntExpMoveClearDialogModel) -> Unit
) : BaseDialogModel<DialogIntExpMoveClearBinding>(
    if (DeviceUtil.isPhone()) DIALOG_TYPE_BOTTOM else DIALOG_TYPE_CENTER
) {

    // 清仓正常（存储的是 code："0" 或 "1"）
    val clearNormal = MutableLiveData("")

    // 清仓正常选项列表
    val clearNormalList = MutableLiveData<List<KeyValue>>().apply {
        value = listOf(
            KeyValue("是", "1"),
            KeyValue("否", "0")
        )
    }

    override fun layoutId(): Int {
        return R.layout.dialog_int_exp_move_clear
    }

    override fun onDialogCreated(context: Context) {
        binding.model = this
    }

    /**
     * 保存按钮点击
     */
    fun onSaveClick() {
        if (clearNormal.value.verifyNullOrEmpty("请选择清仓正常")) {
            return
        }
        dismiss()
        callback(this)
    }
}
