Improvment for null numbers in the native SQL publication list.

git-svn-id: https://svn.libreccm.org/ccm/trunk@5159 8810af33-2d31-482b-a856-94f89814c4df
master
jensp 2017-12-07 14:23:19 +00:00
parent 52a5609621
commit 6d81102967
2 changed files with 126 additions and 72 deletions

View File

@ -44,6 +44,8 @@ public class SciMemberList extends AbstractComponent {
private final PreparedStatement contactQueryStatement; private final PreparedStatement contactQueryStatement;
private String categoryId;
private int limit = 20; private int limit = 20;
public SciMemberList() { public SciMemberList() {
@ -67,6 +69,14 @@ public class SciMemberList extends AbstractComponent {
} }
public String getCategoryId() {
return categoryId;
}
public void setCategoryId(final String categoryId) {
this.categoryId = categoryId;
}
public int getLimit() { public int getLimit() {
return limit; return limit;
} }
@ -83,7 +93,12 @@ public class SciMemberList extends AbstractComponent {
.getSession() .getSession()
.getConnection(); .getConnection();
final String categoryId = getCategory().getID().toString(); final String catId;
if (categoryId == null || categoryId.isEmpty()) {
catId = getCategory().getID().toString();
} else {
catId = categoryId;
}
final Element listElem = Navigation.newElement( final Element listElem = Navigation.newElement(
"sci-member-list"); "sci-member-list");
@ -118,7 +133,7 @@ public class SciMemberList extends AbstractComponent {
.prepareStatement(String.format(MEMBERS_QUERY_TEMPLATE, .prepareStatement(String.format(MEMBERS_QUERY_TEMPLATE,
whereBuffer.toString(), whereBuffer.toString(),
orderBy)); orderBy));
membersQueryStatement.setString(1, categoryId); membersQueryStatement.setString(1, catId);
membersQueryStatement.setInt(2, limit); membersQueryStatement.setInt(2, limit);
if (request.getParameter("page") == null) { if (request.getParameter("page") == null) {
@ -145,7 +160,7 @@ public class SciMemberList extends AbstractComponent {
.prepareStatement(String.format(COUNT_MEMBERS_QUERY_TEMPLATE, .prepareStatement(String.format(COUNT_MEMBERS_QUERY_TEMPLATE,
whereBuffer.toString())); whereBuffer.toString()));
countMembersQueryStatement.setString(1, categoryId); countMembersQueryStatement.setString(1, catId);
final ResultSet countResultSet = countMembersQueryStatement final ResultSet countResultSet = countMembersQueryStatement
.executeQuery(); .executeQuery();
final int count; final int count;

View File

@ -560,8 +560,10 @@ public class PublicationList extends AbstractComponent {
descriptionElem.setText(description); descriptionElem.setText(description);
} }
if (resultSet.getInt("year") != 0) {
final Element yearElem = publicationElem.newChildElement("year"); final Element yearElem = publicationElem.newChildElement("year");
yearElem.setText(Integer.toString(resultSet.getInt("year"))); yearElem.setText(Integer.toString(resultSet.getInt("year")));
}
final Element abstractElem = publicationElem.newChildElement("abstract"); final Element abstractElem = publicationElem.newChildElement("abstract");
abstractElem.setText(resultSet.getString("abstract")); abstractElem.setText(resultSet.getString("abstract"));
@ -576,10 +578,12 @@ public class PublicationList extends AbstractComponent {
"authorsStr"); "authorsStr");
authorsStrElem.setText(resultSet.getString("authors")); authorsStrElem.setText(resultSet.getString("authors"));
if (resultSet.getInt("firstPublished") != 0) {
final Element firstPublishedElem = publicationElem.newChildElement( final Element firstPublishedElem = publicationElem.newChildElement(
"firstPublished"); "firstPublished");
firstPublishedElem.setText(Integer.toString(resultSet.getInt( firstPublishedElem.setText(Integer.toString(resultSet.getInt(
"firstPublished"))); "firstPublished")));
}
final Element langElem = publicationElem.newChildElement("lang"); final Element langElem = publicationElem.newChildElement("lang");
langElem.setText(resultSet.getString("lang")); langElem.setText(resultSet.getString("lang"));
@ -587,18 +591,24 @@ public class PublicationList extends AbstractComponent {
final Element isbnElem = publicationElem.newChildElement("isbn"); final Element isbnElem = publicationElem.newChildElement("isbn");
isbnElem.setText(resultSet.getString("isbn")); isbnElem.setText(resultSet.getString("isbn"));
if (resultSet.getInt("volume") != 0) {
final Element volumeElem = publicationElem.newChildElement("volume"); final Element volumeElem = publicationElem.newChildElement("volume");
volumeElem.setText(Integer.toString(resultSet.getInt("volume"))); volumeElem.setText(Integer.toString(resultSet.getInt("volume")));
}
if (resultSet.getInt("number_of_volumes") != 0) {
final Element numberOfVolumesElem = publicationElem.newChildElement( final Element numberOfVolumesElem = publicationElem.newChildElement(
"volume-of-volumes"); "volume-of-volumes");
numberOfVolumesElem.setText(Integer.toString(resultSet.getInt( numberOfVolumesElem.setText(Integer.toString(resultSet.getInt(
"number_of_volumes"))); "number_of_volumes")));
}
if (resultSet.getInt("_number_of_pages") != 0) {
final Element numberOfPagesElem = publicationElem.newChildElement( final Element numberOfPagesElem = publicationElem.newChildElement(
"number-of-pages"); "number-of-pages");
numberOfPagesElem.setText(Integer.toString(resultSet.getInt( numberOfPagesElem.setText(Integer.toString(resultSet.getInt(
"_number_of_pages"))); "_number_of_pages")));
}
final Element editionElem = publicationElem.newChildElement("edition"); final Element editionElem = publicationElem.newChildElement("edition");
editionElem.setText(resultSet.getString("edition")); editionElem.setText(resultSet.getString("edition"));
@ -657,15 +667,19 @@ public class PublicationList extends AbstractComponent {
if (ArticleInCollectedVolume.BASE_DATA_OBJECT_TYPE.equals(resultSet if (ArticleInCollectedVolume.BASE_DATA_OBJECT_TYPE.equals(resultSet
.getString("object_type"))) { .getString("object_type"))) {
if (resultSet.getInt("collvol_pages_from") != 0) {
final Element pagesFromElem = publicationElem.newChildElement( final Element pagesFromElem = publicationElem.newChildElement(
"pages-from"); "pages-from");
pagesFromElem.setText(Integer.toString(resultSet.getInt( pagesFromElem.setText(Integer.toString(resultSet.getInt(
"collvol_pages_from"))); "collvol_pages_from")));
}
if (resultSet.getInt("collvol_pages_to") != 0) {
final Element pagesToElem = publicationElem.newChildElement( final Element pagesToElem = publicationElem.newChildElement(
"pages-to"); "pages-to");
pagesToElem.setText(Integer.toString(resultSet.getInt( pagesToElem.setText(Integer.toString(resultSet.getInt(
"collvol_pages_to"))); "collvol_pages_to")));
}
final Element chapterElem = publicationElem.newChildElement( final Element chapterElem = publicationElem.newChildElement(
"chapter"); "chapter");
@ -675,23 +689,30 @@ public class PublicationList extends AbstractComponent {
if (ArticleInJournal.BASE_DATA_OBJECT_TYPE.equals(resultSet.getString( if (ArticleInJournal.BASE_DATA_OBJECT_TYPE.equals(resultSet.getString(
"object_type"))) { "object_type"))) {
if (resultSet.getInt("journal_pages_from") != 0) {
final Element pagesFromElem = publicationElem.newChildElement( final Element pagesFromElem = publicationElem.newChildElement(
"pages-from"); "pages-from");
pagesFromElem.setText(Integer.toString(resultSet.getInt( pagesFromElem.setText(Integer.toString(resultSet.getInt(
"journal_pages_from"))); "journal_pages_from")));
}
if (resultSet.getInt("journal_pages_to") != 0) {
final Element pagesToElem = publicationElem.newChildElement( final Element pagesToElem = publicationElem.newChildElement(
"pages-to"); "pages-to");
pagesToElem.setText(Integer.toString(resultSet.getInt( pagesToElem.setText(Integer.toString(resultSet.getInt(
"journal_pages_to"))); "journal_pages_to")));
}
final Element issueElem = publicationElem.newChildElement("issue"); final Element issueElem = publicationElem.newChildElement("issue");
issueElem.setText(resultSet.getString("issue")); issueElem.setText(resultSet.getString("issue"));
final Element journalVolumeElem = publicationElem.newChildElement( if (resultSet.getInt("journal_volume") != 0) {
final Element journalVolumeElem = publicationElem
.newChildElement(
"volume-of-journal"); "volume-of-journal");
journalVolumeElem.setText(Integer.toString(resultSet.getInt( journalVolumeElem.setText(Integer.toString(resultSet.getInt(
"journal_volume"))); "journal_volume")));
}
if (resultSet.getDate("publication_date") != null) { if (resultSet.getDate("publication_date") != null) {
final Element publicationDateElem = publicationElem final Element publicationDateElem = publicationElem
@ -719,25 +740,31 @@ public class PublicationList extends AbstractComponent {
"expertise-place"); "expertise-place");
expertisePlaceElem.setText(resultSet.getString("expertise_place")); expertisePlaceElem.setText(resultSet.getString("expertise_place"));
if (resultSet.getInt("expertise_number_of_pages") != 0) {
final Element expertiseNumberOfPagesElem = publicationElem final Element expertiseNumberOfPagesElem = publicationElem
.newChildElement("expertise-number-of-pages"); .newChildElement("expertise-number-of-pages");
expertiseNumberOfPagesElem.setText(Integer.toString(resultSet expertiseNumberOfPagesElem.setText(Integer.toString(resultSet
.getInt("expertise_number_of_pages"))); .getInt("expertise_number_of_pages")));
} }
}
if (InProceedings.BASE_DATA_OBJECT_TYPE.equals(resultSet.getString( if (InProceedings.BASE_DATA_OBJECT_TYPE.equals(resultSet.getString(
"object_type"))) { "object_type"))) {
if (resultSet.getInt("inproceedings_pages_from") != 0) {
final Element pagesFromElem = publicationElem.newChildElement( final Element pagesFromElem = publicationElem.newChildElement(
"inproceedings-pages-from"); "inproceedings-pages-from");
pagesFromElem.setText(Integer.toString(resultSet.getInt( pagesFromElem.setText(Integer.toString(resultSet.getInt(
"inproceedings_pages_from"))); "inproceedings_pages_from")));
}
if (resultSet.getInt("inproceedings_pages_to") != 0) {
final Element pagesToElem = publicationElem.newChildElement( final Element pagesToElem = publicationElem.newChildElement(
"inproceedings-pages-to"); "inproceedings-pages-to");
pagesToElem.setText(Integer.toString(resultSet.getInt( pagesToElem.setText(Integer.toString(resultSet.getInt(
"inproceedings_pages_to"))); "inproceedings_pages_to")));
} }
}
if (InternetArticle.BASE_DATA_OBJECT_TYPE.equals(resultSet.getString( if (InternetArticle.BASE_DATA_OBJECT_TYPE.equals(resultSet.getString(
"object_type"))) { "object_type"))) {
@ -750,12 +777,15 @@ public class PublicationList extends AbstractComponent {
"internet-article-number"); "internet-article-number");
numberElem.setText(resultSet.getString("internet_article_number")); numberElem.setText(resultSet.getString("internet_article_number"));
if (resultSet.getInt("internet_article_number_of_pages") != 0) {
final Element internetArticleNumberOfPagesElem = publicationElem final Element internetArticleNumberOfPagesElem = publicationElem
.newChildElement( .newChildElement(
"internet-article-number-of-pages"); "internet-article-number-of-pages");
internetArticleNumberOfPagesElem.setText(Integer.toString(resultSet internetArticleNumberOfPagesElem.setText(Integer.toString(
resultSet
.getInt( .getInt(
"internet_article_number_of_pages"))); "internet_article_number_of_pages")));
}
final Element internetArticleEditionElem = publicationElem final Element internetArticleEditionElem = publicationElem
.newChildElement( .newChildElement(
@ -834,23 +864,30 @@ public class PublicationList extends AbstractComponent {
unpublishedNumberElem.setText(resultSet.getString( unpublishedNumberElem.setText(resultSet.getString(
"unpublished_number")); "unpublished_number"));
if (resultSet.getInt("unpublished_number_of_pages") != 0) {
final Element unpublishedNumberOfPagesElem = publicationElem final Element unpublishedNumberOfPagesElem = publicationElem
.newChildElement("unpublished-number-of-pages"); .newChildElement("unpublished-number-of-pages");
unpublishedNumberOfPagesElem.setText(Integer.toString(resultSet unpublishedNumberOfPagesElem.setText(Integer.toString(resultSet
.getInt("unpublished_number_of_pages"))); .getInt("unpublished_number_of_pages")));
}
if (GreyLiterature.BASE_DATA_OBJECT_TYPE.equals(resultSet.getString( if (GreyLiterature.BASE_DATA_OBJECT_TYPE.equals(resultSet.getString(
"object_type"))) { "object_type"))) {
if (resultSet.getInt("grey_literature_pages_from") != 0) {
final Element greyLiteraturePagesFromElem = publicationElem final Element greyLiteraturePagesFromElem = publicationElem
.newChildElement("grey-literature-pages-from"); .newChildElement("grey-literature-pages-from");
greyLiteraturePagesFromElem.setText(Integer.toString(resultSet greyLiteraturePagesFromElem.setText(Integer.toString(
resultSet
.getInt("grey_literature_pages_from"))); .getInt("grey_literature_pages_from")));
}
if (resultSet.getInt("grey_literature_pages_to") != 0) {
final Element greyLiteraturePagesToElem = publicationElem final Element greyLiteraturePagesToElem = publicationElem
.newChildElement("grey-literature-pages-to"); .newChildElement("grey-literature-pages-to");
greyLiteraturePagesToElem.setText(Integer.toString(resultSet greyLiteraturePagesToElem.setText(Integer.toString(resultSet
.getInt("grey_literature_pages_to"))); .getInt("grey_literature_pages_to")));
}
} }
@ -1034,9 +1071,11 @@ public class PublicationList extends AbstractComponent {
final Element titleElem = proceedingsElem final Element titleElem = proceedingsElem
.newChildElement("title"); .newChildElement("title");
titleElem.setText(resultSet.getString("title")); titleElem.setText(resultSet.getString("title"));
if (resultSet.getInt("year") != 0) {
final Element yearElem = proceedingsElem final Element yearElem = proceedingsElem
.newChildElement("year"); .newChildElement("year");
yearElem.setText(Integer.toString(resultSet.getInt("year"))); yearElem.setText(Integer.toString(resultSet.getInt("year")));
}
// final Element editionElem = proceedingsElem // final Element editionElem = proceedingsElem
// .newChildElement("edition"); // .newChildElement("edition");
// editionElem.setText(resultSet.getString("edition")); // editionElem.setText(resultSet.getString("edition"));