use Locale::Country;
use Locale::SubCountry;
use DBI;
-use DBIx::DBSchema 0.21;
+use DBIx::DBSchema 0.25;
use DBIx::DBSchema::Table;
use DBIx::DBSchema::Column;
use DBIx::DBSchema::ColGroup::Unique;
}
#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";
'type_pkgs' => {
'columns' => [
+ 'typepkgnum', 'serial', '', '',
'typenum', 'int', '', '',
'pkgpart', 'int', '', '',
],
- 'primary_key' => '',
+ 'primary_key' => 'typepkgnum',
'unique' => [ ['typenum', 'pkgpart'] ],
'index' => [ ['typenum'] ],
},
'cust_bill_pkg' => {
'columns' => [
+ 'billpkgnum', 'serial', '', '',
'pkgnum', 'int', '', '',
'invnum', 'int', '', '',
'setup', @money_type,
'edate', @date_type,
'itemdesc', 'varchar', 'NULL', $char_d,
],
- 'primary_key' => '',
+ 'primary_key' => 'billpkgnum',
'unique' => [],
'index' => [ ['invnum'] ],
},
'ship_night', 'varchar', 'NULL', 20,
'ship_fax', 'varchar', 'NULL', 12,
'payby', 'char', '', 4,
- 'payinfo', 'varchar', 'NULL', $char_d,
- 'paycvv', 'varchar', 'NULL', 4,
+ 'payinfo', 'varchar', 'NULL', 512,
+ 'paycvv', 'varchar', 'NULL', 512,
+ 'paymask', 'varchar', 'NULL', $char_d,
#'paydate', @date_type,
'paydate', 'varchar', 'NULL', 10,
'payname', 'varchar', 'NULL', $char_d,
'pkg_svc' => {
'columns' => [
+ 'pkgsvcnum', 'serial', '', '',
'pkgpart', 'int', '', '',
'svcpart', 'int', '', '',
'quantity', 'int', '', '',
'primary_svc','char', 'NULL', 1,
],
- 'primary_key' => '',
+ 'primary_key' => 'pkgsvcnum',
'unique' => [ ['pkgpart', 'svcpart'] ],
'index' => [ ['pkgpart'] ],
},
'identifier', 'varchar', '', $char_d,
'amount', @money_type,
'seconds', 'int', 'NULL', '',
+ 'agentnum', 'int', 'NULL', '',
],
'primary_key' => 'prepaynum',
'unique' => [ ['identifier'] ],
'part_svc_router' => {
'columns' => [
+ 'svcrouternum', 'serial', '', '',
'svcpart', 'int', '', '',
'routernum', 'int', '', '',
],
- 'primary_key' => '',
+ 'primary_key' => 'svcrouternum',
'unique' => [],
'index' => [],
},
'virtual_field' => {
'columns' => [
+ 'vfieldnum', 'serial', '', '',
'recnum', 'int', '', '',
'vfieldpart', 'int', '', '',
'value', 'varchar', '', 128,
],
- 'primary_key' => '',
+ 'primary_key' => 'vfieldnum',
'unique' => [ [ 'vfieldpart', 'recnum' ] ],
'index' => [],
},
'rate_detail' => {
'columns' => [
+ 'ratedetailnum', 'serial', '', '',
'ratenum', 'int', '', '',
'orig_regionnum', 'int', 'NULL', '',
'dest_regionnum', 'int', '', '',
'sec_granularity', 'int', '', '',
#time period (link to table of periods)?
],
- 'primary_key' => '',
+ 'primary_key' => 'ratedetailnum',
'unique' => [ [ 'ratenum', 'orig_regionnum', 'dest_regionnum' ] ],
'index' => [],
},
'reg_code_pkg' => {
'columns' => [
+ 'codepkgnum', 'serial', '', '',
'codenum', 'int', '', '',
'pkgpart', 'int', '', '',
],
- 'primary_key' => '',
+ 'primary_key' => 'codepkgnum',
'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' => [],
+ },
+
);
%tables;