diff --git a/code/reindexer/src/org/aspen_discovery/reindexer/SymphonyRecordProcessor.java b/code/reindexer/src/org/aspen_discovery/reindexer/SymphonyRecordProcessor.java index 91fcc2cc847..29f051b87d2 100644 --- a/code/reindexer/src/org/aspen_discovery/reindexer/SymphonyRecordProcessor.java +++ b/code/reindexer/src/org/aspen_discovery/reindexer/SymphonyRecordProcessor.java @@ -225,7 +225,7 @@ protected void loadOnOrderItems(AbstractGroupedWorkSolr groupedWork, RecordInfo loadOnOrderIds(); String recordIdentifier = recordInfo.getRecordIdentifier(); - if (onOrderIds.contains(recordIdentifier)) { + if (onOrderIds.contains(recordIdentifier) && !hasTangibleItems) { ItemInfo itemInfo = new ItemInfo(); itemInfo.setLocationCode("multi"); itemInfo.setItemIdentifier(recordIdentifier); @@ -244,7 +244,7 @@ protected void loadOnOrderItems(AbstractGroupedWorkSolr groupedWork, RecordInfo recordInfo.addItem(itemInfo); groupedWork.addPopularity(1); - if (recordInfo.getNumCopiesOnOrder() > 0 && !hasTangibleItems){ + if (recordInfo.getNumCopiesOnOrder() > 0){ groupedWork.addKeywords("On Order"); groupedWork.addKeywords("Coming Soon"); if (groupedWork.isDebugEnabled()) { diff --git a/code/symphony_export/src/com/turning_leaf_technologies/symphony/SymphonyExportMain.java b/code/symphony_export/src/com/turning_leaf_technologies/symphony/SymphonyExportMain.java index 346fcbf4d59..d26b0690e75 100644 --- a/code/symphony_export/src/com/turning_leaf_technologies/symphony/SymphonyExportMain.java +++ b/code/symphony_export/src/com/turning_leaf_technologies/symphony/SymphonyExportMain.java @@ -773,11 +773,18 @@ private static int updateRecords(Connection dbConn){ File[] exportedMarcFiles = marcExportPath.listFiles((dir, name) -> name.endsWith("mrc") || name.endsWith("marc")); ArrayList filesToProcess = new ArrayList<>(); File latestFile = null; + File ordersFile = null; long latestMarcFile = 0; boolean hasFullExportFile = false; File fullExportFile = null; if (exportedMarcFiles != null){ for (File exportedMarcFile : exportedMarcFiles) { + //orders.mrc handling, don't delete + if (exportedMarcFile.getName().equals("orders.mrc")){ + ordersFile = exportedMarcFile; + continue; + } + //Full export file handling //Remove any files that are older than the last time we processed files. if (exportedMarcFile.lastModified() / 1000 < lastUpdateFromMarc){ if (exportedMarcFile.delete()){ @@ -802,6 +809,11 @@ private static int updateRecords(Connection dbConn){ fullExportFile = latestFile; } + //Add orders.mrc to filesToProcess if we have a full export file + if (hasFullExportFile && ordersFile != null && ordersFile.length() > 0){ + filesToProcess.add(ordersFile); + } + //Get a list of marc deltas since the last marc record File marcDeltaPath = new File(marcExportPath.getParentFile() + "/marc_delta"); @@ -1130,7 +1142,7 @@ private static int updateRecordsUsingMarcExtract(ArrayList exportedMarcFil logEntry.saveResults(); } - if (!logEntry.hasErrors()) { + if (!logEntry.hasErrors() && !curBibFile.getName().equals("orders.mrc")) { // Delete the file if we did not have errors processing the file. if (!curBibFile.delete()) { logEntry.addNote("Could not delete " + curBibFile + " after processing"); diff --git a/code/web/release_notes/26.10.00/DIS-1199.yaml b/code/web/release_notes/26.10.00/DIS-1199.yaml new file mode 100644 index 00000000000..a9d135eef62 --- /dev/null +++ b/code/web/release_notes/26.10.00/DIS-1199.yaml @@ -0,0 +1,12 @@ +Jira: DIS-1199 +Type: Enhancement +Developer: Kodi Lein (KL), David Dowling (DD) +Contributing Org: Grove For Libraries +Sponsor: Prairie Lakes +GroveRelease: 26.10.00 +CommunityRelease: 26.11.00 +Component: Symphony +Description: + - Allow for on-order records without items to display for Symphony ILS +New Settings: +New Permissions: \ No newline at end of file