fix bug
Showing
5 changed files
with
17 additions
and
6 deletions
... | @@ -24,7 +24,7 @@ class LoginView(ObtainJSONWebToken, GenericView): | ... | @@ -24,7 +24,7 @@ class LoginView(ObtainJSONWebToken, GenericView): |
24 | # rh.set_login_times(user_name, LOGIN_TIMES_LIMIT_EXPIRES) | 24 | # rh.set_login_times(user_name, LOGIN_TIMES_LIMIT_EXPIRES) |
25 | raise self.invalid_params(msg="用户名或密码错误") | 25 | raise self.invalid_params(msg="用户名或密码错误") |
26 | serializer = self.get_serializer(data=request.data) | 26 | serializer = self.get_serializer(data=request.data) |
27 | # serializer.is_valid() | 27 | serializer.is_valid() |
28 | user = serializer.object.get('user') | 28 | user = serializer.object.get('user') |
29 | data = { | 29 | data = { |
30 | 'user_id': user.id, | 30 | 'user_id': user.id, | ... | ... |
... | @@ -1694,7 +1694,7 @@ MVI_COMPARE_LOGIC = { | ... | @@ -1694,7 +1694,7 @@ MVI_COMPARE_LOGIC = { |
1694 | 'vinNo': ('车辆识别代码', 'se_common_compare', {}, '发票车架号与系统不一致'), | 1694 | 'vinNo': ('车辆识别代码', 'se_common_compare', {}, '发票车架号与系统不一致'), |
1695 | 'dealer': ('销方名称', 'se_contain_compare_2', {}, '发票销货单位名称与系统不一致'), | 1695 | 'dealer': ('销方名称', 'se_contain_compare_2', {}, '发票销货单位名称与系统不一致'), |
1696 | 'vehicleTransactionAmount': ('价税合计小写', 'se_amount_compare', {}, '发票车辆价格与系统不一致'), | 1696 | 'vehicleTransactionAmount': ('价税合计小写', 'se_amount_compare', {}, '发票车辆价格与系统不一致'), |
1697 | 'customerName': ('购方名称', 'se_common_compare', {}, '发票购买方姓名与系统不一致'), | 1697 | 'customerName': ('购方名称', 'se_name_compare', {'is_passport': True, 'replace_kuohao': True}, '发票购买方姓名与系统不一致'), |
1698 | 'idNum': ('购买方身份证号或组织机构代码', 'se_common_compare', {}, '发票购买方证件号码与系统不一致'), | 1698 | 'idNum': ('购买方身份证号或组织机构代码', 'se_common_compare', {}, '发票购买方证件号码与系统不一致'), |
1699 | 'dateOfInvoice': ('开票日期', 'se_date_compare_2', {'three_month': True}, '发票开票日期早于首次提交申请日期'), | 1699 | 'dateOfInvoice': ('开票日期', 'se_date_compare_2', {'three_month': True}, '发票开票日期早于首次提交申请日期'), |
1700 | 'stamp': ('销售单位章', 'se_common_compare', {}, '发票无章'), | 1700 | 'stamp': ('销售单位章', 'se_common_compare', {}, '发票无章'), |
... | @@ -1711,7 +1711,7 @@ ZZSSE_FIELD = '增值税税额' | ... | @@ -1711,7 +1711,7 @@ ZZSSE_FIELD = '增值税税额' |
1711 | UCI_COMPARE_LOGIC = { | 1711 | UCI_COMPARE_LOGIC = { |
1712 | 'vinNo': ('车架号', 'se_common_compare', {}, '二手车发票车架号与系统不一致'), | 1712 | 'vinNo': ('车架号', 'se_common_compare', {}, '二手车发票车架号与系统不一致'), |
1713 | 'vehicleTransactionAmount': ('价税合计小写', 'se_amount_compare', {}, '二手车发票车价合计与系统车辆价格不一致'), | 1713 | 'vehicleTransactionAmount': ('价税合计小写', 'se_amount_compare', {}, '二手车发票车价合计与系统车辆价格不一致'), |
1714 | 'customerName': ('购方名称', 'se_name_compare', {'is_passport': True}, '二手车发票买方姓名与系统不一致'), | 1714 | 'customerName': ('购方名称', 'se_name_compare', {'is_passport': True, 'replace_kuohao': True}, '二手车发票买方姓名与系统不一致'), |
1715 | 'idNum': ('购方纳税人识别号', 'se_contain_compare_2', {}, '二手车发票买方证件号码与系统不一致'), | 1715 | 'idNum': ('购方纳税人识别号', 'se_contain_compare_2', {}, '二手车发票买方证件号码与系统不一致'), |
1716 | 'dateOfInvoice': ('开票日期', 'se_date_compare_2', {'three_month': True}, '二手车发票开票日期早于首次提交申请日期'), | 1716 | 'dateOfInvoice': ('开票日期', 'se_date_compare_2', {'three_month': True}, '二手车发票开票日期早于首次提交申请日期'), |
1717 | 'stamp': ('发票章', 'se_common_compare', {}, '二手车发票章需人工核查'), | 1717 | 'stamp': ('发票章', 'se_common_compare', {}, '二手车发票章需人工核查'), | ... | ... |
... | @@ -833,7 +833,7 @@ class HILAutoSettlement(models.Model): | ... | @@ -833,7 +833,7 @@ class HILAutoSettlement(models.Model): |
833 | ocr_auto_result_pass = models.BooleanField(null=True, verbose_name="auto结果") | 833 | ocr_auto_result_pass = models.BooleanField(null=True, verbose_name="auto结果") |
834 | ocr_whole_result_pass = models.BooleanField(null=True, verbose_name="整体结果") | 834 | ocr_whole_result_pass = models.BooleanField(null=True, verbose_name="整体结果") |
835 | ocr_auto_result = models.TextField(null=True, verbose_name="auto比对结果") | 835 | ocr_auto_result = models.TextField(null=True, verbose_name="auto比对结果") |
836 | ocr_latest_comparison_time = models.DateTimeField(auto_now=True, null=True, verbose_name='最新比对时间') # 索引 | 836 | ocr_latest_comparison_time = models.DateTimeField(null=True, verbose_name='最新比对时间') # 索引 |
837 | 837 | ||
838 | update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间') | 838 | update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间') |
839 | create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') | 839 | create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') |
... | @@ -863,7 +863,7 @@ class AFCAutoSettlement(models.Model): | ... | @@ -863,7 +863,7 @@ class AFCAutoSettlement(models.Model): |
863 | ocr_auto_result_pass = models.BooleanField(null=True, verbose_name="auto结果") | 863 | ocr_auto_result_pass = models.BooleanField(null=True, verbose_name="auto结果") |
864 | ocr_whole_result_pass = models.BooleanField(null=True, verbose_name="整体结果") | 864 | ocr_whole_result_pass = models.BooleanField(null=True, verbose_name="整体结果") |
865 | ocr_auto_result = models.TextField(verbose_name="auto比对结果") | 865 | ocr_auto_result = models.TextField(verbose_name="auto比对结果") |
866 | ocr_latest_comparison_time = models.DateTimeField(auto_now=True, null=True, verbose_name='最新比对时间') | 866 | ocr_latest_comparison_time = models.DateTimeField(null=True, verbose_name='最新比对时间') |
867 | 867 | ||
868 | update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间') | 868 | update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间') |
869 | create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') | 869 | create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') | ... | ... |
... | @@ -2423,11 +2423,12 @@ def se_contract_compare(license_en, ocr_res_dict, strip_list, is_gsyh): | ... | @@ -2423,11 +2423,12 @@ def se_contract_compare(license_en, ocr_res_dict, strip_list, is_gsyh): |
2423 | update_args[k] = v | 2423 | update_args[k] = v |
2424 | else: | 2424 | else: |
2425 | update_args = compare_logic[name][2] | 2425 | update_args = compare_logic[name][2] |
2426 | result = getattr(cp, compare_logic[name][1])(value, ocr_str_or_list, **update_args) | ||
2427 | if isinstance(ocr_str_or_list, list): | 2426 | if isinstance(ocr_str_or_list, list): |
2428 | ocr_str = json.dumps(ocr_str_or_list, ensure_ascii=False) | 2427 | ocr_str = json.dumps(ocr_str_or_list, ensure_ascii=False) |
2429 | else: | 2428 | else: |
2429 | ocr_str_or_list = ocr_str_or_list.strip() | ||
2430 | ocr_str = ocr_str_or_list | 2430 | ocr_str = ocr_str_or_list |
2431 | result = getattr(cp, compare_logic[name][1])(value, ocr_str_or_list, **update_args) | ||
2431 | reason = compare_logic[name][3] | 2432 | reason = compare_logic[name][3] |
2432 | else: | 2433 | else: |
2433 | result = consts.RESULT_N | 2434 | result = consts.RESULT_N | ... | ... |
... | @@ -35,7 +35,14 @@ class Comparison: | ... | @@ -35,7 +35,14 @@ class Comparison: |
35 | ' ': '', | 35 | ' ': '', |
36 | '·': '', | 36 | '·': '', |
37 | } | 37 | } |
38 | self.KH_TRANS_MAP = { | ||
39 | '(': '1', | ||
40 | ')': '1', | ||
41 | '(': '1', | ||
42 | ')': '1', | ||
43 | } | ||
38 | self.TRANS = str.maketrans(self.TRANS_MAP) | 44 | self.TRANS = str.maketrans(self.TRANS_MAP) |
45 | self.KH_TRANS = str.maketrans(self.KH_TRANS_MAP) | ||
39 | self.re_obj = r'[(\(].*?[\))]' | 46 | self.re_obj = r'[(\(].*?[\))]' |
40 | 47 | ||
41 | def build_res(self, result): | 48 | def build_res(self, result): |
... | @@ -225,6 +232,9 @@ class Comparison: | ... | @@ -225,6 +232,9 @@ class Comparison: |
225 | if kwargs.get('is_passport'): | 232 | if kwargs.get('is_passport'): |
226 | input_tmp = input_str.upper().replace(' ', '') | 233 | input_tmp = input_str.upper().replace(' ', '') |
227 | ocr_tmp = ocr_str.upper().replace(' ', '') | 234 | ocr_tmp = ocr_str.upper().replace(' ', '') |
235 | if kwargs.get('replace_kuohao'): | ||
236 | input_tmp = input_tmp.translate(self.KH_TRANS) | ||
237 | ocr_tmp = ocr_tmp.translate(self.KH_TRANS) | ||
228 | if input_tmp.find(ocr_tmp) == -1: | 238 | if input_tmp.find(ocr_tmp) == -1: |
229 | return self.RESULT_N | 239 | return self.RESULT_N |
230 | else: | 240 | else: | ... | ... |
-
Please register or sign in to post a comment