Exemplo n.º 1
0
 def get(self, request):
     # 如登录,显示关注的股票信息
     if already_authorized(request):
         open_id = request.session.get('openid')
         user = User.objects.get(open_id=open_id)
         gids_list = json.loads(user.focus_stock)
         result = []
         for gid_list in gids_list:
             market = gid_list.get('market')
             code = gid_list.get('code')
             result.append(juhe.stock(market + code))
         data = self.wrap_json_response(data=result,
                                        code=ReturnCode.SUCCESS)
         return JsonResponse(data=data, safe=False)
     else:  # 未登录则显示热门列表的股票数据
         result = []
         for stock in popular_stocks:
             gid = stock['market'] + stock['code']
             cache_stock = cache.get(gid)
             if not cache_stock:
                 respone = juhe.stock(gid=gid)
                 cache.set(gid, respone)
                 result.append(respone)
             else:
                 result.append(cache_stock)
         data = self.wrap_json_response(data=result)
         return JsonResponse(data=data, safe=False)
Exemplo n.º 2
0
def get_staus(request):
    if already_authorized(request):
        data = {"is_authorized": 1}
    else:
        data = {"is_authorized": 0}
    response = CommonResponseMixin.wrap_json_response(data=data, code=ReturnCode.SUCCESS)
    return JsonResponse(data=response, safe=False)
Exemplo n.º 3
0
 def get(self, request):
     if len(request.GET) == 0:
         if already_authorized(request):
             open_id = request.session.get('openid')
             user = User.objects.get(open_id=open_id)
             consNames = json.loads(user.focus_stars)
             result = []
             for consName in consNames:
                 cache_star = cache.get(consName)
                 if not cache_star:
                     star = juhe.star(consName)
                     result.append(star)
                     cache.set(consName, star, 300)
                 else:
                     result.append(cache_star)
             respone = self.wrap_json_response(data=result,
                                               code=ReturnCode.SUCCESS)
             return JsonResponse(data=respone, safe=False)
         else:
             respone = self.wrap_json_response(code=ReturnCode.FAILED)
             return JsonResponse(data=respone, safe=False)
     else:
         consName = request.GET
         cache_star = cache.get(consName)
         if not cache_star:
             respone = juhe.star(consName['consName'])
             cache.set(consName, respone, 300)
         else:
             respone = cache_star
         data = self.wrap_json_response(data=respone)
         return JsonResponse(data=data, safe=False)
Exemplo n.º 4
0
    def post(self, request):
        """
        修改用户的数据
        :param request:
        :return:
        """
        if not already_authorized(request):  # 判断是否登录
            response = self.wrap_json_response(code=ReturnCode.FAILED)
            return JsonResponse(data=response, safe=False)
        openid = request.session.get('openid')
        user = User.objects.get(open_id=openid)

        received_body = request.body.decode('utf-8')
        received_body = eval(received_body)

        cities = received_body.get('city')
        stocks = received_body.get('stock')
        stars = received_body.get('star')

        user.focus_cities = json.dumps(cities)  # 将数据重新变为json数据
        user.focus_stock = json.dumps(stocks)
        user.focus_stars = json.dumps(stars)
        user.save()

        response = self.wrap_json_response(message='modify success',
                                           code=ReturnCode.SUCCESS)
        return JsonResponse(data=response, safe=False)
Exemplo n.º 5
0
    def post(self, request):
        # 没有认证
        if not already_authorized(request):
            response = self.wrap_json_response(code=ReturnCode.UNAUTHORIZED)
            return JsonResponse(data=response, safe=False)
        # 认证通过
        open_id = request.session.get('open_id')
        user = User.objects.get(open_id=open_id)

        received_body = request.body.decode('utf-8')
        # 将str转为字典dict
        received_body = eval(received_body)
        print('---\nUSER【%s】[%s] post data:%s' %
              (user.nickname, open_id, received_body))
        cities = received_body.get('city')
        stocks = received_body.get('stock')
        constellations = received_body.get('constellation')

        user.focus_cities = json.dumps(cities)
        user.focus_stocks = json.dumps(stocks)
        user.focus_constellations = json.dumps(constellations)
        user.save()

        response = wrap_json_response(code=ReturnCode.SUCCESS,
                                      message='modify user info success.')
        return JsonResponse(data=response, safe=False)
Exemplo n.º 6
0
    def post(self, request):
        '''
        修改用户的数据
        :param request:
        :return:
        '''
        if not already_authorized(request):
            response = self.json_response(code=ReturnCode.SUCCESS)
            return JsonResponse(data=response, safe=False)
        openid = request.session.get('openid')  # 用户已经登录后执行后面的语句
        user = User.objects.get(openid=openid)  # 通过openid获取用户的信息

        # 接收post传过来的数据(body)
        received_body = request.body.decode('utf-8')
        received_body = eval(received_body)

        # 将数据取出来
        cities = received_body.get('city')
        stocks = received_body.get('stock')
        constellation = received_body.get('constellation')

        # 将取出来的数据保存到数据库中
        user.focus_cities = cities
        user.focus_stocks = stocks
        user.focus_constellations = constellation
        user.save()

        response = self.json_response(code=ReturnCode.SUCCESS,
                                      message='info success')
        return JsonResponse(data=response, safe=False)
        pass
Exemplo n.º 7
0
    def post(self, request):
        """修改用户的数据"""
        # 获取用户
        if not already_authorized(request):
            response = self.wrap_json_response(code=ReturnCode.UNAUTHORIZED)
            return JsonResponse(response, safe=False)
        open_id = request.session.get('open_id')
        user = User.objects.get(open_id=open_id )

        # 将取出的json字符串类型数据保存为字典
        received_body = request.body.decode('utf-8')
        received_body = eval(received_body)

        # 获取数据,
        cities = received_body.get('city')
        stocks = received_body.get('stock')
        constellations = received_body.get('constellation')
        if cities == None: cities = []
        if stocks == None: stocks = []
        if constellations == None: constellations = []

        # 修改数据,保存数据也要保存成json字符串
        user.focus_cities = json.dumps(cities)
        user.focus_stocks = json.dumps(stocks)
        user.focus_constellations = json.dumps(constellations)
        user.save()

        response = self.wrap_json_response(code=ReturnCode.SUCCESS, message='修改用户信息成功.')
        return JsonResponse(data=response, safe=False)
Exemplo n.º 8
0
    def post(self, request):
        if not already_authorized(request):
            response = self.wrap_json_response(code=ReturnCode.UNAUTHORIZED)
            return JsonResponse(data=response, safe=False)

        received_body = json.loads(
            request.body
        )  # {'data': {'domain': 'www.ceshi.com', 'address': '4.3.2.1'}}
        received_body = received_body.get(
            'data')  # {'domain': 'www.ceshi.com', 'address': '4.3.2.1'}
        print(received_body.get('domain'), received_body.get('address'))

        # 在文件中保存
        dnsmasq.main(received_body)

        domain = received_body.get('domain')
        address = received_body.get('address')
        ldnsid = hashlib.md5(domain.encode('utf8')).hexdigest()
        open_id = request.session.get('open_id')
        user = User.objects.get(open_id=open_id)

        new_ldns = Ldns(owner=user,
                        ldnsid=ldnsid,
                        domain=domain,
                        address=address)
        new_ldns.save()

        response_data = self.wrap_json_response(code=ReturnCode.SUCCESS)
        return JsonResponse(data=response_data, safe=False)
Exemplo n.º 9
0
    def get(self, request):
        if not already_authorized(request):
            response = self.wrap_json_response(code=ReturnCode.UNAUTHORIZED)
            return JsonResponse(response, safe=False)
        open_id = request.session.get('open_id')
        print(open_id)
        user = UserProfile.objects.get(open_id=open_id)
        userworks_list = UserWorks.objects.filter(
            user=user).order_by("-add_time")
        works_list = []
        for userworks in userworks_list:
            if userworks.works is not None:
                works_list.append(userworks.works)
            else:
                print(str(userworks.id) + 'userworks.works is None')
        try:
            page = request.GET.get('page', 1)
        except PageNotAnInteger:
            page = 1

        p = Paginator(works_list, 15)
        works = p.page(page)
        work_list_ = []
        have_next = False
        for work in works:
            work_list_.append({"id": work.id, "image_url": str(work.image)})
        if works.has_next():
            have_next = True
        response = {
            "work_list": work_list_,
            "have_next": have_next,
            "code": ReturnCode.SUCCESS
        }
        print(response)
        return JsonResponse(data=response, safe=False)
Exemplo n.º 10
0
    def post(self, request):
        if not already_authorized(request):
            response = self.wrap_json_response(code=ReturnCode.UNAUTHORIZED)
            return JsonResponse(response, safe=False)
        open_id = request.session.get('open_id')
        user = Tbluserinfo.objects.get(open_id=open_id)
        # got str object
        received_body = request.body.decode('utf-8')
        received_body = eval(received_body)

        cities = received_body.get('city')
        stocks = received_body.get('stock')
        constellations = received_body.get('constellation')
        if cities == None: cities = []
        if stocks == None: stocks = []
        if constellations == None: constellations = []

        user.focus_cities = json.dumps(cities)
        user.focus_constellations = json.dumps(constellations)
        user.focus_stocks = json.dumps(stocks)
        user.save()
        message = 'modify user info success.'
        response = CommonResponseMixin.wrap_json_response(
            code=ReturnCode.SUCCESS, message=message)
        return JsonResponse(response, safe=False)
Exemplo n.º 11
0
    def post(self, request):
        if not already_authorized(request):
            response = self.wrap_json_response(code=ReturnCode.UNAUTHORIZED)
            return JsonResponse(response, safe=False)
        open_id = request.session.get('open_id')
        user = UserProfile.objects.get(open_id=open_id)
        # got str object
        received_body = request.body.decode('utf-8')
        received_body = eval(received_body)

        nickname = received_body.get('nickname')
        birthday = received_body.get('birthday')
        gender = received_body.get('gender')
        address = received_body.get('address')
        signature = received_body.get('signature')

        user.nickname = nickname
        user.birthday = birthday
        user.gender = gender
        user.address = address
        user.signature = signature

        user.save()
        message = 'modify user info success.'
        response = CommonResponseMixin.wrap_json_response(
            code=ReturnCode.SUCCESS, message=message)
        return JsonResponse(response, safe=False)
Exemplo n.º 12
0
def get_status(request):
    print('call get_status function...')
    if already_authorized(request):
        data = {'is_authorized': 1}
    else:
        data = {'is_authorized': 0}
    response = CommonResponseMixin.wrap_json_response(data=data, code=ReturnCode.SUCCESS)
    return JsonResponse(data=response, safe=False)
Exemplo n.º 13
0
def stock(request):
    if already_authorized(request):
        user = get_user(request)
        stock = json.loads(user.focus_stocks)
    else:
        stock = ['', '']
    # print(stock)
    response = CommonResponseMixin.wrap_json_response(data=stock,
                                                      code=ReturnCode.SUCCESS)
    return JsonResponse(data=response, safe=False)
Exemplo n.º 14
0
def constellation(request):
    if already_authorized(request):
        user = get_user(request)
        constellations = json.loads(user.focus_constellations)
    else:
        constellations = ['', '', '']
    # print(constellations)
    response = CommonResponseMixin.wrap_json_response(data=constellations,
                                                      code=ReturnCode.SUCCESS)
    return JsonResponse(data=response, safe=False)
Exemplo n.º 15
0
def cropId(request):
    if already_authorized(request):
        user = get_user(request)
        cropIds = json.loads(user.focus_cropIds)

    else:
        cropIds = all_cropIds

    response = CommonResponseMixin.wrap_json_response(data=cropIds,
                                                      code=ReturnCode.SUCCESS)
    return JsonResponse(data=response, safe=False)
Exemplo n.º 16
0
 def get(self,request):
     if already_authorized(request):
         status = {
             'is_authorized' : True
         }
     else:
         status = {
             'is_authorized' : False
         }
     response = self.wrap_json_response(data=status)
     return JsonResponse(data=response,safe=False)
Exemplo n.º 17
0
def constellation(request):
    data = []
    if already_authorized(request):
        user = get_user(request)
        constellations = json.loads(user.focus_constellations)
    else:
        constellations = all_constellations
    for c in constellations:
        result = juhe.constellation(c)
        data.append(result)
    response_data = CommonResponseMixin.wrap_json_response(data=data, code=ReturnCode.SUCCESS)
    return JsonResponse(data=response_data, safe=False)
Exemplo n.º 18
0
 def get(self, request):
     if already_authorized(request):
         user = get_user(request)
         stocks = json.loads(user.focus_stocks)
     else:
         stocks = popular_stocks
     data = []
     for stock in stocks:
         result = thirdparty.juhe.stock(stock['market'], stock['code'])
         data.append(result)
     response = self.wrap_json_response(data=data)
     return JsonResponse(data=response, safe=False)
Exemplo n.º 19
0
 def get(self, request):
     # 如果没有登录, 返回为授权
     if not already_authorized(request):
         response = self.wrap_json_response(code=ReturnCode.UNAUTHORIZED)
         return JsonResponse(data=response, safe=False)
     open_id = request.session.get('open_id')
     user = User.objects.get(open_id=open_id)
     menu_list = user.menu.all()
     user_menu = []
     for app in menu_list:
         user_menu.append(app.to_dict())
     response = self.wrap_json_response(data=user_menu, code=ReturnCode.SUCCESS)
     return JsonResponse(data=response, safe=False)
Exemplo n.º 20
0
def stock(request):
    data = []
    stocks = []
    if already_authorized(request):
        user = get_user(request)
        stocks = json.loads(user.focus_stocks)
    else:
        stocks = popular_stocks
    for stock in stocks:
        result = thirdparty.juhe.stock(stock['market'], stock['code'])
        data.append(result)
    response = CommonResponseMixin.wrap_json_response(data=data, code=ReturnCode.SUCCESS)
    return JsonResponse(response, safe=False)
Exemplo n.º 21
0
 def post(self, request):
     if not already_authorized(request):
         response = self.wrap_json_response(code=ReturnCode.UNAUTHORIZED)
         return JsonResponse(response, safe=False)
     open_id = request.session.get('open_id')
     user = UserProfile.objects.get(open_id=open_id)
     userImage = request.FILES.get("file", None)  # 获取上传的文件,如果没有文件,则默认为None
     user.image = userImage
     user.save()
     response = wrap_json_response(code=ReturnCode.SUCCESS,
                                   message='头像修改成功')
     print(response)
     return JsonResponse(data=response, safe=False)
Exemplo n.º 22
0
 def get(self,request):
     if not already_authorized(request):
         response = self.wrap_json_response(code=ReturnCode.SUCCESS)
         return JsonResponse(data=response,safe=False)
     open_id = request.session['open_id']
     user = User.objects.get(open_id=open_id)
     data = {}
     data['focus'] ={}
     data['focus']['city'] = json.loads(user.focus_cities)
     data['focus']['constellation'] = json.loads(user.focus_constellations)
     data['focus']['stock'] = json.loads(user.focus_stocks)
     response = self.wrap_json_response(data=data,code=ReturnCode.SUCCESS)
     return JsonResponse(data=response,safe=False)
Exemplo n.º 23
0
    def delete(self, request):
        if not already_authorized(request):
            response = self.wrap_json_response(code=ReturnCode.UNAUTHORIZED)
            return JsonResponse(data=response, safe=False)

        domain = request.GET.get('domain').strip()
        # 先在文件中删除该记录,再删数据库记录
        dnsmasq.delete(DNS_CONFIG, domain)
        dnsmasq.restart()

        ldnsid = hashlib.md5(domain.encode('utf8')).hexdigest()
        Ldns.objects.get(ldnsid=ldnsid).delete()
        response_data = self.wrap_json_response(code=ReturnCode.SUCCESS)

        return JsonResponse(data=response_data, safe=False)
Exemplo n.º 24
0
 def get(self, request):
     if not already_authorized(request):
         return JsonResponse({}, code=ReturnCode.UNAUTHORIZED)
     else:
         data = []
         open_id = request.session.get('open_id')
         user = User.objects.filter(open_id=open_id)[0]
         cities = json.loads(user.focus_cities)
         for city in cities:
             result = juhe.weather(city.get('city'))
             result['city_info'] = city
             data.append(result)
         response = self.wrap_json_response(data=data,
                                            code=ReturnCode.SUCCESS)
     return JsonResponse(data=response, safe=False)
Exemplo n.º 25
0
def stock(request):
    data = []
    stocks = []
    # 如果登录就显示登录用户关注的股票,否则显示预定义的股票
    if already_authorized(request):
        user = get_user(request)
        stocks = json.loads(user.focus_constellations)
    else:
        stocks = popular_stocks
    for stock in popular_stocks:
        result = juhe.stock(stock['market'], stock['code'])
        data.append(result)
        response = CommonResponseMixin.wrap_json_response(
            data=data, code=ReturnCode.SUCCESS)
    return JsonResponse(data=response, safe=False)
Exemplo n.º 26
0
 def get(self, request):
     if not already_authorized(request):
         response = self.wrap_json_response(
             {}, utils.response.ReturnCode.UNAUTHORIZED)
     else:
         data = []
         open_id = request.session['open_id']
         print(open_id)
         user = User.objects.get(open_id=open_id)
         cities = json.loads(user.focus_cities)
         for city in cities:
             result = juhe.weather(city['city'], city['area'])
             data.append(result)
         response = self.wrap_json_response(data=data)
     return JsonResponse(response, safe=False)
Exemplo n.º 27
0
def get_stock(request):
    resp_data = []
    if auth.already_authorized(request):
        openid = request.session.get('open_id')
        user = User.objects.get(openid=openid)
        popular_stocks = json.loads(user.focus_stocks)
    else:
        popular_stocks = all_stocks
    for item in popular_stocks:
        print(item['code'])
        item_data = stock(item['market'], item['code'])
        resp_data.append(item_data)
    resp_data = CommonResponseMixin.wrap_json_response(data=resp_data,
                                                       code=ReturnCode.SUCCESS)
    return JsonResponse(data=resp_data, safe=False)
Exemplo n.º 28
0
 def get(self, request):
     if not already_authorized(request):
         response = self.wrap_json_response(code=ReturnCode.UNAUTHORIZED)
         return JsonResponse(response, safe=False)
     open_id = request.session.get('open_id')
     user = User.objects.get(open_id=open_id)
     data = {}
     data['open_id'] = user.open_id
     data['focus'] = {}
     print(user.focus_cities)
     data['focus']['city'] = json.loads(user.focus_cities)
     data['focus']['constellation'] = json.loads(user.focus_constellations)
     data['focus']['stock'] = json.loads(user.focus_stocks)
     print('data: ', data)
     response = CommonResponseMixin.wrap_json_response(code=ReturnCode.SUCCESS, data=data)
     return JsonResponse(response, safe=False)
Exemplo n.º 29
0
    def get(self, request):
        if not already_authorized(request):
            response = self.wrap_json_response(code=ReturnCode.SUCCESS)
            return JsonResponse(data=response, safe=False)

        open_id = request.session.get('open_id')
        user = User.objects.get(open_id=open_id)
        data = {}
        data['focus'] = {}
        print('user.focus_cities is:', user.focus_cities)
        print('user.focus_cropIds is:', user.focus_cropIds)
        data['focus']['city'] = json.loads(user.focus_cities)
        data['focus']['cropId'] = json.loads(user.focus_cropIds)
        print('data is:', data)
        response = self.wrap_json_response(data=data, code=ReturnCode.SUCCESS)
        return JsonResponse(data=response,safe=False)
Exemplo n.º 30
0
 def post(self, request):
     if not already_authorized(request):
         response = self.wrap_json_response(code=ReturnCode.UNAUTHORIZED)
         return JsonResponse(data=response, safe=False)
     user = get_user(request)
     post_menu = json.loads(request.body.decode('utf-8'))
     print(post_menu)
     post_menu = post_menu.get('data')
     focus_menu = []
     for item in post_menu:
         item = App.objects.get(appid=item.get('appid'))
         focus_menu.append(item)
     user.menu.set(focus_menu)
     user.save()
     response = self.wrap_json_response(code=ReturnCode.SUCCESS)
     return JsonResponse(response, safe=False)