legacy change history, RT#29311
[freeside.git] / FS / FS / Schema.pm
index a4e1f1e..3af3172 100644 (file)
@@ -194,7 +194,8 @@ sub dbdef_dist {
     grep {    ! /^clientapi_session/
            && ! /^h_/
            && ! /^log(_context)?$/
-           && ( ! /^queue(_arg)?$/ || ! $opt->{'queue-no_history'} )
+           && ! /^legacy_cust_history$/
+           && ( ! /^queue(_arg|_depend|_stat)?$/ || ! $opt->{'queue-no_history'} )
            && ! $tables_hashref_torrus->{$_}
          }
       $dbdef->tables
@@ -636,6 +637,22 @@ sub tables_hashref {
       'index'  => [ ['legacyid', 'custnum', 'locale' ], ],
     },
 
+    'legacy_cust_history' => {
+      'columns' => [
+        'legacyhistorynum', 'serial',     '',        '', '', '',
+        'custnum',             'int',     '',        '', '', '',
+        'history_action',  'varchar',     '',   $char_d, '', '',
+        'history_date',           @date_type,            '', '',
+        'history_usernum',     'int', 'NULL',        '', '', '',
+        'item',            'varchar', 'NULL',   $char_d, '', '',
+        'description',     'varchar', 'NULL', 2*$char_d, '', '',
+        'change_data',        'text', 'NULL',        '', '', '',
+      ],
+      'primary_key'  => 'legacyhistorynum',
+      'unique'       => [],
+      'index'        => [ ['custnum'], ['history_date'], ],
+    },
+
     'cust_statement' => {
       'columns' => [
         'statementnum', 'serial', '', '', '', '',
@@ -812,7 +829,7 @@ sub tables_hashref {
         'classnum', 'int', 'NULL', '', '', '',
         'duration', 'int', 'NULL', '',  0, '',
         'phonenum', 'varchar', 'NULL', 25, '', '',
-        'accountcode', 'varchar',  'NULL',      20, '', '',
+        'accountcode', 'varchar',  'NULL',      32, '', '',
         'startdate',  @date_type, '', '', 
         'regionname', 'varchar', 'NULL', $char_d, '', '',
         'detail',  'varchar', '', 255, '', '', 
@@ -885,6 +902,7 @@ sub tables_hashref {
         'taxratelocationnum',           'int',      '', '', '', '',
         'amount',                       @money_type,        '', '',
         'taxable_billpkgnum',       'int',  'NULL', '', '', '',
+        'taxclass',             'varchar',  'NULL', 10, '', '',
       ],
       'primary_key' => 'billpkgtaxratelocationnum',
       'unique' => [],
@@ -931,7 +949,7 @@ sub tables_hashref {
         'classnum', 'int', 'NULL', '', '', '',
         'duration', 'int', 'NULL', '',  0, '',
         'phonenum', 'varchar', 'NULL', 25, '', '',
-        'accountcode', 'varchar',  'NULL',      20, '', '',
+        'accountcode', 'varchar',  'NULL',      32, '', '',
         'startdate',  @date_type, '', '', 
         'regionname', 'varchar', 'NULL', $char_d, '', '',
         'detail',  'varchar', '', 255, '', '', 
@@ -1035,6 +1053,7 @@ sub tables_hashref {
         #void fields
         'void_date',  @date_type,                  '', '', 
         'void_reason', 'varchar', 'NULL', $char_d, '', '', 
+        'void_reasonnum', 'int', 'NULL', '', '', '', 
         'void_usernum',    'int', 'NULL',      '', '', '',
       ],
       'primary_key' => 'crednum',
@@ -1336,6 +1355,8 @@ sub tables_hashref {
         'contract_end',    @date_type,             '', '',
         'quantity',             'int', 'NULL', '', '', '',
         'waive_setup',         'char', 'NULL',  1, '', '', 
+        'unitsetup',     @money_typen,             '', '',
+        'unitrecur',     @money_typen,             '', '',
       ],
       'primary_key' => 'quotationpkgnum',
       'unique' => [],
@@ -1347,6 +1368,8 @@ sub tables_hashref {
         'quotationpkgdiscountnum', 'serial', '', '', '', '',
         'quotationpkgnum',            'int', '', '', '', '', 
         'discountnum',                'int', '', '', '', '',
+        'setup_amount',        @money_typen,         '', '',
+        'recur_amount',        @money_typen,         '', '',
         #'end_date',              @date_type,         '', '',
       ],
       'primary_key' => 'quotationpkgdiscountnum',
@@ -1416,13 +1439,14 @@ sub tables_hashref {
 
     'cust_main_note' => {
       'columns' => [
-        'notenum',  'serial',  '',     '', '', '', 
-        'custnum',  'int',  '',     '', '', '', 
-        'classnum',      'int',     'NULL', '', '', '', 
-        '_date',    @date_type, '', '', 
-        'otaker',   'varchar', 'NULL',    32, '', '', 
-        'usernum',   'int', 'NULL', '', '', '',
-        'comments', 'text', 'NULL', '', '', '', 
+        'notenum',   'serial',    '',  '', '', '', 
+        'custnum',      'int',    '',  '', '', '', 
+        'classnum',     'int', 'NULL', '', '', '', 
+        '_date',          @date_type,      '', '', 
+        'otaker',   'varchar', 'NULL', 32, '', '', 
+        'usernum',      'int', 'NULL', '', '', '',
+        'comments',    'text', 'NULL', '', '', '', 
+        'sticky',       'int',     '', '',  0, '',
       ],
       'primary_key' => 'notenum',
       'unique' => [],
@@ -1877,6 +1901,7 @@ sub tables_hashref {
         'recur_show_zero',    'char', 'NULL',  1, '', '',
         'setup_show_zero',    'char', 'NULL',  1, '', '',
         'change_to_pkgnum',    'int', 'NULL', '', '', '',
+        'separate_bill',      'char', 'NULL',  1, '', '',
       ],
       'primary_key' => 'pkgnum',
       'unique' => [],
@@ -3052,6 +3077,7 @@ sub tables_hashref {
         #'custnum',      'int', '', '', '', ''
         'billpkgnum',   'int', '', '', '', '', 
         'taxnum',       'int', '', '', '', '', 
+        'taxtype',  'varchar', 'NULL', $char_d, '', '',
         'year',         'int', 'NULL', '', '', '', 
         'month',        'int', 'NULL', '', '', '', 
         'creditbillpkgnum', 'int', 'NULL', '', '', '',
@@ -3067,7 +3093,7 @@ sub tables_hashref {
       'unique' => [],
       'index'  => [ [ 'taxnum', 'year', 'month' ],
                     [ 'billpkgnum' ],
-                    [ 'taxnum' ],
+                    [ 'taxnum', 'taxtype' ],
                     [ 'creditbillpkgnum' ],
                   ],
     },
@@ -3078,6 +3104,7 @@ sub tables_hashref {
         #'custnum',      'int', '', '', '', ''
         'billpkgnum',   'int', '', '', '', '', 
         'taxnum',       'int', '', '', '', '', 
+        'taxtype',  'varchar', 'NULL', $char_d, '', '',
         'year',         'int', 'NULL', '', '', '', 
         'month',        'int', 'NULL', '', '', '', 
         'creditbillpkgnum', 'int', 'NULL', '', '', '',
@@ -3093,7 +3120,7 @@ sub tables_hashref {
       'unique' => [],
       'index'  => [ [ 'taxnum', 'year', 'month' ],
                     [ 'billpkgnum' ],
-                    [ 'taxnum' ],
+                    [ 'taxnum', 'taxtype' ],
                     [ 'creditbillpkgnum' ],
                   ],
     },
@@ -3660,7 +3687,7 @@ sub tables_hashref {
         'billsec',     'int',      '',      '',     0, '', 
         'disposition', 'varchar',  '',      45, \"''", '',
         'amaflags',    'int',      '',      '',     0, '',
-        'accountcode', 'varchar',  '',      20, \"''", '',
+        'accountcode', 'varchar',  '',      32, \"''", '',
         'uniqueid',    'varchar',  '', $char_d, \"''", '',
         'userfield',   'varchar',  '',     512, \"''", '',
 
@@ -3949,11 +3976,6 @@ sub tables_hashref {
       'primary_key'  => 'itemnum',
       'unique'       => [ [ 'usernum' ] ],
       'index'        => [],
-      'foreign_keys' => [
-                          { columns    => [ 'usernum' ],
-                            table      => 'access_user',
-                          },
-                        ],
     },
 
     #'sched_item_class'
@@ -3970,11 +3992,6 @@ sub tables_hashref {
       'primary_key'  => 'availnum',
       'unique'       => [],
       'index'        => [],
-      'foreign_keys' => [
-                          { columns    => [ 'itemnum' ],
-                            table      => 'sched_item',
-                          },
-                        ],
     },
 
     'svc_phone' => {
@@ -4216,15 +4233,6 @@ sub tables_hashref {
       'primary_key'  => 'extensionnum',
       'unique'       => [ [ 'svcnum', 'extension' ] ],
       'index'        => [ [ 'svcnum' ] ],
-      'foreign_keys' => [
-                          { columns    => [ 'svcnum' ],
-                            table      => 'svc_pbx',
-                          },
-                          { columns    => [ 'circuit_svcnum' ],
-                            table      => 'svc_circuit',
-                            references => [ 'svcnum' ],
-                          },
-                        ],
     },
 
     'svc_mailinglist' => { #svc_group?
@@ -4597,20 +4605,6 @@ sub tables_hashref {
       'primary_key' => 'svcnum',
       'unique'      => [],
       'index'       => [ [ 'providernum' ], [ 'typenum' ] ],
-      'foreign_keys' => [
-                          { columns => [ 'svcnum' ],
-                            table   => 'cust_svc',
-                          },
-                          { columns => [ 'typenum' ],
-                            table   => 'circuit_type',
-                          },
-                          { columns => [ 'providernum' ],
-                            table   => 'circuit_provider',
-                          },
-                          { columns => [ 'termnum' ],
-                            table   => 'circuit_termination',
-                          },
-      ],
     },
     %{ tables_hashref_torrus() },
 
@@ -4683,12 +4677,6 @@ sub tables_hashref {
       'primary_key'  => 'batchnum',
       'unique'       => [],
       'index'        => [ [ 'exportnum' ], [ 'status' ] ],
-      'foreign_keys' => [
-                          { columns    => [ 'exportnum' ],
-                            table      => 'part_export',
-                            references => [ 'exportnum' ]
-                          },
-                        ],
     },
 
     'export_batch_item' => {
@@ -4703,12 +4691,6 @@ sub tables_hashref {
       'primary_key'  => 'itemnum',
       'unique'       => [],
       'index'        => [ [ 'batchnum' ], [ 'svcnum' ] ],
-      'foreign_keys' => [
-                          { columns    => [ 'batchnum' ],
-                            table      => 'export_batch',
-                            references => [ 'batchnum' ]
-                          },
-                        ],
     },
 
     # lookup table for states, similar to msa and lata
@@ -4748,12 +4730,6 @@ sub tables_hashref {
       'primary_key' => 'zonenum',
       'unique' => [],
       'index'  => [ [ 'agentnum' ] ],
-      'foreign_keys' => [
-                          { columns     => [ 'agentnum' ],
-                            table       => 'agent',
-                            references  => [ 'agentnum' ],
-                          },
-                        ],
     },
 
     'deploy_zone_block' => {
@@ -4766,12 +4742,6 @@ sub tables_hashref {
       'primary_key' => 'blocknum',
       'unique' => [],
       'index'  => [ [ 'zonenum' ] ],
-      'foreign_keys' => [
-                          { columns     => [ 'zonenum' ],
-                            table       => 'deploy_zone',
-                            references  => [ 'zonenum' ],
-                          },
-                        ],
     },
 
     'deploy_zone_vertex' => {
@@ -4784,12 +4754,6 @@ sub tables_hashref {
       'primary_key' => 'vertexnum',
       'unique' => [ ],
       'index'  => [ ],
-      'foreign_keys' => [
-                          { columns     => [ 'zonenum' ],
-                            table       => 'deploy_zone',
-                            references  => [ 'zonenum' ],
-                          },
-                        ],
     },