:art: Add express relative

huangqimin001 3 anni fa
parent
commit
e07a7be156
4 ha cambiato i file con 76 aggiunte e 1 eliminazioni
  1. 56 0
      api/express_views.py
  2. 9 1
      api/urls.py
  3. 6 0
      maintenance/models.py
  4. 5 0
      utils/error/errno_utils.py

+ 56 - 0
api/express_views.py

@@ -0,0 +1,56 @@
1
+# -*- coding: utf-8 -*-
2
+
3
+from __future__ import division
4
+
5
+from django_logit import logit
6
+from django_response import response
7
+
8
+from maintenance.models import ExpressCompanyInfo
9
+from utils.error.errno_utils import ExpressStatusCode
10
+
11
+
12
+@logit
13
+def express_add(request):
14
+    name = request.POST.get('name', '')
15
+
16
+    express = ExpressCompanyInfo.objects.create(name=name)
17
+
18
+    return response(data={
19
+        'express_id': express.id,
20
+    })
21
+
22
+
23
+@logit
24
+def express_delete(request):
25
+    express_id = request.POST.get('express_id', '')
26
+
27
+    ExpressCompanyInfo.objects.filter(id=express_id).update(status=False)
28
+
29
+    return response()
30
+
31
+
32
+@logit
33
+def express_update(request):
34
+    express_id = request.POST.get('express_id', '')
35
+    name = request.POST.get('name', '')
36
+
37
+    try:
38
+        point = ExpressCompanyInfo.objects.get(id=express_id)
39
+    except ExpressCompanyInfo.DoesNotExist:
40
+        return response(ExpressStatusCode.EXPRESS_NOT_FOUND)
41
+
42
+    if name:
43
+        point.name = name
44
+    point.save()
45
+
46
+    return response()
47
+
48
+
49
+@logit
50
+def express_list(request):
51
+    express = ExpressCompanyInfo.objects.filter(status=True)
52
+    express = [exp.data for exp in express]
53
+
54
+    return response(data={
55
+        'express': express,
56
+    })

+ 9 - 1
api/urls.py

@@ -3,7 +3,7 @@
3 3
 from django.conf.urls import url
4 4
 from django_file_upload import views as file_views
5 5
 
6
-from api import (admin_views, clerk_views, complement_views, distributor_views, encrypt_views, log_views,
6
+from api import (admin_views, clerk_views, complement_views, distributor_views, encrypt_views, express_views, log_views,
7 7
                  maintenance_views, mch_views, member_views, model_views, operator_views, refresh_views, sr_views,
8 8
                  staff_views, wx_views)
9 9
 from miniapp import qy_views
@@ -255,3 +255,11 @@ urlpatterns += [
255 255
     url(r'^maintenance/point/update$', maintenance_views.maintenance_point_update, name='maintenance_point_update'),
256 256
     url(r'^maintenance/point/list$', maintenance_views.maintenance_point_list, name='maintenance_point_list'),
257 257
 ]
258
+
259
+# 快递公司
260
+urlpatterns += [
261
+    url(r'^express/add$', express_views.express_add, name='express_add'),
262
+    url(r'^express/delete$', express_views.express_delete, name='express_delete'),
263
+    url(r'^express/update$', express_views.express_update, name='express_update'),
264
+    url(r'^express/list$', express_views.express_list, name='express_list'),
265
+]

+ 6 - 0
maintenance/models.py

@@ -38,6 +38,12 @@ class ExpressCompanyInfo(BaseModelMixin):
38 38
     def __unicode__(self):
39 39
         return '%d' % self.pk
40 40
 
41
+    @property
42
+    def data(self):
43
+        return {
44
+            'name': self.name,
45
+        }
46
+
41 47
 
42 48
 class MaintenaceInfo(BaseModelMixin):
43 49
     name = models.CharField(_(u'name'), max_length=255, blank=True, null=True, help_text=u'姓名')

+ 5 - 0
utils/error/errno_utils.py

@@ -113,6 +113,11 @@ class MaintenacePointStatusCode(BaseStatusCode):
113 113
     MAINTENACE_POINT_NOT_FOUND = StatusCodeField(506001, 'Maintenace Point Not Found', description=u'维修点不存在')
114 114
 
115 115
 
116
+class ExpressStatusCode(BaseStatusCode):
117
+    """ 快递公司相关错误码 5070xx """
118
+    EXPRESS_NOT_FOUND = StatusCodeField(507001, 'Express Not Found', description=u'快递公司不存在')
119
+
120
+
116 121
 class AdministratorStatusCode(BaseStatusCode):
117 122
     """ 操作员相关错误码 4002xx """
118 123
     ADMINISTRATOR_NOT_FOUND = StatusCodeField(400201, 'Administrator Not Found', description=u'管理员不存在')