views.py 875 B

123456789101112131415161718192021222324252627
  1. # coding=utf-8
  2. from rest_framework import generics
  3. from util import response_ok
  4. from util.wx.wechat import WeChat
  5. from util.exceptions import CustomError
  6. from apps.customer.activity.serializers import ActivitySerializer
  7. from apps.activity.models import Activity
  8. class ActivityDetailView(generics.RetrieveAPIView):
  9. # permission_classes = [IsCustomerUser, ]
  10. queryset = Activity.objects.filter(enabled=True, delete=False)
  11. serializer_class = ActivitySerializer
  12. def retrieve(self, request, *args, **kwargs):
  13. id = request.GET.get('id')
  14. appid = request.GET.get('appid')
  15. WeChat.checkAppid(appid)
  16. instance = self.queryset.filter(id=id).first()
  17. if not instance:
  18. raise CustomError(u'未找到相应活动信息!')
  19. serializer = self.get_serializer(instance)
  20. return response_ok(serializer.data)