233 305
     if tracking_info:
234
-        if type_ == 'tracking':
235
-            maintenance.tracking_info = tracking_info
236
-            maintenance.tracking_signed = is_tracking_signed(tracking_info)
237
-        else:
238
-            maintenance.back_tracking_info = tracking_info
239
-            maintenance.back_tracking_signed = is_tracking_signed(tracking_info)
240
-        maintenance.save()
306
+        maintenance_tracking_info_update(maintenance, type_, tracking_info)
241 307
 
242 308
     return response(data={
243 309
         'type': type_,
@@ -283,12 +349,6 @@ def maintenance_tracking_info_callback(request):
283 349
     except MaintenaceInfo.DoesNotExist:
284 350
         return response(MaintenanceStatusCode.MAINTENACE_NOT_FOUND)
285 351
 
286
-    if type_ == 'tracking':
287
-        maintenance.tracking_info = tracking_info
288
-        maintenance.tracking_signed = is_tracking_signed(tracking_info)
289
-    else:
290
-        maintenance.back_tracking_info = tracking_info
291
-        maintenance.back_tracking_signed = is_tracking_signed(tracking_info)
292
-    maintenance.save()
352
+    maintenance_tracking_info_update(maintenance, type_, tracking_info)
293 353
 
294 354
     return response()

+ 6 - 1
maintenance/models.py

@@ -54,6 +54,11 @@ class ExpressCompanyInfo(BaseModelMixin):
54 54
 
55 55
 
56 56
 class MaintenaceInfo(BaseModelMixin):
57
+    TRACKING_TO_DESPATCH = u'寄出运送中'
58
+    TRACKING_SIGNED_FIXING = u'已签收修理中'
59
+    TRACKING_FIXED_BACK = u'已修复寄回'
60
+    TRACKING_BACK_SIGNED = u'寄回签收'
61
+
57 62
     user_id = models.CharField(_(u'user_id'), max_length=32, blank=True, null=True, help_text=u'用户唯一标识', db_index=True)
58 63
 
59 64
     name = models.CharField(_(u'name'), max_length=255, blank=True, null=True, help_text=u'姓名')
@@ -81,7 +86,7 @@ class MaintenaceInfo(BaseModelMixin):
81 86
     back_tracking_signed = models.BooleanField(_(u'back_tracking_signed'), default=False, help_text=u'寄回快递是否已签收')
82 87
 
83 88
     # 寄出运送中、已签收修理中、已修复寄回、寄回签收
84
-    maintenance_status = models.CharField(_(u'maintenance_status'), max_length=8, default=u'寄出运送中', help_text=u'维修状态')
89
+    maintenance_status = models.CharField(_(u'maintenance_status'), max_length=8, default=TRACKING_TO_DESPATCH, help_text=u'维修状态')
85 90
     maintenance_status_at = JSONField(_(u'maintenance_status_at'), blank=True, null=True, default={}, help_text=u'维修状态变更时间')
86 91
 
87 92
     class Meta:

Kodo/kodo - Gogs: Go Git Service

2 次代码提交 (f82e76f883aeb8c57a224e97a3d5cfb10a4260e6)

作者 SHA1 备注 提交日期
  huangqimin001 f998fb9ef7 :art: iSort & PEP8 4 年之前
  Brightcells 21b4a5403a add api lensman_brief_api 9 年之前