1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- # coding=utf-8
- from django.db import transaction
- from rest_framework.decorators import action
- from utils import response_ok
- from utils.custom_modelviewset import CustomModelViewSet
- from apps.account import tenant_log
- from apps.foundation.models import BizLog
- from .filters import *
- from .serializers import *
- from .models import *
- class VhicleDriveReserveViewSet(CustomModelViewSet):
- queryset = VhicleDriveReserve.objects.filter(delete=False)
- serializer_class = VhicleDriveReserveSerializer
- def filter_queryset(self, queryset):
- f = VhicleDriveReserveFilter(self.request.GET, queryset=queryset)
- return f.qs
- @action(methods=['post'], detail=True)
- def change_status(self, request, pk):
- order = VhicleDriveReserve.objects.filter(id=pk).first()
- status = request.GET.get('status')
- with transaction.atomic():
- order.status = int(status)
- order.save()
- tenant_log(self.request.user, BizLog.UPDATE, u'修改试驾单状态[%s],id=%d' % (VhicleDriveReserve.STATUS_CHOICES[order.status-1][1], order.id))
- return response_ok()
- class VhicleInquiryViewSet(CustomModelViewSet):
- queryset = VhicleInquiry.objects.filter(delete=False)
- serializer_class = VhicleInquirySerializer
- def filter_queryset(self, queryset):
- f = VhicleInquiryFilter(self.request.GET, queryset=queryset)
- return f.qs
- @action(methods=['post'], detail=True)
- def visit(self, request, pk):
- order = VhicleInquiry.objects.filter(id=pk).first()
- with transaction.atomic():
- if order.status != VhicleInquiry.WAIT_VISIT:
- raise CustomError(u'当前状态不允许修改!')
- order.status = VhicleInquiry.VISITED
- order.save()
- tenant_log(self.request.user, BizLog.UPDATE, u'新车询价单回访,id=%d' % (order.id))
- return response_ok()
|