my $tables_hashref_torrus = tables_hashref_torrus();
- #create history tables (false laziness w/create-history-tables)
+ #create history tables
foreach my $table (
- grep { ! /^clientapi_session/
+ grep { ! /^(clientapi|access_user)_session/
&& ! /^h_/
&& ! /^log(_context)?$/
&& ! $tables_hashref_torrus->{$_}
}
+ my $primary_key_col = $tableobj->column($tableobj->primary_key)
+ or die "$table: primary key declared as ". $tableobj->primary_key.
+ ", but no column of that name\n";
+
+ my $historynum_type = ( $tableobj->column($tableobj->primary_key)->type
+ =~ /^(bigserial|bigint|int8)$/i
+ ? 'bigserial'
+ : 'serial'
+ );
+
my $h_tableobj = DBIx::DBSchema::Table->new( {
'name' => "h_$table",
'primary_key' => 'historynum',
'columns' => [
DBIx::DBSchema::Column->new( {
'name' => 'historynum',
- 'type' => 'serial',
+ 'type' => $historynum_type,
'null' => 'NOT NULL',
'length' => '',
'default' => '',
DBIx::DBSchema::Column->new( {
'name' => 'history_user',
'type' => 'varchar',
- 'null' => 'NOT NULL',
+ 'null' => 'NULL',
'length' => '80',
'default' => '',
'local' => '',
} ),
+ DBIx::DBSchema::Column->new( {
+ 'name' => 'history_usernum',
+ 'type' => 'int',
+ 'null' => 'NULL',
+ 'length' => '',
+ 'default' => '',
+ 'local' => '',
+ } ),
DBIx::DBSchema::Column->new( {
'name' => 'history_action',
'type' => 'varchar',
'index' => [ ['typenum'] ],
},
+ 'agent_currency' => {
+ 'columns' => [
+ 'agentcurrencynum', 'serial', '', '', '', '',
+ 'agentnum', 'int', '', '', '', '',
+ 'currency', 'char', '', 3, '', '',
+ ],
+ 'primary_key' => 'agentcurrencynum',
+ 'unique' => [],
+ 'index' => [ ['agentnum'] ],
+ },
+
'sales' => {
'columns' => [
'salesnum', 'serial', '', '', '', '',
'salesperson', 'varchar', '', $char_d, '', '',
'agentnum', 'int', 'NULL', '', '', '',
+ 'sales_custnum', 'int', 'NULL', '', '', '',
'disabled', 'char', 'NULL', 1, '', '',
],
'primary_key' => 'salesnum',
'index' => [ ['salesnum'], ['disabled'] ],
},
+ 'sales_pkg_class' => {
+ 'columns' => [
+ 'salespkgclassnum', 'serial', '', '', '', '',
+ 'salesnum', 'int', '', '', '', '',
+ 'classnum', 'int', 'NULL', '', '', '',
+ 'commission_percent', 'decimal', '', '7,4', '', '',
+ 'commission_duration', 'int', 'NULL', '', '', '',
+ ],
+ 'primary_key' => 'salespkgclassnum',
+ 'unique' => [ [ 'salesnum', 'classnum' ], ],
+ 'index' => [],
+ },
+
'cust_attachment' => {
'columns' => [
'attachnum', 'serial', '', '', '', '',
'cust_bill' => {
'columns' => [
#regular fields
- 'invnum', 'serial', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- '_date', @date_type, '', '',
- 'charged', @money_type, '', '',
+ 'invnum', 'serial', '', '', '', '',
+ 'custnum', 'int', '', '', '', '',
+ '_date', @date_type, '', '',
+ 'charged', @money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
'invoice_terms', 'varchar', 'NULL', $char_d, '', '',
#customer balance info at invoice generation time
'cust_bill_void' => {
'columns' => [
#regular fields
- 'invnum', 'int', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- '_date', @date_type, '', '',
- 'charged', @money_type, '', '',
+ 'invnum', 'int', '', '', '', '',
+ 'custnum', 'int', '', '', '', '',
+ '_date', @date_type, '', '',
+ 'charged', @money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
'invoice_terms', 'varchar', 'NULL', $char_d, '', '',
#customer balance info at invoice generation time
'custnum', 'int', '', '', '', '',
'_date', @date_type, '', '',
'charged', @money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
'content_pdf', 'blob', 'NULL', '', '', '',
'content_html', 'text', 'NULL', '', '', '',
'locale', 'varchar', 'NULL', 16, '', '',
'cust_bill_pkg' => {
'columns' => [
- 'billpkgnum', 'serial', '', '', '', '',
- 'invnum', 'int', '', '', '', '',
- 'pkgnum', 'int', '', '', '', '',
- 'pkgpart_override', 'int', 'NULL', '', '', '',
- 'setup', @money_type, '', '',
- 'recur', @money_type, '', '',
- 'sdate', @date_type, '', '',
- 'edate', @date_type, '', '',
- 'itemdesc', 'varchar', 'NULL', $char_d, '', '',
- 'itemcomment', 'varchar', 'NULL', $char_d, '', '',
- 'section', 'varchar', 'NULL', $char_d, '', '',
- 'freq', 'varchar', 'NULL', $char_d, '', '',
- 'quantity', 'int', 'NULL', '', '', '',
- 'unitsetup', @money_typen, '', '',
- 'unitrecur', @money_typen, '', '',
- 'hidden', 'char', 'NULL', 1, '', '',
+ 'billpkgnum', 'serial', '', '', '', '',
+ 'invnum', 'int', '', '', '', '',
+ 'pkgnum', 'int', '', '', '', '',
+ 'pkgpart_override', 'int', 'NULL', '', '', '',
+ 'setup', @money_type, '', '',
+ 'unitsetup', @money_typen, '', '',
+ 'setup_billed_currency', 'char', 'NULL', 3, '', '',
+ 'setup_billed_amount', @money_typen, '', '',
+ 'recur', @money_type, '', '',
+ 'unitrecur', @money_typen, '', '',
+ 'recur_billed_currency', 'char', 'NULL', 3, '', '',
+ 'recur_billed_amount', @money_typen, '', '',
+ 'sdate', @date_type, '', '',
+ 'edate', @date_type, '', '',
+ 'itemdesc', 'varchar', 'NULL', $char_d, '', '',
+ 'itemcomment', 'varchar', 'NULL', $char_d, '', '',
+ 'section', 'varchar', 'NULL', $char_d, '', '',
+ 'freq', 'varchar', 'NULL', $char_d, '', '',
+ 'quantity', 'int', 'NULL', '', '', '',
+ 'hidden', 'char', 'NULL', 1, '', '',
],
'primary_key' => 'billpkgnum',
'unique' => [],
'format', 'char', 'NULL', 1, '', '',
'classnum', 'int', 'NULL', '', '', '',
'duration', 'int', 'NULL', '', 0, '',
- 'phonenum', 'varchar', 'NULL', 15, '', '',
+ 'phonenum', 'varchar', 'NULL', 25, '', '',
'accountcode', 'varchar', 'NULL', 20, '', '',
'startdate', @date_type, '', '',
'regionname', 'varchar', 'NULL', $char_d, '', '',
'cust_bill_pkg_tax_location' => {
'columns' => [
- 'billpkgtaxlocationnum', 'serial', '', '', '', '',
- 'billpkgnum', 'int', '', '', '', '',
- 'taxnum', 'int', '', '', '', '',
- 'taxtype', 'varchar', '', $char_d, '', '',
- 'pkgnum', 'int', '', '', '', '',
- 'locationnum', 'int', '', '', '', '', #redundant?
- 'amount', @money_type, '', '',
+ 'billpkgtaxlocationnum', 'serial', '', '', '', '',
+ 'billpkgnum', 'int', '', '', '', '',
+ 'taxnum', 'int', '', '', '', '',
+ 'taxtype', 'varchar', '', $char_d, '', '',
+ 'pkgnum', 'int', '', '', '', '', #redundant
+ 'locationnum', 'int', '', '', '', '', #redundant
+ 'amount', @money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
+ 'taxable_billpkgnum', 'int', 'NULL', '', '', '',
],
'primary_key' => 'billpkgtaxlocationnum',
'unique' => [],
- 'index' => [ [ 'billpkgnum' ], [ 'taxnum' ], [ 'pkgnum' ], [ 'locationnum' ] ],
+ 'index' => [ [ 'billpkgnum' ],
+ [ 'taxnum' ],
+ [ 'pkgnum' ],
+ [ 'locationnum' ],
+ [ 'taxable_billpkgnum' ],
+ ],
},
'cust_bill_pkg_tax_rate_location' => {
'columns' => [
- 'billpkgtaxratelocationnum', 'serial', '', '', '', '',
- 'billpkgnum', 'int', '', '', '', '',
- 'taxnum', 'int', '', '', '', '',
+ 'billpkgtaxratelocationnum', 'serial', '', '', '', '',
+ 'billpkgnum', 'int', '', '', '', '',
+ 'taxnum', 'int', '', '', '', '',
'taxtype', 'varchar', '', $char_d, '', '',
'locationtaxid', 'varchar', 'NULL', $char_d, '', '',
- 'taxratelocationnum', 'int', '', '', '', '',
- 'amount', @money_type, '', '',
+ 'taxratelocationnum', 'int', '', '', '', '',
+ 'amount', @money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
+ 'taxable_billpkgnum', 'int', 'NULL', '', '', '',
],
'primary_key' => 'billpkgtaxratelocationnum',
'unique' => [],
- 'index' => [ [ 'billpkgnum' ], [ 'taxnum' ], [ 'taxratelocationnum' ] ],
+ 'index' => [ [ 'billpkgnum' ], [ 'taxnum' ], [ 'taxratelocationnum' ],
+ [ 'taxable_billpkgnum' ], ],
},
'cust_bill_pkg_void' => {
'pkgpart_override', 'int', 'NULL', '', '', '',
'setup', @money_type, '', '',
'recur', @money_type, '', '',
+ #XXX a currency for a line item? or just one for the entire invoice
+ #'currency', 'char', 'NULL', 3, '', '',
'sdate', @date_type, '', '',
'edate', @date_type, '', '',
'itemdesc', 'varchar', 'NULL', $char_d, '', '',
'format', 'char', 'NULL', 1, '', '',
'classnum', 'int', 'NULL', '', '', '',
'duration', 'int', 'NULL', '', 0, '',
- 'phonenum', 'varchar', 'NULL', 15, '', '',
+ 'phonenum', 'varchar', 'NULL', 25, '', '',
'accountcode', 'varchar', 'NULL', 20, '', '',
'startdate', @date_type, '', '',
'regionname', 'varchar', 'NULL', $char_d, '', '',
'cust_bill_pkg_tax_location_void' => {
'columns' => [
- 'billpkgtaxlocationnum', 'int', '', '', '', '',
- 'billpkgnum', 'int', '', '', '', '',
- 'taxnum', 'int', '', '', '', '',
- 'taxtype', 'varchar', '', $char_d, '', '',
- 'pkgnum', 'int', '', '', '', '',
- 'locationnum', 'int', '', '', '', '', #redundant?
- 'amount', @money_type, '', '',
+ 'billpkgtaxlocationnum', 'int', '', '', '', '',
+ 'billpkgnum', 'int', '', '', '', '',
+ 'taxnum', 'int', '', '', '', '',
+ 'taxtype', 'varchar', '', $char_d, '', '',
+ 'pkgnum', 'int', '', '', '', '',
+ 'locationnum', 'int', '', '', '', '', #redundant?
+ 'amount', @money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
+ 'taxable_billpkgnum', 'int', 'NULL', '', '', '',
],
'primary_key' => 'billpkgtaxlocationnum',
'unique' => [],
'cust_bill_pkg_tax_rate_location_void' => {
'columns' => [
- 'billpkgtaxratelocationnum', 'int', '', '', '', '',
- 'billpkgnum', 'int', '', '', '', '',
- 'taxnum', 'int', '', '', '', '',
- 'taxtype', 'varchar', '', $char_d, '', '',
- 'locationtaxid', 'varchar', 'NULL', $char_d, '', '',
- 'taxratelocationnum', 'int', '', '', '', '',
- 'amount', @money_type, '', '',
+ 'billpkgtaxratelocationnum', 'int', '', '', '', '',
+ 'billpkgnum', 'int', '', '', '', '',
+ 'taxnum', 'int', '', '', '', '',
+ 'taxtype', 'varchar', '', $char_d, '', '',
+ 'locationtaxid', 'varchar', 'NULL', $char_d, '', '',
+ 'taxratelocationnum', 'int', '', '', '', '',
+ 'amount', @money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
],
'primary_key' => 'billpkgtaxratelocationnum',
'unique' => [],
'cust_credit' => {
'columns' => [
- 'crednum', 'serial', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- '_date', @date_type, '', '',
- 'amount', @money_type, '', '',
- 'otaker', 'varchar', 'NULL', 32, '', '',
- 'usernum', 'int', 'NULL', '', '', '',
- 'reason', 'text', 'NULL', '', '', '',
- 'reasonnum', 'int', 'NULL', '', '', '',
- 'addlinfo', 'text', 'NULL', '', '', '',
- 'closed', 'char', 'NULL', 1, '', '',
- 'pkgnum', 'int', 'NULL', '', '', '', #desired pkgnum for pkg-balances
- 'eventnum', 'int', 'NULL', '', '', '', #triggering event for commission
- #'commission_agentnum', 'int', 'NULL', '', '', '', #
+ 'crednum', 'serial', '', '', '', '',
+ 'custnum', 'int', '', '', '', '',
+ '_date', @date_type, '', '',
+ 'amount',@money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
+ 'otaker', 'varchar', 'NULL', 32, '', '',
+ 'usernum', 'int', 'NULL', '', '', '',
+ 'reason', 'text', 'NULL', '', '', '',
+ 'reasonnum', 'int', 'NULL', '', '', '',
+ 'addlinfo', 'text', 'NULL', '', '', '',
+ 'closed', 'char', 'NULL', 1, '', '',
+ 'pkgnum', 'int', 'NULL', '', '','',#desired pkgnum for pkg-balances
+ 'eventnum', 'int', 'NULL', '', '','',#triggering event for commission
+ 'commission_agentnum', 'int', 'NULL', '', '', '', #
+ 'commission_salesnum', 'int', 'NULL', '', '', '', #
+ 'commission_pkgnum', 'int', 'NULL', '', '', '', #
],
'primary_key' => 'crednum',
'unique' => [],
- 'index' => [ ['custnum'], ['_date'], ['usernum'], ['eventnum'] ],
+ 'index' => [ ['custnum'], ['_date'], ['usernum'], ['eventnum'],
+ [ 'commission_salesnum' ],
+ ],
},
'cust_credit_bill' => {
'columns' => [
'custnum', 'serial', '', '', '', '',
'agentnum', 'int', '', '', '', '',
+ 'salesnum', 'int', 'NULL', '', '', '',
'agent_custid', 'varchar', 'NULL', $char_d, '', '',
'classnum', 'int', 'NULL', '', '', '',
'custbatch', 'varchar', 'NULL', $char_d, '', '',
'ship_night', 'varchar', 'NULL', 20, '', '',
'ship_fax', 'varchar', 'NULL', 12, '', '',
'ship_mobile', 'varchar', 'NULL', 12, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
+
+ #deprecated, info moved to cust_payby
'payby', 'char', '', 4, '', '',
'payinfo', 'varchar', 'NULL', 512, '', '',
'paycvv', 'varchar', 'NULL', 512, '', '',
'paystate', 'varchar', 'NULL', $char_d, '', '',
'paytype', 'varchar', 'NULL', $char_d, '', '',
'payip', 'varchar', 'NULL', 15, '', '',
+
'geocode', 'varchar', 'NULL', 20, '', '',
'censustract', 'varchar', 'NULL', 20, '', '', # 7 to save space?
'censusyear', 'char', 'NULL', 4, '', '',
'cdr_termination_percentage', 'decimal', 'NULL', '7,4', '', '',
'invoice_terms', 'varchar', 'NULL', $char_d, '', '',
'credit_limit', @money_typen, '', '',
+ 'credit_limit_currency', 'char', 'NULL', 3, '', '',
'archived', 'char', 'NULL', 1, '', '',
'email_csv_cdr', 'char', 'NULL', 1, '', '',
'accountcode_cdr', 'char', 'NULL', 1, '', '',
'locale', 'varchar', 'NULL', 16, '', '',
'calling_list_exempt', 'char', 'NULL', 1, '', '',
'invoice_noemail', 'char', 'NULL', 1, '', '',
+ 'message_noemail', 'char', 'NULL', 1, '', '',
'bill_locationnum', 'int', 'NULL', '', '', '',
'ship_locationnum', 'int', 'NULL', '', '', '',
],
],
},
+ 'cust_payby' => {
+ 'columns' => [
+ 'custpaybynum', 'serial', '', '', '', '',
+ 'custnum', 'int', '', '', '', '',
+ 'weight', 'int', '', '', '', '',
+ 'payby', 'char', '', 4, '', '',
+ 'payinfo', 'varchar', 'NULL', 512, '', '',
+ 'paycvv', 'varchar', 'NULL', 512, '', '',
+ 'paymask', 'varchar', 'NULL', $char_d, '', '',
+ #'paydate', @date_type, '', '',
+ 'paydate', 'varchar', 'NULL', 10, '', '',
+ 'paystart_month', 'int', 'NULL', '', '', '',
+ 'paystart_year', 'int', 'NULL', '', '', '',
+ 'payissue', 'varchar', 'NULL', 2, '', '',
+ 'payname', 'varchar', 'NULL', 2*$char_d, '', '',
+ 'paystate', 'varchar', 'NULL', $char_d, '', '',
+ 'paytype', 'varchar', 'NULL', $char_d, '', '',
+ 'payip', 'varchar', 'NULL', 15, '', '',
+ 'locationnum', 'int', 'NULL', '', '', '',
+ ],
+ 'primary_key' => 'custpaybynum',
+ 'unique' => [],
+ 'index' => [ [ 'custnum' ] ],
+ },
+
'cust_recon' => { # (some sort of not-well understood thing for OnPac)
'columns' => [
'reconid', 'serial', '', '', '', '',
'emailaddress', 'varchar', '', $char_d, '', '',
],
'primary_key' => 'contactemailnum',
- 'unique' => [ [ 'emailaddress' ], ],
+ 'unique' => [ [ 'contactnum', 'emailaddress' ], ],
'index' => [],
},
'quotation_pkg' => {
'columns' => [
'quotationpkgnum', 'serial', '', '', '', '',
+ 'quotationnum', 'int', 'NULL', '', '', '', #shouldn't be null,
+ # but history...
'pkgpart', 'int', '', '', '', '',
'locationnum', 'int', 'NULL', '', '', '',
'start_date', @date_type, '', '',
'adjustmentnum', 'serial', '', '', '', '',
'custnum', 'int', '', '', '', '',
'taxname', 'varchar', '', $char_d, '', '',
- 'amount', @money_type, '', '',
- 'comment', 'varchar', 'NULL', $char_d, '', '',
+ 'amount', @money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
+ 'comment', 'varchar', 'NULL', $char_d, '', '',
'billpkgnum', 'int', 'NULL', '', '', '',
#more? no cust_bill_pkg_tax_location?
],
#off the cust_main_county for validation and to
#provide a tax rate.
'columns' => [
- 'taxnum', 'serial', '', '', '', '',
- 'district', 'varchar', 'NULL', 20, '', '',
- 'city', 'varchar', 'NULL', $char_d, '', '',
- 'county', 'varchar', 'NULL', $char_d, '', '',
- 'state', 'varchar', 'NULL', $char_d, '', '',
- 'country', 'char', '', 2, '', '',
- 'taxclass', 'varchar', 'NULL', $char_d, '', '',
- 'exempt_amount', @money_type, '', '',
- 'tax', 'real', '', '', '', '', #tax %
- 'taxname', 'varchar', 'NULL', $char_d, '', '',
- 'setuptax', 'char', 'NULL', 1, '', '', # Y = setup tax exempt
- 'recurtax', 'char', 'NULL', 1, '', '', # Y = recur tax exempt
+ 'taxnum', 'serial', '', '', '', '',
+ 'district', 'varchar', 'NULL', 20, '', '',
+ 'city', 'varchar', 'NULL', $char_d, '', '',
+ 'county', 'varchar', 'NULL', $char_d, '', '',
+ 'state', 'varchar', 'NULL', $char_d, '', '',
+ 'country', 'char', '', 2, '', '',
+ 'taxclass', 'varchar', 'NULL', $char_d, '', '',
+ 'exempt_amount', @money_type, '', '',
+ 'exempt_amount_currency', 'char', 'NULL', 3, '', '',
+ 'tax', 'real', '', '', '', '', #tax %
+ 'taxname', 'varchar', 'NULL', $char_d, '', '',
+ 'setuptax', 'char', 'NULL', 1, '', '', # Y = setup tax exempt
+ 'recurtax', 'char', 'NULL', 1, '', '', # Y = recur tax exempt
],
'primary_key' => 'taxnum',
'unique' => [],
'cust_pay_pending' => {
'columns' => [
- 'paypendingnum','serial', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- 'paid', @money_type, '', '',
- '_date', @date_type, '', '',
- 'payby', 'char', '', 4, '', '', #CARD/BILL/COMP, should
- # be index into payby
- # table eventually
- 'payinfo', 'varchar', 'NULL', 512, '', '', #see cust_main above
- 'paymask', 'varchar', 'NULL', $char_d, '', '',
- 'paydate', 'varchar', 'NULL', 10, '', '',
+ 'paypendingnum', 'serial', '', '', '', '',
+ 'custnum', 'int', '', '', '', '',
+ 'paid', @money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
+ '_date', @date_type, '', '',
+ 'payby', 'char', '', 4, '', '',
+ 'payinfo', 'varchar', 'NULL', 512, '', '',
+ 'paymask', 'varchar', 'NULL', $char_d, '', '',
+ 'paydate', 'varchar', 'NULL', 10, '', '',
'recurring_billing', 'varchar', 'NULL', $char_d, '', '',
- #'paybatch', 'varchar', 'NULL', $char_d, '', '', #for auditing purposes.
- 'payunique', 'varchar', 'NULL', $char_d, '', '', #separate paybatch "unique" functions from current usage
+ 'payunique', 'varchar', 'NULL', $char_d, '', '', #separate paybatch "unique" functions from current usage
'pkgnum', 'int', 'NULL', '', '', '', #desired pkgnum for pkg-balances
'status', 'varchar', '', $char_d, '', '',
'gatewaynum', 'int', 'NULL', '', '', '',
#'cust_balance', @money_type, '', '',
'paynum', 'int', 'NULL', '', '', '',
- 'jobnum', 'int', 'NULL', '', '', '',
+ 'jobnum', 'bigint', 'NULL', '', '', '',
+ 'invnum', 'int', 'NULL', '', '', '',
+ 'manual', 'char', 'NULL', 1, '', '',
+ 'discount_term','int', 'NULL', '', '', '',
+ 'failure_status','varchar','NULL', 16, '', '',
],
'primary_key' => 'paypendingnum',
'unique' => [ [ 'payunique' ] ],
'cust_pay' => {
'columns' => [
- 'paynum', 'serial', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- '_date', @date_type, '', '',
- 'paid', @money_type, '', '',
- 'otaker', 'varchar', 'NULL', 32, '', '',
- 'usernum', 'int', 'NULL', '', '', '',
- 'payby', 'char', '', 4, '', '', # CARD/BILL/COMP, should be
- # index into payby table
- # eventually
- 'payinfo', 'varchar', 'NULL', 512, '', '', #see cust_main above
- 'paymask', 'varchar', 'NULL', $char_d, '', '',
- 'paydate', 'varchar', 'NULL', 10, '', '',
- 'paybatch', 'varchar', 'NULL', $char_d, '', '', #for auditing purposes.
- 'payunique', 'varchar', 'NULL', $char_d, '', '', #separate paybatch "unique" functions from current usage
- 'closed', 'char', 'NULL', 1, '', '',
+ 'paynum', 'serial', '', '', '', '',
+ 'custnum', 'int', '', '', '', '',
+ '_date', @date_type, '', '',
+ 'paid', @money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
+ 'otaker', 'varchar', 'NULL', 32, '', '',
+ 'usernum', 'int', 'NULL', '', '', '',
+ 'payby', 'char', '', 4, '', '',
+ 'payinfo', 'varchar', 'NULL', 512, '', '',
+ 'paymask', 'varchar', 'NULL', $char_d, '', '',
+ 'paydate', 'varchar', 'NULL', 10, '', '',
+ 'paybatch', 'varchar', 'NULL', $char_d, '', '',#for auditing purposes
+ 'payunique', 'varchar', 'NULL', $char_d, '', '',#separate paybatch "unique" functions from current usage
+ 'closed', 'char', 'NULL', 1, '', '',
'pkgnum', 'int', 'NULL', '', '', '', #desired pkgnum for pkg-balances
+
# cash/check deposit info fields
- 'bank', 'varchar', 'NULL', $char_d, '', '',
- 'depositor', 'varchar', 'NULL', $char_d, '', '',
- 'account', 'varchar', 'NULL', 20, '', '',
- 'teller', 'varchar', 'NULL', 20, '', '',
- 'batchnum', 'int', 'NULL', '', '', '', #pay_batch foreign key
+ 'bank', 'varchar', 'NULL', $char_d, '', '',
+ 'depositor', 'varchar', 'NULL', $char_d, '', '',
+ 'account', 'varchar', 'NULL', 20, '', '',
+ 'teller', 'varchar', 'NULL', 20, '', '',
+
+ 'batchnum', 'int', 'NULL', '', '', '',#pay_batch foreign key
+
+ # credit card/EFT fields (formerly in paybatch)
+ 'gatewaynum', 'int', 'NULL', '', '', '', # payment_gateway FK
+ 'processor', 'varchar', 'NULL', $char_d, '', '', # module name
+ 'auth', 'varchar', 'NULL', 16, '', '', # CC auth number
+ 'order_number','varchar', 'NULL', $char_d, '', '', # transaction number
],
'primary_key' => 'paynum',
#i guess not now, with cust_pay_pending, if we actually make it here, we _do_ want to record it# 'unique' => [ [ 'payunique' ] ],
'cust_pay_void' => {
'columns' => [
- 'paynum', 'int', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- '_date', @date_type, '', '',
- 'paid', @money_type, '', '',
- 'otaker', 'varchar', 'NULL', 32, '', '',
- 'usernum', 'int', 'NULL', '', '', '',
- 'payby', 'char', '', 4, '', '', # CARD/BILL/COMP, should be
- # index into payby table
- # eventually
- 'payinfo', 'varchar', 'NULL', 512, '', '', #see cust_main above
- 'paymask', 'varchar', 'NULL', $char_d, '', '',
+ 'paynum', 'int', '', '', '', '',
+ 'custnum', 'int', '', '', '', '',
+ '_date', @date_type, '', '',
+ 'paid', @money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
+ 'otaker', 'varchar', 'NULL', 32, '', '',
+ 'usernum', 'int', 'NULL', '', '', '',
+ 'payby', 'char', '', 4, '', '',
+ 'payinfo', 'varchar', 'NULL', 512, '', '',
+ 'paymask', 'varchar', 'NULL', $char_d, '', '',
#'paydate' ?
- 'paybatch', 'varchar', 'NULL', $char_d, '', '', #for auditing purposes.
- 'closed', 'char', 'NULL', 1, '', '',
- 'pkgnum', 'int', 'NULL', '', '', '', #desired pkgnum for pkg-balances
+ 'paybatch', 'varchar', 'NULL', $char_d, '', '', #for auditing purposes.
+ 'closed', 'char', 'NULL', 1, '', '',
+ 'pkgnum', 'int', 'NULL', '', '', '', #desired pkgnum for pkg-balances
+
# cash/check deposit info fields
'bank', 'varchar', 'NULL', $char_d, '', '',
'depositor', 'varchar', 'NULL', $char_d, '', '',
- 'account', 'varchar', 'NULL', 20, '', '',
- 'teller', 'varchar', 'NULL', 20, '', '',
- 'batchnum', 'int', 'NULL', '', '', '', #pay_batch foreign key
+ 'account', 'varchar', 'NULL', 20, '', '',
+ 'teller', 'varchar', 'NULL', 20, '', '',
+ 'batchnum', 'int', 'NULL', '', '', '', #pay_batch foreign key
+
+ # credit card/EFT fields (formerly in paybatch)
+ 'gatewaynum', 'int', 'NULL', '', '', '', # payment_gateway FK
+ 'processor', 'varchar', 'NULL', $char_d, '', '', # module name
+ 'auth', 'varchar', 'NULL', 16, '', '', # CC auth number
+ 'order_number','varchar', 'NULL', $char_d, '', '', # transaction number
#void fields
- 'void_date', @date_type, '', '',
- 'reason', 'varchar', 'NULL', $char_d, '', '',
- 'void_usernum', 'int', 'NULL', '', '', '',
+ 'void_date', @date_type, '', '',
+ 'reason', 'varchar', 'NULL', $char_d, '', '',
+ 'void_usernum', 'int', 'NULL', '', '', '',
],
'primary_key' => 'paynum',
'unique' => [],
'cust_pay_batch' => { #list of customers in current CARD/CHEK batch
'columns' => [
- 'paybatchnum', 'serial', '', '', '', '',
- 'batchnum', 'int', '', '', '', '',
- 'invnum', 'int', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- 'last', 'varchar', '', $char_d, '', '',
- 'first', 'varchar', '', $char_d, '', '',
- 'address1', 'varchar', '', $char_d, '', '',
- 'address2', 'varchar', 'NULL', $char_d, '', '',
- 'city', 'varchar', '', $char_d, '', '',
- 'state', 'varchar', 'NULL', $char_d, '', '',
- 'zip', 'varchar', 'NULL', 10, '', '',
- 'country', 'char', '', 2, '', '',
- # 'trancode', 'int', '', '', '', ''
- 'payby', 'char', '', 4, '', '', # CARD/BILL/COMP, should be
- 'payinfo', 'varchar', '', 512, '', '',
- #'exp', @date_type, '', ''
- 'exp', 'varchar', 'NULL', 11, '', '',
- 'payname', 'varchar', 'NULL', $char_d, '', '',
- 'amount', @money_type, '', '',
- 'status', 'varchar', 'NULL', $char_d, '', '',
+ 'paybatchnum', 'serial', '', '', '', '',
+ 'batchnum', 'int', '', '', '', '',
+ 'invnum', 'int', '', '', '', '',
+ 'custnum', 'int', '', '', '', '',
+ 'last', 'varchar', '', $char_d, '', '',
+ 'first', 'varchar', '', $char_d, '', '',
+ 'address1', 'varchar', '', $char_d, '', '',
+ 'address2', 'varchar', 'NULL', $char_d, '', '',
+ 'city', 'varchar', '', $char_d, '', '',
+ 'state', 'varchar', 'NULL', $char_d, '', '',
+ 'zip', 'varchar', 'NULL', 10, '', '',
+ 'country', 'char', '', 2, '', '',
+ 'payby', 'char', '', 4, '', '',
+ 'payinfo', 'varchar', 'NULL', 512, '', '',
+ #'exp', @date_type, '', '',
+ 'exp', 'varchar', 'NULL', 11, '', '',
+ 'payname', 'varchar', 'NULL', $char_d, '', '',
+ 'amount', @money_type, '', '',
+ 'currency', 'char', 'NULL', 3, '', '',
+ 'status', 'varchar', 'NULL', $char_d, '', '',
+ 'failure_status','varchar', 'NULL', 16, '', '',
+ 'error_message', 'varchar', 'NULL', $char_d, '', '',
],
'primary_key' => 'paybatchnum',
'unique' => [],
'custnum', 'int', '', '', '', '',
'pkgpart', 'int', '', '', '', '',
'pkgbatch', 'varchar', 'NULL', $char_d, '', '',
+ 'contactnum', 'int', 'NULL', '', '', '',
'locationnum', 'int', 'NULL', '', '', '',
'otaker', 'varchar', 'NULL', 32, '', '',
'usernum', 'int', 'NULL', '', '', '',
+ 'salesnum', 'int', 'NULL', '', '', '',
'order_date', @date_type, '', '',
'start_date', @date_type, '', '',
'setup', @date_type, '', '',
'change_pkgnum', 'int', 'NULL', '', '', '',
'change_pkgpart', 'int', 'NULL', '', '', '',
'change_locationnum', 'int', 'NULL', '', '', '',
+ 'change_custnum', 'int', 'NULL', '', '', '',
+ 'main_pkgnum', 'int', 'NULL', '', '', '',
+ 'pkglinknum', 'int', 'NULL', '', '', '',
'manual_flag', 'char', 'NULL', 1, '', '',
'no_auto', 'char', 'NULL', 1, '', '',
'quantity', 'int', 'NULL', '', '', '',
'waive_setup', 'char', 'NULL', 1, '', '',
'recur_show_zero', 'char', 'NULL', 1, '', '',
'setup_show_zero', 'char', 'NULL', 1, '', '',
+ 'change_to_pkgnum', 'int', 'NULL', '', '', '',
],
'primary_key' => 'pkgnum',
'unique' => [],
'index' => [ [ 'pkgnum' ], [ 'discountnum' ], [ 'usernum' ], ],
},
+ 'cust_pkg_usage' => {
+ 'columns' => [
+ 'pkgusagenum', 'serial', '', '', '', '',
+ 'pkgnum', 'int', '', '', '', '',
+ 'minutes', 'int', '', '', '', '',
+ 'pkgusagepart', 'int', '', '', '', '',
+ ],
+ 'primary_key' => 'pkgusagenum',
+ 'unique' => [],
+ 'index' => [ [ 'pkgnum' ], [ 'pkgusagepart' ] ],
+ },
+
+ 'cdr_cust_pkg_usage' => {
+ 'columns' => [
+ 'cdrusagenum', 'bigserial', '', '', '', '',
+ 'acctid', 'bigint', '', '', '', '',
+ 'pkgusagenum', 'int', '', '', '', '',
+ 'minutes', 'int', '', '', '', '',
+ ],
+ 'primary_key' => 'cdrusagenum',
+ 'unique' => [],
+ 'index' => [ [ 'pkgusagenum' ], [ 'acctid' ] ],
+ },
+
'cust_bill_pkg_discount' => {
'columns' => [
'billpkgdiscountnum', 'serial', '', '', '', '',
'paymask', 'varchar', 'NULL', $char_d, '', '',
'paybatch', 'varchar', 'NULL', $char_d, '', '',
'closed', 'char', 'NULL', 1, '', '',
+ # credit card/EFT fields (formerly in paybatch)
+ 'gatewaynum', 'int', 'NULL', '', '', '', # payment_gateway FK
+ 'processor', 'varchar', 'NULL', $char_d, '', '', # module name
+ 'auth', 'varchar','NULL',16, '', '', # CC auth number
+ 'order_number', 'varchar','NULL',$char_d, '', '', # transaction number
],
'primary_key' => 'refundnum',
'unique' => [],
'setup_show_zero', 'char', 'NULL', 1, '', '',
'successor', 'int', 'NULL', '', '', '',
'family_pkgpart','int', 'NULL', '', '', '',
+ 'delay_start', 'int', 'NULL', '', '', '',
],
'primary_key' => 'pkgpart',
'unique' => [],
],
},
+ 'part_pkg_msgcat' => {
+ 'columns' => [
+ 'pkgpartmsgnum', 'serial', '', '', '', '',
+ 'pkgpart', 'int', '', '', '', '',
+ 'locale', 'varchar', '', 16, '', '',
+ 'pkg', 'varchar', '', $char_d, '', '', #longer/no limit?
+ 'comment', 'varchar', 'NULL', 2*$char_d, '', '', #longer/no limit?
+ ],
+ 'primary_key' => 'pkgpartmsgnum',
+ 'unique' => [ [ 'pkgpart', 'locale' ] ],
+ 'index' => [],
+ },
+
+ 'part_pkg_currency' => {
+ 'columns' => [
+ 'pkgcurrencynum', 'serial', '', '', '', '',
+ 'pkgpart', 'int', '', '', '', '',
+ 'currency', 'char', '', 3, '', '',
+ 'optionname', 'varchar', '', $char_d, '', '',
+ 'optionvalue', 'text', '', '', '', '',
+ ],
+ 'primary_key' => 'pkgcurrencynum',
+ 'unique' => [ [ 'pkgpart', 'currency', 'optionname' ] ],
+ 'index' => [ ['pkgpart'] ],
+ },
+
+ 'currency_exchange' => {
+ 'columns' => [
+ 'currencyratenum', 'serial', '', '', '', '',
+ 'from_currency', 'char', '', 3, '', '',
+ 'to_currency', 'char', '', 3, '', '',
+ 'rate', 'decimal', '', '7,6', '', '',
+ ],
+ 'primary_key' => 'currencyratenum',
+ 'unique' => [ [ 'from_currency', 'to_currency' ] ],
+ 'index' => [],
+ },
+
'part_pkg_link' => {
'columns' => [
'pkglinknum', 'serial', '', '', '', '',
'pkg_svc' => {
'columns' => [
- 'pkgsvcnum', 'serial', '', '', '', '',
- 'pkgpart', 'int', '', '', '', '',
- 'svcpart', 'int', '', '', '', '',
- 'quantity', 'int', '', '', '', '',
- 'primary_svc','char', 'NULL', 1, '', '',
- 'hidden', 'char', 'NULL', 1, '', '',
+ 'pkgsvcnum', 'serial', '', '', '', '',
+ 'pkgpart', 'int', '', '', '', '',
+ 'svcpart', 'int', '', '', '', '',
+ 'quantity', 'int', '', '', '', '',
+ 'primary_svc', 'char', 'NULL', 1, '', '',
+ 'hidden', 'char', 'NULL', 1, '', '',
+ 'bulk_skip', 'char', 'NULL', 1, '', '',
],
'primary_key' => 'pkgsvcnum',
- 'unique' => [ ['pkgpart', 'svcpart'] ],
- 'index' => [ ['pkgpart'], ['quantity'] ],
+ 'unique' => [ ['pkgpart', 'svcpart'] ],
+ 'index' => [ ['pkgpart'], ['quantity'] ],
},
'part_referral' => {
'preserve', 'char', 'NULL', 1, '', '',
'selfservice_access', 'varchar', 'NULL', $char_d, '', '',
'classnum', 'int', 'NULL', '', '', '',
- ],
+ 'restrict_edit_password','char', 'NULL', 1, '', '',
+ 'has_router', 'char', 'NULL', 1, '', '',
+],
'primary_key' => 'svcpart',
'unique' => [],
'index' => [ [ 'disabled' ] ],
'cgp_sendmdnmode', 'varchar', 'NULL', $char_d, '', '',#SendMDNMode
#mail
#XXX RPOP settings
+ #
],
'primary_key' => 'svcnum',
#'unique' => [ [ 'username', 'domsvc' ] ],
'queue' => {
'columns' => [
- 'jobnum', 'serial', '', '', '', '',
+ 'jobnum', 'bigserial', '', '', '', '',
'job', 'varchar', '', 512, '', '',
'_date', 'int', '', '', '', '',
'status', 'varchar', '', $char_d, '', '',
'queue_arg' => {
'columns' => [
- 'argnum', 'serial', '', '', '', '',
- 'jobnum', 'int', '', '', '', '',
- 'frozen', 'char', 'NULL', 1, '', '',
- 'arg', 'text', 'NULL', '', '', '',
+ 'argnum', 'bigserial', '', '', '', '',
+ 'jobnum', 'bigint', '', '', '', '',
+ 'frozen', 'char', 'NULL', 1, '', '',
+ 'arg', 'text', 'NULL', '', '', '',
],
'primary_key' => 'argnum',
'unique' => [],
'queue_depend' => {
'columns' => [
- 'dependnum', 'serial', '', '', '', '',
- 'jobnum', 'int', '', '', '', '',
- 'depend_jobnum', 'int', '', '', '', '',
+ 'dependnum', 'bigserial', '', '', '', '',
+ 'jobnum', 'bigint', '', '', '', '',
+ 'depend_jobnum', 'bigint', '', '', '', '',
],
'primary_key' => 'dependnum',
'unique' => [],
'columns' => [
'exportnum', 'serial', '', '', '', '',
'exportname', 'varchar', 'NULL', $char_d, '', '',
- 'machine', 'varchar', 'NULL', $char_d, '', '',
+ 'machine', 'varchar', 'NULL', $char_d, '', '',
'exporttype', 'varchar', '', $char_d, '', '',
'nodomain', 'char', 'NULL', 1, '', '',
+ 'default_machine','int', 'NULL', '', '', '',
],
'primary_key' => 'exportnum',
'unique' => [],
'svc_broadband' => {
'columns' => [
- 'svcnum', 'int', '', '', '', '',
- 'description', 'varchar', 'NULL', $char_d, '', '',
- 'routernum', 'int', 'NULL', '', '', '',
- 'blocknum', 'int', 'NULL', '', '', '',
- 'sectornum', 'int', 'NULL', '', '', '',
- 'speed_up', 'int', 'NULL', '', '', '',
- 'speed_down', 'int', 'NULL', '', '', '',
- 'ip_addr', 'varchar', 'NULL', 15, '', '',
- 'mac_addr', 'varchar', 'NULL', 12, '', '',
- 'authkey', 'varchar', 'NULL', 32, '', '',
- 'latitude', 'decimal', 'NULL', '10,7', '', '',
- 'longitude', 'decimal', 'NULL', '10,7', '', '',
- 'altitude', 'decimal', 'NULL', '', '', '',
- 'vlan_profile', 'varchar', 'NULL', $char_d, '', '',
- 'performance_profile', 'varchar', 'NULL', $char_d, '', '',
- 'plan_id', 'varchar', 'NULL', $char_d, '', '',
+ 'svcnum', 'int', '', '', '', '',
+ 'description', 'varchar', 'NULL', $char_d, '', '',
+ 'routernum', 'int', 'NULL', '', '', '',
+ 'blocknum', 'int', 'NULL', '', '', '',
+ 'sectornum', 'int', 'NULL', '', '', '',
+ 'speed_up', 'int', 'NULL', '', '', '',
+ 'speed_down', 'int', 'NULL', '', '', '',
+ 'ip_addr', 'varchar', 'NULL', 15, '', '',
+ 'mac_addr', 'varchar', 'NULL', 12, '', '',
+ 'authkey', 'varchar', 'NULL', 32, '', '',
+ 'latitude', 'decimal', 'NULL', '10,7', '', '',
+ 'longitude', 'decimal', 'NULL', '10,7', '', '',
+ 'altitude', 'decimal', 'NULL', '', '', '',
+ 'vlan_profile', 'varchar', 'NULL', $char_d, '', '',
+ 'performance_profile', 'varchar', 'NULL', $char_d, '', '',
+ 'plan_id', 'varchar', 'NULL', $char_d, '', '',
+ 'radio_serialnum', 'varchar', 'NULL', $char_d, '', '',
+ 'radio_location', 'varchar', 'NULL', 2*$char_d, '', '',
+ 'poe_location', 'varchar', 'NULL', 2*$char_d, '', '',
+ 'rssi', 'int', 'NULL', '', '', '',
+ 'suid', 'int', 'NULL', '', '', '',
+ 'shared_svcnum', 'int', 'NULL', '', '', '',
],
'primary_key' => 'svcnum',
'unique' => [ [ 'ip_addr' ], [ 'mac_addr' ] ],
'index' => [ [ 'disabled' ] ],
},
+ 'part_pkg_usage' => {
+ 'columns' => [
+ 'pkgusagepart', 'serial', '', '', '', '',
+ 'pkgpart', 'int', '', '', '', '',
+ 'minutes', 'int', '', '', '', '',
+ 'priority', 'int', 'NULL', '', '', '',
+ 'shared', 'char', 'NULL', 1, '', '',
+ 'rollover', 'char', 'NULL', 1, '', '',
+ 'description', 'varchar', 'NULL', $char_d, '', '',
+ ],
+ 'primary_key' => 'pkgusagepart',
+ 'unique' => [],
+ 'index' => [ [ 'pkgpart' ] ],
+ },
+
+ 'part_pkg_usage_class' => {
+ 'columns' => [
+ 'num', 'serial', '', '', '', '',
+ 'pkgusagepart', 'int', '', '', '', '',
+ 'classnum', 'int','NULL', '', '', '',
+ ],
+ 'primary_key' => 'num',
+ 'unique' => [ [ 'pkgusagepart', 'classnum' ] ],
+ 'index' => [],
+ },
+
'rate' => {
'columns' => [
'ratenum', 'serial', '', '', '', '',
'columns' => [
'regionnum', 'serial', '', '', '', '',
'regionname', 'varchar', '', $char_d, '', '',
+ 'exact_match', 'char', 'NULL', 1, '', '',
],
'primary_key' => 'regionnum',
'unique' => [],
'gateway_username', 'varchar', 'NULL', $char_d, '', '',
'gateway_password', 'varchar', 'NULL', $char_d, '', '',
'gateway_action', 'varchar', 'NULL', $char_d, '', '',
- 'gateway_callback_url', 'varchar', 'NULL', $char_d, '', '',
+ 'gateway_callback_url', 'varchar', 'NULL', 255, '', '',
+ 'gateway_cancel_url', 'varchar', 'NULL', 255, '', '',
'disabled', 'char', 'NULL', 1, '', '',
],
'primary_key' => 'gatewaynum',
'quantity', 'int', 'NULL', '', '', '',
'upstream_rateid', 'int', 'NULL', '', '', '',
+
+ ###
+ # more fields, for GSM imports
+ ###
+ 'servicecode', 'int', 'NULL', '', '', '',
+ 'quantity_able', 'int', 'NULL', '', '', '',
###
#and now for our own fields
'cdrtypenum', 'int', 'NULL', '', '', '',
'charged_party', 'varchar', 'NULL', $char_d, '', '',
+ 'charged_party_imsi', 'varchar', 'NULL', $char_d, '', '',
- 'upstream_price', 'decimal', 'NULL', '10,4', '', '',
+ 'upstream_price', 'decimal', 'NULL', '10,5', '', '',
'upstream_src_regionname', 'varchar', 'NULL', $char_d, '', '',
'upstream_dst_regionname', 'varchar', 'NULL', $char_d, '', '',
'rated_classnum', 'int', 'NULL', '', '', '',
'rated_ratename', 'varchar', 'NULL', $char_d, '', '',
- 'carrierid', 'int', 'NULL', '', '', '',
+ 'carrierid', 'bigint', 'NULL', '', '', '',
# service it was matched to
'svcnum', 'int', 'NULL', '', '', '',
'cdr_carrier' => {
'columns' => [
- 'carrierid' => 'serial', '', '', '', '',
- 'carriername' => 'varchar', '', $char_d, '', '',
+ 'carrierid' => 'serial', '', '', '', '',
+ 'carriername' => 'varchar', '', $char_d, '', '',
+ 'disabled' => 'char', 'NULL', 1, '', '',
],
'primary_key' => 'carrierid',
'unique' => [],
'index' => [],
},
+ 'access_user_session' => {
+ 'columns' => [
+ 'sessionnum', 'serial', '', '', '', '',
+ 'sessionkey', 'varchar', '', $char_d, '', '',
+ 'usernum', 'int', '', '', '', '',
+ 'start_date', @date_type, '', '',
+ 'last_date', @date_type, '', '',
+ ],
+ 'primary_key' => 'sessionnum',
+ 'unique' => [ [ 'sessionkey' ] ],
+ 'index' => [],
+ },
+
'access_user' => {
'columns' => [
- 'usernum', 'serial', '', '', '', '',
- 'username', 'varchar', '', $char_d, '', '',
- '_password', 'varchar', '', $char_d, '', '',
- 'last', 'varchar', '', $char_d, '', '',
- 'first', 'varchar', '', $char_d, '', '',
- 'user_custnum', 'int', 'NULL', '', '', '',
- 'disabled', 'char', 'NULL', 1, '', '',
+ 'usernum', 'serial', '', '', '', '',
+ 'username', 'varchar', '', $char_d, '', '',
+ '_password', 'varchar', 'NULL', $char_d, '', '',
+ '_password_encoding', 'varchar', 'NULL', $char_d, '', '',
+ 'last', 'varchar', 'NULL', $char_d, '', '',
+ 'first', 'varchar', 'NULL', $char_d, '', '',
+ 'user_custnum', 'int', 'NULL', '', '', '',
+ 'disabled', 'char', 'NULL', 1, '', '',
],
'primary_key' => 'usernum',
'unique' => [ [ 'username' ] ],
'index' => [ [ 'groupnum' ] ],
},
- 'access_groupsales' => {
- 'columns' => [
- 'groupsalesnum', 'serial', '', '', '', '',
- 'groupnum', 'int', '', '', '', '',
- 'salesnum', 'int', '', '', '', '',
- ],
- 'primary_key' => 'groupsalesnum',
- 'unique' => [ [ 'groupnum', 'salesnum' ] ],
- 'index' => [ [ 'groupnum' ] ],
- },
-
'access_right' => {
'columns' => [
'rightnum', 'serial', '', '', '', '',
'svc_phone' => {
'columns' => [
- 'svcnum', 'int', '', '', '', '',
- 'countrycode', 'varchar', '', 3, '', '',
- 'phonenum', 'varchar', '', 15, '', '', #12 ?
- 'pin', 'varchar', 'NULL', $char_d, '', '',
- 'sip_password', 'varchar', 'NULL', $char_d, '', '',
- 'phone_name', 'varchar', 'NULL', $char_d, '', '',
- 'pbxsvc', 'int', 'NULL', '', '', '',
- 'domsvc', 'int', 'NULL', '', '', '',
- 'locationnum', 'int', 'NULL', '', '', '',
- 'forwarddst', 'varchar', 'NULL', 15, '', '',
- 'email', 'varchar', 'NULL', 255, '', '',
- 'lnp_status', 'varchar', 'NULL', $char_d, '', '',
- 'portable', 'char', 'NULL', 1, '', '',
- 'lrn', 'char', 'NULL', 10, '', '',
- 'lnp_desired_due_date', 'int', 'NULL', '', '', '',
- 'lnp_due_date', 'int', 'NULL', '', '', '',
- 'lnp_other_provider', 'varchar', 'NULL', $char_d, '', '',
- 'lnp_other_provider_account', 'varchar', 'NULL', $char_d, '', '',
- 'lnp_reject_reason', 'varchar', 'NULL', $char_d, '', '',
+ 'svcnum', 'int', '', '', '', '',
+ 'countrycode', 'varchar', '', 3, '', '',
+ 'phonenum', 'varchar', '', 25, '', '', #12 ?
+ 'sim_imsi', 'varchar', 'NULL', 15, '', '',
+ 'pin', 'varchar', 'NULL', $char_d, '', '',
+ 'sip_password', 'varchar', 'NULL', $char_d, '', '',
+ 'phone_name', 'varchar', 'NULL', $char_d, '', '',
+ 'pbxsvc', 'int', 'NULL', '', '', '',
+ 'domsvc', 'int', 'NULL', '', '', '',
+ 'locationnum', 'int', 'NULL', '', '', '',
+ 'forwarddst', 'varchar', 'NULL', 15, '', '',
+ 'email', 'varchar', 'NULL', 255, '', '',
+ 'lnp_status', 'varchar', 'NULL', $char_d, '', '',
+ 'portable', 'char', 'NULL', 1, '', '',
+ 'lrn', 'char', 'NULL', 10, '', '',
+ 'lnp_desired_due_date', 'int', 'NULL', '', '', '',
+ 'lnp_due_date', 'int', 'NULL', '', '', '',
+ 'lnp_other_provider', 'varchar', 'NULL', $char_d, '', '',
+ 'lnp_other_provider_account', 'varchar', 'NULL', $char_d, '', '',
+ 'lnp_reject_reason', 'varchar', 'NULL', $char_d, '', '',
+ 'sms_carrierid', 'int', 'NULL', '', '', '',
+ 'sms_account', 'varchar', 'NULL', $char_d, '', '',
+ 'max_simultaneous', 'int', 'NULL', '', '', '',
],
'primary_key' => 'svcnum',
- 'unique' => [],
+ 'unique' => [ [ 'sms_carrierid', 'sms_account'] ],
'index' => [ ['countrycode', 'phonenum'], ['pbxsvc'], ['domsvc'],
- ['locationnum'],
+ ['locationnum'], ['sms_carrierid'],
],
},
'index' => [],
},
+ 'svc_alarm' => {
+ 'columns' => [
+ 'svcnum', 'int', '', '', '', '',
+ 'alarm_system', 'varchar', '', $char_d, '', '', # dropdowns?
+ 'alarm_type', 'varchar', '', $char_d, '', '', #
+ 'acctnum', 'varchar', '', $char_d, '', '',
+ '_password', 'varchar', '', $char_d, '', '',
+ 'location', 'varchar', 'NULL', $char_d, '', '',
+ #cs
+ #rep
+ ],
+ 'primary_key' => 'svcnum',
+ 'unique' => [], #system/type/acctnum??
+ 'index' => [],
+ },
+
+ 'svc_cable' => {
+ 'columns' => [
+ 'svcnum', 'int', '', '', '', '',
+ #nothing so far... there should be _something_ uniquely identifying
+ # each subscriber besides the device info...?
+ ],
+ 'primary_key' => 'svcnum',
+ 'unique' => [],
+ 'index' => [],
+ },
+
+ 'cable_device' => {
+ 'columns' => [
+ 'devicenum', 'serial', '', '', '', '',
+ 'devicepart', 'int', '', '', '', '',
+ 'svcnum', 'int', '', '', '', '',
+ 'mac_addr', 'varchar', 'NULL', 12, '', '',
+ 'serial', 'varchar', 'NULL', $char_d, '', '',
+ ],
+ 'primary_key' => 'devicenum',
+ 'unique' => [ [ 'mac_addr' ], ],
+ 'index' => [ [ 'devicepart' ], [ 'svcnum' ], ],
+ },
+
+ 'vend_main' => {
+ 'columns' => [
+ 'vendnum', 'serial', '', '', '', '',
+ 'vendname', 'varchar', '', $char_d, '', '',
+ 'classnum', 'int', '', '', '', '',
+ 'disabled', 'char', 'NULL', 1, '', '',
+ ],
+ 'primary_key' => 'vendnum',
+ 'unique' => [ ['vendname', 'disabled'] ],
+ 'index' => [],
+ },
+
+ 'vend_class' => {
+ 'columns' => [
+ 'classnum', 'serial', '', '', '', '',
+ 'classname', 'varchar', '', $char_d, '', '',
+ 'disabled', 'char', 'NULL', 1, '', '',
+ ],
+ 'primary_key' => 'classnum',
+ 'unique' => [],
+ 'index' => [ ['disabled'] ],
+ },
+
+ 'vend_bill' => {
+ 'columns' => [
+ 'vendbillnum', 'serial', '', '', '', '',
+ 'vendnum', 'int', '', '', '', '',
+ '_date', @date_type, '', '',
+ 'charged', @money_type, '', '',
+ ],
+ 'primary_key' => 'vendbillnum',
+ 'unique' => [],
+ 'index' => [ ['vendnum'], ['_date'], ],
+ },
+
+ 'vend_pay' => {
+ 'columns' => [
+ 'vendpaynum', 'serial', '', '', '', '',
+ 'vendnum', 'int', '', '', '', '',
+ '_date', @date_type, '', '',
+ 'paid', @money_type, '', '',
+ ],
+ 'primary_key' => 'vendpaynum',
+ 'unique' => [],
+ 'index' => [ [ 'vendnum' ], [ '_date' ], ],
+ },
+
+ 'vend_bill_pay' => {
+ 'columns' => [
+ 'vendbillpaynum', 'serial', '', '', '', '',
+ 'vendbillnum', 'int', '', '', '', '',
+ 'vendpaynum', 'int', '', '', '', '',
+ 'amount', @money_type, '', '',
+ #? '_date', @date_type, '', '',
+ ],
+ 'primary_key' => 'vendbillpaynum',
+ 'unique' => [],
+ 'index' => [ [ 'vendbillnum' ], [ 'vendpaynum' ] ],
+ },
+
%{ tables_hashref_torrus() },
# tables of ours for doing torrus virtual port combining