No Description

maintenance_views.py 4.6KB

    # -*- coding: utf-8 -*- from __future__ import division from django.conf import settings from django_logit import logit from django_response import response from paginator import pagination from maintenance.models import MaintenaceInfo from utils.admin_utils import is_maintenanceman from utils.error.errno_utils import MaintenaceStatusCode @logit def maintenance_add(request): user_id = request.POST.get('user_id', '') name = request.POST.get('name', '') phone = request.POST.get('phone', '') address = request.POST.get('address', '') sn = request.POST.get('sn', '') desc = request.POST.get('desc', '') point_id = request.POST.get('point_id', '') point_name = request.POST.get('point_name', '') express_name = request.POST.get('express_name', '') tracking_number = request.POST.get('tracking_number', '') maintenace_status = request.POST.get('maintenace_status', '') maintenace = MaintenaceInfo.objects.create( user_id=user_id, name=name, phone=phone, address=address, sn=sn, desc=desc, point_id=point_id, point_name=point_name, express_name=express_name, tracking_number=tracking_number, maintenace_status=maintenace_status, ) return response(data={ 'maintenace_id': maintenace.id, }) @logit def maintenance_delete(request): brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID) maintenace_id = request.POST.get('maintenace_id', '') user_id = request.POST.get('user_id', '') try: maintenace = MaintenaceInfo.objects.get(id=maintenace_id, status=True) except MaintenaceInfo.DoesNotExist: return response(MaintenaceStatusCode.MAINTENACE_NOT_FOUND) if not is_maintenanceman(brand_id, user_id) and user_id != maintenace.user_id: return response(MaintenaceStatusCode.MAINTENACE_PERMISSION_DENIED) maintenace.status = False maintenace.save() return response() @logit def maintenance_update(request): brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID) maintenace_id = request.POST.get('maintenace_id', '') user_id = request.POST.get('user_id', '') name = request.POST.get('name', '') phone = request.POST.get('phone', '') address = request.POST.get('address', '') sn = request.POST.get('sn', '') desc = request.POST.get('desc', '') point_id = request.POST.get('point_id', '') point_name = request.POST.get('point_name', '') express_name = request.POST.get('express_name', '') tracking_number = request.POST.get('tracking_number', '') maintenace_status = request.POST.get('maintenace_status', '') try: maintenace = MaintenaceInfo.objects.get(id=maintenace_id, status=True) except MaintenaceInfo.DoesNotExist: return response(MaintenaceStatusCode.MAINTENACE_NOT_FOUND) if not is_maintenanceman(brand_id, user_id) and user_id != maintenace.user_id: return response(MaintenaceStatusCode.MAINTENACE_PERMISSION_DENIED) if name: maintenace.name = name if phone: maintenace.phone = phone if address: maintenace.address = address if sn: maintenace.sn = sn if desc: maintenace.desc = desc if point_id: maintenace.point_id = point_id if point_name: maintenace.point_name = point_name if express_name: maintenace.express_name = express_name if tracking_number: maintenace.tracking_number = tracking_number if maintenace_status: maintenace.maintenace_status = maintenace_status maintenace.save() return response() @logit def maintenance_list(request): brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID) user_id = request.POST.get('user_id', '') page = request.POST.get('page', 1) num = request.POST.get('num', 20) maintenaces = MaintenaceInfo.objects.filter(status=True) if not is_maintenanceman(brand_id, user_id): maintenaces = maintenaces.filter(user_id=user_id) maintenaces = [maintenace.data for maintenace in maintenaces] maintenaces, left = pagination(maintenaces, page, num) return response(data={ 'maintenaces': maintenaces, 'left': left, }) @logit def maintenance_detail(request): maintenace_id = request.POST.get('maintenace_id', '') try: maintenace = MaintenaceInfo.objects.get(id=maintenace_id, status=True) except MaintenaceInfo.DoesNotExist: return response(MaintenaceStatusCode.MAINTENACE_NOT_FOUND) return response(data={ 'maintenace': maintenace.data, })