Пример #1
0
    def updateFilter(self, request):
        data = self.readData(request)
        if data['f_repeat'] == 'on':
            data['f_repeat'] = 1
        else:
            data['f_repeat'] = 0

        args = {}
        args['table'] = 'Filter'
        args['attributes'] = [
            'f_start_time', 'f_stop_time', 'f_repeat', 'f_visibility'
        ]
        args['values'] = [
            data['f_start_time'], data['f_stop_time'], data['f_repeat'],
            data['f_visibility'], data['stateid'], data['uid'], data['tagid']
        ]
        args['conditions'] = [{
            'field': 'stateid',
            'logic': 'And'
        }, {
            'field': 'uid',
            'logic': 'And'
        }, {
            'field': 'tagid',
            'logic': 'And'
        }]
        SQLExecuter().doUpdateData(args)
        '''
        Filter.objects.filter(stateid=data['stateid'], uid=data['uid'], tagid=data['tagid']).update(
            f_start_time=data['f_start_time'], f_stop_time=data['f_stop_time'], f_repeat=data['f_repeat'],
            f_visibility=data['f_visibility'])
            '''
        return self.createResultSet(data)
Пример #2
0
 def getPendingsInfoList(self, data):
     strSQL = 'Select uid, invitationid From friend Where is_friendship = 2 And f_uid= %s And uid Not In (Select f_uid From friend Where is_friendship = 1 And uid = %s)'
     args = [data['uid'], data['uid']]
     plist = SQLExecuter().doRawSQL(strSQL, args)
     flist = []
     for friend in plist:
         fuser = User.objects.filter(uid=friend['uid']).values()[0]
         fuser['invitationid'] = friend['invitationid']
         flist.append(fuser)
     return flist
Пример #3
0
    def addNote(self, data):
        newNoteid = self.getNewNoteid()
        '''
        notetime = Note()
        notetime.note = data['note']
        #notetime.n_timestamp = timezone.now()
        print "======Insert time======"
        notetime.n_timestamp = JingoTimezone().getLocalTime()
        notetime.link = ''
        notetime.noteid = newNoteid
        notetime.uid = User(uid=data['uid'])

        if 'radius' in data:
            notetime.radius = data['radius']
            notetime.n_visibility = data['n_visibility']
            if 'is_comment' in data:
                notetime.is_comment = data['is_comment']
            else:
                notetime.is_comment = 0
        else:
            notetime.radius = N_DEFAULT_RADIUS     # default 200 yards
            notetime.n_visibility = 0                    # default 0: public
            notetime.is_comment = IS_COMMENT

        notetime.n_latitude = data['n_latitude']
        notetime.n_longitude = data['n_longitude']
        notetime.n_like = N_LIKES
        notetime.save()
        '''
        if 'radius' in data:
            radius = data['radius']
            n_visibility = data['n_visibility']
            if 'is_comment' in data:
                is_comment = data['is_comment']
            else:
                is_comment = 0
        else:
            radius = N_DEFAULT_RADIUS  # default 200 yards
            n_visibility = 0  # default 0: public
            is_comment = IS_COMMENT

        data['n_longitude'] = "%.6f" % float(data['n_longitude'])
        data['n_latitude'] = "%.6f" % float(data['n_latitude'])
        timestamp = JingoTimezone().getLocalTime()
        values = [
            data['note'], timestamp, data['link'], newNoteid, data['uid'],
            radius, n_visibility, data['n_latitude'], data['n_longitude'],
            is_comment, N_LIKES
        ]
        #print values
        args = dict([('table', 'note'), ('values', values)])
        SQLExecuter().doInsertData(args)

        data['noteid'] = newNoteid
        return data
Пример #4
0
    def addInvitation(self, data):
        newInvitationid = self.getNewInvitationid()
        # 0:denied, 1:accepted, 2:pending, 3:cancel
        values = [int(data['uid']), int(data['f_uid']), 2, newInvitationid]
        args = dict([('table', 'friend'), ('values', values)])
        SQLExecuter().doInsertData(args)

        data['friendship'] = 'pending'
        data['invitationid'] = newInvitationid

        return data
Пример #5
0
 def logUserKeywords(self, data, keywords):
     #currenttime         = timezone.now()
     currenttime = JingoTimezone().getLocalTime()
     data['u_longitude'] = "%.6f" % float(data['u_longitude'])
     data['u_latitude'] = "%.6f" % float(data['u_latitude'])
     for keyword in keywords:
         values = [
             self.getNewLogid(),
             int(data['uid']), keyword, data['u_longitude'],
             data['u_latitude'], currenttime
         ]
         args = dict([('table', 'log_keywords'), ('values', values)])
         SQLExecuter().doInsertData(args)
Пример #6
0
 def deleteTag(self, request):
     data = self.readData(request)
     args = {}
     args['table'] = 'Tag'
     args['attributes'] = [{
         'field': 'stateid',
         'logic': 'And'
     }, {
         'field': 'uid',
         'logic': 'And'
     }]
     args['values'] = [data['tagid'], data['uid']]
     SQLExecuter().doDeleteData(args)
     return self.createResultSet(data)
Пример #7
0
 def addComment(self, data):
     newCommentid = self.getNewCommentid()
     data['c_longitude'] = "%.6f" % float(data['c_longitude'])
     data['c_latitude'] = "%.6f" % float(data['c_latitude'])
     values = [
         newCommentid,
         int(data['noteid']),
         JingoTimezone().getLocalTime(),
         int(data['uid']),
         float(data['c_latitude']),
         float(data['c_longitude']), data['comment']
     ]
     #print values
     args = dict([('table', 'comments'), ('values', values)])
     SQLExecuter().doInsertData(args)
     return newCommentid
Пример #8
0
 def getUserSysTags(self, data):
     result = []
     args = {}
     args['columns'] = ['b.*, a.tag_name, a.sys_tagid']
     args['tables'] = ['tag as a', 'filter as b']
     args['joins'] = ['a.tagid = b.tagid', 'a.tagid>=%s And a.tagid<=%s']
     args['conditions'] = [{
         'criteria': 'b.uid=',
         'logic': 'And'
     }, {
         'criteria': 'b.stateid=',
         'logic': 'And'
     }]
     args['values'] = [0, 10, data['uid_id'], data['stateid']]
     slist = SQLExecuter().doSelectData(args)
     for sys in slist:
         sys['is_checked'] = 0
         result.append(sys)
     return result
Пример #9
0
 def __init__(self):
     self.sql = SQLExecuter()
Пример #10
0
 def insertState(self, uid, is_current, stateid):
     data = [stateid, STATE_NAME_DEFAULT, uid, is_current]
     args = dict([('table', 'State'), ('values', data)])
     SQLExecuter().doInsertData(args)
Пример #11
0
 def addNoteTag(self, data):
     args = dict([('table', 'note_tag'),
                  ('values', [data['noteid'], data['tagid']])])
     SQLExecuter().doInsertData(args)
     return data
Пример #12
0
 def getStatistic(self):
     strSQL = 'Select * From v_statistic'
     result = SQLExecuter().doRawSQL(strSQL)
     return result
Пример #13
0
 def getAreasRanking(self):
     strSQL = 'Select n_longitude, n_latitude, n_notes, top_tag From v_areas_ranking'
     result = SQLExecuter().doRawSQL(strSQL)
     return result
Пример #14
0
 def addFilter(self, data):
     args = dict([('table', 'filter'), ('values', data)])
     SQLExecuter().doInsertData(args)
Пример #15
0
 def getKeywordsRanking(self):
     strSQL = 'Select * From v_keywords_ranking'
     result = SQLExecuter().doRawSQL(strSQL)
     return result
Пример #16
0
 def getTagsRanking(self):
     strSQL = 'Select tag_name, n_notes From v_tags_ranking'
     result = SQLExecuter().doRawSQL(strSQL)
     return result
Пример #17
0
 def getPosterRanking(self):
     strSQL = 'Select u_name, n_notes From v_poster_ranking'
     result = SQLExecuter().doRawSQL(strSQL)
     return result
Пример #18
0
 def getNotesRanking(self):
     strSQL = 'Select * From v_notes_ranking'
     result = SQLExecuter().doRawSQL(strSQL)
     return result