part 1
Showing
3 changed files
with
70 additions
and
10 deletions
... | @@ -1021,6 +1021,8 @@ JYPZ_FIELD_ORDER = (("type", "标题"), | ... | @@ -1021,6 +1021,8 @@ JYPZ_FIELD_ORDER = (("type", "标题"), |
1021 | CONTRACT_CN_NAME = '合同' | 1021 | CONTRACT_CN_NAME = '合同' |
1022 | CONTRACT_CLASSIFY = 41 | 1022 | CONTRACT_CLASSIFY = 41 |
1023 | 1023 | ||
1024 | # 合同编号: 每页 | ||
1025 | |||
1024 | HIL_CONTRACT_1_CN_NAME = '售后回租合同' | 1026 | HIL_CONTRACT_1_CN_NAME = '售后回租合同' |
1025 | HIL_CONTRACT_1_CLASSIFY = 43 | 1027 | HIL_CONTRACT_1_CLASSIFY = 43 |
1026 | 1028 | ||
... | @@ -1379,15 +1381,49 @@ SE_CORPORATE_ALL_FIELD = ['companyName', 'legalRepName', 'firstIdNo', 'businessL | ... | @@ -1379,15 +1381,49 @@ SE_CORPORATE_ALL_FIELD = ['companyName', 'legalRepName', 'firstIdNo', 'businessL |
1379 | 'taxRegistrationCertificateNo', 'establishmentDate', 'businessLicenseDueDate'] | 1381 | 'taxRegistrationCertificateNo', 'establishmentDate', 'businessLicenseDueDate'] |
1380 | SE_NEW_FIELD = ['vinNo', 'dealer', 'vehicleTransactionAmount'] | 1382 | SE_NEW_FIELD = ['vinNo', 'dealer', 'vehicleTransactionAmount'] |
1381 | SE_USED_FIELD = ['vinNo', 'vehicleTransactionAmount'] | 1383 | SE_USED_FIELD = ['vinNo', 'vehicleTransactionAmount'] |
1382 | SE_NEW_ADD_FIELD = ['customerName', 'idNum', 'dateOfInvoice', 'stamp'] | 1384 | SE_NEW_ADD_FIELD = ['customerName', 'idNum', 'dateOfInvoice', 'stamp', '发票联', '发票真伪校验'] |
1385 | SE_FPL_VALUE = '发票联' | ||
1383 | SE_STAMP_VALUE = '有' | 1386 | SE_STAMP_VALUE = '有' |
1384 | SE_GB_NEW_FIELD = ['vinNo'] | 1387 | SE_GB_NEW_FIELD = ['vinNo'] |
1385 | SE_GB_USED_FIELD = ['customerName', 'idNum', 'date'] | 1388 | SE_GB_USED_FIELD = ['customerName', 'idNum', 'date'] |
1386 | SE_HMH_FIELD = ['customerName', 'idNum', 'applicationId'] | 1389 | SE_HMH_FIELD = ['借款人/承租人姓名', '借款人/承租人证件号', '申请号', '渠道', '签字'] |
1387 | 1390 | ||
1388 | SE_BANK_FIELD = ['accountNo', 'bankName'] | 1391 | SE_BANK_FIELD = ['accountNo', 'bankName'] |
1389 | SE_DDA_FIELD = ['applicationId(1)', 'applicationId(2)', 'bankName', 'companyName', 'customerName', 'idNum', 'accountHolderName', 'accountNo'] | 1392 | SE_DDA_FIELD = ['applicationId(1)', 'applicationId(2)', 'bankName', 'companyName', 'customerName', 'idNum', 'accountHolderName', 'accountNo'] |
1390 | 1393 | ||
1394 | SE_AFC_CON_FIELD = ['合同编号-每页', '所购车辆价格-小写-重要条款', '车架号-重要条款', '贷款本金金额-重要条款', '贷款期限-重要条款', | ||
1395 | '车辆贷款本金金额-重要条款', '附加产品融资贷款本金总额-重要条款', '所购车辆价格', '车架号', '经销商', | ||
1396 | '贷款本金金额', '车辆贷款本金金额', '附加产品融资贷款本金总额', '贷款期限', '还款账号', '户名', '开户行', | ||
1397 | '还款计划表', '项目1', '用途总金额', '贷款本金', '附加产品融资贷款本金总金额', '购置税校验'] | ||
1398 | # | ||
1399 | # '借款人签字-重要条款' | ||
1400 | # '借款人姓名' | ||
1401 | # '借款人证件号' | ||
1402 | # '主借人签字' | ||
1403 | # '主借人日期' | ||
1404 | # | ||
1405 | # '共借人姓名' | ||
1406 | # '共借人证件号' | ||
1407 | # '共借人签字' | ||
1408 | # '共借人日期' | ||
1409 | # | ||
1410 | # '保证人姓名1' | ||
1411 | # '保证人证件号1' | ||
1412 | # '保证人签字1' | ||
1413 | # '保证人日期' | ||
1414 | # | ||
1415 | # '保证人姓名2' | ||
1416 | # '保证人证件号2' | ||
1417 | # '保证人签字2' | ||
1418 | # '保证人日期' | ||
1419 | # | ||
1420 | # '见证人签字' | ||
1421 | # '见证人日期' | ||
1422 | |||
1423 | GZS_NAME = '车辆购置税' | ||
1424 | GZS_STATUS = ['Y', 'N', 'O'] | ||
1425 | SCHEDULE_SPLIT_STR = '、' | ||
1426 | |||
1391 | HIL_COMPANY_NAME = '先锋国际融资租赁有限公司' | 1427 | HIL_COMPANY_NAME = '先锋国际融资租赁有限公司' |
1392 | AFC_COMPANY_NAME = '宝马汽车金融(中国)有限公司' | 1428 | AFC_COMPANY_NAME = '宝马汽车金融(中国)有限公司' |
1393 | 1429 | ||
... | @@ -1404,6 +1440,7 @@ BC_EN = 'Bank Card' | ... | @@ -1404,6 +1440,7 @@ BC_EN = 'Bank Card' |
1404 | DDA_EN = 'DDA' | 1440 | DDA_EN = 'DDA' |
1405 | HMH_EN = 'Mortgage Waiver Letter' | 1441 | HMH_EN = 'Mortgage Waiver Letter' |
1406 | JYPZ_EN = 'Used Car Document' | 1442 | JYPZ_EN = 'Used Car Document' |
1443 | AFC_CONTRACT_EN = 'AFC Contract' | ||
1407 | 1444 | ||
1408 | SKIP_CARD = {ID_EN, RP_EN} | 1445 | SKIP_CARD = {ID_EN, RP_EN} |
1409 | 1446 | ||
... | @@ -1411,10 +1448,11 @@ SKIP_CARD = {ID_EN, RP_EN} | ... | @@ -1411,10 +1448,11 @@ SKIP_CARD = {ID_EN, RP_EN} |
1411 | ID_COMPARE_LOGIC = { | 1448 | ID_COMPARE_LOGIC = { |
1412 | 'customerName': ('姓名', 'se_name_compare', {}), | 1449 | 'customerName': ('姓名', 'se_name_compare', {}), |
1413 | 'idNum': ('公民身份号码', 'se_common_compare', {}), | 1450 | 'idNum': ('公民身份号码', 'se_common_compare', {}), |
1414 | 'dateOfBirth': ('出生年月', 'se_date_compare', {'input_replace': ''}), | 1451 | # 'dateOfBirth': ('出生年月', 'se_date_compare', {'input_replace': ''}), |
1415 | 'idExpiryDate': ('有效期限', 'se_date_compare', {'long': True, 'ocr_split': True, 'input_replace': '', 'today': True}), | 1452 | 'idExpiryDate': ('有效期限', 'se_date_compare', {'long': True, 'ocr_split': True, 'input_replace': '', 'today': True}), |
1416 | 'hukouProvince': ('住址', 'se_contain_compare', {}), | 1453 | 'hukouProvince': ('住址', 'se_contain_compare', {}), |
1417 | 'hukouCity': ('住址', 'se_contain_compare', {}), | 1454 | 'hukouCity': ('住址', 'se_contain_compare', {}), |
1455 | IC_TURE_OR_FALSE: (IC_TURE_OR_FALSE, 'se_common_compare', {}), | ||
1418 | } | 1456 | } |
1419 | 1457 | ||
1420 | PP_COMPARE_LOGIC = { | 1458 | PP_COMPARE_LOGIC = { |
... | @@ -1463,13 +1501,20 @@ BL_COMPARE_LOGIC = { | ... | @@ -1463,13 +1501,20 @@ BL_COMPARE_LOGIC = { |
1463 | 1501 | ||
1464 | MVI_COMPARE_LOGIC = { | 1502 | MVI_COMPARE_LOGIC = { |
1465 | 'vinNo': ('车辆识别代码', 'se_common_compare', {}), | 1503 | 'vinNo': ('车辆识别代码', 'se_common_compare', {}), |
1466 | 'dealer': ('销方名称', 'se_common_compare', {}), | 1504 | 'dealer': ('销方名称', 'se_contain_compare_2', {}), |
1467 | 'vehicleTransactionAmount': ('价税合计小写', 'se_amount_compare', {}), | 1505 | 'vehicleTransactionAmount': ('价税合计小写', 'se_amount_compare', {}), |
1468 | 'customerName': ('购方名称', 'se_name_compare', {'is_passport': True}), | 1506 | 'customerName': ('购方名称', 'se_common_compare', {}), |
1469 | 'idNum': ('购买方身份证号或组织机构代码', 'se_contain_compare_2', {}), | 1507 | 'idNum': ('购买方身份证号或组织机构代码', 'se_common_compare', {}), |
1470 | 'dateOfInvoice': ('开票日期', 'se_date_compare_2', {'three_month': True}), | 1508 | 'dateOfInvoice': ('开票日期', 'se_date_compare_2', {'three_month': True}), |
1471 | 'stamp': ('销售单位章', 'se_common_compare', {}), | 1509 | 'stamp': ('销售单位章', 'se_common_compare', {}), |
1510 | '发票联': ('发票类型', 'se_common_compare', {}), | ||
1511 | '发票真伪校验': ('发票真伪校验', 'se_common_compare', {}), | ||
1472 | } | 1512 | } |
1513 | ZW_METHOD = 'mvi_special' | ||
1514 | LOWER_AMOUNT_FIELD = '价税合计小写' | ||
1515 | UPPER_AMOUNT_FIELD = '价税合计大写' | ||
1516 | BHSJ_FIELD = '不含税价' | ||
1517 | ZZSSE_FIELD = '增值税税额' | ||
1473 | 1518 | ||
1474 | UCI_COMPARE_LOGIC = { | 1519 | UCI_COMPARE_LOGIC = { |
1475 | 'vinNo': ('车架号', 'se_common_compare', {}), | 1520 | 'vinNo': ('车架号', 'se_common_compare', {}), |
... | @@ -1497,9 +1542,11 @@ MVC34_COMPARE_LOGIC = { | ... | @@ -1497,9 +1542,11 @@ MVC34_COMPARE_LOGIC = { |
1497 | 'date': (TRANSFER_DATE, 'se_date_compare_2', {}), | 1542 | 'date': (TRANSFER_DATE, 'se_date_compare_2', {}), |
1498 | } | 1543 | } |
1499 | 1544 | ||
1545 | BC_TYPE_VALUE = '借记卡' | ||
1500 | BC_COMPARE_LOGIC = { | 1546 | BC_COMPARE_LOGIC = { |
1501 | 'accountNo': ('CardNum', 'se_common_compare', {'remove_space': True}), | 1547 | 'accountNo': ('CardNum', 'se_common_compare', {'remove_space': True}), |
1502 | 'bankName': ('BankName', 'se_both_contain_compare', {}), | 1548 | 'bankName': ('BankName', 'se_both_contain_compare', {}), |
1549 | 'type': ('CardType', 'se_common_compare', {}), | ||
1503 | } | 1550 | } |
1504 | 1551 | ||
1505 | DDA_COMPARE_LOGIC = { | 1552 | DDA_COMPARE_LOGIC = { |
... | @@ -1522,9 +1569,11 @@ JYPZ_COMPARE_LOGIC = { | ... | @@ -1522,9 +1569,11 @@ JYPZ_COMPARE_LOGIC = { |
1522 | } | 1569 | } |
1523 | 1570 | ||
1524 | HMH_COMPARE_LOGIC = { | 1571 | HMH_COMPARE_LOGIC = { |
1525 | 'customerName': ('借款/承租人姓名', 'se_name_compare', {}), | 1572 | '借款人/承租人姓名': ('借款/承租人姓名', 'se_name_compare', {}), |
1526 | 'idNum': ('证件号码', 'se_common_compare', {}), | 1573 | '借款人/承租人证件号': ('证件号码', 'se_common_compare', {}), |
1527 | 'applicationId': ('合同编号', 'se_contain_compare', {}), | 1574 | '申请号': ('合同编号', 'se_common_compare', {}), |
1575 | '渠道': ('渠道', 'se_common_compare', {}), | ||
1576 | '签字': ('借款人签字/盖章', 'se_common_compare', {}), | ||
1528 | } | 1577 | } |
1529 | 1578 | ||
1530 | # MVC_OCR_FIELD = 'mvc_ocr' | 1579 | # MVC_OCR_FIELD = 'mvc_ocr' | ... | ... |
This diff is collapsed.
Click to expand it.
... | @@ -16,6 +16,7 @@ class Comparison: | ... | @@ -16,6 +16,7 @@ class Comparison: |
16 | self.CSIBM = 'CSIBM' | 16 | self.CSIBM = 'CSIBM' |
17 | self.CSSME = 'CSSME' | 17 | self.CSSME = 'CSSME' |
18 | self.CSOTH = 'CSOTH' | 18 | self.CSOTH = 'CSOTH' |
19 | self.SPLIT_STR = '_' | ||
19 | 20 | ||
20 | self.TYPE_MAPPING = ( | 21 | self.TYPE_MAPPING = ( |
21 | (r'个体工商户', self.CSIBM), | 22 | (r'个体工商户', self.CSIBM), |
... | @@ -109,6 +110,16 @@ class Comparison: | ... | @@ -109,6 +110,16 @@ class Comparison: |
109 | ocr_output = None | 110 | ocr_output = None |
110 | return self.build_res(input_str == ocr_str), ocr_output | 111 | return self.build_res(input_str == ocr_str), ocr_output |
111 | 112 | ||
113 | def mvi_special(self, amount_lower_str, amount_upper_str, bhsj_str, zzsse_str): | ||
114 | # 不含税价, 增值税税额 | ||
115 | try: | ||
116 | if float(amount_lower_str) != rmb_handler.to_rmb_lower(amount_upper_str): | ||
117 | return self.RESULT_N | ||
118 | except Exception: | ||
119 | return self.RESULT_N | ||
120 | else: | ||
121 | return self.SPLIT_STR.join([bhsj_str, zzsse_str, self.RESULT_Y]) | ||
122 | |||
112 | def rmb_compare(self, input_str, ocr_str, idx, **kwargs): | 123 | def rmb_compare(self, input_str, ocr_str, idx, **kwargs): |
113 | if not isinstance(ocr_str, str) or not isinstance(input_str, str): | 124 | if not isinstance(ocr_str, str) or not isinstance(input_str, str): |
114 | return self.RESULT_NA, None | 125 | return self.RESULT_NA, None |
... | @@ -198,7 +209,7 @@ class Comparison: | ... | @@ -198,7 +209,7 @@ class Comparison: |
198 | ) | 209 | ) |
199 | dti = DatetimeIndex(dt_array, tz=None, name=None) | 210 | dti = DatetimeIndex(dt_array, tz=None, name=None) |
200 | ts = dti[0] | 211 | ts = dti[0] |
201 | if isinstance(ts, NaTType) or ts.date() < datetime.today().date(): | 212 | if isinstance(ts, NaTType) or ts.date() < (datetime.today() + relativedelta(days=8)).date(): |
202 | return False | 213 | return False |
203 | else: | 214 | else: |
204 | return True | 215 | return True | ... | ... |
-
Please register or sign in to post a comment