| @@ -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 | + }) | 
| @@ -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 | +] | 
| @@ -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'姓名') | 
| @@ -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'管理员不存在') |