#!/usr/bin/perl

use strict;
use warnings;
use open ':std', ':encoding(UTF-8)';

use JSON::XS;
use FileHandle;
use Array::Utils qw/:all/;
use DateTime::Format::DateParse;
use Text::CSV::Easy(qw/csv_build csv_parse/);
use Getopt::Long::Descriptive(qw/describe_options/);

use lib '/var/app/orchard/collab/jgetter/perllib';
use Orchard::Session;
use Orchard::DB::Connect;
use Orchard::ETL::Extract::CSV;
use Orchard::ETL::Extract::SpreadSheet;

my $file = shift @ARGV;
my $csv  = Orchard::ETL::Extract::CSV->new($file);
my $rblocks;
my $schedule;
my $agreements;
while ( my $row = $csv->getrow() ) {
    my $aid = $row->{'SAX_AGREEMENT_ID'};
    my ( $sid, $rid ) = split '-', $row->{'SAX_COMPOSITE_RECORDING_SCHEDULE_AND_RIGHTS_ID'};

    push @{$agreements},
      csv_build( ( 45455, $aid, $row->{'CONTRACT_NAME'}, $row->{'CONTRACT_TYPE'}, 0, $row->{'TERM_START'}, $row->{'TERM_END'}, $sid ) );

    push @{$schedule},
      csv_build( (
            $aid,                   $sid,                  $row->{'CONTRACT_TERM_NAME'},    $row->{'TERM_TYPE'},
            $row->{'IS_BASE_TERM'}, $row->{'ATTACHMENTS'}, $row->{'ATTACHMENTS_RELATIONS'}, $rid
        )
      );

    push @{$rblocks}, csv_build( ( $aid, $sid, $rid, $row->{'CONTRACT_TERM_CONDITION_NAME'}, $row->{'CONDITIONS'}, $row->{'TERM_RATE'},$row->{'PRIORITY'} ) );
}

map { print "$_\n" } unique(@{$rblocks});
