Ejemplo n.º 1
0
 def get(self, request, pk, *args, **kwargs):
     ret = BaseResponse()
     try:
         course_data = models.Course.objects.get(pk=pk)
         ser = CourseSerializer(instance=course_data)
         ret.data = ser.data
     except Exception as e:
         ret.code = 500
         ret.error = '獲取數據失敗'
     return Response(ret.dict)
Ejemplo n.º 2
0
 def get(self, request, *args, **kwargs):
     ret = BaseResponse()
     try:
         course_data = models.Course.objects.all()
         ser = DegreeCourseSerializer(instance=course_data, many=True)
         ret.data = ser.data
     except Exception as e:
         ret.code = 500
         ret.error = '獲取數據失敗'
     return Response(ret.dict)
Ejemplo n.º 3
0
    def update(self, request, *args, **kwargs):

        response = BaseResponse()
        try:
            course_id = request.data.get('courseid')
            policy_id = str(request.data.get('policyid')) if request.data.get('policyid') else None

            key = settings.LUFFY_SHOPPING_CAR % (USER_ID, course_id,)

            if not CONN.exists(key):
                response.code = 10007
                response.error = '课程不存在'
                return Response(response.dict)

            price_policy_dict = json.loads(CONN.hget(key, 'price_policy_dict').decode('utf-8'))
            if policy_id not in price_policy_dict:
                response.code = 10008
                response.error = '价格策略不存在'
                return Response(response.dict)

            CONN.hset(key, 'default_price_id', policy_id)
            CONN.expire(key, 20 * 60)
            response.data = '修改成功'
        except Exception as e:
            response.code = 10009
            response.error = '修改失败'

        return Response(response.dict)
Ejemplo n.º 4
0
    def destroy(self, request, *args, **kwargs):

        response = BaseResponse()
        try:
            courseid = request.GET.get('courseid')
            key = settings.LUFFY_SHOPPING_CAR % (USER_ID, courseid,)

            CONN.delete(key)
            response.data = '删除成功'
        except Exception as e:
            response.code = 10006
            response.error = '删除失败'
        return Response(response.dict)
Ejemplo n.º 5
0
    def get(self, request, *args, **kwargs):
        # 可利用request.version取版本號
        ret = BaseResponse()
        try:
            course_data = models.Course.objects.all()
            # 分頁
            page = PageNumberPagination()
            course_list = page.paginate_queryset(course_data, request, self)

            ser = CourseSerializer(instance=course_list, many=True)
            ret.data = ser.data
        except Exception as e:
            ret.code = 500
            ret.error = '獲取數據失敗'

        return Response(ret.dict)