X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FSchema.pm;h=316ec4843b91b3d17345fb93a63254fd9684f094;hb=06809c379e25e6753d39ca79a39c977e5194c696;hp=0793af457f202955ecebc861d22f1566eb618d5a;hpb=b3db3e68f602f3ca395a6bc272a4de6fef2d0895;p=freeside.git diff --git a/FS/FS/Schema.pm b/FS/FS/Schema.pm index 0793af457..316ec4843 100644 --- a/FS/FS/Schema.pm +++ b/FS/FS/Schema.pm @@ -194,10 +194,9 @@ sub dbdef_dist { grep { ! /^(clientapi|access_user)_session/ && ! /^h_/ && ! /^log(_context)?$/ - && ! /^legacy_cust_history$/ + && ! /^(legacy_cust_history|cacti_page|access_user_log)$/ && ( ! /^queue(_arg|_depend|_stat)?$/ || ! $opt->{'queue-no_history'} ) && ! $tables_hashref_torrus->{$_} - && ! /^cacti_page$/ } $dbdef->tables ) { @@ -1356,6 +1355,8 @@ sub tables_hashref { '_date', @date_type, '', '', 'disabled', 'char', 'NULL', 1, '', '', 'usernum', 'int', 'NULL', '', '', '', + 'close_date', @date_type, '', '', + 'confidence', 'int', 'NULL', '', '', '', #'total', @money_type, '', '', #'quotation_term', 'varchar', 'NULL', $char_d, '', '', ], @@ -1389,6 +1390,7 @@ sub tables_hashref { 'quotationpkgnum', 'int', '', '', '', '', 'format', 'char', 'NULL', 1, '', '', # not used for anything 'detail', 'varchar', '', 255, '', '', + 'copy_on_order', 'char', 'NULL', 1, '', '', # 'Y' to copy when ordering ], 'primary_key' => 'detailnum', 'unique' => [], @@ -1611,6 +1613,7 @@ sub tables_hashref { 'taxname', 'varchar', 'NULL', $char_d, '', '', 'setuptax', 'char', 'NULL', 1, '', '', # Y = setup tax exempt 'recurtax', 'char', 'NULL', 1, '', '', # Y = recur tax exempt + 'source', 'varchar', 'NULL', $char_d, '', '', ], 'primary_key' => 'taxnum', 'unique' => [], @@ -2143,6 +2146,7 @@ sub tables_hashref { 'paymask', 'varchar', 'NULL', $char_d, '', '', 'paybatch', 'varchar', 'NULL', $char_d, '', '', 'closed', 'char', 'NULL', 1, '', '', + 'source_paynum', 'int', 'NULL', '', '', '', # link to cust_payby, to prevent unapply of gateway-generated refunds # credit card/EFT fields (formerly in paybatch) 'gatewaynum', 'int', 'NULL', '', '', '', # payment_gateway FK 'processor', 'varchar', 'NULL', $char_d, '', '', # module name @@ -3040,6 +3044,26 @@ sub tables_hashref { 'index' => [ [ 'exportnum' ], [ 'svcpart' ] ], }, + 'export_cust_svc' => { + 'columns' => [ + 'exportcustsvcnum', 'serial', '', '', '', '', + 'exportnum', 'int', '', '', '', '', + 'svcnum', 'int', '', '', '', '', + 'remoteid', 'varchar', '', 512, '', '', + ], + 'primary_key' => 'exportcustsvcnum', + 'unique' => [ [ 'exportnum', 'svcnum' ] ], + 'index' => [ [ 'exportnum', 'svcnum' ] ], + 'foreign_keys' => [ + { columns => [ 'exportnum' ], + table => 'part_export', + }, + { columns => [ 'svcnum' ], + table => 'cust_svc', + }, + ], + }, + 'export_device' => { 'columns' => [ 'exportdevicenum' => 'serial', '', '', '', '', @@ -3059,6 +3083,8 @@ sub tables_hashref { 'exporttype', 'varchar', '', $char_d, '', '', 'nodomain', 'char', 'NULL', 1, '', '', 'default_machine','int', 'NULL', '', '', '', + 'no_suspend', 'char', 'NULL', 1, '', '', + # could also have 'no_insert', 'no_replace', etc. ], 'primary_key' => 'exportnum', 'unique' => [], @@ -3817,6 +3843,7 @@ sub tables_hashref { 'rated_ratedetailnum', 'int', 'NULL', '', '', '', 'rated_classnum', 'int', 'NULL', '', '', '', 'rated_ratename', 'varchar', 'NULL', $char_d, '', '', + 'rated_cost', 'decimal', 'NULL', '10,4', '', '', 'carrierid', 'bigint', 'NULL', '', '', '', @@ -3841,6 +3868,9 @@ sub tables_hashref { #new 'cdrbatchnum', 'int', 'NULL', '', '', '', + # FK to cust_bill_pkg_detail; having a value here absolutely means + # that the CDR appears on an invoice + 'detailnum', 'bigint', 'NULL', '', '', '', ], 'primary_key' => 'acctid', 'unique' => [], @@ -4063,6 +4093,26 @@ sub tables_hashref { 'index' => [ ['usernum'], ['path'], ['_date'] ], }, + 'access_user_page_pref' => { + 'columns' => [ + 'prefnum' => 'serial', '', '', '', '', + 'usernum' => 'int', '', '', '', '', + 'path' => 'text', '', '', '', '', + 'tablenum' => 'int', 'NULL', '', '', '', + '_date' => @date_type, '', '', + 'prefname' => 'varchar', '', $char_d, '', '', + 'prefvalue' => 'text', '', '', '', '', + ], + 'primary_key' => 'prefnum', + 'unique' => [ [ 'usernum', 'path', 'tablenum', 'prefname' ] ], + 'index' => [], + 'foreign_keys' => [ + { columns => [ 'usernum' ], + table => 'access_user' + }, + ], + }, + 'sched_item' => { 'columns' => [ 'itemnum', 'serial', '', '', '', '', @@ -4103,6 +4153,7 @@ sub tables_hashref { 'pbxsvc', 'int', 'NULL', '', '', '', 'domsvc', 'int', 'NULL', '', '', '', 'locationnum', 'int', 'NULL', '', '', '', + 'forward_svcnum', 'int', 'NULL', '', '', '', 'forwarddst', 'varchar', 'NULL', 15, '', '', 'email', 'varchar', 'NULL', 255, '', '', 'lnp_status', 'varchar', 'NULL', $char_d, '', '', @@ -4707,6 +4758,147 @@ sub tables_hashref { 'unique' => [], 'index' => [ [ 'providernum' ], [ 'typenum' ] ], }, + + 'svc_fiber' => { + 'columns' => [ + 'svcnum', 'int', '', '', '', '', + 'oltnum', 'int', 'NULL', '', '', '', + 'shelf', 'int', 'NULL', '', '', '', + 'card', 'int', 'NULL', '', '', '', + 'olt_port', 'int', 'NULL', '', '', '', + 'ont_id', 'int', 'NULL', '', '', '', + 'ont_typenum', 'int', 'NULL', '', '', '', + 'ont_serial', 'varchar', 'NULL', $char_d, '', '', + 'ont_port', 'varchar', 'NULL', 16, '', '', + 'circuit_id', 'varchar', 'NULL', $char_d, '', '', + 'vlan', 'int', 'NULL', '', '', '', + 'signal', 'decimal', 'NULL', '10,2', '', '', + 'speed_up', 'int', 'NULL', '', '', '', + 'speed_down', 'int', 'NULL', '', '', '', + 'ont_install','varchar', 'NULL', $char_d, '', '', + ], + 'primary_key' => 'svcnum', + 'unique' => [ ], + 'index' => [ [ 'ont_serial' ] ], + }, + + 'fiber_olt' => { + 'columns' => [ + 'oltnum', 'serial', '', '', '', '', + 'oltname', 'varchar', '', $char_d, '', '', + 'sitenum', 'int', 'NULL', '', '', '', + 'serial', 'varchar', '', $char_d, '', '', + 'disabled', 'char', 'NULL', 1, '', '', + ], + 'primary_key' => 'oltnum', + 'unique' => [ ], + 'index' => [ ], + 'foreign_keys' => [ + { columns => [ 'sitenum' ], + table => 'olt_site', + }, + ], + }, + + 'olt_site' => { + 'columns' => [ + 'sitenum', 'serial', '', '', '', '', + 'market', 'varchar', '', $char_d, '', '', + 'site', 'varchar', '', $char_d, '', '', + ], + 'primary_key' => 'sitenum', + 'unique' => [ [ 'market', 'site' ] ], + 'index' => [ ], + }, + + + + + + 'vend_main' => { + 'columns' => [ + 'vendnum', 'serial', '', '', '', '', + 'vendname', 'varchar', '', $char_d, '', '', + 'classnum', 'int', '', '', '', '', + 'disabled', 'char', 'NULL', 1, '', '', + ], + 'primary_key' => 'vendnum', + 'unique' => [ ['vendname', 'disabled'] ], + 'index' => [], + 'foreign_keys' => [ + { columns => [ 'classnum' ], + table => 'vend_class', + }, + ], + }, + + '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, '', '', + '_date', 'int', '', '', '', '', + 'charged', @money_type, '', '', + ], + 'primary_key' => 'vendbillnum', + 'unique' => [], + 'index' => [ ['vendnum'], ['_date'], ], + 'foreign_keys' => [ + { columns => [ 'vendnum' ], + table => 'vend_main', + }, + ], + }, + + 'vend_pay' => { + 'columns' => [ + 'vendpaynum', 'serial', '', '', '', '', + 'vendnum', 'int', '', '', '', '', + #'_date', @date_type, '', '', + '_date', 'int', '', '', '', '', + 'paid', @money_type, '', '', + ], + 'primary_key' => 'vendpaynum', + 'unique' => [], + 'index' => [ [ 'vendnum' ], [ '_date' ], ], + 'foreign_keys' => [ + { columns => [ 'vendnum' ], + table => 'vend_main', + }, + ], + }, + + 'vend_bill_pay' => { + 'columns' => [ + 'vendbillpaynum', 'serial', '', '', '', '', + 'vendbillnum', 'int', '', '', '', '', + 'vendpaynum', 'int', '', '', '', '', + 'amount', @money_type, '', '', + #? '_date', @date_type, '', '', + ], + 'primary_key' => 'vendbillpaynum', + 'unique' => [], + 'index' => [ [ 'vendbillnum' ], [ 'vendpaynum' ] ], + 'foreign_keys' => [ + { columns => [ 'vendbillnum' ], + table => 'vend_bill', + }, + { columns => [ 'vendpaynum' ], + table => 'vend_pay', + }, + ], + }, %{ tables_hashref_torrus() }, # tables of ours for doing torrus virtual port combining @@ -4951,6 +5143,29 @@ sub tables_hashref { ], }, + 'webservice_log' => { + 'columns' => [ + 'webservicelognum', 'serial', '', '', '', '', #big? hubrus + 'svcnum', 'int', 'NULL', '', '', '', #just in case + 'custnum', 'int', '', '', '', '', + 'method', 'varchar', '', $char_d, '', '', + 'quantity', 'int', '', '', '', '', #i.e. pages + '_date', @date_type, '', '', + 'status', 'varchar', 'NULL', $char_d, '', '', + 'rated_price', 'decimal', 'NULL', '10,2', '', '', + ], + 'primary_key' => 'webservicelognum', + 'unique' => [], + 'index' => [ ['custnum'], ['status'] ], + 'foreign_keys' => [ + { columns => [ 'custnum' ], + table => 'cust_main', + }, + #no FK on svcnum... we don't want to purge these on + # service deletion + ], + }, + # name type nullability length default local #'new_table' => {