se compare part 5
Showing
4 changed files
with
99 additions
and
9 deletions
| ... | @@ -1054,18 +1054,23 @@ EEP_OCR_FIELD = 'eep_ocr' | ... | @@ -1054,18 +1054,23 @@ EEP_OCR_FIELD = 'eep_ocr' |
| 1054 | DL_OCR_FIELD = 'dl_ocr' | 1054 | DL_OCR_FIELD = 'dl_ocr' |
| 1055 | PP_OCR_FIELD = 'pp_ocr' | 1055 | PP_OCR_FIELD = 'pp_ocr' |
| 1056 | MVC_OCR_FIELD = 'mvc_ocr' | 1056 | MVC_OCR_FIELD = 'mvc_ocr' |
| 1057 | MVI_OCR_FIELD = 'mvi_ocr' | ||
| 1058 | BC_OCR_FIELD = 'bc_ocr' | ||
| 1059 | UCI_OCR_FIELD = 'uci_ocr' | ||
| 1060 | DDA_OCR_FIELD = 'bs_ocr' | ||
| 1057 | 1061 | ||
| 1058 | RESULT_MAPPING = { | 1062 | RESULT_MAPPING = { |
| 1059 | # MVI_CLASSIFY: 'mvi_ocr', | 1063 | MVI_CLASSIFY: MVI_OCR_FIELD, |
| 1060 | IC_CLASSIFY: IC_OCR_FIELD, | 1064 | IC_CLASSIFY: IC_OCR_FIELD, |
| 1061 | RP_CLASSIFY: RP_OCR_FIELD, | 1065 | RP_CLASSIFY: RP_OCR_FIELD, |
| 1062 | # BC_CLASSIFY: 'bc_ocr', | 1066 | BC_CLASSIFY: BC_OCR_FIELD, |
| 1063 | BL_CLASSIFY: BL_OCR_FIELD, | 1067 | BL_CLASSIFY: BL_OCR_FIELD, |
| 1064 | # UCI_CLASSIFY: 'uci_ocr', | 1068 | UCI_CLASSIFY: UCI_OCR_FIELD, |
| 1065 | EEP_CLASSIFY: EEP_OCR_FIELD, | 1069 | EEP_CLASSIFY: EEP_OCR_FIELD, |
| 1066 | DL_CLASSIFY: DL_OCR_FIELD, | 1070 | DL_CLASSIFY: DL_OCR_FIELD, |
| 1067 | PP_CLASSIFY: PP_OCR_FIELD, | 1071 | PP_CLASSIFY: PP_OCR_FIELD, |
| 1068 | MVC_CLASSIFY: MVC_OCR_FIELD, | 1072 | MVC_CLASSIFY: MVC_OCR_FIELD, |
| 1073 | DDA_CLASSIFY: DDA_OCR_FIELD, | ||
| 1069 | # VAT_CLASSIFY: 'vat_ocr', | 1074 | # VAT_CLASSIFY: 'vat_ocr', |
| 1070 | } | 1075 | } |
| 1071 | 1076 | ... | ... |
| ... | @@ -979,7 +979,7 @@ class Command(BaseCommand, LoggerMixin): | ... | @@ -979,7 +979,7 @@ class Command(BaseCommand, LoggerMixin): |
| 979 | finally: | 979 | finally: |
| 980 | # TODO 识别结果存一张表,方便跑报表 | 980 | # TODO 识别结果存一张表,方便跑报表 |
| 981 | 981 | ||
| 982 | # CA比对 | 982 | # 比对 |
| 983 | if len(license_summary) > 0 and doc.document_scheme != consts.DOC_SCHEME_LIST[2]: | 983 | if len(license_summary) > 0 and doc.document_scheme != consts.DOC_SCHEME_LIST[2]: |
| 984 | try: | 984 | try: |
| 985 | is_ca = True if doc.document_scheme == consts.DOC_SCHEME_LIST[0] else False | 985 | is_ca = True if doc.document_scheme == consts.DOC_SCHEME_LIST[0] else False | ... | ... |
| ... | @@ -190,6 +190,58 @@ class AFCComparisonInfo(models.Model): | ... | @@ -190,6 +190,58 @@ class AFCComparisonInfo(models.Model): |
| 190 | db_table = 'afc_comparison_info' | 190 | db_table = 'afc_comparison_info' |
| 191 | situ_db_label = 'afc' | 191 | situ_db_label = 'afc' |
| 192 | 192 | ||
| 193 | # 比对信息表 | ||
| 194 | class AFCSEComparisonInfo(models.Model): | ||
| 195 | id = models.BigAutoField(primary_key=True, verbose_name="id") # 主键 | ||
| 196 | uniq_seq = models.CharField(max_length=128, verbose_name="唯一序列号") # 索引 | ||
| 197 | application_id = models.CharField(max_length=64, verbose_name="申请id") # 索引 | ||
| 198 | application_version = models.SmallIntegerField(default=0, verbose_name="应用版本") | ||
| 199 | # CUSTOMER_TYPE = ['TCCOR', 'TCDAS', 'TCFRE', 'TCIAS', 'TCIND', 'TCSEP', 'TCURE'] | ||
| 200 | customer_type = models.CharField(max_length=16, verbose_name="顾客类型") | ||
| 201 | first_submmison_date = models.CharField(max_length=16, verbose_name="首次提交时间") | ||
| 202 | property_doc_policy = models.CharField(null=True, max_length=16, verbose_name="申请及文件政策") | ||
| 203 | |||
| 204 | individual_cus_info = models.TextField(verbose_name="个人信息") | ||
| 205 | corporate_cus_info = models.TextField(null=True, verbose_name="公司信息") | ||
| 206 | vehicle_info = models.TextField(verbose_name="车辆信息") | ||
| 207 | insurance_info = models.TextField(verbose_name="保险信息") | ||
| 208 | bank_info = models.TextField(verbose_name="银行信息") | ||
| 209 | quotationt_info = models.TextField(verbose_name="报价信息") | ||
| 210 | |||
| 211 | update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间') | ||
| 212 | create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') # 索引 | ||
| 213 | |||
| 214 | class Meta: | ||
| 215 | managed = False | ||
| 216 | db_table = 'afc_se_comparison_info' | ||
| 217 | situ_db_label = 'afc' | ||
| 218 | |||
| 219 | |||
| 220 | # 比对信息表 | ||
| 221 | class HILSEComparisonInfo(models.Model): | ||
| 222 | id = models.BigAutoField(primary_key=True, verbose_name="id") # 主键 | ||
| 223 | uniq_seq = models.CharField(max_length=128, verbose_name="唯一序列号") # 索引 | ||
| 224 | application_id = models.CharField(max_length=64, verbose_name="申请id") # 索引 | ||
| 225 | application_version = models.SmallIntegerField(default=0, verbose_name="应用版本") | ||
| 226 | # CUSTOMER_TYPE = ['TCCOR', 'TCDAS', 'TCFRE', 'TCIAS', 'TCIND', 'TCSEP', 'TCURE'] | ||
| 227 | customer_type = models.CharField(max_length=16, verbose_name="顾客类型") | ||
| 228 | first_submmison_date = models.CharField(max_length=16, verbose_name="首次提交时间") | ||
| 229 | property_doc_policy = models.CharField(null=True, max_length=16, verbose_name="申请及文件政策") | ||
| 230 | |||
| 231 | individual_cus_info = models.TextField(verbose_name="个人信息") | ||
| 232 | corporate_cus_info = models.TextField(null=True, verbose_name="公司信息") | ||
| 233 | vehicle_info = models.TextField(verbose_name="车辆信息") | ||
| 234 | insurance_info = models.TextField(verbose_name="保险信息") | ||
| 235 | bank_info = models.TextField(verbose_name="银行信息") | ||
| 236 | quotationt_info = models.TextField(verbose_name="报价信息") | ||
| 237 | |||
| 238 | update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间') | ||
| 239 | create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') # 索引 | ||
| 240 | |||
| 241 | class Meta: | ||
| 242 | managed = False | ||
| 243 | db_table = 'hil_se_comparison_info' | ||
| 244 | |||
| 193 | 245 | ||
| 194 | # 比对信息表 | 246 | # 比对信息表 |
| 195 | class HILComparisonInfo(models.Model): | 247 | class HILComparisonInfo(models.Model): |
| ... | @@ -220,7 +272,7 @@ class AFCOCRResult(models.Model): | ... | @@ -220,7 +272,7 @@ class AFCOCRResult(models.Model): |
| 220 | id = models.AutoField(primary_key=True, verbose_name="id") # 主键 | 272 | id = models.AutoField(primary_key=True, verbose_name="id") # 主键 |
| 221 | application_id = models.CharField(max_length=64, verbose_name="申请id") # 索引 | 273 | application_id = models.CharField(max_length=64, verbose_name="申请id") # 索引 |
| 222 | 274 | ||
| 223 | bs_ocr = models.TextField(null=True, verbose_name="银行流水") | 275 | bs_ocr = models.TextField(null=True, verbose_name="DDA") |
| 224 | mvi_ocr = models.TextField(null=True, verbose_name="机动车销售统一发票") | 276 | mvi_ocr = models.TextField(null=True, verbose_name="机动车销售统一发票") |
| 225 | ic_ocr = models.TextField(null=True, verbose_name="身份证") | 277 | ic_ocr = models.TextField(null=True, verbose_name="身份证") |
| 226 | rp_ocr = models.TextField(null=True, verbose_name="居住证") | 278 | rp_ocr = models.TextField(null=True, verbose_name="居住证") |
| ... | @@ -247,7 +299,7 @@ class HILOCRResult(models.Model): | ... | @@ -247,7 +299,7 @@ class HILOCRResult(models.Model): |
| 247 | id = models.AutoField(primary_key=True, verbose_name="id") # 主键 | 299 | id = models.AutoField(primary_key=True, verbose_name="id") # 主键 |
| 248 | application_id = models.CharField(max_length=64, verbose_name="申请id") # 索引 | 300 | application_id = models.CharField(max_length=64, verbose_name="申请id") # 索引 |
| 249 | 301 | ||
| 250 | bs_ocr = models.TextField(null=True, verbose_name="银行流水") | 302 | bs_ocr = models.TextField(null=True, verbose_name="DDA") |
| 251 | mvi_ocr = models.TextField(null=True, verbose_name="机动车销售统一发票") | 303 | mvi_ocr = models.TextField(null=True, verbose_name="机动车销售统一发票") |
| 252 | ic_ocr = models.TextField(null=True, verbose_name="身份证") | 304 | ic_ocr = models.TextField(null=True, verbose_name="身份证") |
| 253 | rp_ocr = models.TextField(null=True, verbose_name="居住证") | 305 | rp_ocr = models.TextField(null=True, verbose_name="居住证") |
| ... | @@ -273,7 +325,7 @@ class AFCSEOCRResult(models.Model): | ... | @@ -273,7 +325,7 @@ class AFCSEOCRResult(models.Model): |
| 273 | id = models.AutoField(primary_key=True, verbose_name="id") # 主键 | 325 | id = models.AutoField(primary_key=True, verbose_name="id") # 主键 |
| 274 | application_id = models.CharField(max_length=64, verbose_name="申请id") # 索引 | 326 | application_id = models.CharField(max_length=64, verbose_name="申请id") # 索引 |
| 275 | 327 | ||
| 276 | bs_ocr = models.TextField(null=True, verbose_name="银行流水") | 328 | bs_ocr = models.TextField(null=True, verbose_name="DDA") |
| 277 | mvi_ocr = models.TextField(null=True, verbose_name="机动车销售统一发票") | 329 | mvi_ocr = models.TextField(null=True, verbose_name="机动车销售统一发票") |
| 278 | ic_ocr = models.TextField(null=True, verbose_name="身份证") | 330 | ic_ocr = models.TextField(null=True, verbose_name="身份证") |
| 279 | rp_ocr = models.TextField(null=True, verbose_name="居住证") | 331 | rp_ocr = models.TextField(null=True, verbose_name="居住证") |
| ... | @@ -300,7 +352,7 @@ class HILSEOCRResult(models.Model): | ... | @@ -300,7 +352,7 @@ class HILSEOCRResult(models.Model): |
| 300 | id = models.AutoField(primary_key=True, verbose_name="id") # 主键 | 352 | id = models.AutoField(primary_key=True, verbose_name="id") # 主键 |
| 301 | application_id = models.CharField(max_length=64, verbose_name="申请id") # 索引 | 353 | application_id = models.CharField(max_length=64, verbose_name="申请id") # 索引 |
| 302 | 354 | ||
| 303 | bs_ocr = models.TextField(null=True, verbose_name="银行流水") | 355 | bs_ocr = models.TextField(null=True, verbose_name="DDA") |
| 304 | mvi_ocr = models.TextField(null=True, verbose_name="机动车销售统一发票") | 356 | mvi_ocr = models.TextField(null=True, verbose_name="机动车销售统一发票") |
| 305 | ic_ocr = models.TextField(null=True, verbose_name="身份证") | 357 | ic_ocr = models.TextField(null=True, verbose_name="身份证") |
| 306 | rp_ocr = models.TextField(null=True, verbose_name="居住证") | 358 | rp_ocr = models.TextField(null=True, verbose_name="居住证") | ... | ... |
| ... | @@ -21,7 +21,9 @@ from .models import ( | ... | @@ -21,7 +21,9 @@ from .models import ( |
| 21 | PriorityApplication, | 21 | PriorityApplication, |
| 22 | GCAPRecords, | 22 | GCAPRecords, |
| 23 | AFCComparisonInfo, | 23 | AFCComparisonInfo, |
| 24 | AFCSEComparisonInfo, | ||
| 24 | HILComparisonInfo, | 25 | HILComparisonInfo, |
| 26 | HILSEComparisonInfo, | ||
| 25 | AFCCompareOfflineReport, | 27 | AFCCompareOfflineReport, |
| 26 | HILCompareOfflineReport, | 28 | HILCompareOfflineReport, |
| 27 | AFCCACompareResult, | 29 | AFCCACompareResult, |
| ... | @@ -524,7 +526,38 @@ class SECompareView(GenericView): | ... | @@ -524,7 +526,38 @@ class SECompareView(GenericView): |
| 524 | # pos上传比对信息接口 SE | 526 | # pos上传比对信息接口 SE |
| 525 | @use_args(se_compare_args, location='data') | 527 | @use_args(se_compare_args, location='data') |
| 526 | def post(self, request, args): | 528 | def post(self, request, args): |
| 527 | self.running_log.info('se compare in') | 529 | # 存库 |
| 530 | content = args.get('content', {}) | ||
| 531 | uniq_seq = content.get('uniqSeq') | ||
| 532 | business_type = content.get('applicationEntity') | ||
| 533 | application_id = content.get('applicationId') | ||
| 534 | |||
| 535 | individual_cus_info = json.dumps(content.get('individualCusInfo')) | ||
| 536 | vehicle_info = json.dumps(content.get('vehicleInfo')) | ||
| 537 | insurance_info = json.dumps(content.get('insuranceInfo')) | ||
| 538 | bank_info = json.dumps(content.get('bankInfo')) | ||
| 539 | quotationt_info = json.dumps(content.get('quotationtInfo')) | ||
| 540 | corporate_cus_info = json.dumps(content.get('corporateCusInfo')) if isinstance( | ||
| 541 | content.get('corporateCusInfo'), dict) else None | ||
| 542 | |||
| 543 | comparison_class = HILSEComparisonInfo if business_type in consts.HIL_SET else AFCSEComparisonInfo | ||
| 544 | comparison_class.objects.create( | ||
| 545 | uniq_seq=uniq_seq, | ||
| 546 | application_id=application_id, | ||
| 547 | application_version=content.get('applicationVersion'), | ||
| 548 | customer_type=content.get('customerType'), | ||
| 549 | first_submmison_date=content.get('firstSubmmisonDate'), | ||
| 550 | property_doc_policy=content.get('propertyDocumentPolicy', None), | ||
| 551 | individual_cus_info=individual_cus_info, | ||
| 552 | corporate_cus_info=corporate_cus_info, | ||
| 553 | vehicle_info=vehicle_info, | ||
| 554 | insurance_info=insurance_info, | ||
| 555 | bank_info=bank_info, | ||
| 556 | quotationt_info=quotationt_info | ||
| 557 | ) | ||
| 558 | # 触发比对 | ||
| 559 | compare.apply_async((application_id, business_type, uniq_seq, None, False), | ||
| 560 | queue='queue_compare') | ||
| 528 | return response.ok() | 561 | return response.ok() |
| 529 | 562 | ||
| 530 | post.openapi_doc = ''' | 563 | post.openapi_doc = ''' | ... | ... |
-
Please register or sign in to post a comment