youhua
This commit is contained in:
parent
0a9bc85fb3
commit
72b2824b0c
|
@ -1,7 +1,9 @@
|
||||||
<!--pages/lianxi/index.wxml-->
|
<!--pages/lianxi/index.wxml-->
|
||||||
<view class="page">
|
<view class="page">
|
||||||
<view class="page__bd">
|
<view class="page__bd">
|
||||||
<view class="weui-panel__hd">当前工作类别押题卷</view>
|
<view class="weui-panel__hd">当前工作类别押题卷
|
||||||
|
<span style="color:red" wx:if="{{count==0}}">(暂无)</span>
|
||||||
|
</view>
|
||||||
<view class="weui-panel__bd">
|
<view class="weui-panel__bd">
|
||||||
<block wx:for="{{paperData}}" wx:key="unique">
|
<block wx:for="{{paperData}}" wx:key="unique">
|
||||||
<view class="weui-media-box weui-media-box_appmsg">
|
<view class="weui-media-box weui-media-box_appmsg">
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
"ignore": []
|
"ignore": []
|
||||||
},
|
},
|
||||||
"setting": {
|
"setting": {
|
||||||
"urlCheck": true,
|
"urlCheck": false,
|
||||||
"es6": true,
|
"es6": true,
|
||||||
"postcss": true,
|
"postcss": true,
|
||||||
"minified": true,
|
"minified": true,
|
||||||
|
|
|
@ -27,3 +27,10 @@ class ConsumerSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Consumer
|
model = Consumer
|
||||||
exclude = ('avatar','collects')
|
exclude = ('avatar','collects')
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def setup_eager_loading(queryset):
|
||||||
|
""" Perform necessary eager loading of data. """
|
||||||
|
queryset = queryset.select_related('company','workscope')
|
||||||
|
queryset = queryset.prefetch_related('subjects',)
|
||||||
|
return queryset
|
||||||
|
|
|
@ -84,6 +84,11 @@ class ConsumerViewSet(ModelViewSet):
|
||||||
filterset_fields = ('company',)
|
filterset_fields = ('company',)
|
||||||
search_fields = ('^name',)
|
search_fields = ('^name',)
|
||||||
|
|
||||||
|
def get_queryset(self):
|
||||||
|
queryset = self.queryset
|
||||||
|
queryset = self.get_serializer_class().setup_eager_loading(queryset)
|
||||||
|
return queryset
|
||||||
|
|
||||||
def create(self, request, *args, **kwargs):
|
def create(self, request, *args, **kwargs):
|
||||||
serializer = self.get_serializer(data=request.data)
|
serializer = self.get_serializer(data=request.data)
|
||||||
if serializer.is_valid():
|
if serializer.is_valid():
|
||||||
|
|
|
@ -32,6 +32,12 @@ class WorkScopeSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = WorkScope
|
model = WorkScope
|
||||||
fields = '__all__'
|
fields = '__all__'
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def setup_eager_loading(queryset):
|
||||||
|
""" Perform necessary eager loading of data. """
|
||||||
|
queryset = queryset.prefetch_related('questioncat',)
|
||||||
|
return queryset
|
||||||
|
|
||||||
class MoniTestSerializer(serializers.ModelSerializer):
|
class MoniTestSerializer(serializers.ModelSerializer):
|
||||||
"""
|
"""
|
||||||
|
@ -66,9 +72,27 @@ class ExamTestListSerializer(serializers.ModelSerializer):
|
||||||
class AnswerDetailSerializer(serializers.ModelSerializer):
|
class AnswerDetailSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = AnswerDetail
|
model = AnswerDetail
|
||||||
fields = '__all__'
|
exclude = ('examtest',)
|
||||||
|
# fields = '__all__'
|
||||||
depth = 1
|
depth = 1
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def setup_eager_loading(queryset):
|
||||||
|
""" Perform necessary eager loading of data. """
|
||||||
|
# select_related for "to-one" relationships
|
||||||
|
queryset = queryset.select_related('examtest',)
|
||||||
|
|
||||||
|
# prefetch_related for "to-many" relationships
|
||||||
|
queryset = queryset.prefetch_related(
|
||||||
|
'question',)
|
||||||
|
|
||||||
|
# Prefetch for subsets of relationships
|
||||||
|
# queryset = queryset.prefetch_related(
|
||||||
|
# Prefetch('unaffiliated_attendees',
|
||||||
|
# queryset=Attendee.objects.filter(organization__isnull=True))
|
||||||
|
# )
|
||||||
|
return queryset
|
||||||
|
|
||||||
class AnswerDetailCreateSerializer(serializers.ModelSerializer):
|
class AnswerDetailCreateSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = AnswerDetail
|
model = AnswerDetail
|
||||||
|
|
|
@ -36,6 +36,7 @@ class AnswerDetailView(APIView):
|
||||||
queryset = AnswerDetail.objects.all()
|
queryset = AnswerDetail.objects.all()
|
||||||
if request.query_params.get('examtest', None):
|
if request.query_params.get('examtest', None):
|
||||||
queryset = queryset.filter(examtest=request.query_params.get('examtest'))
|
queryset = queryset.filter(examtest=request.query_params.get('examtest'))
|
||||||
|
queryset = AnswerDetailSerializer.setup_eager_loading(queryset)
|
||||||
serializer = AnswerDetailSerializer(instance=queryset,many=True)
|
serializer = AnswerDetailSerializer(instance=queryset,many=True)
|
||||||
return Response(serializer.data)
|
return Response(serializer.data)
|
||||||
|
|
||||||
|
@ -56,6 +57,11 @@ class WorkScopeViewSet(ModelViewSet):
|
||||||
filterset_fields = ['subject']
|
filterset_fields = ['subject']
|
||||||
search_fields = ('^name',)
|
search_fields = ('^name',)
|
||||||
|
|
||||||
|
def get_queryset(self):
|
||||||
|
queryset = self.queryset
|
||||||
|
queryset = self.get_serializer_class().setup_eager_loading(queryset)
|
||||||
|
return queryset
|
||||||
|
|
||||||
@action(methods=['get'], detail=True,url_path='monitest', url_name='gen_monitest',
|
@action(methods=['get'], detail=True,url_path='monitest', url_name='gen_monitest',
|
||||||
authentication_classes=[],permission_classes=[],
|
authentication_classes=[],permission_classes=[],
|
||||||
perms_map=[{'get':'gen_monitest'}])
|
perms_map=[{'get':'gen_monitest'}])
|
||||||
|
|
|
@ -20,7 +20,16 @@ class SubjectSerializer(serializers.ModelSerializer):
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
class QuestioncatSerializerDefault(serializers.ModelSerializer):
|
||||||
|
"""
|
||||||
|
题库分类序列化
|
||||||
|
"""
|
||||||
|
create_time = serializers.DateTimeField(format="%Y-%m-%d %H:%M:%S", required=False, read_only=True)
|
||||||
|
update_time = serializers.DateTimeField(format="%Y-%m-%d %H:%M:%S", required=False, read_only=True)
|
||||||
|
subject_name = serializers.StringRelatedField(source='pid')
|
||||||
|
class Meta:
|
||||||
|
model = Questioncat
|
||||||
|
fields = '__all__'
|
||||||
|
|
||||||
class QuestioncatSerializer(serializers.ModelSerializer):
|
class QuestioncatSerializer(serializers.ModelSerializer):
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -13,7 +13,7 @@ import json
|
||||||
|
|
||||||
from utils.custom import CommonPagination
|
from utils.custom import CommonPagination
|
||||||
from .models import Questioncat, Question
|
from .models import Questioncat, Question
|
||||||
from .serializers import QuestioncatSerializer, QuestionSerializer, SubjectSerializer
|
from .serializers import QuestioncatSerializer, QuestionSerializer, SubjectSerializer, QuestioncatSerializerDefault
|
||||||
from server import settings
|
from server import settings
|
||||||
from crm.models import PaySubject
|
from crm.models import PaySubject
|
||||||
from examtest.models import WorkScope
|
from examtest.models import WorkScope
|
||||||
|
@ -42,7 +42,7 @@ class QuestioncatViewSet(ModelViewSet):
|
||||||
{'get': 'questioncat_list'}, {'post': 'questioncat_create'},
|
{'get': 'questioncat_list'}, {'post': 'questioncat_create'},
|
||||||
{'put': 'questioncat_update'}, {'delete': 'questioncat_delete'})
|
{'put': 'questioncat_update'}, {'delete': 'questioncat_delete'})
|
||||||
queryset = Questioncat.objects.filter(is_delete=0,is_subject=False).all()
|
queryset = Questioncat.objects.filter(is_delete=0,is_subject=False).all()
|
||||||
serializer_class = QuestioncatSerializer
|
serializer_class = QuestioncatSerializerDefault
|
||||||
pagination_class = CommonPagination
|
pagination_class = CommonPagination
|
||||||
ordering_fields = ['id']
|
ordering_fields = ['id']
|
||||||
ordering = ['type','id']
|
ordering = ['type','id']
|
||||||
|
|
Loading…
Reference in New Issue