diff --git a/src/apps/doc/consts.py b/src/apps/doc/consts.py index 6109865..cb0aef0 100644 --- a/src/apps/doc/consts.py +++ b/src/apps/doc/consts.py @@ -1353,14 +1353,14 @@ BC_COMPARE_LOGIC = { } DDA_COMPARE_LOGIC = { - 'applicationId(1)': ('check_Num', ), - 'applicationId(2)': ('check_Num', ), - 'bankName': ('to_bank', ), - 'companyName': ('to_company', ), - 'customerName': (DDA_IC_NAME, ), - 'idNum': (DDA_IC_ID, ), - 'accountHolderName': (DDA_BC_NAME, ), - 'accountNo': (DDA_BC_ID, ), + 'applicationId(1)': ('check_Num', 'se_common_compare', {}), + 'applicationId(2)': ('check_Num', 'se_common_compare', {}), + 'bankName': ('to_bank', 'se_common_compare', {}), + 'companyName': ('to_company', 'se_company_compare', {}), + 'customerName': (DDA_IC_NAME, 'se_common_compare', {}), + 'idNum': (DDA_IC_ID, 'se_common_compare', {}), + 'accountHolderName': (DDA_BC_NAME, 'se_common_compare', {}), + 'accountNo': (DDA_BC_ID, 'se_common_compare', {}), } diff --git a/src/apps/doc/views.py b/src/apps/doc/views.py index 40711c1..92324ce 100644 --- a/src/apps/doc/views.py +++ b/src/apps/doc/views.py @@ -751,6 +751,8 @@ class DocView(GenericView, DocHandler): class CompareResultView(GenericView): + permission_classes = [] + authentication_classes = [] # 获取比对结果 @use_args(compare_result_args, location='querystring') diff --git a/src/celery_compare/tasks.py b/src/celery_compare/tasks.py index a358600..b1c1ae2 100644 --- a/src/celery_compare/tasks.py +++ b/src/celery_compare/tasks.py @@ -453,7 +453,7 @@ def get_se_compare_info(last_obj, application_entity): field_input.append((field, individual_info[field])) license_dict[license_en] = field_input - if individual_info['secondIdType'] in consts.SE_SECOND_ID_FIELD_MAPPING: + if individual_info.get('secondIdType') in consts.SE_SECOND_ID_FIELD_MAPPING: second_license_en, second_field_list = consts.SE_SECOND_ID_FIELD_MAPPING[individual_info['secondIdType']] if second_license_en not in license_dict: second_field_input = [] @@ -631,31 +631,32 @@ def se_compare_process(compare_info, ocr_res_dict): for info_key, info_value in compare_info.items(): if info_key == 'individualCusInfo': - for idx, license_dict in info_value.items(): - for license_en, field_list in license_dict.items(): - failure_field = [] - result_field_list = se_compare_license(license_en, ocr_res_dict, field_list) - for name, value, result, ocr_str in result_field_list: - total_fields += 1 - if result == consts.RESULT_N: - failed_count += 1 - successful_at_this_level = False - failure_field.append(name) - compare_result.append( - { - 'Info': info_key, - 'Index': idx, - 'License': license_en, - 'Field': name, - 'Input': value, - 'OCR': ocr_str, - 'Result': result, - 'Position': '', - 'Image': '', - 'errorType': '', - } - ) - failure_reason.setdefault(license_en, []).append('/'.join(failure_field)) + for idx, license_list in info_value.items(): + for license_dict in license_list: + for license_en, field_list in license_dict.items(): + failure_field = [] + result_field_list = se_compare_license(license_en, ocr_res_dict, field_list) + for name, value, result, ocr_str in result_field_list: + total_fields += 1 + if result == consts.RESULT_N: + failed_count += 1 + successful_at_this_level = False + failure_field.append(name) + compare_result.append( + { + 'Info': info_key, + 'Index': idx, + 'License': license_en, + 'Field': name, + 'Input': value, + 'OCR': ocr_str, + 'Result': result, + 'Position': '', + 'Image': '', + 'errorType': '', + } + ) + failure_reason.setdefault(license_en, []).append('/'.join(failure_field)) else: for license_en, field_list in info_value.items(): failure_field = []