forked from CodecoolBase/ask-mate-python
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathanswer_data_manager.py
More file actions
134 lines (108 loc) · 3.47 KB
/
answer_data_manager.py
File metadata and controls
134 lines (108 loc) · 3.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
import connection
@connection.connection_handler
def delete_answer(cursor, q_id, a_id):
cursor.execute("""
delete from comment
where question_id = %(q_id)s or answer_id = %(a_id)s;
delete from answer
where question_id = %(q_id)s and id = %(a_id)s
""",
{'q_id': q_id, 'a_id': a_id})
@connection.connection_handler
def collect_answers(cursor, q_id):
cursor.execute("""
SELECT * from answer
where question_id = %(q_id)s
""",
{'q_id': q_id})
result = cursor.fetchall()
return result
@connection.connection_handler
def find_answer(cursor, a_id):
cursor.execute("""
SELECT * from answer
where id = %(a_id)s
""",
{'a_id': a_id})
result = cursor.fetchall()
return result
@connection.connection_handler
def update_answer(cursor, datas):
cursor.execute("""
UPDATE answer
SET message=%s, image=%s
WHERE id=%s""",
(datas['message'], datas['image'], int(datas['id'])))
@connection.connection_handler
def collect_all_answer(cursor):
cursor.execute("""
SELECT * FROM answer
""")
result = cursor.fetchall()
return result
@connection.connection_handler
def add_answer(cursor, form_data):
cursor.execute("""
INSERT INTO answer(submission_time, vote_number, question_id, message, image,user_id,accepted)
VALUES (%s, %s, %s, %s, %s,%s,%s)""",
(form_data['submission_time'], form_data['vote_number'], form_data['question_id'],
form_data['message'], form_data['image'], form_data['user_id'], form_data['accepted']))
@connection.connection_handler
def accept_answer(cursor, a_id):
cursor.execute("""
Update answer
set accepted = TRUE
where id = %(a_id)s
""",
{'a_id': a_id})
@connection.connection_handler
def update_vote_number_answer(cursor, vote, a_id):
cursor.execute("""
UPDATE answer
set vote_number = %(vote)s
WHERE id = %(a_id)s
""",
{'vote': vote, 'a_id': a_id})
@connection.connection_handler
def update_view_number(cursor, q_id):
cursor.execute("""
update question
set view_number = view_number+1
where id = %(q_id)s
""",
{'q_id': q_id})
@connection.connection_handler
def update_reputation(cursor,user_id,new_reputation):
cursor.execute("""
UPDATE "user"
SET reputation = %(new_reputation)s
WHERE id = %(user_id)s
""",
{'user_id':user_id, 'new_reputation':new_reputation})
@connection.connection_handler
def get_userid_used_answer(cursor,a_id):
cursor.execute("""
SELECT user_id FROM answer
WHERE id = %(a_id)s
""",
{'a_id':a_id})
result = cursor.fetchall()
return result
@connection.connection_handler
def get_reputation(cursor,user_id):
cursor.execute("""
SELECT reputation FROM "user"
WHERE id = %(user_id)s
""",
{'user_id':user_id})
result = cursor.fetchone()
return result
@connection.connection_handler
def get_all_answes_form_user(cursor, u_id):
cursor.execute("""Select question_id, question.title as question_title, answer.message as answer, answer.vote_number as vote_number from answer
join question on question_id=question.id
where answer.user_id= %(u_id)s
""",
{'u_id':u_id})
result=cursor.fetchall()
return result