Esempio n. 1
0
    def get(self, request):
        # 获取全部用户的数据
        user = request.user
        page = 1
        limit = 20

        # 如果页面名是favorites,就返回收藏的项目列表
        #获取收藏夹中名字是user的条目
        ret = Favorites.objects.filter(user=user,
                                       is_favorites=True).values("project_id")
        ret = Projects.objects.filter(
            project_id__in=ret).order_by('-update_time')

        # 调用分页的方法 获取数据
        context = getData().getData(ret, page, limit)
        # 获取data
        data = context["data"]
        for tmp in data:
            tmp['is_favorites'] = False
            # 获取收藏数据user project
            project = Projects.objects.get(project_id=tmp['project_id'])
            # 在收藏夹模型找,如果有数据就返回ture
            try:
                favorites = Favorites.objects.filter(user=user,
                                                     project=project,
                                                     is_favorites=True)
            except:
                favorites = None
            if favorites:
                tmp['is_favorites'] = True

            tmp['user'] = User.objects.get(id=tmp['user']).username

        # 使用ComplexEncoder格式化jason
        return HttpResponse(json.dumps(context))
Esempio n. 2
0
    def get(self, request):
        # 获取用户信息
        user = request.user
        username = user.username
        # 获取全部数据
        ret = PicsModels.objects.all()
        # 获取页码及页数
        page = int(request.GET.get('page'))
        limit = int(request.GET.get('limit'))
        # 调用分页的方法 获取数据
        context = getData().getData(ret, page, limit)
        # 获取数据中data数据
        data = context["data"]
        # 在字典内添加四个组件代码
        for tmp in data:
            tmp['leftsidecode'] = PartPicModels.objects.get(
                id=tmp['leftside']).svgcode
            tmp['middlecode'] = PartPicModels.objects.get(
                id=tmp['middle']).svgcode
            tmp['wheelcode'] = PartPicModels.objects.get(
                id=tmp['wheel']).svgcode
            tmp['rightsidecode'] = PartPicModels.objects.get(
                id=tmp['rightside']).svgcode
            tmp['textcode'] = PartPicModels.objects.get(id=tmp['text']).svgcode
            tmp['user'] = User.objects.get(id=tmp['user']).username
            # 默认为不可以edit,如果用户就是创建者,修改为可以
            tmp['can_edit'] = False
            if tmp['user'] == username or user.is_superuser:
                tmp['can_edit'] = True

        return HttpResponse(json.dumps(context, ensure_ascii=False))
Esempio n. 3
0
 def get(self, request):
     # 获取全部数据
     ret = User.objects.all()
     page = int(request.GET.get('page'))
     limit = int(request.GET.get('limit'))
     # 调用分页的方法 获取数据
     context = getData().getData(ret, page, limit)
     # 使用ComplexEncoder格式化jason
     return HttpResponse(json.dumps(context, ensure_ascii=False))
Esempio n. 4
0
 def get(self, request, project_id):
     # 获取数据
     ret = PdsVersion.objects.filter(
         project_id=project_id).order_by('-create_time')
     # 调用分页的方法 获取数据
     context = getData().getData(ret, 1, 99)
     # 获取data
     data = context["data"]
     for tmp in data:
         tmp['user'] = User.objects.get(id=tmp['user']).username
     # 使用ComplexEncoder格式化jason
     return HttpResponse(json.dumps(context))
Esempio n. 5
0
    def get(self, request):
        # 获取全部用户的数据
        user = request.user
        page = int(request.GET.get('page'))
        limit = int(request.GET.get('limit'))
        # 获取开始时间,如果为空,时间为2019-01-01, 否则为输入时间
        start = datetime.date(
            2019, 1,
            1) if not request.GET.get('start') else datetime.datetime.strptime(
                request.GET.get('start'), '%Y-%m-%d')
        # 获取结束时间,如果为空,时间为今天, 否则为输入时间
        end = datetime.date.today(
        ) if not request.GET.get('end') else datetime.datetime.strptime(
            request.GET.get('end'), '%Y-%m-%d')
        name = request.GET.get('name')
        # 获取的区域权限
        location_permiss = eval(user.location_permiss)
        # 如果搜索名称有值
        if name:
            ret = Projects.objects.filter(
                projectlocation__in=location_permiss,
                name__icontains=name,
                create_time__range=[start, end + datetime.timedelta(days=1)],
                is_delete=False).order_by('-create_time')
        # 如果为空,为全部数据
        else:
            ret = Projects.objects.filter(
                projectlocation__in=location_permiss,
                create_time__range=[start, end + datetime.timedelta(days=1)],
                is_delete=False).order_by('-create_time')
        # 调用分页的方法 获取数据
        context = getData().getData(ret, page, limit)
        # 获取data
        data = context["data"]
        for tmp in data:
            tmp['is_favorites'] = False
            # 获取收藏数据user project
            project = Projects.objects.get(project_id=tmp['project_id'])
            # 在收藏夹模型找,如果有数据就返回ture
            try:
                favorites = Favorites.objects.filter(user=user,
                                                     project=project,
                                                     is_favorites=True)
            except:
                favorites = None
            if favorites:
                tmp['is_favorites'] = True

            tmp['user'] = User.objects.get(id=tmp['user']).username

        # 使用ComplexEncoder格式化jason
        return HttpResponse(json.dumps(context))
Esempio n. 6
0
    def get(self, request):
        # 获取用户信息
        user = request.user
        username = user.username
        # 获取全部的数据
        ret = PartPicModels.objects.all()
        # 获取页数及数量
        page = int(request.GET.get('page'))
        limit = int(request.GET.get('limit'))
        # 调用分页的方法 获取数据
        context = getData().getData(ret, page, limit)
        data = context["data"]
        # 在字典内添加四个组件代码
        for tmp in data:
            tmp['user'] = User.objects.get(id=tmp['user']).username
            # 默认为不可以edit,如果用户就是创建者,修改为可以
            tmp['can_edit'] = False
            if tmp['user'] == username or user.is_superuser:
                tmp['can_edit'] = True

        return HttpResponse(json.dumps(context))