22from flask_restful import Resource
33
44from db import db
5+ from data .seed import Seed
56from models .user import RoleEnum
6- from models .staff_tenant_link import StaffTenantLink
7- from models .user import UserModel
87from models .users .staff import Staff
98from models .tenant import TenantModel
10- from schemas .user import UserSchema , UserRegisterSchema
9+ from schemas .user import UserSchema
1110from schemas .tenant import TenantSchema
1211
1312
@@ -20,6 +19,7 @@ def _decorator(*args, **kwargs):
2019 return _decorator
2120
2221
22+ seed = Seed ()
2323not_found_message = {"message" : "RequestNotFoundError: Request was not found" }
2424
2525
@@ -31,10 +31,7 @@ def post(self):
3131 return 200
3232
3333 if request .args .get ("create_pending_user" ):
34- UserModel .create (
35- schema = UserRegisterSchema ,
36- payload = request .json ,
37- )
34+ seed .create_pending_user (payload = request .json )
3835 return 200
3936
4037 if request .args .get ("create_staff_user" ):
@@ -51,17 +48,21 @@ def post(self):
5148 return not_found_message , 421
5249
5350 def _setup (self ):
54- for st in StaffTenantLink .query .all ():
55- self ._del (st )
56- for u in UserModel .query .where (UserModel .email != "user1@dwellingly.org" ).all ():
57- self ._del (u )
58- for t in TenantModel .query .all ():
59- self ._del (t )
60-
61- self ._commit ()
62-
63- def _del (self , obj ):
64- db .session .delete (obj )
65-
66- def _commit (self ):
67- db .session .commit ()
51+ db .session .execute (
52+ """
53+ do
54+ $$
55+ declare
56+ l_stmt text;
57+ begin
58+ select 'truncate ' || string_agg(format('%I.%I', schemaname, tablename), ',')
59+ into l_stmt
60+ from pg_tables
61+ where schemaname in ('public');
62+
63+ execute l_stmt;
64+ end;
65+ $$
66+ """
67+ )
68+ seed .create_admin ()
0 commit comments