09d71c76 by 冯轩

Merge branch 'feature/CHINARPA-4660' into feature/uat-tmp

2 parents 885bf854 1fe3d253
...@@ -1247,6 +1247,7 @@ FSM_CONTRACT_WEP_FIELD = 'fsm_wep_ocr' ...@@ -1247,6 +1247,7 @@ FSM_CONTRACT_WEP_FIELD = 'fsm_wep_ocr'
1247 FSM_CONTRACT_MSI_FIELD = 'fsm_msi_ocr' 1247 FSM_CONTRACT_MSI_FIELD = 'fsm_msi_ocr'
1248 FSM_CONTRACT_SC_FIELD = 'fsm_sc_ocr' 1248 FSM_CONTRACT_SC_FIELD = 'fsm_sc_ocr'
1249 FSM_CONTRACT_SC2_FIELD = 'fsm_sc2_ocr' 1249 FSM_CONTRACT_SC2_FIELD = 'fsm_sc2_ocr'
1250 FS_FIELD = 'fs_ocr'
1250 1251
1251 1252
1252 BS_CLASSIFY = 10089 1253 BS_CLASSIFY = 10089
...@@ -1303,6 +1304,7 @@ COMPARE_FIELDS = ( ...@@ -1303,6 +1304,7 @@ COMPARE_FIELDS = (
1303 HIL_CONTRACT_1_FIELD, 1304 HIL_CONTRACT_1_FIELD,
1304 HIL_CONTRACT_2_FIELD, 1305 HIL_CONTRACT_2_FIELD,
1305 HIL_CONTRACT_3_FIELD, 1306 HIL_CONTRACT_3_FIELD,
1307 FS_FIELD,
1306 ) 1308 )
1307 1309
1308 PRE_COMPARE_FIELDS = ( 1310 PRE_COMPARE_FIELDS = (
...@@ -1504,6 +1506,7 @@ SE_BD_FIELD = ['被保险人姓名', '被保险人证件号码', '车架号', ' ...@@ -1504,6 +1506,7 @@ SE_BD_FIELD = ['被保险人姓名', '被保险人证件号码', '车架号', '
1504 JDMPV_VALUE = ['-', '--', '0%', '0.00', '/', '0', ''] 1506 JDMPV_VALUE = ['-', '--', '0%', '0.00', '/', '0', '']
1505 JYPZ_TYPE_1 = ['二手车交易凭证'] 1507 JYPZ_TYPE_1 = ['二手车交易凭证']
1506 JYPZ_TYPE_2 = ['BMW官方认证二手车交易凭证', '二手车交易凭证'] 1508 JYPZ_TYPE_2 = ['BMW官方认证二手车交易凭证', '二手车交易凭证']
1509 SE_FS_FIELD = ['Hash值', '公章', '财年', '资产负债表内容', '利润表内容']
1507 1510
1508 SE_BANK_FIELD = ['accountNo', 'bankName'] 1511 SE_BANK_FIELD = ['accountNo', 'bankName']
1509 SE_DDA_FIELD = ['applicationId(1)', 'applicationId(2)', 'bankName', 'companyName', 'customerName', 'idNum', 'accountHolderName', 'accountNo'] 1512 SE_DDA_FIELD = ['applicationId(1)', 'applicationId(2)', 'bankName', 'companyName', 'customerName', 'idNum', 'accountHolderName', 'accountNo']
...@@ -1817,8 +1820,11 @@ BS_EN = 'Bank Statement' ...@@ -1817,8 +1820,11 @@ BS_EN = 'Bank Statement'
1817 HIL_CONTRACT_1_EN = '售后回租合同' 1820 HIL_CONTRACT_1_EN = '售后回租合同'
1818 HIL_CONTRACT_2_EN = '车辆租赁抵押合同' 1821 HIL_CONTRACT_2_EN = '车辆租赁抵押合同'
1819 HIL_CONTRACT_3_EN = '车辆处置协议' 1822 HIL_CONTRACT_3_EN = '车辆处置协议'
1823 FS_EN = 'Financial Statement'
1824 FSS_EN = 'Financial Statement Supplementary'
1820 1825
1821 DDA_NO_FIND = '需人工查看DDA或截图' 1826 DDA_NO_FIND = '需人工查看DDA或截图'
1827 FS_NO_FIND = '未提供财报或财报不完整'
1822 1828
1823 SKIP_CARD = {SME_BL_EN} 1829 SKIP_CARD = {SME_BL_EN}
1824 1830
...@@ -2159,6 +2165,15 @@ HT_COMPARE_LOGIC = { ...@@ -2159,6 +2165,15 @@ HT_COMPARE_LOGIC = {
2159 '无ASP产品': ('无ASP产品', 'se_self_compare_other_asp', {}, GZS_REASON_1), 2165 '无ASP产品': ('无ASP产品', 'se_self_compare_other_asp', {}, GZS_REASON_1),
2160 } 2166 }
2161 2167
2168 # 格式:'excel字段名':('数据库字段名','比对逻辑','特殊处理可以忽略','比对不合格时的返回内容')
2169 FS_COMPARE_LOGIC = {
2170 'Hash值': ('code', 'hash_code_compare', {}, '财报Hash值与系统不一致'),
2171 '公章': ('stamp', 'stamp_dict_compare', {}, '财报无公章'),
2172 '财年': ('财年', 'fiscal_year_compare', {}, '财报所属财年错误'),
2173 '资产负债表内容': ('资产负债表内容', 'input_list_not_zero_compare', {}, '财报资产负债表为空'),
2174 '利润表内容': ('利润表内容', 'input_list_not_zero_compare', {}, '财报利润表为空'),
2175 }
2176
2162 AFC_HT_DATE_FIELDS = ['主借人日期', '共借人日期', '保证人日期1', '保证人日期2'] 2177 AFC_HT_DATE_FIELDS = ['主借人日期', '共借人日期', '保证人日期1', '保证人日期2']
2163 2178
2164 # MVC_OCR_FIELD = 'mvc_ocr' 2179 # MVC_OCR_FIELD = 'mvc_ocr'
...@@ -2187,6 +2202,7 @@ SE_COMPARE_FIELD = { ...@@ -2187,6 +2202,7 @@ SE_COMPARE_FIELD = {
2187 HIL_CONTRACT_1_EN: (HIL_CONTRACT_1_FIELD, HIL_CONTRACT_1_COMPARE_LOGIC, False), 2202 HIL_CONTRACT_1_EN: (HIL_CONTRACT_1_FIELD, HIL_CONTRACT_1_COMPARE_LOGIC, False),
2188 HIL_CONTRACT_2_EN: (HIL_CONTRACT_2_FIELD, HIL_CONTRACT_2_COMPARE_LOGIC, False), 2203 HIL_CONTRACT_2_EN: (HIL_CONTRACT_2_FIELD, HIL_CONTRACT_2_COMPARE_LOGIC, False),
2189 HIL_CONTRACT_3_EN: (HIL_CONTRACT_3_FIELD, HIL_CONTRACT_3_COMPARE_LOGIC, False), 2204 HIL_CONTRACT_3_EN: (HIL_CONTRACT_3_FIELD, HIL_CONTRACT_3_COMPARE_LOGIC, False),
2205 FS_EN: (FS_FIELD, FS_COMPARE_LOGIC, False),
2190 } 2206 }
2191 2207
2192 SE_COMPARE_FIELD_AUTO = { 2208 SE_COMPARE_FIELD_AUTO = {
......
...@@ -336,6 +336,8 @@ class AFCOCRResult(models.Model): ...@@ -336,6 +336,8 @@ class AFCOCRResult(models.Model):
336 fsm_sc_ocr = models.TextField(null=True, verbose_name="汽车销售合同") 336 fsm_sc_ocr = models.TextField(null=True, verbose_name="汽车销售合同")
337 fsm_sc2_ocr = models.TextField(null=True, verbose_name="汽车销售合同补充合同") 337 fsm_sc2_ocr = models.TextField(null=True, verbose_name="汽车销售合同补充合同")
338 fsm_activited = models.IntegerField(null=False, default=0, verbose_name="fsm激活状态 1:激活") 338 fsm_activited = models.IntegerField(null=False, default=0, verbose_name="fsm激活状态 1:激活")
339 fs_ocr = models.TextField(null=True, verbose_name="财务报表")
340 fss_ocr = models.TextField(null=True, verbose_name="财务情况说明书")
339 341
340 342
341 update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间') 343 update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间')
...@@ -379,6 +381,8 @@ class HILOCRResult(models.Model): ...@@ -379,6 +381,8 @@ class HILOCRResult(models.Model):
379 fsm_sc_ocr = models.TextField(null=True, verbose_name="汽车销售合同") 381 fsm_sc_ocr = models.TextField(null=True, verbose_name="汽车销售合同")
380 fsm_sc2_ocr = models.TextField(null=True, verbose_name="汽车销售合同补充合同") 382 fsm_sc2_ocr = models.TextField(null=True, verbose_name="汽车销售合同补充合同")
381 fsm_activited = models.IntegerField(null=False, default=0, verbose_name="fsm激活状态 1:激活") 383 fsm_activited = models.IntegerField(null=False, default=0, verbose_name="fsm激活状态 1:激活")
384 fs_ocr = models.TextField(null=True, verbose_name="财务报表")
385 fss_ocr = models.TextField(null=True, verbose_name="财务情况说明书")
382 386
383 update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间') 387 update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间')
384 create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') 388 create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
...@@ -420,6 +424,8 @@ class AFCSEOCRResult(models.Model): ...@@ -420,6 +424,8 @@ class AFCSEOCRResult(models.Model):
420 fsm_sc_ocr = models.TextField(null=True, verbose_name="汽车销售合同") 424 fsm_sc_ocr = models.TextField(null=True, verbose_name="汽车销售合同")
421 fsm_sc2_ocr = models.TextField(null=True, verbose_name="汽车销售合同补充合同") 425 fsm_sc2_ocr = models.TextField(null=True, verbose_name="汽车销售合同补充合同")
422 fsm_activited = models.IntegerField(null=False, default=0, verbose_name="fsm激活状态 1:激活") 426 fsm_activited = models.IntegerField(null=False, default=0, verbose_name="fsm激活状态 1:激活")
427 fs_ocr = models.TextField(null=True, verbose_name="财务报表")
428 fss_ocr = models.TextField(null=True, verbose_name="财务情况说明书")
423 429
424 update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间') 430 update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间')
425 create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') 431 create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
...@@ -461,6 +467,8 @@ class HILSEOCRResult(models.Model): ...@@ -461,6 +467,8 @@ class HILSEOCRResult(models.Model):
461 fsm_sc_ocr = models.TextField(null=True, verbose_name="汽车销售合同") 467 fsm_sc_ocr = models.TextField(null=True, verbose_name="汽车销售合同")
462 fsm_sc2_ocr = models.TextField(null=True, verbose_name="汽车销售合同补充合同") 468 fsm_sc2_ocr = models.TextField(null=True, verbose_name="汽车销售合同补充合同")
463 fsm_activited = models.IntegerField(null=False, default=0, verbose_name="fsm激活状态 1:激活") 469 fsm_activited = models.IntegerField(null=False, default=0, verbose_name="fsm激活状态 1:激活")
470 fs_ocr = models.TextField(null=True, verbose_name="财务报表")
471 fss_ocr = models.TextField(null=True, verbose_name="财务情况说明书")
464 472
465 update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间') 473 update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间')
466 create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') 474 create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
......
...@@ -701,5 +701,49 @@ class Comparison: ...@@ -701,5 +701,49 @@ class Comparison:
701 except Exception as e: 701 except Exception as e:
702 return self.RESULT_N 702 return self.RESULT_N
703 703
704 def hash_code_compare(self, input_str, ocr_dict, **kwargs):
705 try:
706 balance_sheet_hash = ocr_dict.get('balance_sheet','')
707 income_statement_hash = ocr_dict.get('income_statement','')
708 cash_flow_statement_hash = ocr_dict.get('cash_flow_statement','')
709 if balance_sheet_hash != input_str or income_statement_hash != input_str or cash_flow_statement_hash != input_str:
710 return self.RESULT_N
711 else:
712 return self.RESULT_Y
713 except Exception as e:
714 return self.RESULT_N
715
716 def stamp_dict_compare(self, input_str, ocr_dict, **kwargs):
717 try:
718 balance_sheet_stamp = ocr_dict.get('balance_sheet','')
719 income_statement_stamp = ocr_dict.get('income_statement','')
720 cash_flow_statement_stamp = ocr_dict.get('cash_flow_statement','')
721 if balance_sheet_stamp != 1 or income_statement_stamp != 1 or cash_flow_statement_stamp != 1:
722 return self.RESULT_N
723 else:
724 return self.RESULT_Y
725 except Exception as e:
726 return self.RESULT_N
727
728 def fiscal_year_compare(self, input_str, ocr_list, **kwargs):
729 try:
730 this_year_str = datetime.now().strftime('%Y')
731 this_year = int(this_year_str)
732 last_year = this_year - 1
733 if str(input_str) != str(this_year) and str(input_str) != str(last_year):
734 return self.RESULT_N
735 return self.RESULT_Y
736 except Exception as e:
737 return self.RESULT_N
738
739 def input_list_not_zero_compare(self, input_list, ocr_list, **kwargs):
740 try:
741 for item in input_list:
742 if float(item) <= 0:
743 return self.RESULT_N
744 return self.RESULT_Y
745 except Exception as e:
746 return self.RESULT_N
747
704 748
705 cp = Comparison() 749 cp = Comparison()
......
1 import pyodbc
2
3 hil_sql = """
4 ALTER TABLE hil_ocr_result ADD fs_ocr nvarchar(max);
5 ALTER TABLE hil_se_ocr_result ADD fs_ocr nvarchar(max);
6 ALTER TABLE hil_ocr_result ADD fss_ocr nvarchar(max);
7 ALTER TABLE hil_se_ocr_result ADD fss_ocr nvarchar(max);
8 """
9
10 afc_sql = """
11 ALTER TABLE afc_ocr_result ADD fs_ocr nvarchar(max);
12 ALTER TABLE afc_se_ocr_result ADD fs_ocr nvarchar(max);
13 ALTER TABLE afc_ocr_result ADD fss_ocr nvarchar(max);
14 ALTER TABLE afc_se_ocr_result ADD fss_ocr nvarchar(max);
15 """
16
17 hil_cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};', autocommit=True)
18
19 hil_cursor = hil_cnxn.cursor()
20 hil_cursor.execute(hil_sql)
21
22 hil_cursor.close()
23 hil_cnxn.close()
24
25 afc_cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};', autocommit=True)
26
27 afc_cursor = afc_cnxn.cursor()
28 afc_cursor.execute(afc_sql)
29
30 afc_cursor.close()
31 afc_cnxn.close()
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!