/
seed.py
107 lines (73 loc) 路 4.1 KB
/
seed.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
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
from model import User, Contact, Phone, Alert, NaturalDisaster, Location, Earthquake, UserSetting, Setting, connect_to_db, db
from server import app
import os
TEST_PHONE = os.environ.get('TEST_PHONE')
TEST_PHONE2 = os.environ.get('TEST_PHONE2')
#TODO: Add a second verified number to be able to test
#CREATE USERS
user_fabio = User(name="Fabio", age=45, email="f@email.com", password="123", residency_address="599 Manor St. Villa Rica, GA 30180", zipcode="30180",
phone=TEST_PHONE, allergies="Penicillin, lactose, dogs", medications="Metformin, Amlodipine")
user_juan = User(name="Juan", age=26, email="j@email.com", password="456", residency_address="155 Valley View Court Roslindale, MA", zipcode="02131",
phone=TEST_PHONE2, allergies="Aspirin, seafood, nuts, cats", medications="Lipitor, Lisinopril")
#CREATE SETTINGS
eq_mag_setting = Setting("eqmag", "Earthquake magnitude alert level")
fabio_mag_setting = UserSetting(setting=eq_mag_setting,
user_value="4.5")
juan_mag_setting = UserSetting(setting=eq_mag_setting,
user_value="2.5")
user_fabio.user_settings.append(fabio_mag_setting)
user_juan.user_settings.append(juan_mag_setting)
#CREATE LOCATION
location1 = Location(lat=37.776460, lng=-122.228150, address="3098 E 10th St, Oakland, CA 94601")
user_fabio.locations.append(location1)
location2 = Location(lat=37.787970, lng=-122.418470, address="683 Sutter St, San Francisco, CA 94109")
user_juan.locations.append(location2)
#CREATE PHONES
home_jesus = Phone(phone=TEST_PHONE, type="home")
cel_jesus = Phone(phone=TEST_PHONE, type="cel")
cel_nati = Phone(phone=TEST_PHONE2, type="cel")
home_nati = Phone(phone=TEST_PHONE2, type="home")
#CREATE CONTACTS
nati_contact = Contact(name="Nati")
nati_contact.user = user_fabio
nati_contact.phones.extend([cel_nati, home_nati])
marco_contact = Contact(name="Marco")
marco_contact.user = user_fabio
jesus_contact = Contact(name="Jesus")
jesus_contact.user = user_juan
jesus_contact.phones.extend([cel_jesus, home_jesus])
#CREATE NATURAL DISASTERS & ALERTS
natural_disaster_1 = NaturalDisaster(nat_type="Earthquake", title="Earthquake- M 4.6 - 21km SSE of Kettleman City, CA", latitude="37.689511", longitude="-122.468796", location="4km WSW of Daly City, CA", timestamp="2019-02-12 15:08:40 (UTC)")
alert_1 = Alert(natural_disaster=natural_disaster_1,
message="Earthquake- M 4.6 - 21km SSE of Kettleman City, CA ******* User Location: 3098 E 10th St, Oakland, CA 94601 - User Coordinates (lat,lng): 37.776460, -122.228150 - Allergies: Penicillin, lactose, dogs - Medications: Metformin, Amlodipine")
alert_1.user = user_fabio
natural_disaster_2 = NaturalDisaster(nat_type="Earthquake", title="Earthquake- M 5.8 - 4km WSW of Daly City, CA", latitude="36.008795", longitude="-119.962860", location="21km SSE of Kettleman City, CA", timestamp="2019-05-8 03:03:30 (UTC)")
alert_2 = Alert(natural_disaster=natural_disaster_2,
message="Earthquake- M 5.8 - 4km WSW of Daly City, CA ******** User Location: 683 Sutter St, San Francisco, CA 94109 - User Coordinates (lat,lng): 37.787970, -122.418470 - Allergies: Aspirin, seafood, nuts, cats - Medications: Lipitor, Lisinopril")
alert_2.user = user_juan
#CREATE EARTHQUAKES
earthquake_1 = Earthquake(magnitude=4.6)
earthquake_1.natural_disaster = natural_disaster_1
earthquake_2 = Earthquake(magnitude=5.8)
earthquake_2.natural_disaster = natural_disaster_2
if __name__ == "__main__":
connect_to_db(app)
db.create_all()
#COMMIT USERS
db.session.add_all([user_fabio, user_juan])
db.session.commit()
#COMMIT PHONES
db.session.add_all([home_jesus, cel_jesus, cel_nati, home_nati])
db.session.commit()
#COMMIT CONTACTS
db.session.add_all([nati_contact, marco_contact, jesus_contact])
db.session.commit()
#COMMIT NATURAL DISASTERS
db.session.add_all([natural_disaster_1, natural_disaster_2])
db.session.commit()
#COMMIT EARTHQUAKES
db.session.add_all([earthquake_1, earthquake_2])
db.session.commit()
#COMMIT ALERTS
db.session.add_all([alert_1, alert_2])
db.session.commit()