#!/usr/bin/perl 

use lib "/www/opals-working/module";;
use Opals::Context('/etc/opals/conf/opl_ha');
use strict;
use Opals::Constant; 
use Date::Calc::Object qw(
    :all
);
use Digest::SHA qw(
    sha1_hex
    sha512_hex
);

use POSIX qw(
    ceil
    floor
);
use Time::localtime;

use Opals::Transaction qw(
   trans_chargeOverdue
    trans_chargeLost
    trans_chargeDamage
    trans_chargeService
    trans_payment
    trans_credit_refund
    trans_payRefund
    trans_getCharge
    trans_adjustCharge
    

    
);


use CGI;
use DBI;





use JSON;
my $dbh = Opals::Context->dbh();
END { $dbh->disconnect(); }

use constant AAA=>100;



my $ii="11";
my $ITEM_DAMAGED            =ITEM_DAMAGED;
my $ITEM_LOST               =ITEM_LOST           ;
my $ITEM_INACTIVE           =ITEM_INACTIVE       ;
my $ITEM_ON_ORDER           =ITEM_ON_ORDER       ;
my $ITEM_IN_PROCESSING      =ITEM_IN_PROCESSING  ;
my $ITEM_IN_REPAIR          =ITEM_IN_REPAIR      ;
my $ITEM_CLAIM_RETURN       =ITEM_CLAIM_RETURN   ;
my $ITEM_CLAIM_NEVER_LOAN   =ITEM_CLAIM_NEVER_LOAN;
my $ITEM_WEED               =ITEM_WEED            ;

my $itemStatusMap={
        $ITEM_DAMAGED        =>IT_STAT_DAMAGED,
        $ITEM_LOST           =>IT_STAT_LOST,
        $ITEM_INACTIVE       =>IT_STAT_MISSING,
        $ITEM_ON_ORDER       =>IT_STAT_ON_ORDER ,
        $ITEM_IN_PROCESSING  =>IT_STAT_IN_PROCESSING,
        $ITEM_IN_REPAIR      =>IT_STAT_IN_REPAIR,
        $ITEM_CLAIM_RETURN   =>IT_STAT_CLAIM_RETURN,
        $ITEM_CLAIM_NEVER_LOAN=>IT_STAT_CLAIM_NEVER_LOAN,
        $ITEM_WEED            =>IT_STAT_WEED 
   };
print AAA;
print $itemStatusMap->{$ITEM_INACTIVE};
exit 0;
#trans_payment($dbh,1,1692,1.00,[{cid=>18225,payAmount=>1.00}]);
#exit 0;
my $charge=trans_getCharge($dbh,18225);
printf "old:%s\n", $charge->{'fee'};
$charge->{'fee'}=1.00;
$charge->{'waive'}=0.50;
my $t =trans_adjustCharge($dbh,1,$charge,"add fee");
exit 0;
=item
my ($resp,$uid)=(1,1203);
trans_credit_refund($dbh,$resp,2,undef,"credit refund lost to item ODL_ID=4");
exit 0 


my $cid =trans_chargeOverdue($dbh,$resp,$uid,2,0.25,5,0,"test charge overdue");
   $cid =trans_chargeOverdue($dbh,$resp,$uid,3,0.25,4,0,"test charge overdue");
   $cid =trans_chargeLost($dbh,$resp,$uid,4,20.00,3.00,5.00,"test charge lost item");
   $cid =trans_chargeDamage($dbh,$resp,$uid,5,10.00,0,"test charge damaged item");
   $cid =trans_chargeService($dbh,$resp,$uid,1,10,0,0,"test service feee charged membership");
   $cid =trans_chargeLost($dbh,$resp,$uid,7,10.00,0.00,5.00,"test charge lost item ODL_ID:7");

   trans_payment($dbh,$resp,$uid,24.25,[{cid=>1,payAmount=>1.25},
                                        {cid=>2,payAmount=>1.00},
                                        {cid=>3,payAmount=>22.00}]);

#my $tid =trans_payment($dbh,$resp,$uid,22.00,[{cid=>3,payAmount=>22.00}],"test payment for CID=3");

   trans_credit_refund($dbh,$resp,3,undef,"credit refund lost to item ODL_ID=4");

   trans_payment($dbh,$resp,$uid,0,[{cid=>6,payAmount=>15.00}]);
=cut   
=item   
   trans_payment($dbh,$resp,2,1.00,"test payment for CID=2");
   trans_payment($dbh,$resp,3,52.00,"test payment for CID=3");
   trans_payment($dbh,$resp,6,15.00,"test payment for CID=6");
   trans_payment($dbh,$resp,4,3.00,"test payment for CID=4");
 my $tid=trans_credit_refund($dbh,$resp,3,undef,"credit refund lost to item ODL_ID=4");
   trans_payRefund($dbh,$resp,3,-47.00,"refund payment for CID=3");
   trans_payment($dbh,$resp,1,1.25,"test payment for CID=1");
   trans_payment($dbh,$resp,4,3.00,"test payment for CID=4");
   trans_payment($dbh,$resp,5,10.00,"test payment for CID=5");
 
=cut

#trans_payment($dbh,$resp,1,1.25,"test payment for CID=1");
=item
trans_payment($dbh,$resp,2,1.00,"test payment for CID=2");
trans_payment($dbh,$resp,4,10.00,"test payment for CID=4");
trans_payment($dbh,$resp,5,10.00,"test payment for CID=5");
trans_payment($dbh,$resp,6,10.00,"test payment for CID=6");
=cut
