summaryrefslogtreecommitdiff
path: root/GroLUG/lib/GroLUG/M/DB/Pagamento.pm
diff options
context:
space:
mode:
Diffstat (limited to 'GroLUG/lib/GroLUG/M/DB/Pagamento.pm')
-rw-r--r--GroLUG/lib/GroLUG/M/DB/Pagamento.pm20
1 files changed, 20 insertions, 0 deletions
diff --git a/GroLUG/lib/GroLUG/M/DB/Pagamento.pm b/GroLUG/lib/GroLUG/M/DB/Pagamento.pm
new file mode 100644
index 0000000..23ee176
--- /dev/null
+++ b/GroLUG/lib/GroLUG/M/DB/Pagamento.pm
@@ -0,0 +1,20 @@
+package GroLUG::M::DB::Pagamento;
+use base 'DBIx::Class::Core';
+use DateTime::Format::Pg;
+
+__PACKAGE__->load_components(qw(PK::Auto::Pg));
+__PACKAGE__->table('pagamenti');
+__PACKAGE__->add_columns(qw(id iscritto data_pagamento data_iscrizione data_scadenza prezzo));
+__PACKAGE__->set_primary_key('id');
+__PACKAGE__->belongs_to(iscritto=>'GroLUG::M::DB::Iscritto');
+
+for my $col (qw(data_pagamento data_iscrizione data_scadenza)) {
+ __PACKAGE__->inflate_column(
+ $col,
+ {
+ inflate => sub { DateTime::Format::Pg->parse_datetime(shift) },
+ deflate => sub { DateTime::Format::Pg->format_datetime(shift) },
+ });
+}
+
+1;