def get_exp_fills(_exp_id): cur = dbutil.get_cur() cur.execute('CALL P_GetExpFills(%s,null,null)' % _exp_id) for r in cur: f = parse(r) quiz = QService.get_questionnaire(f.quiz_id) ss = quiz.score(f.answer, col_name=f.quiz_id) u = users.get(f.site_uid) if u is None: u = OrderedDict() u.update(ss) for s in ss: dimensions[s] = 0 if f.quiz_id in quiz_with_answer: answers = quiz.parse(f.answer, col_name=f.quiz_id) u.update(answers) for a in answers: dimensions[a] = 0 dim_cost_seconds = '%s_CostSeconds' % f.quiz_id dim_fill_time = '%s_FillTime' % f.quiz_id u[dim_cost_seconds] = f.cost_seconds u[dim_fill_time] = datetime.strftime(f.fill_time, '%Y/%m/%d %H:%M:%S') dimensions[dim_cost_seconds] = 0 dimensions[dim_fill_time] = 0 users[f.site_uid] = u
def get_exp_fills(ExpId=7): cur = dbutil.get_cur() cur.execute('CALL P_GetExpFills(%s,null,null)' % ExpId) for r in cur: sina_uid = r['SiteUid'] filltime = r['LastFill'] ip = r['IPAddr'] filltimes[sina_uid].add(filltime) ips[sina_uid].add(ip) uids = ips._dict.keys() for uid in uids: line = 'IP\t%s\t' % uid for ip in ips[uid]: line += ip + '\t' line += '\n' line += 'TIME\t%s\t' % uid times = sorted(filltimes[uid]) for t in times: str_time = '%02d%02d_%02d%02d%02d' % (t.month, t.day, t.hour, t.minute, t.second) line += str_time + '\t' print line
def quizs_dump(): result = OrderedDict() cur = dbutil.get_cur() cur.execute('SELECT * FROM Quiz ORDER BY QuizId') for r in cur: qid = r.pop('QuizId') result[qid] = r with codecs.open('./quiz/meta.data','w',encoding='utf-8') as fp: json.dump(result, fp, ensure_ascii=False, encoding='utf-8',indent=1)
def quizs_dump(): result = OrderedDict() cur = dbutil.get_cur() cur.execute('SELECT * FROM Quiz ORDER BY QuizId') for r in cur: qid = r.pop('QuizId') result[qid] = r with codecs.open('./quiz/meta.data', 'w', encoding='utf-8') as fp: json.dump(result, fp, ensure_ascii=False, encoding='utf-8', indent=1)
def get_user_fill_quiz(local_uid=None, site_type=None, site_uid=None, quiz_id=None): assert not ((local_uid is None) and (site_type is None or site_uid is None)) local_uid = 'NULL' if local_uid is None else long(local_uid) site_type = 'NULL' if site_type is None else "'%s'" % site_type site_uid = 'NULL' if site_uid is None else long(site_uid) quiz_id = 'NULL' if quiz_id is None else "'%s'" % quiz_id cur = dbutil.get_cur() cur.execute('CALL P_GetUserFillQuiz(%s,%s,%s,%s)' % (local_uid, site_type, site_uid, quiz_id)) for r in cur: f = parse(r) return f
def get_exp_fills(ExpId): cur = dbutil.get_cur() cur.execute('CALL P_GetExpFills(%s,null,null)' % ExpId) for r in cur: sina_uid = r['SiteUid'] quiz_id = r['QuizId'] costseconds = r['CostSeconds'] filltime = r['LastFill'] answer = r['Answer'] score = r['Score'] quiz = meta.get_quiz(quiz_id) ss = quiz.score(answer, col_name=quiz_id) u = users.get(sina_uid) if u is None: u = OrderedDict() u.update(ss) for s in ss: dimensions[s] = 0 if quiz_id in quiz_with_answer: answers = quiz.parse(answer, col_name=quiz_id) u.update(answers) for a in answers: dimensions[a] = 0 dim_cost_seconds = '%s_CostSeconds' % quiz_id dim_fill_time = '%s_FillTime' % quiz_id u[dim_cost_seconds] = costseconds u[dim_fill_time] = datetime.strftime(filltime, '%Y/%m/%d %H:%M:%S') dimensions[dim_cost_seconds] = 0 dimensions[dim_fill_time] = 0 users[sina_uid] = u
def get_exp_fills(ExpId): cur = dbutil.get_cur() cur.execute('CALL P_GetExpFills(%s,null,null)' % ExpId) for r in cur: sina_uid = r['SiteUid'] quiz_id = r['QuizId'] costseconds = r['CostSeconds'] filltime = r['LastFill'] answer = r['Answer'] score = r['Score'] quiz = meta.get_quiz(quiz_id) ss = quiz.score(answer,col_name=quiz_id) u = users.get(sina_uid) if u is None: u = OrderedDict() u.update(ss) for s in ss: dimensions[s] = 0 if quiz_id in quiz_with_answer: answers = quiz.parse(answer, col_name=quiz_id) u.update(answers) for a in answers: dimensions[a] = 0 dim_cost_seconds = '%s_CostSeconds' % quiz_id dim_fill_time = '%s_FillTime' % quiz_id u[dim_cost_seconds] = costseconds u[dim_fill_time] = datetime.strftime(filltime,'%Y/%m/%d %H:%M:%S') dimensions[dim_cost_seconds] = 0 dimensions[dim_fill_time] = 0 users[sina_uid] = u