| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705 |
- --
- -- Copyright (c) 2019 Clementine Computing LLC.
- --
- -- This file is part of PopuFare.
- --
- -- PopuFare is free software: you can redistribute it and/or modify
- -- it under the terms of the GNU Affero General Public License as published by
- -- the Free Software Foundation, either version 3 of the License, or
- -- (at your option) any later version.
- --
- -- PopuFare is distributed in the hope that it will be useful,
- -- but WITHOUT ANY WARRANTY; without even the implied warranty of
- -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- -- GNU Affero General Public License for more details.
- --
- -- You should have received a copy of the GNU Affero General Public License
- -- along with PopuFare. If not, see <https://www.gnu.org/licenses/>.
- --
- -- AVLS data table receives all AVLS chirps and stores them for later reference
- -- DROP TABLE IF EXISTS `avls_data`;
- CREATE TABLE IF NOT EXISTS avls_data (
- id INTEGER PRIMARY KEY,
- equip_num INTEGER,
- driver INTEGER,
- paddle INTEGER,
- route INTEGER,
- trip INTEGER,
- stop INTEGER,
- chirp_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
- latitude REAL,
- longitude REAL,
- heading REAL,
- velocity REAL
- );
- -- Bus Pass Table holds all bus pass holders
- -- DROP TABLE IF EXISTS `active_rider_table`;
- CREATE TABLE IF NOT EXISTS active_rider_table (
- -- The following entries are stored on the client as well and kept in sync
- seq_num INTEGER UNIQUE PRIMARY KEY ,
- logical_card_id INTEGER NOT NULL,
- rfid_token VARCHAR(32),
- mag_token VARCHAR(32),
- rule_name VARCHAR(24),
- rule_param VARCHAR(24),
- -- The rest are for server-side recordkeeping...
- deleted BOOLEAN DEFAULT '0',
- parent_entity VARCHAR(32),
- notes VARCHAR(64)
- ) ;
- create INDEX id_idx on active_rider_table (logical_card_id);
- create INDEX id_and_seq on active_rider_table (logical_card_id, seq_num);
- -- Billing Log Table
- -- DROP TABLE IF EXISTS `billing_log`;
- CREATE TABLE IF NOT EXISTS billing_log (
- id INTEGER PRIMARY KEY,
- -- MD5 sum of the orignal record as sent by the client, used to confirm storing the record
- conf_checksum VARCHAR(32) UNIQUE,
- -- Contents of the billing log entry coming from the client
- equip_num INTEGER,
- driver INTEGER,
- paddle INTEGER,
- route INTEGER,
- trip INTEGER,
- stop INTEGER,
- ride_time TIMESTAMP,
- latitude REAL,
- longitude REAL,
- action VARCHAR(16),
- rule VARCHAR(24),
- ruleparam VARCHAR(24),
- reason VARCHAR(64),
- credential VARCHAR(32),
- logical_card_id INTEGER NOT NULL,
- cash_value INTEGER,
- stop_name VARCHAR(64)
- ) ;
- -- DROP TABLE IF EXISTS `diagnostic_log`;
- CREATE TABLE IF NOT EXISTS diagnostic_log (
- id INTEGER PRIMARY KEY,
- servertime TIMESTAMP NOT NULL,
- loglvl VARCHAR(8),
- message VARCHAR(256)
- -- And some additional index data
- ) ;
- create INDEX servertime_idx on diagnostic_log (servertime);
- create INDEX lvl_msg_idx on diagnostic_log (servertime, loglvl);
- -- DROP TABLE IF EXISTS `pass_option`;
- create table pass_option(
- id INTEGER PRIMARY KEY,
- group_id INTEGER,
- param INTEGER,
- name varchar(255),
- rule varchar(255),
- db_rule varchar(255),
- type varchar(255),
- description varchar(255),
- num_opt INTEGER default 0,
- option0 varchar(255),
- option1 varchar(255),
- option2 varchar(255),
- option3 varchar(255),
- active INTEGER default 0
- ) ;
- -- DROP TABLE IF EXISTS rule_class;
- CREATE TABLE IF NOT EXISTS rule_class (
- id INTEGER PRIMARY KEY,
- rulename VARCHAR(24),
- ruleclass VARCHAR(24)
- ) ;
- -- DROP TABLE IF EXISTS update_level;
- CREATE TABLE IF NOT EXISTS update_level (
- id INTEGER PRIMARY KEY,
- equip_num INTEGER NOT NULL DEFAULT 0,
- client_file VARCHAR(32) NOT NULL,
- checksum VARCHAR(32) NOT NULL,
- file_size INTEGER NOT NULL,
- file_path VARCHAR(512) NOT NULL,
- fileversion VARCHAR(32),
- -- The following field is never manually set and is used only to pull the latest value
- serial INTEGER NOT NULL
- -- These indicies should make the operation of "give me the latest of each update for bus number X" fast
- );
- create INDEX ul_equip_num_idx on update_level (equip_num);
- create INDEX client_file_idx on update_level (client_file);
- create INDEX serial_idx on update_level (serial);
- create INDEX file_eqip_idx on update_level (client_file, equip_num);
- CREATE TABLE IF NOT EXISTS bus_checkin_log (
- id INTEGER PRIMARY KEY,
- checkin_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
- busunit_num INTEGER NOT NULL DEFAULT 0,
- equip_num INTEGER NOT NULL DEFAULT 0,
- eth0_mac VARCHAR(17),
- cell_imei VARCHAR(15),
- cell_imsi VARCHAR(15),
- version_data VARCHAR(256)
- ) ;
- create INDEX time_index on bus_checkin_log (checkin_time);
- create INDEX bcl_equip_num_idx on bus_checkin_log (equip_num);
- create INDEX busunit_num_idx on bus_checkin_log (busunit_num);
- DROP TABLE IF EXISTS `user_pass`;
- CREATE TABLE `user_pass` (
- user_pass_id INTEGER PRIMARY KEY,
- logical_card_id INTEGER default NULL,
- issued datetime default NULL,
- activated datetime default NULL,
- deactivated datetime default NULL,
- firstused datetime default NULL,
- lastused datetime default NULL,
- nrides_orig int(11) default NULL,
- nrides_remain int(11) default NULL,
- nday_orig int(11) default NULL,
- nday_expiration datetime default NULL,
- active tinyint(1) default 0,
- expired tinyint(1) default 0,
- rule varchar(255) default NULL,
- queue_order int(11) default NULL,
- comment varchar(255) default NULL,
- paytype varchar(255) default NULL
- ) ;
- DROP TABLE IF EXISTS `user_card`;
- CREATE TABLE `user_card` (
- logical_card_id INTEGER PRIMARY KEY,
- -- legacy, will remove in final phase2
- -- card_number varchar(128) UNIQUE default NULL,
- -- rfsite int(127) default NULL,
- -- rfid int(127) default NULL,
- --
- mag_token varchar(255) default null,
- rfid_token varchar(255) default null,
- comment varchar(255) default NULL,
- userid int(11) default NULL,
- issued datetime default NULL,
- active tinyint(1) default 1,
- deactivated datetime default NULL,
- lastused datetime default NULL,
- firstused datetime default NULL,
- group_id int(11) default NULL,
- issuetype varchar(255) default NULL
- ) ;
- DROP TABLE IF EXISTS `groups`;
- CREATE TABLE `groups` (
- group_id INTEGER PRIMARY KEY,
- group_name varchar(255) default NULL
- ) ;
- DROP TABLE IF EXISTS `audit_user_pass`;
- CREATE TABLE `audit_user_pass` (
- `audit_user_pass_id` INTEGER PRIMARY KEY,
- `old_user_pass_id` INTEGER default NULL,
- `old_logical_card_id` INTEGER default NULL,
- `old_issued` datetime default NULL,
- `old_firstused` datetime default NULL,
- `old_lastused` datetime default NULL,
- `old_nrides_orig` INTEGER default NULL,
- `old_nrides_remain` INTEGER default NULL,
- `old_nday_orig` INTEGER default NULL,
- `old_nday_expiration` datetime default NULL,
- `old_active` INTEGER default NULL,
- `old_rule` char(255) default NULL,
- `old_queue_order` INTEGER default NULL,
- `old_log_id` INTEGER default NULL,
- `old_comment` varchar(255) default NULL,
- `new_user_pass_id` INTEGER default NULL,
- `new_logical_card_id` INTEGER default NULL,
- `new_issued` datetime default NULL,
- `new_firstused` datetime default NULL,
- `new_lastused` datetime default NULL,
- `new_nrides_orig` INTEGER default NULL,
- `new_nrides_remain` INTEGER default NULL,
- `new_nday_orig` INTEGER default NULL,
- `new_nday_expiration` datetime default NULL,
- `new_active` INTEGER default NULL,
- `new_rule` char(255) default NULL,
- `new_queue_order` INTEGER default NULL,
- `new_log_id` INTEGER default NULL,
- `new_comment` varchar(255) default NULL,
- `comment` varchar(255) default NULL,
- `owner_id` INTEGER default NULL,
- --`timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
- `old_expired` INTEGER default NULL,
- `new_expired` INTEGER default NULL,
- `old_paytype` varchar(255) default NULL,
- `new_paytype` varchar(255) default NULL
- ) ;
- create INDEX audit_user_pass_id_idx on audit_user_pass (audit_user_pass_id);
- create INDEX audit_user_pass_timestamp_idx on audit_user_pass (timestamp);
- create INDEX audit_user_pass_new_user_pass_id_idx on audit_user_pass (new_user_pass_id);
- create INDEX audit_user_pass_old_user_pass_id_idx on audit_user_pass (old_user_pass_id);
- DROP TABLE IF EXISTS `audit_user_card`;
- CREATE TABLE `audit_user_card` (
- `audit_user_card_id` INTEGER PRIMARY KEY,
- `old_logical_card_id` INTEGER default NULL,
- `old_comment` varchar(255) default NULL,
- `old_lastused` datetime default NULL,
- `old_userid` INTEGER default NULL,
- `old_issued` datetime default NULL,
- `old_firstused` datetime default NULL,
- `old_group_id` INTEGER default NULL,
- `old_issuetype` varchar(255) default NULL,
- `new_logical_card_id` INTEGER default NULL,
- `new_comment` varchar(255) default NULL,
- `new_lastused` datetime default NULL,
- `new_userid` INTEGER default NULL,
- `new_issued` datetime default NULL,
- `new_firstused` datetime default NULL,
- `new_group_id` INTEGER default NULL,
- `new_issuetype` varchar(255) default NULL,
- --`timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
- `comment` varchar(255) default NULL,
- `old_mag_token` varchar(31) default NULL,
- `new_mag_token` varchar(31) default NULL,
- `old_rfid_token` varchar(31) default NULL,
- `new_rfid_token` varchar(31) default NULL,
- `old_active` INTEGER default NULL,
- `new_active` INTEGER default NULL,
- `old_deactivated` datetime default null,
- `new_deactivated` datetime default null
- ) ;
- create INDEX audit_user_card_id_idx on audit_user_card (audit_user_card_id);
- create INDEX audit_user_card_timestampe_idx on audit_user_card (timestamp);
- create INDEX audit_user_card_new_logical_card_id_idx on audit_user_card (new_logical_card_id);
- create INDEX audit_user_card_old_logical_card_id_idx on audit_user_card (old_logical_card_id);
- create INDEX audit_user_card_new_mag_token_idx on audit_user_card (new_mag_token);
- create INDEX audit_user_card_old_mag_token_idx on audit_user_card (old_mag_token);
- create INDEX audit_user_card_new_rfid_token_idx on audit_user_card (new_rfid_token);
- create INDEX audit_user_card_old_rfid_token_idx on audit_user_card (old_rfid_token);
- DROP TABLE IF EXISTS `users`;
- CREATE TABLE `users` (
- `userid` INTEGER PRIMARY KEY,
- `username` char(255) default NULL,
- `comment` char(255) default NULL,
- `first_name` char(128) default NULL,
- `last_name` char(128) default NULL,
- `phone` char(31) default NULL,
- `email` char(128) default NULL,
- `address` char(255) default NULL,
- `city` char(127) default NULL,
- `state` char(127) default NULL,
- `zip` char(31) default NULL,
- `created` datetime default NULL,
- `active` INTEGER default NULL,
- `passwordhash` varchar(255) default NULL,
- `shipping_address` varchar(255) default NULL,
- `shipping_city` varchar(255) default NULL,
- `shipping_state` varchar(255) default NULL,
- `shipping_zip` varchar(255) default NULL,
- `shipping_name` varchar(255) default NULL,
- `shipping_country_code` varchar(32) default NULL,
- `shipping_country_name` varchar(255) default NULL,
- `reset_attempts` INTEGER default '0'
- ) ;
- DROP TABLE IF EXISTS `audit_users`;
- CREATE TABLE `audit_users` (
- `audit_users_id` INTEGER PRIMARY KEY,
- --`timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
- `comment` varchar(255) default NULL,
- `old_username` char(255) default NULL,
- `old_userid` INTEGER default NULL,
- `old_comment` char(255) default NULL,
- `old_first_name` char(128) default NULL,
- `old_last_name` char(128) default NULL,
- `old_phone` char(31) default NULL,
- `old_email` char(128) default NULL,
- `old_address` char(255) default NULL,
- `old_city` char(127) default NULL,
- `old_state` char(127) default NULL,
- `old_zip` char(31) default NULL,
- `old_created` datetime default NULL,
- `old_active` INTEGER default NULL,
- `old_passwordhash` varchar(255) default NULL,
- `new_username` char(255) default NULL,
- `new_userid` INTEGER default NULL,
- `new_comment` char(255) default NULL,
- `new_first_name` char(128) default NULL,
- `new_last_name` char(128) default NULL,
- `new_phone` char(31) default NULL,
- `new_email` char(128) default NULL,
- `new_address` char(255) default NULL,
- `new_city` char(127) default NULL,
- `new_state` char(127) default NULL,
- `new_zip` char(31) default NULL,
- `new_created` datetime default NULL,
- `new_active` INTEGER default NULL,
- `new_passwordhash` varchar(255) default NULL,
- `old_shipping_address` varchar(255) default NULL,
- `old_shipping_city` varchar(255) default NULL,
- `old_shipping_state` varchar(255) default NULL,
- `old_shipping_zip` varchar(255) default NULL,
- `old_shipping_name` varchar(255) default NULL,
- `old_shipping_country_code` varchar(255) default NULL,
- `old_shipping_country_name` varchar(32) default NULL,
- `old_reset_attempts` varchar(255) default NULL,
- `new_shipping_address` varchar(255) default NULL,
- `new_shipping_city` varchar(255) default NULL,
- `new_shipping_state` varchar(255) default NULL,
- `new_shipping_zip` varchar(255) default NULL,
- `new_shipping_name` varchar(255) default NULL,
- `new_shipping_country_code` varchar(255) default NULL,
- `new_shipping_country_name` varchar(32) default NULL,
- `new_reset_attempts` varchar(255) default NULL
- ) ;
- -- Admin Web UI tables
- DROP TABLE IF EXISTS `admins`;
- CREATE TABLE `admins` (
- `userid` INTEGER PRIMARY KEY,
- `group_id` INTEGER default NULL,
- `username` char(255) default NULL,
- `password` char(255) default NULL,
- `active` INTEGER default 1,
- `comment` varchar(255) default null
- ) ;
- DROP TABLE IF EXISTS `audit_admins`;
- CREATE TABLE `audit_admins` (
- `audit_admins_id` INTEGER PRIMARY KEY,
- --`timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
- `comment` varchar(255) default NULL,
- `old_userid` INTEGER default NULL,
- `old_username` varchar(255) default NULL,
- `old_password` varchar(255) default NULL,
- `new_userid` INTEGER default NULL,
- `new_username` varchar(255) default NULL,
- `new_password` varchar(255) default NULL
- ) ;
- DROP TABLE IF EXISTS `admins_session_info`;
- CREATE TABLE `admins_session_info` (
- `id` INTEGER PRIMARY KEY,
- `userid` INTEGER default NULL,
- `sessionid` char(255) default NULL,
- `lastactive` datetime default NULL
- ) ;
- DROP TABLE IF EXISTS `admin_groups`;
- CREATE TABLE `admin_groups` (
- id INTEGER PRIMARY KEY,
- `userid` INTEGER default NULL,
- `group_id` INTEGER default NULL,
- `permissions` INTEGER default NULL
- ) ;
- DROP TABLE IF EXISTS `rule_mappings`;
- CREATE TABLE `rule_mappings` (
- id INTEGER PRIMARY KEY,
- `rule` char(255) NOT NULL default '',
- `rule_text` char(255) default NULL,
- `group_id` INTEGER default NULL
- ) ;
- DROP TABLE IF EXISTS `org_default_pass_value`;
- CREATE TABLE `org_default_pass_value` (
- `id` INTEGER PRIMARY KEY,
- `name` varchar(255) default NULL,
- `nday` INTEGER default NULL,
- `nride` INTEGER default NULL,
- `description` varchar(255) default NULL,
- `start` datetime default NULL,
- `end` datetime default NULL
- ) ;
- DROP TABLE IF EXISTS `org_default_card_value`;
- CREATE TABLE `org_default_card_value` (
- `id` INTEGER PRIMARY KEY,
- `group_id` INTEGER default NULL,
- `mag_track` INTEGER default NULL,
- `rf_length` INTEGER default NULL,
- `rf_site` INTEGER default NULL
- ) ;
- -- WEB API tables
- DROP TABLE IF EXISTS `authorization_log`;
- CREATE TABLE `authorization_log` (
- `authorization_log_id` INTEGER PRIMARY KEY,
- --`timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
- `authorization_type` varchar(255) default NULL,
- `authorization_code` varchar(255) default NULL,
- `user_id` INTEGER default NULL,
- `logical_card_id` INTEGER default NULL,
- `user_pass_id` INTEGER default NULL,
- `comment` varchar(255) default NULL
- ) ;
- DROP TABLE IF EXISTS `org_card_order_queue`;
- CREATE TABLE `org_card_order_queue` (
- `org_card_order_queue_id` INTEGER PRIMARY KEY,
- `userid` INTEGER default NULL,
- `logical_card_id` INTEGER default NULL,
- `created` timestamp NOT NULL default CURRENT_TIMESTAMP,
- `processed` timestamp NULL default NULL,
- `comment` varchar(255) default NULL,
- `pending` INTEGER default NULL
- ) ;
- DROP TABLE IF EXISTS `org_api_session`;
- CREATE TABLE `org_api_session` (
- id INTEGER PRIMARY KEY,
- --`timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
- `ip` varchar(15) default NULL,
- `active` INTEGER default NULL,
- `server_token` varchar(255) default NULL,
- `user_token` varchar(255) default NULL
- ) ;
- DROP TABLE IF EXISTS `org_api_log`;
- CREATE TABLE `org_api_log` (
- `log_id` INTEGER PRIMARY KEY,
- --`timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
- `log` blob
- ) ;
- DROP TABLE IF EXISTS `org_api_password_reset`;
- CREATE TABLE `org_api_password_reset` (
- id INTEGER PRIMARY KEY,
- --`timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
- `token` varchar(255) default NULL,
- `userid` INTEGER default NULL,
- `email` varchar(255) default NULL,
- `active` INTEGER default NULL
- ) ;
- DROP TABLE IF EXISTS `org_api_register_email`;
- CREATE TABLE `org_api_register_email` (
- id INTEGER PRIMARY KEY,
- --`timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
- `token` varchar(255) default NULL,
- `active` INTEGER default NULL,
- `email` varchar(255) default NULL
- ) ;
- -- drivers, stops and paddles + misc
- DROP TABLE IF EXISTS `drivers`;
- CREATE TABLE `drivers` (
- `id` INTEGER PRIMARY KEY,
- `pin` varchar(8) NOT NULL default '',
- `name` varchar(32) default NULL
- ) ;
- --
- -- Table structure for table `stops`
- --
- DROP TABLE IF EXISTS `stops`;
- CREATE TABLE `stops` (
- `id` INTEGER PRIMARY KEY,
- `latitude` double NOT NULL default '0',
- `longitude` double NOT NULL default '0',
- `name` varchar(32) default NULL
- ) ;
- --
- -- Table structure for table `paddles`
- --
- DROP TABLE IF EXISTS `paddles`;
- CREATE TABLE `paddles` (
- `id` INTEGER PRIMARY KEY,
- `slot` INTEGER NOT NULL default '0',
- `arrival` time default NULL,
- `route` INTEGER default NULL,
- `trip` INTEGER default NULL,
- `stage` INTEGER default NULL,
- `stop` INTEGER default NULL,
- `stopid` INTEGER NOT NULL default '0'
- ) ;
- --
- -- Table structure for table `old_stops`
- --
- DROP TABLE IF EXISTS `old_stops`;
- CREATE TABLE `old_stops` (
- `id` INTEGER PRIMARY KEY,
- `verstring` text,
- `latitude` double NOT NULL default '0',
- `longitude` double NOT NULL default '0',
- `name` varchar(32) default NULL
- ) ;
- --
- -- Table structure for table `old_paddles`
- --
- DROP TABLE IF EXISTS `old_paddles`;
- CREATE TABLE `old_paddles` (
- `id` INTEGER PRIMARY KEY,
- `verstring` text,
- `slot` INTEGER NOT NULL default '0',
- `arrival` time default NULL,
- `route` INTEGER default NULL,
- `trip` INTEGER default NULL,
- `stage` INTEGER default NULL,
- `stop` INTEGER default NULL,
- `stopid` INTEGER NOT NULL default '0'
- ) ;
- --
- -- Table structure for table `live_stops`
- --
- DROP TABLE IF EXISTS `live_stops`;
- CREATE TABLE `live_stops` (
- `id` INTEGER PRIMARY KEY,
- `latitude` double NOT NULL default '0',
- `longitude` double NOT NULL default '0',
- `name` varchar(32) default NULL
- ) ;
- --
- -- Table structure for table `live_paddles`
- --
- DROP TABLE IF EXISTS `live_paddles`;
- CREATE TABLE `live_paddles` (
- `id` INTEGER PRIMARY KEY,
- `slot` INTEGER NOT NULL default '0',
- `arrival` time default NULL,
- `route` INTEGER default NULL,
- `trip` INTEGER default NULL,
- `stage` INTEGER default NULL,
- `stop` INTEGER default NULL,
- `stopid` INTEGER NOT NULL default '0'
- ) ;
- DROP TABLE IF EXISTS `price_point`;
- CREATE TABLE `price_point` (
- `id` INTEGER PRIMARY KEY,
- `price` double default NULL,
- `param` INTEGER default NULL,
- `name` varchar(255) default NULL,
- `rule` varchar(32) default NULL,
- `db_rule` varchar(32) default NULL,
- `group_id` INTEGER default NULL,
- `type` varchar(255) default NULL,
- `description` varchar(1024) default NULL,
- `num_opt` INTEGER default 0,
- `price_option0` varchar(255) default null,
- `price_option1` varchar(255) default null,
- `price_option2` varchar(255) default null,
- `price_option3` varchar(255) default null,
- `active` INTEGER default 0
- ) ;
- drop table if exists billing_log_annotation;
- create table if not exists billing_log_annotation (
- id INTEGER PRIMARY KEY,
- seq_num INTEGER not null,
- rule varchar(24),
- ruleparam varchar(24),
- reason varchar(64),
- credential varchar(32),
- note varchar(512),
- timestamp timestamp default current_timestamp
- ) ;
|