diff --git a/src/apps/doc/consts.py b/src/apps/doc/consts.py index 0a496c4..bbe7a3c 100644 --- a/src/apps/doc/consts.py +++ b/src/apps/doc/consts.py @@ -667,9 +667,9 @@ RP_FIELD_ORDER_1 = IC_FIELD_ORDER_1 VAT_CN_NAME = 'VAT普票' VAT_CLASSIFY = 0 VAT_FIELD_ORDER = (('发票代码', '发票代码'), - ('发票代码(开具)', '发票代码(开具)'), + ('发票代码_开具', '发票代码(开具)'), ('发票号码', '发票号码'), - ('发票号码(开具)', '发票号码(开具)'), + ('发票号码_开具', '发票号码(开具)'), ('开票日期', '开票日期'), ('校验码', '校验码'), ('货物或应税劳务、服务名称', '货物或应税劳务、服务名称'), @@ -686,7 +686,7 @@ VAT_FIELD_ORDER = (('发票代码', '发票代码'), ('销方纳税人识别号', '销售方纳税人识别号'), ('销方地址、电话', '销售方地址、电话'), ('销方开户行及账号', '销售方开户行及账号'), - ('销售方:(章)', '销售方:(章)'), + ('下盖章', '销售方:(章)'), ('备注', '备注'),) # 机动车登记证书 MVC_CN_NAME = '机动车登记证书' diff --git a/src/apps/doc/management/commands/doc_ocr_process.py b/src/apps/doc/management/commands/doc_ocr_process.py index 996ce57..e1b0cb4 100644 --- a/src/apps/doc/management/commands/doc_ocr_process.py +++ b/src/apps/doc/management/commands/doc_ocr_process.py @@ -440,10 +440,23 @@ class Command(BaseCommand, LoggerMixin): merged_bs_summary = {} card_num = 1 for role_dict in unknown_summary.values(): - for summary in role_dict.values(): + if len(role_dict) == 2 and consts.UNKNOWN_ROLE in role_dict: + summary_dict = role_dict.pop(consts.UNKNOWN_ROLE, {}) + for summary in role_dict.values(): + summary_dict['confidence'].extend(summary['confidence']) + summary_dict['role'] = summary['role'] + summary_dict['code'].extend(summary['code']) + summary_dict['print_time'].extend(summary['print_time']) + summary_dict['start_date'].extend(summary['start_date']) + summary_dict['end_date'].extend(summary['end_date']) + summary_dict['sheet'].extend(summary['sheet']) card = '{0}_{1}'.format(consts.UNKNOWN_CARD, card_num) - card_num += 1 - merged_bs_summary[card] = summary + merged_bs_summary[card] = summary_dict + else: + for summary in role_dict.values(): + card = '{0}_{1}'.format(consts.UNKNOWN_CARD, card_num) + card_num += 1 + merged_bs_summary[card] = summary else: # 1卡号 one_card = False @@ -460,6 +473,7 @@ class Command(BaseCommand, LoggerMixin): for role, summary in classify_summary.items(): if one_card or role in card_summary['role_set']: merge_role.append(role) + card_summary['confidence'].extend(summary['confidence']) card_summary['sheet'].extend(summary['sheet']) card_summary['code'].extend(summary['code']) card_summary['print_time'].extend(summary['print_time'])