35 lines
873 B
Perl
35 lines
873 B
Perl
use strict;
|
|
|
|
package TrsrDB::Debit;
|
|
use base qw/DBIx::Class::Core/;
|
|
|
|
__PACKAGE__->table('Debit');
|
|
__PACKAGE__->add_column("billId");
|
|
__PACKAGE__->add_column("debtor");
|
|
__PACKAGE__->add_column("date" => { data_type => 'DATE' });
|
|
__PACKAGE__->add_column("purpose");
|
|
__PACKAGE__->add_column("value" => { data_type => 'INTEGER' });
|
|
__PACKAGE__->add_column("paid" => { data_type => 'INTEGER', default => 0 });
|
|
__PACKAGE__->set_primary_key("billId");
|
|
__PACKAGE__->add_column("targetCredit" => { data_type => 'INTEGER' });
|
|
|
|
__PACKAGE__->belongs_to(
|
|
account => 'TrsrDB::Account',
|
|
{ 'foreign.ID' => 'self.debtor' }
|
|
);
|
|
|
|
__PACKAGE__->might_have(
|
|
target => 'TrsrDB::Credit',
|
|
{ 'foreign.credId' => 'self.targetCredit' }
|
|
);
|
|
|
|
__PACKAGE__->has_many(
|
|
incomings => 'TrsrDB::Transfer', 'billId'
|
|
);
|
|
|
|
__PACKAGE__->many_to_many(
|
|
paid_with => incomings => 'credit'
|
|
);
|
|
|
|
1;
|