Added initial schema for medals
This commit is contained in:
parent
328ffc10e0
commit
5171a88db2
6 changed files with 198 additions and 0 deletions
|
@ -56,6 +56,20 @@ __PACKAGE__->has_many(
|
|||
{ cascade_copy => 0, cascade_delete => 0 },
|
||||
);
|
||||
|
||||
__PACKAGE__->has_many(
|
||||
"global_user_medals",
|
||||
"Pear::LocalLoop::Schema::Result::GlobalUserMedals",
|
||||
{ "foreign.entity_id" => "self.id" },
|
||||
{ cascade_copy => 0, cascade_delete => 0 },
|
||||
);
|
||||
|
||||
__PACKAGE__->has_many(
|
||||
"global_user_medal_progress",
|
||||
"Pear::LocalLoop::Schema::Result::GlobalUserMedalProgress",
|
||||
{ "foreign.entity_id" => "self.id" },
|
||||
{ cascade_copy => 0, cascade_delete => 0 },
|
||||
);
|
||||
|
||||
sub name {
|
||||
my $self = shift;
|
||||
|
||||
|
|
34
lib/Pear/LocalLoop/Schema/Result/GlobalMedalGroup.pm
Normal file
34
lib/Pear/LocalLoop/Schema/Result/GlobalMedalGroup.pm
Normal file
|
@ -0,0 +1,34 @@
|
|||
package Pear::LocalLoop::Schema::Result::GlobalMedalGroup;
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
use base 'DBIx::Class::Core';
|
||||
|
||||
__PACKAGE__->table("global_medal_group");
|
||||
|
||||
__PACKAGE__->add_columns(
|
||||
"id" => {
|
||||
data_type => "integer",
|
||||
is_auto_increment => 1,
|
||||
is_nullable => 0,
|
||||
},
|
||||
"group_name" => {
|
||||
data_type => "varchar",
|
||||
size => 255,
|
||||
is_nullable => 0,
|
||||
},
|
||||
);
|
||||
|
||||
__PACKAGE__->set_primary_key("id");
|
||||
|
||||
__PACKAGE__->add_unique_constraint(["group_name"]);
|
||||
|
||||
__PACKAGE__->has_many(
|
||||
"medals",
|
||||
"Pear::LocalLoop::Schema::Result::GlobalMedals",
|
||||
{ "foreign.group_id" => "self.id" },
|
||||
{ cascade_copy => 0, cascade_delete => 0 },
|
||||
);
|
||||
|
||||
1;
|
40
lib/Pear/LocalLoop/Schema/Result/GlobalMedals.pm
Normal file
40
lib/Pear/LocalLoop/Schema/Result/GlobalMedals.pm
Normal file
|
@ -0,0 +1,40 @@
|
|||
package Pear::LocalLoop::Schema::Result::GlobalMedals;
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
use base 'DBIx::Class::Core';
|
||||
|
||||
__PACKAGE__->table("global_medals");
|
||||
|
||||
__PACKAGE__->add_columns(
|
||||
"id" => {
|
||||
data_type => "integer",
|
||||
is_auto_increment => 1,
|
||||
is_nullable => 0,
|
||||
},
|
||||
"group_id" => {
|
||||
data_type => "varchar",
|
||||
size => 255,
|
||||
is_nullable => 0,
|
||||
},
|
||||
"threshold" => {
|
||||
data_type => "integer",
|
||||
is_nullable => 0,
|
||||
},
|
||||
"points" => {
|
||||
data_type => "integer",
|
||||
is_nullable => 0,
|
||||
},
|
||||
);
|
||||
|
||||
__PACKAGE__->set_primary_key("id");
|
||||
|
||||
__PACKAGE__->belongs_to(
|
||||
"group",
|
||||
"Pear::LocalLoop::Schema::Result::GlobalMedalGroup",
|
||||
{ id => "group_id" },
|
||||
{ is_deferrable => 0, on_delete => "NO ACTION", on_update => "NO ACTION" },
|
||||
);
|
||||
|
||||
1;
|
47
lib/Pear/LocalLoop/Schema/Result/GlobalUserMedalProgress.pm
Normal file
47
lib/Pear/LocalLoop/Schema/Result/GlobalUserMedalProgress.pm
Normal file
|
@ -0,0 +1,47 @@
|
|||
package Pear::LocalLoop::Schema::Result::GlobalUserMedals;
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
use base 'DBIx::Class::Core';
|
||||
|
||||
__PACKAGE__->table("global_user_medals");
|
||||
|
||||
__PACKAGE__->add_columns(
|
||||
"id" => {
|
||||
data_type => "integer",
|
||||
is_auto_increment => 1,
|
||||
is_nullable => 0,
|
||||
},
|
||||
"entity_id" => {
|
||||
data_type => "varchar",
|
||||
size => 255,
|
||||
is_nullable => 0,
|
||||
},
|
||||
"group_id" => {
|
||||
data_type => "varchar",
|
||||
size => 255,
|
||||
is_nullable => 0,
|
||||
},
|
||||
"total" => {
|
||||
data_type => "integer",
|
||||
is_nullable => 0,
|
||||
},
|
||||
);
|
||||
|
||||
__PACKAGE__->set_primary_key("id");
|
||||
|
||||
__PACKAGE__->belongs_to(
|
||||
"entity",
|
||||
"Pear::LocalLoop::Schema::Result::Entity",
|
||||
"entity_id",
|
||||
);
|
||||
|
||||
__PACKAGE__->belongs_to(
|
||||
"group",
|
||||
"Pear::LocalLoop::Schema::Result::GlobalMedalGroup",
|
||||
{ id => "group_id" },
|
||||
{ is_deferrable => 0, on_delete => "NO ACTION", on_update => "NO ACTION" },
|
||||
);
|
||||
|
||||
1;
|
61
lib/Pear/LocalLoop/Schema/Result/GlobalUserMedals.pm
Normal file
61
lib/Pear/LocalLoop/Schema/Result/GlobalUserMedals.pm
Normal file
|
@ -0,0 +1,61 @@
|
|||
package Pear::LocalLoop::Schema::Result::GlobalUserMedals;
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
use base 'DBIx::Class::Core';
|
||||
|
||||
__PACKAGE__->load_components(qw/
|
||||
InflateColumn::DateTime
|
||||
TimeStamp
|
||||
/);
|
||||
|
||||
__PACKAGE__->table("global_user_medals");
|
||||
|
||||
__PACKAGE__->add_columns(
|
||||
"id" => {
|
||||
data_type => "integer",
|
||||
is_auto_increment => 1,
|
||||
is_nullable => 0,
|
||||
},
|
||||
"entity_id" => {
|
||||
data_type => "varchar",
|
||||
size => 255,
|
||||
is_nullable => 0,
|
||||
},
|
||||
"group_id" => {
|
||||
data_type => "varchar",
|
||||
size => 255,
|
||||
is_nullable => 0,
|
||||
},
|
||||
"points" => {
|
||||
data_type => "integer",
|
||||
is_nullable => 0,
|
||||
},
|
||||
"awarded_at" => {
|
||||
data_type => "datetime",
|
||||
is_nullable => 0,
|
||||
set_on_create => 1,
|
||||
},
|
||||
"threshold" => {
|
||||
data_type => "integer",
|
||||
is_nullable => 0,
|
||||
},
|
||||
);
|
||||
|
||||
__PACKAGE__->set_primary_key("id");
|
||||
|
||||
__PACKAGE__->belongs_to(
|
||||
"entity",
|
||||
"Pear::LocalLoop::Schema::Result::Entity",
|
||||
"entity_id",
|
||||
);
|
||||
|
||||
__PACKAGE__->belongs_to(
|
||||
"group",
|
||||
"Pear::LocalLoop::Schema::Result::GlobalMedalGroup",
|
||||
{ id => "group_id" },
|
||||
{ is_deferrable => 0, on_delete => "NO ACTION", on_update => "NO ACTION" },
|
||||
);
|
||||
|
||||
1;
|
|
@ -35,3 +35,5 @@ __PACKAGE__->belongs_to(
|
|||
"transaction_id",
|
||||
{ cascade_delete => 0 },
|
||||
);
|
||||
|
||||
1;
|
||||
|
|
Reference in a new issue