Bug 26132: TooMany refactoring
The different calls to _check_max_qty can be improved to highlight what is really changing between each of them. Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This commit is contained in:
parent
ee8fe4d351
commit
3239993fb1
1 changed files with 18 additions and 38 deletions
|
@ -507,51 +507,31 @@ sub TooMany {
|
||||||
|
|
||||||
my ( $checkout_count_type, $checkout_count, $onsite_checkout_count ) = $dbh->selectrow_array( $count_query, {}, @bind_params );
|
my ( $checkout_count_type, $checkout_count, $onsite_checkout_count ) = $dbh->selectrow_array( $count_query, {}, @bind_params );
|
||||||
|
|
||||||
my $max_onsite_checkouts_allowed = $maxonsiteissueqty_rule ? $maxonsiteissueqty_rule->rule_value : undef;
|
my $checkout_rules = {
|
||||||
|
checkout_count => $checkout_count,
|
||||||
|
onsite_checkout_count => $onsite_checkout_count,
|
||||||
|
onsite_checkout => $onsite_checkout,
|
||||||
|
max_checkouts_allowed => $maxissueqty_rule ? $maxissueqty_rule->rule_value : undef,
|
||||||
|
max_onsite_checkouts_allowed => $maxonsiteissueqty_rule ? $maxonsiteissueqty_rule->rule_value : undef,
|
||||||
|
switch_onsite_checkout => $switch_onsite_checkout,
|
||||||
|
};
|
||||||
# If parent rules exists
|
# If parent rules exists
|
||||||
if ( defined($parent_maxissueqty_rule) and defined($parent_maxissueqty_rule->rule_value) ){
|
if ( defined($parent_maxissueqty_rule) and defined($parent_maxissueqty_rule->rule_value) ){
|
||||||
my $max_checkouts_allowed = $parent_maxissueqty_rule->rule_value;
|
$checkout_rules->{max_checkouts_allowed} = $parent_maxissueqty_rule ? $parent_maxissueqty_rule->rule_value : undef;
|
||||||
|
my $qty_over = _check_max_qty($checkout_rules);
|
||||||
my $qty_over = _check_max_qty({
|
|
||||||
checkout_count => $checkout_count,
|
|
||||||
onsite_checkout_count => $onsite_checkout_count,
|
|
||||||
onsite_checkout => $onsite_checkout,
|
|
||||||
max_checkouts_allowed => $max_checkouts_allowed,
|
|
||||||
max_onsite_checkouts_allowed => $max_onsite_checkouts_allowed,
|
|
||||||
switch_onsite_checkout => $switch_onsite_checkout
|
|
||||||
});
|
|
||||||
return $qty_over if defined $qty_over;
|
return $qty_over if defined $qty_over;
|
||||||
|
|
||||||
|
# If the parent rule is less than or equal to the child, we only need check the parent
|
||||||
# If the parent rule is less than or equal to the child, we only need check the parent
|
if( $maxissueqty_rule->rule_value < $parent_maxissueqty_rule->rule_value && defined($maxissueqty_rule->itemtype) ) {
|
||||||
if( $maxissueqty_rule->rule_value < $parent_maxissueqty_rule->rule_value && defined($maxissueqty_rule->itemtype) ) {
|
$checkout_rules->{checkout_count} = $checkout_count_type;
|
||||||
my $max_checkouts_allowed = $maxissueqty_rule->rule_value;
|
$checkout_rules->{max_checkouts_allowed} = $maxissueqty_rule ? $maxissueqty_rule->rule_value : undef;
|
||||||
my $qty_over = _check_max_qty({
|
my $qty_over = _check_max_qty($checkout_rules);
|
||||||
checkout_count => $checkout_count_type,
|
return $qty_over if defined $qty_over;
|
||||||
onsite_checkout_count => $onsite_checkout_count,
|
}
|
||||||
onsite_checkout => $onsite_checkout,
|
|
||||||
max_checkouts_allowed => $max_checkouts_allowed,
|
|
||||||
max_onsite_checkouts_allowed => $max_onsite_checkouts_allowed,
|
|
||||||
switch_onsite_checkout => $switch_onsite_checkout
|
|
||||||
});
|
|
||||||
return $qty_over if defined $qty_over;
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
my $max_checkouts_allowed = $maxissueqty_rule->rule_value;
|
my $qty_over = _check_max_qty($checkout_rules);
|
||||||
my $qty_over = _check_max_qty({
|
|
||||||
checkout_count => $checkout_count,
|
|
||||||
onsite_checkout_count => $onsite_checkout_count,
|
|
||||||
onsite_checkout => $onsite_checkout,
|
|
||||||
max_checkouts_allowed => $max_checkouts_allowed,
|
|
||||||
max_onsite_checkouts_allowed => $max_onsite_checkouts_allowed,
|
|
||||||
switch_onsite_checkout => $switch_onsite_checkout
|
|
||||||
});
|
|
||||||
return $qty_over if defined $qty_over;
|
return $qty_over if defined $qty_over;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Now count total loans against the limit for the branch
|
# Now count total loans against the limit for the branch
|
||||||
|
|
Loading…
Reference in a new issue