|
@@ -0,0 +1,33 @@
|
|
|
+# coding=utf-8
|
|
|
+
|
|
|
+from rest_framework.viewsets import ReadOnlyModelViewSet
|
|
|
+from rest_framework.views import APIView
|
|
|
+from utils import response_ok, response_error
|
|
|
+from apps.system.models import SysLog
|
|
|
+from utils.permission import IsAdministrator, IsStaff
|
|
|
+from utils.custom_modelviewset import CustomModelViewSet
|
|
|
+from apps.knowledge.models import KnowledgeBase, KnowledgeBaseFeedback
|
|
|
+from apps.knowledge.filters import KnowledgeBaseFilter
|
|
|
+from apps.knowledge.serializers import KnowledgeBaseSerializer, KnowledgeBaseFeedbackSerializer
|
|
|
+
|
|
|
+
|
|
|
+class KnowledgeViewSet(ReadOnlyModelViewSet):
|
|
|
+ permission_classes = [IsStaff, ]
|
|
|
+ queryset = KnowledgeBase.objects.filter(delete=False)
|
|
|
+ serializer_class = KnowledgeBaseSerializer
|
|
|
+
|
|
|
+ def filter_queryset(self, queryset):
|
|
|
+ f = KnowledgeBaseFilter(self.request.GET, queryset=queryset)
|
|
|
+ return f.qs
|
|
|
+
|
|
|
+
|
|
|
+class KnowledgeBaseFeedbackViewSet(CustomModelViewSet):
|
|
|
+ permission_classes = [IsStaff, ]
|
|
|
+ queryset = KnowledgeBaseFeedback.objects.filter()
|
|
|
+ serializer_class = KnowledgeBaseFeedbackSerializer
|
|
|
+
|
|
|
+ def perform_create(self, serializer):
|
|
|
+ super(KnowledgeBaseFeedbackViewSet, self).perform_create(serializer)
|
|
|
+ instance = serializer.instance
|
|
|
+ validated_data = serializer.validated_data
|
|
|
+ SysLog.objects.addnew(self.request.user, SysLog.INSERT, u'添加知识错误反馈,id=%d' % instance.id, validated_data)
|