1- CREATE EXTENSION IF NOT EXISTS postgis;
2-
31CREATE TABLE IF NOT EXISTS authentications (
4- id BIGSERIAL PRIMARY KEY ,
2+ id INTEGER PRIMARY KEY AUTOINCREMENT ,
53 username VARCHAR (255 ) UNIQUE,
64 password VARCHAR (255 ),
75 role VARCHAR (100 ),
8- created_at TIMESTAMP NOT NULL DEFAULT NOW() ,
9- updated_at TIMESTAMP NOT NULL DEFAULT NOW()
6+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL ,
7+ updated_at DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL
108);
119
1210CREATE TABLE IF NOT EXISTS users (
13- id BIGINT PRIMARY KEY REFERENCES authentications(id) ON DELETE CASCADE ,
11+ id INTEGER PRIMARY KEY REFERENCES authentications(id) ON DELETE CASCADE ,
1412 username VARCHAR (255 ) UNIQUE,
1513 fullname VARCHAR (255 ),
1614 phone_number VARCHAR (100 ),
17- created_at TIMESTAMP NOT NULL DEFAULT NOW() ,
18- updated_at TIMESTAMP NOT NULL DEFAULT NOW()
15+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL ,
16+ updated_at DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL
1917);
2018
2119CREATE TABLE IF NOT EXISTS drivers (
22- id BIGINT PRIMARY KEY REFERENCES authentications(id) ON DELETE CASCADE ,
20+ id INTEGER PRIMARY KEY REFERENCES authentications(id) ON DELETE CASCADE ,
2321 name VARCHAR (255 ),
2422 phone_number VARCHAR (255 ),
2523 vehicle_type VARCHAR (100 ),
2624 plate_number VARCHAR (50 ),
27- created_at TIMESTAMP NOT NULL DEFAULT NOW() ,
28- updated_at TIMESTAMP NOT NULL DEFAULT NOW()
25+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL ,
26+ updated_at DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL
2927);
3028
3129CREATE TABLE IF NOT EXISTS driver_status (
32- driver_id INT PRIMARY KEY REFERENCES drivers(id),
30+ driver_id INTEGER PRIMARY KEY REFERENCES drivers(id),
3331 is_online BOOLEAN default false,
3432 is_busy BOOLEAN default false,
3533 last_activity_at TIMESTAMP
3634);
3735
3836CREATE TABLE IF NOT EXISTS driver_locations (
39- driver_id INT PRIMARY KEY REFERENCES drivers(id),
40- location GEOGRAPHY(POINT , 4326 ),
41- heading FLOAT,
42- updated_at TIMESTAMP NOT NULL DEFAULT NOW()
37+ driver_id INTEGER PRIMARY KEY REFERENCES drivers(id),
38+ location TEXT ,
39+ updated_at DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL
4340);
4441
4542CREATE TABLE IF NOT EXISTS orders (
46- id BIGSERIAL PRIMARY KEY ,
47- user_id INT REFERENCES users(id),
48- driver_id INT REFERENCES drivers(id),
49- pickup_point GEOMETRY( POINT , 4326 ) ,
50- dropoff_point GEOMETRY( POINT , 4326 ) ,
43+ id INTEGER PRIMARY KEY AUTOINCREMENT ,
44+ user_id INTEGER REFERENCES users(id),
45+ driver_id INTEGER REFERENCES drivers(id),
46+ pickup_point TEXT ,
47+ dropoff_point TEXT ,
5148 status VARCHAR (255 ),
52- created_at TIMESTAMP NOT NULL DEFAULT NOW(),
53- updated_at TIMESTAMP NOT NULL DEFAULT NOW()
54- );
55-
56- CREATE INDEX IF NOT EXISTS idx_driver_locations_geom
57- ON driver_locations
58- USING GIST (location);
49+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL ,
50+ updated_at DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL
51+ );
0 commit comments