pos_consts.py 20.2 KB

GZS_REASON_1 = '此申请有ASP产品,需人工核查'
GZS_REASON_2 = 'ASP购置税金额小于系统金额'

# license (license_en)
ID_EN = 'PRC ID'
PP_EN = 'Passport'
EEP_EN = 'Resident Permit to Mainland'
RP_EN = 'Resident ID'
BL_EN = 'Business permit'
SME_BL_EN = 'SME Business permit'
MVI_EN = 'newCar Invoice'
UCI_EN = 'usedCar Invoice'
MVC_EN = 'Green Book(1/2)'
MVC34_EN = 'Green Book(3/4)'
BC_EN = 'Bank Card'
DDA_EN = 'DDA'
HMH_EN = 'Mortgage Waiver Letter'
JYPZ_EN = 'Used Car Document'
AFC_CONTRACT_EN = 'AFC Contract'
BD_EN = 'Insurance'
BS_EN = 'Bank Statement'
HIL_CONTRACT_1_EN = '售后回租合同'
HIL_CONTRACT_2_EN = '车辆租赁抵押合同'
HIL_CONTRACT_3_EN = '车辆处置协议'

# 对应ocr_result 表中的字段
IC_OCR_FIELD = 'ic_ocr'
RP_OCR_FIELD = 'rp_ocr'
BL_OCR_FIELD = 'bl_ocr'
EEP_OCR_FIELD = 'eep_ocr'
DL_OCR_FIELD = 'dl_ocr'
PP_OCR_FIELD = 'pp_ocr'
MVC_OCR_FIELD = 'mvc_ocr'
MVI_OCR_FIELD = 'mvi_ocr'
BC_OCR_FIELD = 'bc_ocr'
UCI_OCR_FIELD = 'uci_ocr'
DDA_OCR_FIELD = 'bs_ocr'
HMH_OCR_FIELD = 'hmh_ocr'
JYPZ_OCR_FIELD = 'jypz_ocr'
HT_FIELD = 'ht_ocr'
BD_FIELD = 'bd_ocr'
BS_FIELD = 'bss_ocr'
HIL_CONTRACT_1_FIELD = 'hil_contract_1_ocr'
HIL_CONTRACT_2_FIELD = 'hil_contract_2_ocr'
HIL_CONTRACT_3_FIELD = 'hil_contract_3_ocr'

SE_AFC_CON_FIELD = ['合同编号-每页', '所购车辆价格-小写-重要条款', '车架号-重要条款', '贷款本金金额-重要条款', '贷款期限-重要条款',
                    '车辆贷款本金金额-重要条款', '附加产品融资贷款本金总额-重要条款', '所购车辆价格', '车架号', '经销商',
                    '贷款本金金额', '车辆贷款本金金额', '附加产品融资贷款本金总额', '贷款期限', '还款账号', '户名', '开户行',
                    '还款计划表', '见证人签字', '见证人日期', 'ASP项目详情-重要条款', '购置税校验', 'ASP项目详情',
                    '合同编号-每页(no-asp)', '无ASP产品']
# '承租人姓名', '承租人证件号码', '承租人法定代表人或授权代表'
SE_HIL_CON_1_FIELD = ['合同编号-每页', '车辆识别代码', '车辆卖方', '车辆原始销售价格', '融资成本总额', '租期',
                      '还款计划表', 'ASP项目详情', '购置税校验', '承租人法定代表人或授权代表', '还款账号', '户名', '开户行',
                      '共同承租人法定代表人或授权代表', '无ASP产品']

SE_HIL_CON_2_FIELD = ['合同编号', '车辆识别代码']

# 大陆二代身份证
ID_COMPARE_LOGIC = {
    'customerName': ('姓名', 'se_name_compare', {}, '身份证姓名与系统不一致'),
    'idNum': ('公民身份号码', 'se_common_compare', {}, '身份证号码与系统不一致'),
    'dateOfBirth': ('出生年月', 'se_date_compare', {'input_replace': ''}),
    'idExpiryDate': ('有效期限', 'se_date_compare_pos', {'long': True, 'ocr_split': True, 'input_replace': '', 'today': True}, {
        'N1': '身份证疑似过期',
        'N2': '身份证即将过期,请尽快提交放款申请'
    })
}


# 新车发票
# key: pos field
# value: (ocr_result中的映射key,比较方法, 选项, comments/reason)
MVI_COMPARE_LOGIC = {
    'firstSubmmisonDate': ('开票日期', 'se_date_compare_2', {'three_month': True}, '请确认发票开票日期,若发票开票日期早于首次提交审批日期则无法受理放款申请'),
    'productGroupName': ('productGroupName', 'se_common_compare', {}, '请确认是否提供发票'),
    'vinNo': ('车辆识别代码', 'se_common_compare', {}, '发票车架号与系统不一致'),
    'vehicleTransactionAmount': ('价税合计小写', 'se_amount_compare', {}, '发票车辆价格与系统不一致'),
    'customerName': ('购方名称', 'se_name_compare', {'is_passport': True, 'replace_kuohao': True}, '发票购买方姓名与系统不一致'),
    'idNum': ('购买方身份证号或组织机构代码', 'se_common_compare', {}, '发票购买方证件号码与系统不一致'),
    '发票联': ('发票联', 'se_common_compare', {}, '发票疑似非发票联'),
    '文档': ('发票联', 'se_have_compare', {}, '请确认是否提供发票'),
}

# 银行卡
BC_COMPARE_LOGIC = {
    'accountNo': ('CardNum', 'se_common_compare', {'remove_space': True}, '银行卡卡号与系统不一致'),
    'bankName': ('BankName', 'se_both_contain_compare', {}, '银行卡开户行与系统不一致'),
    'type': ('CardType', 'se_common_compare', {}, '银行卡非借记卡'),
    'bankVerificationStatus': ('CardType', 'se_have_compare', {}, '请确认是否提供银行卡'),
    '文档': ('文档', 'se_common_compare', {}, '请确认是否提供银行卡'),
}

# AFC 车辆抵押贷款合同(E-Contract-Non ASP/ASP)
HT_COMPARE_LOGIC = {
    '合同编号-每页': ('合同编号-每页', 'se_list_compare', {}, '合同编号与系统不一致'),
    # '合同编号-每页(no-asp)': ('合同编号-每页', 'se_list_compare', {'pop_last': True}, '合同编号与系统不一致'),
    '合同编号-每页(no-asp)': ('合同编号-每页', 'se_list_compare', {}, '合同编号与系统不一致'),
    '所购车辆价格-小写-重要条款': ('所购车辆价格-小写-重要条款', 'se_amount_str_compare', {}, '合同首页中车辆价格与系统不一致'),
    '车架号-重要条款': ('车架号-重要条款', 'se_common_compare', {}, '合同首页中车架号与系统不一致'),
    '贷款本金金额-重要条款': ('贷款本金金额-重要条款', 'se_amount_str_compare', {}, '合同首页中贷款本金与系统不一致'),
    '贷款期限-重要条款': ('贷款期限-重要条款', 'se_common_compare', {}, '合同首页中贷款期限与系统不一致'),
    '车辆贷款本金金额-重要条款': ('车辆贷款本金金额-重要条款', 'se_amount_str_compare', {}, '合同车辆贷款本金金额-重要条款'),
    '附加产品融资贷款本金总额-重要条款': ('附加产品融资贷款本金总额-重要条款', 'se_amount_str_compare', {}, '合同首页中附加产品融资金额与系统不一致'),
    '所购车辆价格': ('所购车辆价格', 'se_amount_str_compare', {}, '主合同页中车辆价格与系统不一致'),
    '车架号': ('车架号', 'se_common_compare', {}, '主合同页中车架号与系统不一致'),
    '经销商': ('经销商', 'se_common_compare', {}, '主合同页中经销商与系统不一致'),
    '贷款本金金额': ('贷款本金金额', 'se_amount_str_compare', {}, '主合同页中贷款本金金额与系统不一致'),
    '车辆贷款本金金额': ('车辆贷款本金金额', 'se_amount_str_compare', {}, '主合同页中车辆贷款本金金额与系统不一致'),
    '附加产品融资贷款本金总额': ('附加产品融资贷款本金总额', 'se_amount_str_compare', {}, '主合同页中附加产品融资贷款本金总额与系统不一致'),
    '贷款期限': ('贷款期限', 'se_common_compare', {}, '主合同页中贷款期限与系统不一致'),
    '还款账号': ('还款账号', 'se_common_compare', {'remove_space': True}, '主合同页中还款账号与系统不一致'),
    '户名': ('户名', 'se_common_compare', {}, '主合同页中户名与系统不一致'),
    '开户行': ('开户行', 'se_both_contain_compare', {}, '主合同页中开户行与系统不一致'),

    '借款人签字及时间': ('借款人签字及时间', 'se_both_contain_compare', {}, '合同首页签字项与系统不一致'),
    '借款人姓名': ('借款人姓名', 'se_common_compare', {}, '主合同主借人姓名与系统不一致'),
    '借款人证件号': ('借款人证件号', 'se_common_compare', {}, '主合同主借人证件号码与系统不一致'),
    '共借人姓名': ('共借人姓名', 'se_common_compare', {}, '主合同共借人姓名与系统不一致'),
    '共借人&抵押人姓名': ('共借人姓名', 'se_common_compare', {}, '主合同共借人&抵押人姓名与系统不一致'),
    '共借人证件号': ('共借人证件号', 'se_common_compare', {}, '主合同共借人证件号码与系统不一致'),
    '共借人&抵押人证件号': ('共借人证件号', 'se_common_compare', {}, '主合同共借人&抵押人证件号与系统不一致'),
    '保证人姓名1': ('保证人姓名1', 'se_common_compare', {}, '主合同担保人1姓名与系统不一致'),
    '保证人证件号1': ('保证人证件号1', 'se_common_compare', {}, '主合同担保人1证件号码与系统不一致'),
    '保证人姓名2': ('保证人姓名2', 'se_common_compare', {}, '主合同担保人2姓名与系统不一致'),
    '保证人证件号2': ('保证人证件号2', 'se_common_compare', {}, '主合同担保人2证件号码与系统不一致'),

    '主借人签字': ('主借人签字', 'se_common_compare', {}, '合同主借款人签字与系统不一致'),
    '主借人日期': ('主借人日期', 'se_have_compare', {}, '合同主借款人签字日期无'),
    '共借人签字': ('共借人签字', 'se_common_compare', {}, '合同共借人签字与系统不一致'),
    '共借人日期': ('共借人日期', 'se_have_compare', {}, '合同共借人签字日期无'),
    '保证人签字1': ('保证人签字1', 'se_common_compare', {}, '合同担保人1签字与系统不一致'),
    '保证人日期1': ('保证人日期1', 'se_have_compare', {}, '合同担保人1签字日期无'),
    '保证人签字2': ('保证人签字2', 'se_common_compare', {}, '合同担保人2签字与系统不一致'),
    '保证人日期2': ('保证人日期2', 'se_have_compare', {}, '合同担保人2签字日期无'),

    '见证人签字': ('见证人签字', 'se_have_compare', {}, '合同见证人无'),
    '见证人日期': ('见证人日期', 'se_date_contain_compare', {}, '合同见证人签字日期不符合逻辑'),

    '还款计划表': ('还款计划表', 'se_schedule_compare', {"value_idx": 1}, '合同还款计划表与系统不一致'),

    'ASP项目详情-重要条款': ('ASP项目详情-重要条款', 'se_asp_compare', {}, '合同(重要条款)ASP名称或者金额与系统不一致'),
    'ASP项目详情': ('ASP项目详情', 'se_asp_compare', {}, '合同ASP名称或者金额与系统不一致'),

    '购置税校验': ('购置税校验', 'se_self_compare_gzs', {}, GZS_REASON_2),
    '无ASP产品': ('无ASP产品', 'se_self_compare_other_asp', {}, GZS_REASON_1),
    '文档': ('文档', 'se_common_compare', {}, '请确认是否已完成车辆抵押贷款合同签署'),
}

# 售后回租合同(E-Sign-SLB / OC)
HIL_CONTRACT_1_COMPARE_LOGIC = {
    '合同编号-每页': ('合同编号-每页', 'se_list_compare', {}, '售后回租合同中合同编号系统不一致'),
    '合同编号-正文': ('合同编号-正文', 'se_common_compare', {}, '售后回租合同正文中合同编号系统不一致'),
    '车辆识别代码': ('车辆识别代码', 'se_common_compare', {}, '售后回租合同车辆识别代码与系统车架号不一致'),
    '车辆卖方': ('车辆卖方', 'se_common_compare', {}, '售后回租合同车辆卖方与系统经销商不一致'),
    '车辆原始销售价格': ('车辆原始销售价格', 'se_amount_str_compare', {}, '售后回租合同车辆原始销售价格与系统车辆价格不一致'),
    '融资成本总额': ('融资成本总额', 'se_amount_str_compare', {}, '售后回租合同融资成本总额与系统不一致'),
    '租期': ('租期', 'se_contain_compare', {}, '售后回租合同首页中贷款期限系统不一致'),
    '还款计划表': ('还款计划表', 'se_schedule_compare', {"value_idx": 1}, '售后回租合同还款计划表与系统不一致'),
    'ASP项目详情': ('ASP项目详情', 'se_asp_compare', {}, '售后回租合同ASP名称或者金额与系统不一致'),
    '承租人法定代表人或授权代表': ('承租人法定代表人或授权代表', 'se_name_compare', {}, '售后回租合同承租人法定代表人或授权代表与系统不一致'),
    '共同承租人法定代表人或授权代表': ('共同承租人法定代表人或授权代表', 'se_name_compare', {}, '售后回租合同共同承租人法定代表人或授权代表与系统不一致'),
    '还款账号': ('还款账号', 'se_common_compare', {'remove_space': True}, '售后回租合同还款账号与系统不一致'),
    '户名': ('户名', 'se_common_compare', {}, '售后回租合同户名与系统不一致'),
    '开户行': ('开户行', 'se_both_contain_compare', {}, '售后回租合同开户行与系统不一致'),

    '承租人姓名': ('承租人姓名', 'se_name_compare', {}, '售后回租合同承租人姓名与系统不一致'),
    '承租人证件号': ('承租人证件号', 'se_common_compare', {}, '售后回租合同承租人证件号与系统不一致'),
    '承租人签字': ('承租人签字', 'se_contain_compare', {}, '售后回租合同承租人签字与系统不一致'),

    '共同承租人姓名': ('共同承租人姓名', 'se_name_compare', {}, '售后回租合同共同承租人姓名与系统不一致'),
    '共同承租人&抵押人姓名': ('共同承租人&抵押人姓名', 'se_name_compare', {}, '售后回租合同共同承租人&抵押人姓名与系统不一致'),
    '共同承租人证件号': ('共同承租人证件号', 'se_common_compare', {}, '售后回租合同共同承租人证件号与系统不一致'),
    '共同承租人&抵押人证件号': ('共同承租人&抵押人证件号', 'se_common_compare', {}, '售后回租合同共同承租人&抵押人证件号与系统不一致'),
    '共同承租人签字': ('共同承租人签字', 'se_contain_compare', {}, '售后回租合同共同承租人签字与系统不一致'),

    '保证人姓名1': ('保证人姓名1', 'se_name_compare', {}, '售后回租合同保证人姓名1与系统不一致'),
    '保证人证件号1': ('保证人证件号1', 'se_common_compare', {}, '售后回租合同保证人证件号1与系统不一致'),
    '保证人签字1': ('保证人签字1', 'se_contain_compare', {}, '售后回租合同保证人签字1与系统不一致'),

    '保证人姓名2': ('保证人姓名2', 'se_name_compare', {}, '售后回租合同保证人姓名2与系统不一致'),
    '保证人证件号2': ('保证人证件号2', 'se_common_compare', {}, '售后回租合同保证人证件号2与系统不一致'),
    '保证人签字2': ('保证人签字2', 'se_contain_compare', {}, '售后回租合同保证人签字2与系统不一致'),

    '购置税校验': ('购置税校验', 'se_self_compare_gzs', {}, GZS_REASON_2),
    '无ASP产品': ('无ASP产品', 'se_self_compare_other_asp', {}, GZS_REASON_1),
    '文档': ('文档', 'se_common_compare', {}, '请确认是否已完成售后回租合同签署'),
}

# 车辆租赁抵押合同(E-Sign-SLB / OC)
HIL_CONTRACT_2_COMPARE_LOGIC = {
    '合同编号': ('合同编号', 'se_common_compare', {}, '车辆租赁抵押合同合同编号与系统合同编号不一致'),
    '合同编号-正文': ('合同编号-正文', 'se_common_compare', {}, '车辆租赁抵押合同正文合同编号与系统合同编号不一致'),
    '车辆识别代码': ('车辆识别代码', 'se_common_compare', {}, '车辆租赁抵押合同车辆识别代码与系统车架号不一致'),
    '租金总额': ('租金总额', 'se_amount_str_compare', {}, '车辆租赁抵押合同租金总额与系统租金总额不一致'),
    '融资租赁期限': ('融资租赁期限', 'se_common_compare', {}, '车辆租赁抵押合同融资租赁期限与系统不一致'),
    '抵押人': ('抵押人', 'se_name_compare', {}, '车辆租赁抵押合同抵押人姓名与系统不一致'),
    '抵押人证件号码': ('抵押人证件号码', 'se_common_compare', {}, '车辆租赁抵押合同抵押人证件号码与系统不一致'),
    '抵押人签字': ('抵押人签字', 'se_contain_compare', {}, '车辆租赁抵押合同抵押人签字与系统承租人姓名不一致'),
    '抵押人配偶': ('抵押人配偶', 'se_name_compare', {}, '车辆租赁抵押合同抵押人配偶姓名与系统不一致'),
    '抵押人配偶证件号码': ('抵押人配偶证件号码', 'se_common_compare', {}, '车辆租赁抵押合同抵押人配偶证件号码与系统不一致'),
    '抵押人配偶签字': ('抵押人配偶签字', 'se_contain_compare', {}, '车辆租赁抵押合同抵押人签字与系统承租人配偶姓名不一致'),
    '文档': ('文档', 'se_common_compare', {}, '请确认是否已完成车辆租赁抵押合同签署'),
}

# 抵押登记豁免函
HMH_COMPARE_LOGIC = {
    '借款人/承租人姓名': ('借款/承租人姓名', 'se_name_compare', {}, '抵押登记豁免函借款人/承租人姓名与系统不符'),
    '借款人/承租人证件号': ('证件号码', 'se_common_compare', {}, '抵押登记豁免函借款人/承租人证件号码与系统不符'),
    '申请号': ('合同编号', 'se_common_compare', {}, '抵押登记豁免函申请号与系统不符'),
    '渠道': ('渠道', 'se_channel_compare', {}, '抵押登记豁免函渠道与系统不符'),
    '签字': ('借款人签字/盖章', 'se_have_compare', {}, '抵押登记豁免函签字需人工核查'),
    '文档': ('文档', 'se_common_compare', {}, '请确认是否已完成抵押登记豁免函签署')
}

# 保单
BD_COMPARE_LOGIC = {
    '被保险人姓名': ('被保险人姓名', 'super_list_compare', {'method': 'name'}, '保单被保险人姓名与系统不一致'),
    '被保险人证件号码': ('被保险人证件号码', 'super_list_compare', {'method': 'common', 'is_bd_id': True}, '保单身份证号需人工核查'),
    '车架号': ('车架号', 'se_common_compare', {}, '保单车架号与系统不一致'),
    '机动车损失保险金额': ('机动车损失保险金额', 'se_amount_lte_compare', {}, '保单车损险异常'),
    '第三者责任保险金额': ('机动车第三者责任保险金额', 'se_amount_lte_compare', {}, '保单三者险异常'),
    '绝对免赔率': ('机动车损失保险绝对免赔率/绝对免赔额', 'se_one_compare', {}, '保单无绝对免赔项'),
    '保险起始日期': ('保险起始日期', 'se_bd_date_compare', {'start': True}, '保单起始时间有误'),
    '保险截止日期': ('保险截止日期', 'se_bd_date_compare', {}, '保单截止时间有误'),
    '保单章': ('保单章', 'se_common_compare', {}, '保单无保单章'),
    '第一受益人': ('特别约定第一受益人', 'se_common_compare', {}, '保单第一受益人需人工核查'),
    '保险费合计': ('保险费合计', 'se_amount_lte_compare', {}, '保单保费疑似无法覆盖ASP保险融资'),
    '文档': ('文档', 'se_common_compare', {}, '请确认是否提供保单')
}


SE_COMPARE_FIELD = {
    ID_EN: (IC_OCR_FIELD, ID_COMPARE_LOGIC, True),
    MVI_EN: (MVI_OCR_FIELD, MVI_COMPARE_LOGIC, False),
    BC_EN: (BC_OCR_FIELD, BC_COMPARE_LOGIC, False),
    HMH_EN: (HMH_OCR_FIELD, HMH_COMPARE_LOGIC, False),
    AFC_CONTRACT_EN: (HT_FIELD, HT_COMPARE_LOGIC, False),
    BD_EN: (BD_FIELD, BD_COMPARE_LOGIC, False),
    HIL_CONTRACT_1_EN: (HIL_CONTRACT_1_FIELD, HIL_CONTRACT_1_COMPARE_LOGIC, False),
    HIL_CONTRACT_2_EN: (HIL_CONTRACT_2_FIELD, HIL_CONTRACT_2_COMPARE_LOGIC, False)
}


OCR_COMPARE_COMMENT = {
    ID_EN: {
        'idExpiryDate': '身份证疑似过期',
        'customerName': '身份证姓名与系统不一致',
        'idNum': '身份证号码与系统不一致',
        'other': '请确认是否提供身份证件'
    },
    MVI_EN: {
        'firstSubmmisonDate': '请确认发票开票日期,若发票开票日期早于首次提交审批日期则无法受理放款申请',
        'customerName': '发票购买方姓名与系统不一致',
        'idNum': '发票购买方证件号码与系统不一致',
        'vinNo': '发票车架号与系统不一致',
        'vehicleTransactionAmount': '发票车辆价格与系统不一致',
        'productGroupName': '请确认是否提供发票'
    },
    BC_EN: {
        'bankName': '银行卡开户行与系统不一致',
        'accountNo': '银行卡卡号与系统不一致',
        'bankVerificationStatus': '请确认是否提供银行卡'
    },
    AFC_CONTRACT_EN: {
        'applicationId & applicationVersion': '',
        'service': '',
        'amount': '',
        'financedAmount': '',
        'associatedServicePrincipal': '',
        'vinNo': '',
        'accountNo': '',
        'accountHolderName': '',
        'bankName': '',
        'term': '',
        'applicationEntity': ''
    },
    HIL_CONTRACT_1_EN: {

    },
    HIL_CONTRACT_2_EN: {

    },
    BD_EN: {
        '': ''
    }
}