Bug 21604: Fix add/edit fund/budget

[Strict SQL modes context]

For insert aqbudgetperiods:
Incorrect integer value: '' for column 'budget_period_id'

For insert/update aqbudgets
Incorrect integer value: '' for column 'budget_owner_id'
Incorrect decimal value: '' for column 'budget_encumb'

Test plan:
Add/edit budgets and funds

A good example of why we should use Koha::Object for all our objects

Signed-off-by: Pierre-Marc Thibault <pierre-marc.thibault@inLibro.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
This commit is contained in:
Jonathan Druart 2018-10-18 18:10:19 -03:00 committed by Nick Clemens
parent 433fc3f120
commit 7085772e8d
1 changed files with 5 additions and 0 deletions

View File

@ -134,6 +134,7 @@ sub AddBudgetPeriod {
my ($budgetperiod) = @_;
return unless($budgetperiod->{budget_period_startdate} && $budgetperiod->{budget_period_enddate});
undef $budgetperiod->{budget_period_id};
my $resultset = Koha::Database->new()->schema->resultset('Aqbudgetperiod');
return $resultset->create($budgetperiod)->id;
}
@ -633,6 +634,8 @@ sub AddBudget {
my ($budget) = @_;
return unless ($budget);
undef $budget->{budget_encumb} if $budget->{budget_encumb} eq '';
undef $budget->{budget_owner_id} if $budget->{budget_owner_id} eq '';
my $resultset = Koha::Database->new()->schema->resultset('Aqbudget');
return $resultset->create($budget)->id;
}
@ -643,6 +646,8 @@ sub ModBudget {
my $result = Koha::Database->new()->schema->resultset('Aqbudget')->find($budget);
return unless($result);
undef $budget->{budget_encumb} if $budget->{budget_encumb} eq '';
undef $budget->{budget_owner_id} if $budget->{budget_owner_id} eq '';
$result = $result->update($budget);
return $result->in_storage;
}