Merge branch 'feature/CHINARPA-5075'
Showing
4 changed files
with
86 additions
and
0 deletions
... | @@ -1250,6 +1250,7 @@ FSM_CONTRACT_SC_FIELD = 'fsm_sc_ocr' | ... | @@ -1250,6 +1250,7 @@ FSM_CONTRACT_SC_FIELD = 'fsm_sc_ocr' |
1250 | FSM_CONTRACT_SC2_FIELD = 'fsm_sc2_ocr' | 1250 | FSM_CONTRACT_SC2_FIELD = 'fsm_sc2_ocr' |
1251 | FS_FIELD = 'fs_ocr' | 1251 | FS_FIELD = 'fs_ocr' |
1252 | FSS_FIELD = 'fss_ocr' | 1252 | FSS_FIELD = 'fss_ocr' |
1253 | DP_FIELD = 'dp_ocr' | ||
1253 | 1254 | ||
1254 | 1255 | ||
1255 | BS_CLASSIFY = 10089 | 1256 | BS_CLASSIFY = 10089 |
... | @@ -1308,6 +1309,7 @@ COMPARE_FIELDS = ( | ... | @@ -1308,6 +1309,7 @@ COMPARE_FIELDS = ( |
1308 | HIL_CONTRACT_3_FIELD, | 1309 | HIL_CONTRACT_3_FIELD, |
1309 | FS_FIELD, | 1310 | FS_FIELD, |
1310 | FSS_FIELD, | 1311 | FSS_FIELD, |
1312 | DP_FIELD, | ||
1311 | ) | 1313 | ) |
1312 | 1314 | ||
1313 | PRE_COMPARE_FIELDS = ( | 1315 | PRE_COMPARE_FIELDS = ( |
... | @@ -1511,6 +1513,7 @@ JYPZ_TYPE_1 = ['二手车交易凭证'] | ... | @@ -1511,6 +1513,7 @@ JYPZ_TYPE_1 = ['二手车交易凭证'] |
1511 | JYPZ_TYPE_2 = ['BMW官方认证二手车交易凭证', '二手车交易凭证'] | 1513 | JYPZ_TYPE_2 = ['BMW官方认证二手车交易凭证', '二手车交易凭证'] |
1512 | SE_FS_FIELD = ['Hash值', '公章', '财年', '资产负债表内容', '利润表内容'] | 1514 | SE_FS_FIELD = ['Hash值', '公章', '财年', '资产负债表内容', '利润表内容'] |
1513 | SE_FSS_FIELD = ['公司名称', '公章'] | 1515 | SE_FSS_FIELD = ['公司名称', '公章'] |
1516 | SE_DP_FIELD = ['渠道', '姓名', '证件号码', '合同编号(含版本号)', '承诺人签字-电子', '承诺人签字日期-电子'] | ||
1514 | 1517 | ||
1515 | SE_BANK_FIELD = ['accountNo', 'bankName'] | 1518 | SE_BANK_FIELD = ['accountNo', 'bankName'] |
1516 | SE_DDA_FIELD = ['applicationId(1)', 'applicationId(2)', 'bankName', 'companyName', 'customerName', 'idNum', 'accountHolderName', 'accountNo'] | 1519 | SE_DDA_FIELD = ['applicationId(1)', 'applicationId(2)', 'bankName', 'companyName', 'customerName', 'idNum', 'accountHolderName', 'accountNo'] |
... | @@ -1826,6 +1829,7 @@ HIL_CONTRACT_2_EN = '车辆租赁抵押合同' | ... | @@ -1826,6 +1829,7 @@ HIL_CONTRACT_2_EN = '车辆租赁抵押合同' |
1826 | HIL_CONTRACT_3_EN = '车辆处置协议' | 1829 | HIL_CONTRACT_3_EN = '车辆处置协议' |
1827 | FS_EN = 'Financial Statement' | 1830 | FS_EN = 'Financial Statement' |
1828 | FSS_EN = 'Financial Statement Supplementary' | 1831 | FSS_EN = 'Financial Statement Supplementary' |
1832 | DP_EN = 'Down Payment' | ||
1829 | 1833 | ||
1830 | DDA_NO_FIND = '需人工查看DDA或截图' | 1834 | DDA_NO_FIND = '需人工查看DDA或截图' |
1831 | FS_NO_FIND = '未提供财报或财报不完整' | 1835 | FS_NO_FIND = '未提供财报或财报不完整' |
... | @@ -2185,6 +2189,15 @@ FSS_COMPARE_LOGIC = { | ... | @@ -2185,6 +2189,15 @@ FSS_COMPARE_LOGIC = { |
2185 | '公章': ('stamp', 'stamp_str_compare', {}, '财报情况说明无公章'), | 2189 | '公章': ('stamp', 'stamp_str_compare', {}, '财报情况说明无公章'), |
2186 | } | 2190 | } |
2187 | 2191 | ||
2192 | DP_COMPARE_LOGIC = { | ||
2193 | '渠道': ('financial_org_name', 'se_common_compare', {'remove_space': True}, '首付款支付承诺书渠道错误'), | ||
2194 | '姓名': ('main_borrower_name', 'se_common_compare', {'remove_space': True}, '首付款支付承诺书姓名与系统不一致'), | ||
2195 | '证件号码': ('main_borrower_id_no', 'se_common_compare', {'remove_space': True}, '首付款支付承诺书证件号码与系统不一致'), | ||
2196 | '合同编号(含版本号)': ('apply_no', 'se_common_compare', {'remove_space': True}, '首付款支付承诺书合同编号与系统不一致'), | ||
2197 | '承诺人签字-电子': ('promisor_signature', 'se_common_compare', {'remove_all_space': True}, '首付款支付承诺书承诺人签字与系统不一致'), | ||
2198 | '承诺人签字日期-电子': ('promisor_signature_date', 'se_have_compare', {}, 'N-首付款支付承诺书缺少签字日期'), | ||
2199 | } | ||
2200 | |||
2188 | AFC_HT_DATE_FIELDS = ['主借人日期', '共借人日期', '保证人日期1', '保证人日期2'] | 2201 | AFC_HT_DATE_FIELDS = ['主借人日期', '共借人日期', '保证人日期1', '保证人日期2'] |
2189 | 2202 | ||
2190 | # MVC_OCR_FIELD = 'mvc_ocr' | 2203 | # MVC_OCR_FIELD = 'mvc_ocr' |
... | @@ -2215,6 +2228,7 @@ SE_COMPARE_FIELD = { | ... | @@ -2215,6 +2228,7 @@ SE_COMPARE_FIELD = { |
2215 | HIL_CONTRACT_3_EN: (HIL_CONTRACT_3_FIELD, HIL_CONTRACT_3_COMPARE_LOGIC, False), | 2228 | HIL_CONTRACT_3_EN: (HIL_CONTRACT_3_FIELD, HIL_CONTRACT_3_COMPARE_LOGIC, False), |
2216 | FS_EN: (FS_FIELD, FS_COMPARE_LOGIC, False), | 2229 | FS_EN: (FS_FIELD, FS_COMPARE_LOGIC, False), |
2217 | FSS_EN: (FSS_FIELD, FSS_COMPARE_LOGIC, False), | 2230 | FSS_EN: (FSS_FIELD, FSS_COMPARE_LOGIC, False), |
2231 | DP_EN: (DP_FIELD, DP_COMPARE_LOGIC, False), | ||
2218 | } | 2232 | } |
2219 | 2233 | ||
2220 | SE_COMPARE_FIELD_AUTO = { | 2234 | SE_COMPARE_FIELD_AUTO = { | ... | ... |
... | @@ -944,6 +944,7 @@ def get_se_cms_compare_info_auto(application_id, last_obj, application_entity, d | ... | @@ -944,6 +944,7 @@ def get_se_cms_compare_info_auto(application_id, last_obj, application_entity, d |
944 | is_bo_corporate = False | 944 | is_bo_corporate = False |
945 | role_count = 0 | 945 | role_count = 0 |
946 | borrower_name = '' | 946 | borrower_name = '' |
947 | borrower_idnum = '' | ||
947 | legal_name = '' | 948 | legal_name = '' |
948 | # province = cms_info.get('province', '') | 949 | # province = cms_info.get('province', '') |
949 | for individual_info in cms_info.get('applicantInformation', []): | 950 | for individual_info in cms_info.get('applicantInformation', []): |
... | @@ -971,8 +972,14 @@ def get_se_cms_compare_info_auto(application_id, last_obj, application_entity, d | ... | @@ -971,8 +972,14 @@ def get_se_cms_compare_info_auto(application_id, last_obj, application_entity, d |
971 | is_bo_corporate = True | 972 | is_bo_corporate = True |
972 | 973 | ||
973 | # CHINARPA-4660 财报主借人姓名赋值 | 974 | # CHINARPA-4660 财报主借人姓名赋值 |
975 | # CHINARPA-5075 首付款承诺书主借人证件号赋值 | ||
974 | if individual_info['applicantType'] == consts.APPLICANT_TYPE_ORDER[0]: | 976 | if individual_info['applicantType'] == consts.APPLICANT_TYPE_ORDER[0]: |
975 | borrower_name = customer_name | 977 | borrower_name = customer_name |
978 | for id_info in individual_info.get('IDInformation', []): | ||
979 | if id_info.get('idType') in consts.SE_CMS_FIRST_ID_FIELD_MAPPING: | ||
980 | borrower_idnum = decode_des(id_info.get('idNum', ''), des_key) | ||
981 | elif is_corporate and id_info.get('idType') in ['Unified Social Credit Code', 'Tax Number', 'Business License Number']: | ||
982 | borrower_idnum = decode_des(id_info.get('idNum', ''), des_key) | ||
976 | 983 | ||
977 | for id_info in individual_info.get('IDInformation', []): | 984 | for id_info in individual_info.get('IDInformation', []): |
978 | if id_info.get('idType') in consts.SE_CMS_FIRST_ID_FIELD_MAPPING: | 985 | if id_info.get('idType') in consts.SE_CMS_FIRST_ID_FIELD_MAPPING: |
... | @@ -1577,6 +1584,20 @@ def get_se_cms_compare_info_auto(application_id, last_obj, application_entity, d | ... | @@ -1577,6 +1584,20 @@ def get_se_cms_compare_info_auto(application_id, last_obj, application_entity, d |
1577 | contract_info[consts.AFC_CONTRACT_QRS_EN] = afc_contract_qrs_input | 1584 | contract_info[consts.AFC_CONTRACT_QRS_EN] = afc_contract_qrs_input |
1578 | 1585 | ||
1579 | compare_info['contract'] = contract_info | 1586 | compare_info['contract'] = contract_info |
1587 | |||
1588 | # 首付款承诺书 | ||
1589 | down_payment_info = {} | ||
1590 | down_payment_input = [] | ||
1591 | totalDownPayment = str(cms_info.get('financialInformation', {}).get('totalDownPayment')) | ||
1592 | if totalDownPayment and totalDownPayment != '0.00': | ||
1593 | down_payment_input.append((consts.SE_DP_FIELD[0], cms_info.get('financeCompany', ''))) | ||
1594 | down_payment_input.append((consts.SE_DP_FIELD[1], borrower_name)) | ||
1595 | down_payment_input.append((consts.SE_DP_FIELD[2], borrower_idnum)) | ||
1596 | down_payment_input.append((consts.SE_DP_FIELD[3], cms_info.get('settlemnetVerification', {}).get('applicationNo', ''))) | ||
1597 | down_payment_input.append((consts.SE_DP_FIELD[4], legal_name if is_bo_corporate else borrower_name )) | ||
1598 | down_payment_input.append((consts.SE_DP_FIELD[5], '有/无')) | ||
1599 | down_payment_info[consts.DP_EN] = down_payment_input | ||
1600 | compare_info['downPayment'] = down_payment_info | ||
1580 | return compare_info, cms_info.get('autoApprovedDetails', {}).get('aaType', ''), is_gsyh, allow_bs_type | 1601 | return compare_info, cms_info.get('autoApprovedDetails', {}).get('aaType', ''), is_gsyh, allow_bs_type |
1581 | 1602 | ||
1582 | 1603 | ||
... | @@ -1614,6 +1635,7 @@ def get_se_cms_compare_info(application_id, last_obj, application_entity, detect | ... | @@ -1614,6 +1635,7 @@ def get_se_cms_compare_info(application_id, last_obj, application_entity, detect |
1614 | is_bo_corporate = False | 1635 | is_bo_corporate = False |
1615 | role_count = 0 | 1636 | role_count = 0 |
1616 | borrower_name = '' | 1637 | borrower_name = '' |
1638 | borrower_idnum = '' | ||
1617 | legal_name = '' | 1639 | legal_name = '' |
1618 | # province = cms_info.get('province', '') | 1640 | # province = cms_info.get('province', '') |
1619 | for individual_info in cms_info.get('applicantInformation', []): | 1641 | for individual_info in cms_info.get('applicantInformation', []): |
... | @@ -1641,8 +1663,14 @@ def get_se_cms_compare_info(application_id, last_obj, application_entity, detect | ... | @@ -1641,8 +1663,14 @@ def get_se_cms_compare_info(application_id, last_obj, application_entity, detect |
1641 | is_bo_corporate = True | 1663 | is_bo_corporate = True |
1642 | 1664 | ||
1643 | # CHINARPA-4660 财报主借人姓名赋值 | 1665 | # CHINARPA-4660 财报主借人姓名赋值 |
1666 | # CHINARPA-5075 首付款承诺书主借人证件号赋值 | ||
1644 | if individual_info['applicantType'] == consts.APPLICANT_TYPE_ORDER[0]: | 1667 | if individual_info['applicantType'] == consts.APPLICANT_TYPE_ORDER[0]: |
1645 | borrower_name = customer_name | 1668 | borrower_name = customer_name |
1669 | for id_info in individual_info.get('IDInformation', []): | ||
1670 | if id_info.get('idType') in consts.SE_CMS_FIRST_ID_FIELD_MAPPING: | ||
1671 | borrower_idnum = decode_des(id_info.get('idNum', ''), des_key) | ||
1672 | elif is_corporate and id_info.get('idType') in ['Unified Social Credit Code', 'Tax Number', 'Business License Number']: | ||
1673 | borrower_idnum = decode_des(id_info.get('idNum', ''), des_key) | ||
1646 | 1674 | ||
1647 | for id_info in individual_info.get('IDInformation', []): | 1675 | for id_info in individual_info.get('IDInformation', []): |
1648 | if id_info.get('idType') in consts.SE_CMS_FIRST_ID_FIELD_MAPPING: | 1676 | if id_info.get('idType') in consts.SE_CMS_FIRST_ID_FIELD_MAPPING: |
... | @@ -2212,6 +2240,20 @@ def get_se_cms_compare_info(application_id, last_obj, application_entity, detect | ... | @@ -2212,6 +2240,20 @@ def get_se_cms_compare_info(application_id, last_obj, application_entity, detect |
2212 | afc_contract_qrs_input = [(consts.SE_AFC_CON_QRS_FIELD[0], '{0}{1}{2}'.format(role_count, consts.SPLIT_STR, full_no))] | 2240 | afc_contract_qrs_input = [(consts.SE_AFC_CON_QRS_FIELD[0], '{0}{1}{2}'.format(role_count, consts.SPLIT_STR, full_no))] |
2213 | contract_info[consts.AFC_CONTRACT_QRS_EN] = afc_contract_qrs_input | 2241 | contract_info[consts.AFC_CONTRACT_QRS_EN] = afc_contract_qrs_input |
2214 | compare_info['contract'] = contract_info | 2242 | compare_info['contract'] = contract_info |
2243 | |||
2244 | # 首付款承诺书 | ||
2245 | down_payment_info = {} | ||
2246 | down_payment_input = [] | ||
2247 | totalDownPayment = str(cms_info.get('financialInformation', {}).get('totalDownPayment')) | ||
2248 | if totalDownPayment and totalDownPayment != '0.00': | ||
2249 | down_payment_input.append((consts.SE_DP_FIELD[0], cms_info.get('financeCompany', ''))) | ||
2250 | down_payment_input.append((consts.SE_DP_FIELD[1], borrower_name)) | ||
2251 | down_payment_input.append((consts.SE_DP_FIELD[2], borrower_idnum)) | ||
2252 | down_payment_input.append((consts.SE_DP_FIELD[3], cms_info.get('settlemnetVerification', {}).get('applicationNo', ''))) | ||
2253 | down_payment_input.append((consts.SE_DP_FIELD[4], legal_name if is_bo_corporate else borrower_name )) | ||
2254 | down_payment_input.append((consts.SE_DP_FIELD[5], '有/无')) | ||
2255 | down_payment_info[consts.DP_EN] = down_payment_input | ||
2256 | compare_info['downPayment'] = down_payment_info | ||
2215 | return compare_info, cms_info.get('applicationVersion', 1), cms_info.get('autoApprovedDetails', {}).get('aaType', ''), is_gsyh, allow_bs_type | 2257 | return compare_info, cms_info.get('applicationVersion', 1), cms_info.get('autoApprovedDetails', {}).get('aaType', ''), is_gsyh, allow_bs_type |
2216 | 2258 | ||
2217 | 2259 | ... | ... |
... | @@ -324,6 +324,9 @@ class Comparison: | ... | @@ -324,6 +324,9 @@ class Comparison: |
324 | return self.RESULT_Y | 324 | return self.RESULT_Y |
325 | if kwargs.get('remove_space', False): | 325 | if kwargs.get('remove_space', False): |
326 | input_str = input_str.replace(' ', '') | 326 | input_str = input_str.replace(' ', '') |
327 | if kwargs.get('remove_all_space', False): | ||
328 | input_str = input_str.replace(' ', '') | ||
329 | ocr_str = ocr_str.replace(' ', '') | ||
327 | if kwargs.get('brackets_replace', False): | 330 | if kwargs.get('brackets_replace', False): |
328 | input_str = input_str.translate(self.KH_TRANS) | 331 | input_str = input_str.translate(self.KH_TRANS) |
329 | ocr_str = ocr_str.translate(self.KH_TRANS) | 332 | ocr_str = ocr_str.translate(self.KH_TRANS) | ... | ... |
src/common/tools/mssql_script29.py
0 → 100644
1 | import pyodbc | ||
2 | |||
3 | hil_sql = """ | ||
4 | ALTER TABLE hil_ocr_result ADD dp_ocr nvarchar(max); | ||
5 | ALTER TABLE hil_se_ocr_result ADD dp_ocr nvarchar(max); | ||
6 | """ | ||
7 | |||
8 | afc_sql = """ | ||
9 | ALTER TABLE afc_ocr_result ADD dp_ocr nvarchar(max); | ||
10 | ALTER TABLE afc_se_ocr_result ADD dp_ocr nvarchar(max); | ||
11 | """ | ||
12 | |||
13 | hil_cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};', autocommit=True) | ||
14 | |||
15 | hil_cursor = hil_cnxn.cursor() | ||
16 | hil_cursor.execute(hil_sql) | ||
17 | |||
18 | hil_cursor.close() | ||
19 | hil_cnxn.close() | ||
20 | |||
21 | afc_cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};', autocommit=True) | ||
22 | |||
23 | afc_cursor = afc_cnxn.cursor() | ||
24 | afc_cursor.execute(afc_sql) | ||
25 | |||
26 | afc_cursor.close() | ||
27 | afc_cnxn.close() |
-
Please register or sign in to post a comment