package com.lukouguoji.module_base.bean

import androidx.databinding.BaseObservable
import androidx.databinding.ObservableBoolean
import com.lukouguoji.module_base.interfaces.ICheck

class GjjManifestBean(
    var agent: String = "",
    var agentName: String? = "",
    var awbType: String = "",
    var awbpc: Int = 0,
    var businessType: String? = "",
    var businessName: String? = "",
    var cargoType: String? = "",
    var cashWeight: String? = "",
    var cneeCode: String? = "",
    var cneeId: String? = "",
    var cneeTel: String? = "",
    var code: String? = "",
    var consignee: String? = "",
    var createdAt: String? = "",
    var createdBy: String? = "",
    var dep: String? = "",
    var desc: String? = "",
    var dest: String = "",
    var edep: String? = "",
    var edest1: String? = "",
    var edest2: String? = "",
    var efDate: String? = "",
    var efNo: String? = "",
    var exno: String = "",
    var extra: String? = "",
    var fdate: String? = "",
    var fdep: String? = "",
    var fdest: String? = "",
    var fid: Int = 0,
    var fno: String? = "",
    var goods: String = "",
    var goodsCn: String? = "",
    var hno: String? = "",
    var id: String? = "",
    var isEdiAwb: String? = "",
    var istally: String? = "",
    var locFlag: String? = "",
    var locFlagMft: String? = "",
    var location: String? = "",
    var locationMft: String? = "",
    var mfId: String = "",
    var mobiletally: String? = "",
    var name: String? = "",
    var no: String = "",
    var opDate: String? = "",
    var opId: String? = "",
    var opname: String? = "",
    var organizationCode: String? = "",
    var origin: String = "",
    var packagecode: String? = "",
    var pc: Int = 0,
    var planpc: String? = "",
    var planvolume: String? = "",
    var planweight: String? = "",
    var prefix: String = "",
    var ref: String = "",
    var remark: String? = "",
    var spCode: String = "",
    var splitFlag: String? = "",
    var subCode: String? = "",
    var tallydate: String? = "",
    var tallyid: String? = "",
    var tallyname: String? = "",
    var updatedAt: String? = "",
    var updatedBy: String? = "",
    var volume: String = "",
    var wbNo: String = "",
    var weight: String = "",
    var storageTime: String = "",
    var whslocation: String? = "",
    var pic: String = "",
    var originalPic: String = "",
    var picNumber: String = ""
) : BaseObservable(), ICheck {

    // 展示逻辑
    val show = ObservableBoolean(false)

    // 选中事件
    val checked = ObservableBoolean(false)

    override fun getCheckObservable() = checked

    // 获取运单号
    fun getWaybillCode() = "$prefix$no"

    // 获取ULD描述
    fun getUldDesc() = "$dep-$dest"
}