package com.lukouguoji.gjc.dialog

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

/**
 * 国际出港理货 - 删除申报对话框
 */
class IntExpTallyDeleteDialogModel(
    val changeReasonList: List<KeyValue>,    // 变更原因列表
    private val callback: (IntExpTallyDeleteDialogModel) -> Unit
) : BaseDialogModel<DialogIntExpTallyDeleteBinding>(DIALOG_TYPE_CENTER) {

    // 变更原因代码（存储的是 code）
    val changeReason = MutableLiveData("")

    // 联系人姓名
    val contactName = MutableLiveData("")

    // 联系人电话
    val contactPhone = MutableLiveData("")

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

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

    /**
     * 确认按钮点击
     */
    fun onConfirmClick() {
        // 验证变更原因
        if (changeReason.value.verifyNullOrEmpty("请选择变更原因")) {
            return
        }

        // 验证联系人姓名
        if (contactName.value.verifyNullOrEmpty("请输入联系人姓名")) {
            return
        }

        // 验证联系人电话
        if (contactPhone.value.verifyNullOrEmpty("请输入联系人电话")) {
            return
        }

        dismiss()
        callback(this)
    }
}
