package RPS::DB::Item::ArtistPayeeStatementRecipient;

use strict;
use warnings;

use lib '/app/tools/common/lib';
use Common::Util qw(escape_mysql_regexp escape_mysql_like);
use Common::DB::ItemCollection;
use Common::Assert;

use Common::DB::Item;
use base 'Common::DB::Item';

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


sub GetByArtistPayeeID {
    my ( $class, $artistPayeeID ) = @_;

    my $dbo = Common::RSApp::GetClientDB();
    $artistPayeeID = $dbo->DBQuote( $artistPayeeID || 0 );

    my $sql = qq/
        SELECT *
        FROM artist_payee_statement_recipient
        WHERE artist_payee_id = $artistPayeeID
        ORDER BY statement_recipient_id
    /;

    return $class->SUPER::GetAll($sql);
}

sub GetAllOnline {
    my ($class) = @_;

    my $sql = "SELECT * FROM " . kTable . " ORDER BY name";

    return $class->SUPER::GetAll($sql);
}

sub GetAllUnconfirmed {
    my ($class) = @_;

    my $sql = qq/
        SELECT *
        FROM artist_payee_statement_recipient
        WHERE 1 = 1
            AND date_invited IS NOT NULL
            AND date_confirmed IS NULL
        ORDER BY name
    /;

    return $class->SUPER::GetAll($sql);
}


1;