#!/usr/bin/perl -w

use lib '/www/opals/module';
#use Opals::Context("/etc/opals/conf/oc_oc");
#use Opals::Context("/etc/opals/conf/wpc_wpc");
# for i in  `ls /etc/opals/conf/`; do echo  $i; \cp -p /www/opals/script/convertMarcExport /tmp/urt; perl -pi -e "s/_MY_SITE_/$i/" /tmp/urt; sudo /tmp/urt; done
use Opals::Context("/etc/opals/conf/_MY_SITE_");
use strict;
use DBI;
use JSON;
use POSIX qw(
    ceil
);
my $dbh = Opals::Context->dbh();
END {
    if ($dbh) {
        $dbh->disconnect();
    }
}
$| = 1;
# Codes start...

my  $sth_update = $dbh->prepare(<<_STH_);
update  opl_marcExport 
set     expParams = ?
where eid=?        
_STH_



my $sth = $dbh->prepare(<<_SQL_);
select * from opl_marcExport   order by eid ; 
_SQL_
    $sth->execute;
    my $eParam={};my $filter=undef;
    my $exportType={hitlist         => "hitlist",
                    ridList_r       => "hitlist", 
                    ridList_h       => "hitlist", 
                    date            =>"importDateRange", 
                    rid             => "ridRange",
                    modDate_r       =>"modDateRange",
                    all             =>"all"
                    };


    while( my $e = $sth->fetchrow_hashref) {
        $eParam->{'type'}     =$exportType->{$e->{'eType'}};
        $eParam->{'eEncoding'}=$e->{'eEncoding'};
        if($e->{'eFrom'} && $e->{'eFrom'} ne ""  && 
            $e->{'eTo'} && $e->{'eTo'} ne ""){
            $eParam->{'eCriteria'}={from=>$e->{'eFrom'},to=>$e->{'eTo'}};
        }
        if($e->{'eType'} eq "ridList_h"){
            $eParam->{'eCriteria'}->{'exportHoldingOpt'}=1;
        }
        my @exclRecFormatArr= ();
        if(defined $e->{'exclRecFormat'} && $e->{'exclRecFormat'} ne ""){
            @exclRecFormatArr= split(/,/,$e->{'exclRecFormat'}); 
        }
        if(scalar @exclRecFormatArr>0){
            $filter->{'exclRecFormat'}=\@exclRecFormatArr;
        }
        $eParam->{'filter'}   = $filter    if(defined $filter);
   
        $sth_update->execute(to_json($eParam),$e->{'eid'});
    }  
  $sth->finish;






#////////////////////////////////////////////////////////////////////////////
