package com.dahe.gldriver.bean

/**
 * @ClassName OcrBean
 * @Author john
 * @Date 2024/2/27 09:58
 * @Description TODO
 */
data class OcrPersonBean(
    val algo_version: String,
    val `data`: Data,
    val height: Int,
    val orgHeight: Int,
    val orgWidth: Int,
    val width: Int
)

data class Data(
    val face: Face,
    val back: Back,

    //银行卡
    val bankName: String,
    val cardNumber: String,

    //营业执照
    val creditCode: String,//信用代码
    val companyName: String,//名称
    val companyType: String,//类型
    val businessAddress: String,
    val legalPerson: String,
    val businessScope: String,
    val registeredCapital: String,//注册资本
    val RegistrationDate: String,//成立日期2014年01月07日
    val validFromDate: String,//20140107
    val validToDate: String,
    val issueDate: String


)


data class Back(
    val `data`: DataX
)

data class Face(
    val algo_version: String,
    val angle: Int,
    val `data`: DataX,
    val ftype: Int,
    val height: Int,
    val orgHeight: Int,
    val orgWidth: Int,
    val prism_keyValueInfo: List<PrismKeyValueInfo>,
    val sliceRect: SliceRect,
    val width: Int,


    )

data class DataX(
    val address: String = "",
    val birthDate: String = "",
    val ethnicity: String = "",
    val idNumber: String = "",
    val name: String = "",
    val sex: String = "",
    val issueAuthority: String = "",//哈尔滨市公安局呼兰分局
    val validPeriod: String = "",//2012.07.17-2032.07.17

    //驾驶证
    val licenseNumber: String = "",
    val nationality: String = "",
    val initialIssueDate: String = "",
    val approvedType: String = "",
    val validFromDate: String = "",

    //行驶证
    val model: String = "",
    val owner: String = "",
    val licensePlateNumber: String = "",
    val registrationDate: String = "",
    val useNature: String = "",//使用性质
    val vehicleType: String = "",
    val vinCode: String = "",
    val recordNumber: String = "",//档案编号
    val passengerCapacity: String = "",
    val curbWeight: String = "",//整备质量
    val totalWeight: String = "",//总质量
    val permittedWeight: String = "",//核定载质量
    val tractionWeight: String = "",//准牵引总质量
    val overallDimension: String = "",//6915×2550×3960mm
    val plateColorCode: String = "",//车牌颜色
    val inspectionRecord: String = "",//检验有效期至2023年06月吉J 有效期
    val issueDate: String = "",//发证日期
    val energySign: String = "",//能源类型
)

data class PrismKeyValueInfo(
    val key: String,
    val keyProb: Int,
    val value: String,
    val valuePos: List<ValuePo>,
    val valueProb: Int
)

data class SliceRect(
    val x0: Int,
    val x1: Int,
    val x2: Int,
    val x3: Int,
    val y0: Int,
    val y1: Int,
    val y2: Int,
    val y3: Int
)

data class ValuePo(
    val x: Int,
    val y: Int
)