Bug 23674: Add ability to add note to canceled charge
To test, with this patchset applied: 1) From patron accounting page -> Add a manual invoice 2) Under the transaction tab click 'Cancel charge' 3) You should see a modal that gives you the option to type in a note. 4) Type something in and select submit. 5) Ensure the note shows up in the note column. Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
This commit is contained in:
parent
72c60c11b4
commit
994959db48
3 changed files with 60 additions and 14 deletions
|
@ -420,6 +420,7 @@ sub cancel {
|
||||||
borrowernumber => $self->borrowernumber,
|
borrowernumber => $self->borrowernumber,
|
||||||
interface => 'intranet',
|
interface => 'intranet',
|
||||||
branchcode => $params->{branch},
|
branchcode => $params->{branch},
|
||||||
|
note => $params->{note},
|
||||||
}
|
}
|
||||||
)->store();
|
)->store();
|
||||||
|
|
||||||
|
|
|
@ -193,15 +193,15 @@
|
||||||
>
|
>
|
||||||
[% END %]
|
[% END %]
|
||||||
[% IF account.is_debit && account.amount == account.amountoutstanding && account.status != 'CANCELLED' && !(account.debit_type_code == 'PAYOUT') %]
|
[% IF account.is_debit && account.amount == account.amountoutstanding && account.status != 'CANCELLED' && !(account.debit_type_code == 'PAYOUT') %]
|
||||||
<form method="post" action="/cgi-bin/koha/members/cancel-charge.pl">
|
<button
|
||||||
[% INCLUDE 'csrf-token.inc' %]
|
type="button"
|
||||||
<input type="hidden" name="op" value="cud-cancel" />
|
data-toggle="modal"
|
||||||
<input type="hidden" name="accountlines_id" value="[% account.accountlines_id | html %]" />
|
data-target="#cancelChargeModal"
|
||||||
<button type="submit" class="btn btn-default btn-xs cancel-action">
|
data-accountlines_id="[% account.accountlines_id | html %]"
|
||||||
<i class="fa fa-ban"></i>
|
data-borrowernumber="[% patron.borrowernumber | html %]"
|
||||||
Cancel charge
|
class="btn btn-default btn-xs void-action"
|
||||||
</button>
|
><i class="fa fa-ban"></i> Cancel charge</button
|
||||||
</form>
|
>
|
||||||
[% END %]
|
[% END %]
|
||||||
[% IF CAN_user_updatecharges_payout && account.is_credit && ( account.amountoutstanding < 0 ) %]
|
[% IF CAN_user_updatecharges_payout && account.is_credit && ( account.amountoutstanding < 0 ) %]
|
||||||
<button
|
<button
|
||||||
|
@ -477,6 +477,44 @@
|
||||||
</div>
|
</div>
|
||||||
<!-- /#voidPaymentModal -->
|
<!-- /#voidPaymentModal -->
|
||||||
|
|
||||||
|
<!-- Cancel charge modal -->
|
||||||
|
<div class="modal" id="cancelChargeModal" tabindex="-1" role="dialog" aria-labelledby="cancelChangreLabel">
|
||||||
|
<form method="post" action="/cgi-bin/koha/members/cancel-charge.pl">
|
||||||
|
[% INCLUDE 'csrf-token.inc' %]
|
||||||
|
<input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" />
|
||||||
|
<input type="hidden" name="accountlines_id" id="accountlines_id" value="" />
|
||||||
|
<div class="modal-dialog" role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<button type="button" class="closebtn" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
||||||
|
<h4 class="modal-title" id="cancelChargeLabel">Cancel charge</h4>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<fieldset class="rows">
|
||||||
|
<ol>
|
||||||
|
<li>
|
||||||
|
<label for="cancel_charge_note">Note: </label>
|
||||||
|
<input type="text" id="cnacel_charge_note" name="cancel_charge_note" />
|
||||||
|
</li>
|
||||||
|
</ol>
|
||||||
|
</fieldset>
|
||||||
|
<!-- /.rows -->
|
||||||
|
</div>
|
||||||
|
<!-- /.modal-body -->
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button type="submit" class="btn btn-default">Confirm</button>
|
||||||
|
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
|
||||||
|
</div>
|
||||||
|
<!-- /.modal-footer -->
|
||||||
|
</div>
|
||||||
|
<!-- /.modal-content -->
|
||||||
|
</div>
|
||||||
|
<!-- /.modal-dialog -->
|
||||||
|
</form>
|
||||||
|
<!-- /#cancel_charge_form -->
|
||||||
|
</div>
|
||||||
|
<!-- /#voidPaymentModal -->
|
||||||
|
|
||||||
[% MACRO jsinclude BLOCK %]
|
[% MACRO jsinclude BLOCK %]
|
||||||
[% INCLUDE 'datatables.inc' %]
|
[% INCLUDE 'datatables.inc' %]
|
||||||
[% INCLUDE 'format_price.inc' %]
|
[% INCLUDE 'format_price.inc' %]
|
||||||
|
@ -563,6 +601,12 @@
|
||||||
$('#voidline').val(accountline);
|
$('#voidline').val(accountline);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$("#cancelChargeModal").on("shown.bs.modal", function(e){
|
||||||
|
var button = $(e.relatedTarget);
|
||||||
|
var item = button.data('accountlines_id');
|
||||||
|
$('#accountlines_id').val(item);
|
||||||
|
});
|
||||||
|
|
||||||
$(".receipt-email-action").on("click", function(e){
|
$(".receipt-email-action").on("click", function(e){
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
return $(this).siblings('form').submit();
|
return $(this).siblings('form').submit();
|
||||||
|
|
|
@ -35,14 +35,15 @@ my ( $user, $cookie ) = C4::Auth::checkauth( $cgi, $authnotrequired, $flags, $ty
|
||||||
my $op = $cgi->param('op') // q{};
|
my $op = $cgi->param('op') // q{};
|
||||||
|
|
||||||
if ( $op eq "cud-cancel" ) {
|
if ( $op eq "cud-cancel" ) {
|
||||||
my $accountlines_id = $cgi->param('accountlines_id');
|
my $accountlines_id = $cgi->param('accountlines_id');
|
||||||
|
my $cancel_charge_note = $cgi->param('cancel_charge_note');
|
||||||
my $charge = Koha::Account::Lines->find($accountlines_id);
|
my $charge = Koha::Account::Lines->find($accountlines_id);
|
||||||
my $borrowernumber = $charge->patron->borrowernumber;
|
my $borrowernumber = $charge->patron->borrowernumber;
|
||||||
$charge->cancel(
|
$charge->cancel(
|
||||||
{
|
{
|
||||||
branch => C4::Context->userenv->{'branch'},
|
branch => C4::Context->userenv->{'branch'},
|
||||||
staff_id => C4::Context->userenv->{'number'}
|
staff_id => C4::Context->userenv->{'number'},
|
||||||
|
note => $cancel_charge_note,
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
print $cgi->redirect( '/cgi-bin/koha/members/boraccount.pl?borrowernumber=' . $borrowernumber );
|
print $cgi->redirect( '/cgi-bin/koha/members/boraccount.pl?borrowernumber=' . $borrowernumber );
|
||||||
|
|
Loading…
Reference in a new issue