-
Notifications
You must be signed in to change notification settings - Fork 0
/
checkout_events.py
60 lines (52 loc) · 1.95 KB
/
checkout_events.py
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
from Tools.Database import database
from Tools.RFIDReader import RFIDReader
from Tools.PDF import PDF
from Tools import Tools
class checkout_events():
def __init__(self, context):
self.context = context
self.event_click()
self.cards_id = list()
self.data = list()
self.context.btn_checkout.setEnabled(False)
def event_click(self):
self.context.btn_scan.clicked.connect(self.click_btn_scan)
self.context.btn_checkout.clicked.connect(self.click_checkout)
def click_btn_scan(self):
tmp_count = self.context.txt_count.text()
if not Tools.validation_text(tmp_count):
Tools.set_error_text(self.context.txt_count)
return
tmp_count = int(tmp_count)
db = database()
for i in range(tmp_count):
self.cards_id.append(RFIDReader().read_card_id())
query = """
select tbl_user.name, tbl_order.count, tbl_facility.name, tbl_facility.price from tbl_order
inner join tbl_user on tbl_user.id=tbl_order.id_user
inner join tbl_facility on tbl_facility.id=tbl_order.id_facility
where tbl_order.active=1 and tbl_user.card_id='%s'
""" % self.cards_id[-1]
data = db.select(query)
if data is not None:
self.data.append(data)
if len(self.data) == 0:
return
PDF().create_pdf(self.data)
db.close()
self.context.btn_checkout.setEnabled(True)
def click_checkout(self):
db = database()
for i in self.cards_id:
query="""
update tbl_order
join tbl_user on tbl_user.id=tbl_order.id_user
set tbl_order.active=0
where tbl_user.card_id='%s'
""" % i
result = db.update(query)
db.close()
self.cards_id = list()
self.data = list()
self.context.btn_checkout.setEnabled(False)
print(123)