#------------------------------------------------------------
# Copyright (C) 2006 RoyaltyShare, Inc.   All Rights Reserved
# $Id$
#------------------------------------------------------------
package RPS::DB::Item::FinanceAccount;
use strict;
use warnings;
use lib '/app/tools/common/lib';
use Common::Assert;
use Common::DB::Item;
use base 'Common::DB::Item';

use lib '/app/tools/rps/lib';
use RPS::DB::Item::FinanceTransaction;

use constant kTable => 'finance_account';
use constant kDB => Common::DB::Item::kClientDB();

use constant kAccountTypeAdvance => 1;
use constant kAccountTypeHoldover => 2;



# This is a convenience method - Balance is not stored in the account data, but
# instead is stored in the transaction table.
#
sub CurrentBalance
{
    my ($class, $accountID) = @_;
    assert($accountID);

    my $lastTransaction = RPS::DB::Item::FinanceTransaction->GetLastAccountTransaction($accountID);
    return undef unless $lastTransaction;
    return $lastTransaction->balance;
}

1;
