Lines 2425-2431
subtest '_FixAccountForLostAndReturned' => sub {
Link Here
|
2425 |
$credit->apply( { debits => [ $debts->as_list ], offset_type => 'Writeoff' } ); |
2425 |
$credit->apply( { debits => [ $debts->as_list ], offset_type => 'Writeoff' } ); |
2426 |
|
2426 |
|
2427 |
my $credit_return_id = C4::Circulation::_FixAccountForLostAndReturned( $item->itemnumber, $patron->id ); |
2427 |
my $credit_return_id = C4::Circulation::_FixAccountForLostAndReturned( $item->itemnumber, $patron->id ); |
2428 |
is( $credit_return_id, undef, 'No LOST_RETURN account line added' ); |
2428 |
is( $credit_return_id, undef, 'No LOST_FOUND account line added' ); |
2429 |
|
2429 |
|
2430 |
$lost_fee_line->discard_changes; # reload from DB |
2430 |
$lost_fee_line->discard_changes; # reload from DB |
2431 |
is( $lost_fee_line->amountoutstanding + 0, 0, 'Lost fee has no outstanding amount' ); |
2431 |
is( $lost_fee_line->amountoutstanding + 0, 0, 'Lost fee has no outstanding amount' ); |
Lines 2489-2499
subtest '_FixAccountForLostAndReturned' => sub {
Link Here
|
2489 |
my $credit_return_id = C4::Circulation::_FixAccountForLostAndReturned( $item->itemnumber, $patron->id ); |
2489 |
my $credit_return_id = C4::Circulation::_FixAccountForLostAndReturned( $item->itemnumber, $patron->id ); |
2490 |
my $credit_return = Koha::Account::Lines->find($credit_return_id); |
2490 |
my $credit_return = Koha::Account::Lines->find($credit_return_id); |
2491 |
|
2491 |
|
2492 |
is( $credit_return->credit_type_code, 'LOST_RETURN', 'An account line of type LOST_RETURN is added' ); |
2492 |
is( $credit_return->credit_type_code, 'LOST_FOUND', 'An account line of type LOST_FOUND is added' ); |
2493 |
is( $credit_return->amount + 0, |
2493 |
is( $credit_return->amount + 0, |
2494 |
-99.00, 'The account line of type LOST_RETURN has an amount of -99' ); |
2494 |
-99.00, 'The account line of type LOST_FOUND has an amount of -99' ); |
2495 |
is( $credit_return->amountoutstanding + 0, |
2495 |
is( $credit_return->amountoutstanding + 0, |
2496 |
-99.00, 'The account line of type LOST_RETURN has an amountoutstanding of -99' ); |
2496 |
-99.00, 'The account line of type LOST_FOUND has an amountoutstanding of -99' ); |
2497 |
|
2497 |
|
2498 |
$lost_fee_line->discard_changes; |
2498 |
$lost_fee_line->discard_changes; |
2499 |
is( $lost_fee_line->amountoutstanding + 0, 0, 'Lost fee has no outstanding amount' ); |
2499 |
is( $lost_fee_line->amountoutstanding + 0, 0, 'Lost fee has no outstanding amount' ); |
Lines 2547-2555
subtest '_FixAccountForLostAndReturned' => sub {
Link Here
|
2547 |
my $credit_return_id = C4::Circulation::_FixAccountForLostAndReturned( $item->itemnumber, $patron->id ); |
2547 |
my $credit_return_id = C4::Circulation::_FixAccountForLostAndReturned( $item->itemnumber, $patron->id ); |
2548 |
my $credit_return = Koha::Account::Lines->find($credit_return_id); |
2548 |
my $credit_return = Koha::Account::Lines->find($credit_return_id); |
2549 |
|
2549 |
|
2550 |
is( $credit_return->credit_type_code, 'LOST_RETURN', 'An account line of type LOST_RETURN is added' ); |
2550 |
is( $credit_return->credit_type_code, 'LOST_FOUND', 'An account line of type LOST_FOUND is added' ); |
2551 |
is( $credit_return->amount + 0, -99.00, 'The account line of type LOST_RETURN has an amount of -99' ); |
2551 |
is( $credit_return->amount + 0, -99.00, 'The account line of type LOST_FOUND has an amount of -99' ); |
2552 |
is( $credit_return->amountoutstanding + 0, 0, 'The account line of type LOST_RETURN has an amountoutstanding of 0' ); |
2552 |
is( $credit_return->amountoutstanding + 0, 0, 'The account line of type LOST_FOUND has an amountoutstanding of 0' ); |
2553 |
|
2553 |
|
2554 |
$lost_fee_line->discard_changes; |
2554 |
$lost_fee_line->discard_changes; |
2555 |
is( $lost_fee_line->amountoutstanding + 0, 0, 'Lost fee has no outstanding amount' ); |
2555 |
is( $lost_fee_line->amountoutstanding + 0, 0, 'Lost fee has no outstanding amount' ); |
Lines 2633-2639
subtest '_FixAccountForLostAndReturned' => sub {
Link Here
|
2633 |
my $credit_return_id = C4::Circulation::_FixAccountForLostAndReturned( $item->itemnumber, $patron->id ); |
2633 |
my $credit_return_id = C4::Circulation::_FixAccountForLostAndReturned( $item->itemnumber, $patron->id ); |
2634 |
my $credit_return = Koha::Account::Lines->find($credit_return_id); |
2634 |
my $credit_return = Koha::Account::Lines->find($credit_return_id); |
2635 |
|
2635 |
|
2636 |
is( $account->balance, $processfee_amount - $payment_amount, 'Balance is PROCESSING - PAYMENT (LOST_RETURN)' ); |
2636 |
is( $account->balance, $processfee_amount - $payment_amount, 'Balance is PROCESSING - PAYMENT (LOST_FOUND)' ); |
2637 |
|
2637 |
|
2638 |
$lost_fee_line->discard_changes; |
2638 |
$lost_fee_line->discard_changes; |
2639 |
is( $lost_fee_line->amountoutstanding + 0, 0, 'Lost fee has no outstanding amount' ); |
2639 |
is( $lost_fee_line->amountoutstanding + 0, 0, 'Lost fee has no outstanding amount' ); |
Lines 2641-2654
subtest '_FixAccountForLostAndReturned' => sub {
Link Here
|
2641 |
'LOST', 'Lost fee now still has account type of LOST' ); |
2641 |
'LOST', 'Lost fee now still has account type of LOST' ); |
2642 |
is( $lost_fee_line->status, 'RETURNED', "Lost fee now has account status of RETURNED"); |
2642 |
is( $lost_fee_line->status, 'RETURNED', "Lost fee now has account status of RETURNED"); |
2643 |
|
2643 |
|
2644 |
is( $credit_return->credit_type_code, 'LOST_RETURN', 'An account line of type LOST_RETURN is added' ); |
2644 |
is( $credit_return->credit_type_code, 'LOST_FOUND', 'An account line of type LOST_FOUND is added' ); |
2645 |
is( $credit_return->amount + 0, |
2645 |
is( $credit_return->amount + 0, |
2646 |
($payment_amount + $outstanding ) * -1, |
2646 |
($payment_amount + $outstanding ) * -1, |
2647 |
'The account line of type LOST_RETURN has an amount equal to the payment + outstanding' |
2647 |
'The account line of type LOST_FOUND has an amount equal to the payment + outstanding' |
2648 |
); |
2648 |
); |
2649 |
is( $credit_return->amountoutstanding + 0, |
2649 |
is( $credit_return->amountoutstanding + 0, |
2650 |
$payment_amount * -1, |
2650 |
$payment_amount * -1, |
2651 |
'The account line of type LOST_RETURN has an amountoutstanding equal to the payment' |
2651 |
'The account line of type LOST_FOUND has an amountoutstanding equal to the payment' |
2652 |
); |
2652 |
); |
2653 |
|
2653 |
|
2654 |
is( $account->balance, |
2654 |
is( $account->balance, |
Lines 2729-2735
subtest '_FixAccountForLostAndReturned' => sub {
Link Here
|
2729 |
my $credit_return_id = C4::Circulation::_FixAccountForLostAndReturned( $item_id, $patron->id ); |
2729 |
my $credit_return_id = C4::Circulation::_FixAccountForLostAndReturned( $item_id, $patron->id ); |
2730 |
my $credit_return = Koha::Account::Lines->find($credit_return_id); |
2730 |
my $credit_return = Koha::Account::Lines->find($credit_return_id); |
2731 |
|
2731 |
|
2732 |
is( $account->balance, $manual_debit_amount - $payment_amount, 'Balance is PROCESSING - payment (LOST_RETURN)' ); |
2732 |
is( $account->balance, $manual_debit_amount - $payment_amount, 'Balance is PROCESSING - payment (LOST_FOUND)' ); |
2733 |
|
2733 |
|
2734 |
my $manual_debit = Koha::Account::Lines->search({ borrowernumber => $patron->id, debit_type_code => 'OVERDUE', status => 'UNRETURNED' })->next; |
2734 |
my $manual_debit = Koha::Account::Lines->search({ borrowernumber => $patron->id, debit_type_code => 'OVERDUE', status => 'UNRETURNED' })->next; |
2735 |
is( $manual_debit->amountoutstanding + 0, $manual_debit_amount - $payment_amount, 'reconcile_balance was called' ); |
2735 |
is( $manual_debit->amountoutstanding + 0, $manual_debit_amount - $payment_amount, 'reconcile_balance was called' ); |
2736 |
- |
|
|