package Orchard::DB::Schema::RoyaltyAccounting::AbacusState;

use strict;
use warnings;

use lib '/var/app/orchard/collab/jgetter/perllib';
use base 'Orchard::DB::DBIxCore';

## table
__PACKAGE__->table('royalty_accounting.abacus_state');

## columns
__PACKAGE__->add_columns(
    'abacus_state_id' => {'is_auto_increment'=>1,'data_type'=>'mediumint','is_nullable'=>0},
    'parent_table_id' => {'data_type'=>'mediumint','is_nullable'=>0},
    'parent_table_name' => {'data_type'=>'varchar','is_nullable'=>0},
    'action_name' => {'data_type'=>'varchar','is_nullable'=>0},
    'action_status' => {'data_type'=>'enum','is_nullable'=>0},
    'message' => {'data_type'=>'varchar','is_nullable'=>1},
    'created_by' => {'data_type'=>'varchar','is_nullable'=>0},
    'created_at' => {'data_type'=>'datetime','is_nullable'=>0},
    'last_modified_by' => {'data_type'=>'varchar','is_nullable'=>0},
    'last_modified' => {'data_type'=>'datetime','is_nullable'=>0}
);

## primary key
__PACKAGE__->set_primary_key('abacus_state_id');

## unique key (parent_table_id, parent_table_name, action_name)
__PACKAGE__->add_unique_constraint('uidx_parent_action' => [qw/parent_table_id parent_table_name action_name/]);

1;
