Merge branch 'CHINARPA-4562'
Showing
2 changed files
with
31 additions
and
0 deletions
| ... | @@ -4,5 +4,6 @@ from . import views | ... | @@ -4,5 +4,6 @@ from . import views |
| 4 | 4 | ||
| 5 | urlpatterns = [ | 5 | urlpatterns = [ |
| 6 | path(r'', views.DocView.as_view()), | 6 | path(r'', views.DocView.as_view()), |
| 7 | path(r'query/employee', views.EmployeeView.as_view()), | ||
| 7 | path(r'contract/v1', views.SEContractView.as_view()), | 8 | path(r'contract/v1', views.SEContractView.as_view()), |
| 8 | ] | 9 | ] | ... | ... |
| ... | @@ -90,6 +90,10 @@ class CustomDecimal(fields.Decimal): | ... | @@ -90,6 +90,10 @@ class CustomDecimal(fields.Decimal): |
| 90 | def load_data(request, schema): | 90 | def load_data(request, schema): |
| 91 | return request.data | 91 | return request.data |
| 92 | 92 | ||
| 93 | employee_args = { | ||
| 94 | 'application_id': fields.Str(required=True, validate=validate.Length(max=64)), | ||
| 95 | 'business_type': fields.Str(required=True, validate=validate.Length(max=64)), | ||
| 96 | } | ||
| 93 | 97 | ||
| 94 | go_args = { | 98 | go_args = { |
| 95 | 'image': fields.Raw(required=True), | 99 | 'image': fields.Raw(required=True), |
| ... | @@ -1845,3 +1849,29 @@ class GoView(GenericView): | ... | @@ -1845,3 +1849,29 @@ class GoView(GenericView): |
| 1845 | return response.ok(data=result) | 1849 | return response.ok(data=result) |
| 1846 | else: | 1850 | else: |
| 1847 | return response.error_msg(msg='识别错误') | 1851 | return response.error_msg(msg='识别错误') |
| 1852 | |||
| 1853 | class EmployeeView(GenericView): | ||
| 1854 | permission_classes = [IsAuthenticated] | ||
| 1855 | authentication_classes = [OAuth2AuthenticationWithUser] | ||
| 1856 | |||
| 1857 | @use_args(employee_args, location='data') | ||
| 1858 | def post(self, request, args): | ||
| 1859 | |||
| 1860 | application_id = args.get('application_id') | ||
| 1861 | business_type = args.get('business_type') | ||
| 1862 | |||
| 1863 | ocr_result_class = HILOCRResult if business_type in consts.HIL_SET else AFCOCRResult | ||
| 1864 | ocr_result_info = ocr_result_class.objects.filter(application_id=application_id).first() | ||
| 1865 | self.running_log.info('[query Employee] [application_id={0}] [business_type={1}] [ocr_result_info exist={2}]'.format(application_id, business_type, ocr_result_info is not None)) | ||
| 1866 | if not ocr_result_info: | ||
| 1867 | self.running_log.info('[query Employee] [application_id={0}] ocr_result none'.format(application_id)) | ||
| 1868 | return response.ok(data=False) | ||
| 1869 | bss_ocr_str = ocr_result_info.bss_ocr | ||
| 1870 | bss_ocr = json.loads(bss_ocr_str) | ||
| 1871 | self.running_log.info('[query Employee] [application_id={0}] [bss_ocr={1}]'.format(application_id, bss_ocr)) | ||
| 1872 | for one_bss in bss_ocr: | ||
| 1873 | income_keywords = one_bss.get('income_keywords') | ||
| 1874 | self.running_log.info('[query Employee] [application_id={0}] [income_keywords={1}]'.format(application_id, income_keywords)) | ||
| 1875 | if income_keywords is not None and len(income_keywords) > 0: | ||
| 1876 | return response.ok(data=True) | ||
| 1877 | return response.ok(data=False) | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
-
Please register or sign in to post a comment