X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2Fbin%2Ffreeside-setup;h=5ab6eb9f3b55905c52dc14164623550f22cf28f1;hb=3cf7afe4ff9bc62d1a5c0d78aae35193251dca25;hp=386c4c7cd513fb570e3052835e355f7136e12f3b;hpb=c69dd0d922bba433b16e3408f71f1cac0e16a069;p=freeside.git diff --git a/FS/bin/freeside-setup b/FS/bin/freeside-setup index 386c4c7cd..5ab6eb9f3 100755 --- a/FS/bin/freeside-setup +++ b/FS/bin/freeside-setup @@ -142,7 +142,11 @@ foreach $attribute (@check_attributes) { } #create history tables (false laziness w/create-history-tables) -foreach my $table ( grep { ! /^h_/ } $dbdef->tables ) { +foreach my $table ( + grep { ! /^clientapi_session/ } + grep { ! /^h_/ } + $dbdef->tables +) { my $tableobj = $dbdef->table($table) or die "unknown table $table"; @@ -270,7 +274,7 @@ foreach my $country ( sort map uc($_), all_country_codes ) { #billing events foreach my $aref ( - [ 'COMP', 'Comp invoice', '$cust_bill->comp();', 30, 'comp' ], + #[ 'COMP', 'Comp invoice', '$cust_bill->comp();', 30, 'comp' ], [ 'CARD', 'Batch card', '$cust_bill->batch_card();', 40, 'batch-card' ], [ 'BILL', 'Send invoice', '$cust_bill->send();', 50, 'send' ], [ 'DCRD', 'Send invoice', '$cust_bill->send();', 50, 'send' ], @@ -463,7 +467,7 @@ sub tables_hash_hack { 'city', 'varchar', '', $char_d, 'county', 'varchar', 'NULL', $char_d, 'state', 'varchar', 'NULL', $char_d, - 'zip', 'varchar', '', 10, + 'zip', 'varchar', 'NULL', 10, 'country', 'char', '', 2, 'daytime', 'varchar', 'NULL', 20, 'night', 'varchar', 'NULL', 20, @@ -597,7 +601,7 @@ sub tables_hash_hack { 'address2', 'varchar', 'NULL', $char_d, 'city', 'varchar', '', $char_d, 'state', 'varchar', 'NULL', $char_d, - 'zip', 'varchar', '', 10, + 'zip', 'varchar', 'NULL', 10, 'country', 'char', '', 2, # 'trancode', 'int', '', '', 'cardnum', 'varchar', '', 16, @@ -680,6 +684,7 @@ sub tables_hash_hack { 'pkgpart', 'serial', '', '', 'pkg', 'varchar', '', $char_d, 'comment', 'varchar', '', $char_d, + 'promo_code', 'varchar', 'NULL', $char_d, 'setup', @perl_type, 'freq', 'varchar', '', $char_d, #billing frequency 'recur', @perl_type, @@ -692,7 +697,7 @@ sub tables_hash_hack { ], 'primary_key' => 'pkgpart', 'unique' => [], - 'index' => [ [ 'disabled' ], ], + 'index' => [ [ 'promo_code' ], [ 'disabled' ] ], }, # 'part_title' => { @@ -1127,7 +1132,7 @@ sub tables_hash_hack { 'svc_external' => { 'columns' => [ 'svcnum', 'int', '', '', - 'id', 'int', '', '', + 'id', 'int', 'NULL', '', 'title', 'varchar', 'NULL', $char_d, ], 'primary_key' => 'svcnum', @@ -1148,7 +1153,109 @@ sub tables_hash_hack { 'index' => [ ['paynum'], ['refundnum'] ], }, + 'part_pkg_option' => { + 'columns' => [ + 'optionnum', 'serial', '', '', + 'pkgpart', 'int', '', '', + 'optionname', 'varchar', '', $char_d, + 'optionvalue', 'text', 'NULL', '', + ], + 'primary_key' => 'optionnum', + 'unique' => [], + 'index' => [ [ 'pkgpart' ], [ 'optionname' ] ], + }, + + 'rate' => { + 'columns' => [ + 'ratenum', 'serial', '', '', + 'ratename', 'varchar', '', $char_d, + ], + 'primary_key' => 'ratenum', + 'unique' => [], + 'index' => [], + }, + + 'rate_detail' => { + 'columns' => [ + 'ratenum', 'int', '', '', + 'orig_regionnum', 'int', 'NULL', '', + 'dest_regionnum', 'int', '', '', + 'min_included', 'int', '', '', + 'min_charge', @money_type, + 'sec_granularity', 'int', '', '', + #time period (link to table of periods)? + ], + 'primary_key' => '', + 'unique' => [ [ 'ratenum', 'orig_regionnum', 'dest_regionnum' ] ], + 'index' => [], + }, + 'rate_region' => { + 'columns' => [ + 'regionnum', 'serial', '', '', + 'regionname', 'varchar', '', $char_d, + ], + 'primary_key' => 'regionnum', + 'unique' => [], + 'index' => [], + }, + + 'rate_prefix' => { + 'columns' => [ + 'prefixnum', 'serial', '', '', + 'regionnum', 'int', '', '',, + 'countrycode', 'varchar', '', 3, + 'npa', 'varchar', 'NULL', 6, + 'nxx', 'varchar', 'NULL', 3, + ], + 'primary_key' => 'prefixnum', + 'unique' => [], + 'index' => [ [ 'countrycode' ], [ 'regionnum' ] ], + }, + + 'reg_code' => { + 'columns' => [ + 'codenum', 'serial', '', '', + 'code', 'varchar', '', $char_d, + 'agentnum', 'int', '', '', + ], + 'primary_key' => 'codenum', + 'unique' => [ [ 'agentnum', 'code' ] ], + 'index' => [ [ 'agentnum' ] ], + }, + + 'reg_code_pkg' => { + 'columns' => [ + 'codenum', 'int', '', '', + 'pkgpart', 'int', '', '', + ], + 'primary_key' => '', + 'unique' => [ [ 'codenum', 'pkgpart' ] ], + 'index' => [ [ 'codenum' ] ], + }, + + 'clientapi_session' => { + 'columns' => [ + 'sessionnum', 'serial', '', '', + 'sessionid', 'varchar', '', $char_d, + 'namespace', 'varchar', '', $char_d, + ], + 'primary_key' => 'sessionnum', + 'unique' => [ [ 'sessionid', 'namespace' ] ], + 'index' => [], + }, + + 'clientapi_session_field' => { + 'columns' => [ + 'fieldnum', 'serial', '', '', + 'sessionnum', 'int', '', '', + 'fieldname', 'varchar', '', $char_d, + 'fieldvalue', 'text', 'NULL', '', + ], + 'primary_key' => 'fieldnum', + 'unique' => [ [ 'sessionnum', 'fieldname' ] ], + 'index' => [], + }, );