# coding=utf-8 from utils.custom_modelviewset import CustomModelViewSet from rest_framework.decorators import action import json from .models import OperationHelp,OperationHelpImg from utils.permission import IsAdministratorUser from .serializer import OperationHelpSerializer from apps.tenant import tenant_log from apps.log.models import BizLog from .filters import OperationHelpFilter from utils import response_ok, response_error from django.db import transaction class OperationHelpViewSet(CustomModelViewSet): permission_classes = [IsAdministratorUser, ] queryset = OperationHelp.objects.filter() serializer_class = OperationHelpSerializer def filter_queryset(self, queryset): queryset = queryset.filter(tenant=self.request.user.employee.tenant) f = OperationHelpFilter(self.request.GET, queryset=queryset) return f.qs def perform_create(self, serializer): super(OperationHelpViewSet,self).perform_create(serializer) instance = serializer.instance validated_data = serializer.validated_data tenant_log(self.request.user.employee, BizLog.INSERT, u'添加运维帮助[%s],id=%d' % (instance.name, instance.id), validated_data) def perform_update(self, serializer): super(OperationHelpViewSet,self).perform_update(serializer) instance = serializer.instance validated_data = serializer.validated_data tenant_log(self.request.user.employee, BizLog.INSERT, u'修改运维帮助[%s],id=%d' % (instance.name, instance.id), validated_data) @action(methods=['post'], detail=False) def upload_image(self, request): file = self.request.FILES.get('file') img = OperationHelpImg.objects._add_img(file,request.user) if img: return response_ok(img.image) return response_error('上传失败,请重新上传!')