@@ -6,6 +6,7 @@ import os |
||
6 | 6 |
from django_six import CompatibilityBaseCommand, close_old_connections |
7 | 7 |
|
8 | 8 |
from integral.models import SaleclerkSubmitLogInfo |
9 |
+from logs.models import ComplementCodeLogInfo |
|
9 | 10 |
from utils.qiniucdn import upload_file_path |
10 | 11 |
from utils.redis.connect import r |
11 | 12 |
from utils.redis.rkeys import QINIU_UPLOAD_LIST |
@@ -62,4 +63,31 @@ class Command(CompatibilityBaseCommand): |
||
62 | 63 |
ssli.is_upload_qiniu = is_upload_qiniu |
63 | 64 |
ssli.save() |
64 | 65 |
|
66 |
+ elif model == 'ComplementCodeLogInfo': |
|
67 |
+ try: |
|
68 |
+ ccli = ComplementCodeLogInfo.objects.get(pk=pk) |
|
69 |
+ except ComplementCodeLogInfo.DoesNotExist: |
|
70 |
+ continue |
|
71 |
+ |
|
72 |
+ is_upload_qiniu = True |
|
73 |
+ |
|
74 |
+ if ccli.shot_image: |
|
75 |
+ try: |
|
76 |
+ if os.path.exists(ccli.shot_image.path): |
|
77 |
+ upload_file_path(ccli.shot_image.path, key=ccli.shot_image.name, bucket='tamron') |
|
78 |
+ os.remove(ccli.shot_image.path) |
|
79 |
+ except Exception: |
|
80 |
+ is_upload_qiniu = False |
|
81 |
+ |
|
82 |
+ if ccli.invoice_image: |
|
83 |
+ try: |
|
84 |
+ if os.path.exists(ccli.invoice_image.path): |
|
85 |
+ upload_file_path(ccli.invoice_image.path, key=ccli.invoice_image.name, bucket='tamron') |
|
86 |
+ os.remove(ccli.invoice_image.path) |
|
87 |
+ except Exception: |
|
88 |
+ is_upload_qiniu = False |
|
89 |
+ |
|
90 |
+ ccli.is_upload_qiniu = is_upload_qiniu |
|
91 |
+ ccli.save() |
|
92 |
+ |
|
65 | 93 |
close_old_connections() |
@@ -5,6 +5,7 @@ import logging |
||
5 | 5 |
from django_six import CompatibilityBaseCommand |
6 | 6 |
|
7 | 7 |
from integral.models import SaleclerkSubmitLogInfo |
8 |
+from logs.models import ComplementCodeLogInfo |
|
8 | 9 |
from utils.redis.connect import r |
9 | 10 |
from utils.redis.rkeys import QINIU_UPLOAD_LIST |
10 | 11 |
|
@@ -18,9 +19,15 @@ class Command(CompatibilityBaseCommand): |
||
18 | 19 |
logger.info('Upload image qiniu producer is dealing') |
19 | 20 |
|
20 | 21 |
sslis = SaleclerkSubmitLogInfo.objects.filter(is_upload_qiniu=False) |
21 |
- |
|
22 | 22 |
for ssli in sslis: |
23 | 23 |
r.rpushjson(QINIU_UPLOAD_LIST, { |
24 | 24 |
'model': 'SaleclerkSubmitLogInfo', |
25 | 25 |
'pk': ssli.pk, |
26 | 26 |
}) |
27 |
+ |
|
28 |
+ cclis = ComplementCodeLogInfo.objects.filter(is_upload_qiniu=False) |
|
29 |
+ for ccli in cclis: |
|
30 |
+ r.rpushjson(QINIU_UPLOAD_LIST, { |
|
31 |
+ 'model': 'ComplementCodeLogInfo', |
|
32 |
+ 'pk': ccli.pk, |
|
33 |
+ }) |
@@ -29,8 +29,8 @@ class MchSearchModelAndCameraLogInfoAdmin(admin.ModelAdmin): |
||
29 | 29 |
|
30 | 30 |
|
31 | 31 |
class ComplementCodeLogInfoAdmin(admin.ModelAdmin): |
32 |
- list_display = ('user_id', 'log_id', 'name', 'phone', 'model_id', 'model_name', 'sn', 'shot_image', 'invoice_image', 'audit_status', 'ciphertext', 'is_contacted', 'status', 'created_at', 'updated_at') |
|
33 |
- list_filter = ('model_id', 'audit_status', 'is_contacted', 'status') |
|
32 |
+ list_display = ('user_id', 'log_id', 'name', 'phone', 'model_id', 'model_name', 'sn', 'shot_image', 'invoice_image', 'audit_status', 'ciphertext', 'is_contacted', 'is_upload_qiniu', 'status', 'created_at', 'updated_at') |
|
33 |
+ list_filter = ('model_id', 'audit_status', 'is_contacted', 'is_upload_qiniu', 'status') |
|
34 | 34 |
|
35 | 35 |
|
36 | 36 |
admin.site.register(MchInfoDecryptLogInfo, MchInfoDecryptLogInfoAdmin) |
@@ -0,0 +1,20 @@ |
||
1 |
+# -*- coding: utf-8 -*- |
|
2 |
+# Generated by Django 1.11.29 on 2021-11-01 07:08 |
|
3 |
+from __future__ import unicode_literals |
|
4 |
+ |
|
5 |
+from django.db import migrations, models |
|
6 |
+ |
|
7 |
+ |
|
8 |
+class Migration(migrations.Migration): |
|
9 |
+ |
|
10 |
+ dependencies = [ |
|
11 |
+ ('logs', '0016_auto_20210107_1438'), |
|
12 |
+ ] |
|
13 |
+ |
|
14 |
+ operations = [ |
|
15 |
+ migrations.AddField( |
|
16 |
+ model_name='complementcodeloginfo', |
|
17 |
+ name='is_upload_qiniu', |
|
18 |
+ field=models.BooleanField(default=False, help_text='\u662f\u5426\u5df2\u4e0a\u4f20\u4e03\u725b', verbose_name='is_upload_qiniu'), |
|
19 |
+ ), |
|
20 |
+ ] |
@@ -7,6 +7,7 @@ from shortuuidfield import ShortUUIDField |
||
7 | 7 |
from TimeConvert import TimeConvert as tc |
8 | 8 |
|
9 | 9 |
from mch.models import ModelInfo, OperatorInfo |
10 |
+from utils.qiniucdn import qiniu_file_url |
|
10 | 11 |
|
11 | 12 |
|
12 | 13 |
class MchInfoEncryptLogInfo(BaseModelMixin): |
@@ -147,6 +148,8 @@ class ComplementCodeLogInfo(BaseModelMixin): |
||
147 | 148 |
|
148 | 149 |
is_contacted = models.BooleanField(_(u'is_contacted'), default=False, help_text=u'是否已联系用户') |
149 | 150 |
|
151 |
+ is_upload_qiniu = models.BooleanField(_(u'is_upload_qiniu'), default=False, help_text=_(u'是否已上传七牛')) |
|
152 |
+ |
|
150 | 153 |
class Meta: |
151 | 154 |
verbose_name = _(u'补码记录') |
152 | 155 |
verbose_name_plural = _(u'补码记录') |
@@ -156,7 +159,7 @@ class ComplementCodeLogInfo(BaseModelMixin): |
||
156 | 159 |
|
157 | 160 |
@property |
158 | 161 |
def shot_image_url(self): |
159 |
- return upload_file_url(self.shot_image) |
|
162 |
+ return qiniu_file_url(self.shot_image.name, bucket='tamron') if self.is_upload_qiniu else upload_file_url(self.shot_image) |
|
160 | 163 |
|
161 | 164 |
@property |
162 | 165 |
def shot_image_path(self): |
@@ -164,7 +167,7 @@ class ComplementCodeLogInfo(BaseModelMixin): |
||
164 | 167 |
|
165 | 168 |
@property |
166 | 169 |
def invoice_image_url(self): |
167 |
- return upload_file_url(self.invoice_image) |
|
170 |
+ return qiniu_file_url(self.invoice_image.name, bucket='tamron') if self.is_upload_qiniu else upload_file_url(self.invoice_image) |
|
168 | 171 |
|
169 | 172 |
@property |
170 | 173 |
def invoice_image_path(self): |