Bug 35033: Add a validation for biblioitems in about/system information

In the About section, under the System information tab, we get validation between
issues, borrowers, biblio, items, reserves tables, and their deleted/old counterpart.

But there's no validation for biblioitems.

This patch will simply add the same test (and display) as the others, but for biblioitems.

Testing
0) Create a simple biblio entry through cataloguing. Note the biblioitemnumber created.
1) Insert a dummy entry in deletedbiblioitem using the biblioitemnumber.  An simple SQL will do
insert into deletedbiblioitems select * from biblioitems where biblioitemnumber = GIVENbin;
2) Go to about, see there's no warning in systeminformation.
3) apply the patch, validate that an error appears.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
Blou 2023-10-11 11:57:28 -04:00 committed by Tomas Cohen Arazi
parent e42d5c6e6f
commit 07ac0b1f72
Signed by: tomascohen
GPG key ID: 0A272EA1B2F3C15F
2 changed files with 16 additions and 1 deletions

View file

@ -511,6 +511,10 @@ $template->param( 'bad_yaml_prefs' => \@bad_yaml_prefs ) if @bad_yaml_prefs;
q|select b.biblionumber from biblio b join deletedbiblio db on b.biblionumber=db.biblionumber|,
{ Slice => {} }
);
my $biblioitems = $dbh->selectall_arrayref(
q|select bi.biblioitemnumber from biblioitems bi join deletedbiblioitems dbi on bi.biblionumber=dbi.biblionumber|,
{ Slice => {} }
);
my $items = $dbh->selectall_arrayref(
q|select i.itemnumber from items i join deleteditems di on i.itemnumber=di.itemnumber|,
{ Slice => {} }
@ -523,11 +527,12 @@ $template->param( 'bad_yaml_prefs' => \@bad_yaml_prefs ) if @bad_yaml_prefs;
q|select r.reserve_id from reserves r join old_reserves o on r.reserve_id=o.reserve_id|,
{ Slice => {} }
);
if ( @$patrons or @$biblios or @$items or @$checkouts or @$holds ) {
if ( @$patrons or @$biblios or @$biblioitems or @$items or @$checkouts or @$holds ) {
$template->param(
has_ai_issues => 1,
ai_patrons => $patrons,
ai_biblios => $biblios,
ai_biblioitems=> $biblioitems,
ai_items => $items,
ai_checkouts => $checkouts,
ai_holds => $holds,

View file

@ -321,6 +321,16 @@
[% END %]
</p>
[% END %]
[% IF ai_biblioitems %]
<h4>Bibliographic records</h4>
<p>The following IDs exist in both tables [% "biblio" | $HtmlTags tag="strong" %] and [% "deletedbiblioitems" | $HtmlTags tag="strong" %]:</p>
<p>
[% FOR b IN ai_biblioitems %]
[% b.biblioitemnumber | html %]
[% UNLESS loop.last %], [% END %]
[% END %]
</p>
[% END %]
[% IF ai_items %]
<h4>Items</h4>
<p>The following IDs exist in both tables [% "items" | $HtmlTags tag="strong" %] and [% "deleteditems" | $HtmlTags tag="strong" %]:</p>