@@ -, +, @@
---
.../intranet-tmpl/prog/en/modules/pos/registers.tt | 20 ++++++++++++++-
pos/registers.pl | 29 +++++++++++++---------
2 files changed, 36 insertions(+), 13 deletions(-)
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/pos/registers.tt
+++ a/koha-tmpl/intranet-tmpl/prog/en/modules/pos/registers.tt
@@ -25,9 +25,18 @@
can record payments.
[% ELSE %]
+
+ [% IF ( error_cashup_permission ) %]
+
+ You do not have permission to perform cashup actions.
+
+ [% END %]
+
+ [% IF CAN_user_cash_management_cashup %]
+ [% END %]
Library transaction details for [% library.branchname | html %]
@@ -47,7 +56,9 @@
Bankable |
Income (cash) |
Outgoing (cash) |
+ [% IF CAN_user_cash_management_cashup %]
Actions |
+ [% END %]
[% SET bankable = 0, ctotal = 0, dtotal = 0, cctotal = 0, cdtotal = 0 %]
@@ -81,9 +92,12 @@
[% rdtotal | $Price %] ([% rcdtotal | $Price %])
[% SET dtotal = dtotal + rdtotal %]
[% SET cdtotal = cdtotal + rcdtotal %]
+
+ [% IF CAN_user_cash_management_cashup %]
|
+ [% END %]
[% END %]
@@ -93,7 +107,11 @@
[% bankable | $Price %] |
[% ctotal | $Price %] ([% cctotal | $Price %]) |
[% dtotal | $Price %] ([% cdtotal | $Price %]) |
- |
+ [% IF CAN_user_cash_management_cashup %]
+
+
+ |
+ [% END %]
--- a/pos/registers.pl
+++ a/pos/registers.pl
@@ -56,18 +56,10 @@ else {
my $op = $input->param('op') // '';
if ( $op eq 'cashup' ) {
- my $registerid = $input->param('registerid');
- if ($registerid) {
- my $register = Koha::Cash::Registers->find( { id => $registerid } );
- $register->add_cashup(
- {
- manager_id => $logged_in_user->id,
- amount => $register->outstanding_accountlines->total
- }
- );
- }
- else {
- for my $register ( $registers->as_list ) {
+ if ( $logged_in_user->has_permission( { cash_management => 'cashup' } ) ) {
+ my $registerid = $input->param('registerid');
+ if ($registerid) {
+ my $register = Koha::Cash::Registers->find( { id => $registerid } );
$register->add_cashup(
{
manager_id => $logged_in_user->id,
@@ -75,6 +67,19 @@ if ( $op eq 'cashup' ) {
}
);
}
+ else {
+ for my $register ( $registers->as_list ) {
+ $register->add_cashup(
+ {
+ manager_id => $logged_in_user->id,
+ amount => $register->outstanding_accountlines->total
+ }
+ );
+ }
+ }
+ }
+ else {
+ $template->param( error_cashup_permission => 1 );
}
}
--