Repository navigation
Expand file tree
/
Copy pathmodels.py
More file actions
58 lines (43 loc) · 1.43 KB
/
Copy pathmodels.py
File metadata and controls
58 lines (43 loc) · 1.43 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
class User:
def __init__(self, user_id, username, password_hash, is_locked=False):
self.id = user_id
self.username = username
self.password_hash = password_hash
self.is_locked = is_locked
def user_to_dict(self):
return {
"id": self.id,
"username": self.username,
"password_hash": self.password_hash,
"is_locked": self.is_locked
}
class Meter:
def __init__(self, meter_id, user_id, meter_number, alias):
self.id = meter_id
self.user_id = user_id
self.meter_number = meter_number
self.alias = alias
def meter_to_dict(self):
return {
"id": self.id,
"user_id": self.user_id,
"meter_number": self.meter_number,
"alias": self.alias
}
class Purchase:
def __init__(self, purchase_id, meter_id, amount, date_purchase, mpesa_code, message):
self.id = purchase_id
self.meter_id = meter_id
self.amount = amount
self.date_purchase = date_purchase
self.mpesa_code = mpesa_code
self.message = message
def purchase_to_dict(self):
return {
"id": self.id,
"meter_id": self.meter_id,
"amount": self.amount,
"date_purchase": self.date_purchase,
"mpesa_code": self.mpesa_code,
"message": self.message
}