def change_expire(self, request): """改变redis中课程的有效期""" user_id = request.user.id expire_id = request.data.get("expire_id") course_id = request.data.get("course_id") try: course = Course.objects.get(is_show=True, is_delete=False, id=course_id) # 如果前端传递来的有效期选项 如果不是0 则修改课程对应的有效期 if expire_id > 0: expire_iem = CourseExpire.objects.filter(is_show=True, is_delete=False, id=expire_id) if not expire_iem: raise Course.DoesNotExist() except Course.DoesNotExist: return Response({"message": "课程信息不存在"}, status=status.HTTP_400_BAD_REQUEST) connection = get_redis_connection("cart") connection.hset("cart_%s" % user_id, course_id, expire_id) # 重新计算切换有效期后的价钱 real_price = course.real_nuw_price(expire_id) return Response({"message": "切换有效期成功", "price": real_price})
def change_expire(self, request): """切换购物车商品的勾选状态""" user_id = request.user.id expire_id = request.data.get("expire_id") course_id = request.data.get("course_id") try: # 判断课程是否存在 course = Course.objects.get(is_show=True, is_deleted=False, id=course_id) # 判断课程的有效期选项是0还是其他的数值,如果是其他数值,还要判断是否存在于有效期选项表中 if expire_id > 0: epxire_item = CourseExpire.objects.filter(is_show=True, is_deleted=False, id=expire_id) if not epxire_item: raise Course.DoesNotExist() except Course.DoesNotExist: return Response({"message": "参数有误!当前商品课程不存在或者不能存在的有效期!"}, status=status.HTTP_400_BAD_REQUEST) redis_conn = get_redis_connection("cart") redis_conn.hset("cart_%s" % user_id, course_id, expire_id) # 在切换有效期选项以后,重新获取真实价格 real_price = course.real_price(expire_id) return Response({"message": "切换课程有效期成功!", "real_price": real_price})
def change_expire(self, request): """改变redis中的课程的有效期""" user_id = request.user.id course_id = request.data.get('course_id') expire_id = request.data.get('expire_id') try: course = Course.objects.get(is_show=True, is_delete=False, pk=course_id) if expire_id > 0: expire_item = CourseExpire.objects.filter(is_show=True, is_delete=False, pk=expire_id) if not expire_item: raise Course.DoesNotExist() except Course.DoesNotExist: return Response({"message": "当前课程已下架或不存在"}, status=status.HTTP_400_BAD_REQUEST) redis_connection = get_redis_connection('cart') redis_connection.hset('cart_%s' % user_id, course_id, expire_id) course_real_price = course.real_expire_price(expire_id) return Response({"message": "切换有效期成功", 'course_real_price': course_real_price}, status=status.HTTP_200_OK)
def discount_expire(self, request): """改变redis中的有效期""" course_id = request.data.get('course_id') user_id = request.user.id expire_id = request.data.get('expric_id') # print(course_id,user_id,expire_id) try: course = Course.objects.get(is_show=True, is_delete=False, pk=course_id) # 判断前端传递 的有效期 选项 if expire_id > 0: expire_item = CourseExpire.objects.filter(is_show=True, is_delete=False, pk=expire_id) if not expire_item: raise Course.DoesNotExist() except Course.DoesNotExist: return Response({'message': '课程信息不存在'}, status=status.HTTP_400_BAD_REQUEST) connection = get_redis_connection('cart') connection.hset('cart_%s' % user_id, course_id, expire_id) price = course.expire_real_price(expire_id) if price != '': return Response({'message': '切换有效期成功', "price": price}) return Response({'message': '切换有效期成功'})