MIFOSX-759 - Hotfix for non-unique transaction IDs

This commit is contained in:
Sander van der Heyden
2013-10-29 11:15:50 +00:00
committed by Keith Woodlock
parent 99371b6314
commit 69780c0061
3 changed files with 10 additions and 4 deletions
@@ -76,7 +76,7 @@ public class JournalEntriesApiResource {
public String retrieveAll(@Context final UriInfo uriInfo, @QueryParam("officeId") final Long officeId,
@QueryParam("glAccountId") final Long glAccountId, @QueryParam("manualEntriesOnly") final Boolean onlyManualEntries,
@QueryParam("fromDate") final DateParam fromDateParam, @QueryParam("toDate") final DateParam toDateParam,
@QueryParam("transactionId") final String transactionId, @QueryParam("offset") final Integer offset,
@QueryParam("transactionId") final String transactionId, @QueryParam("entityType") final Integer entityType, @QueryParam("offset") final Integer offset,
@QueryParam("limit") final Integer limit, @QueryParam("orderBy") final String orderBy,
@QueryParam("sortOrder") final String sortOrder, @QueryParam("locale") final String locale,
@QueryParam("dateFormat") final String dateFormat) {
@@ -95,7 +95,7 @@ public class JournalEntriesApiResource {
final SearchParameters searchParameters = SearchParameters.forJournalEntries(officeId, offset, limit, orderBy, sortOrder);
final Page<JournalEntryData> glJournalEntries = this.journalEntryReadPlatformService.retrieveAll(searchParameters, glAccountId,
onlyManualEntries, fromDate, toDate, transactionId);
onlyManualEntries, fromDate, toDate, transactionId, entityType);
final ApiRequestJsonSerializationSettings settings = this.apiRequestParameterHelper.process(uriInfo.getQueryParameters());
return this.apiJsonSerializerService.serialize(settings, glJournalEntries, RESPONSE_DATA_PARAMETERS);
}
@@ -16,6 +16,6 @@ public interface JournalEntryReadPlatformService {
JournalEntryData retrieveGLJournalEntryById(long glJournalEntryId);
Page<JournalEntryData> retrieveAll(SearchParameters searchParameters, Long glAccountId, Boolean onlyManualEntries, Date fromDate,
Date toDate, String transactionId);
Date toDate, String transactionId, Integer entityType);
}
@@ -104,7 +104,7 @@ public class JournalEntryReadPlatformServiceImpl implements JournalEntryReadPlat
@Override
public Page<JournalEntryData> retrieveAll(final SearchParameters searchParameters, final Long glAccountId,
final Boolean onlyManualEntries, final Date fromDate, final Date toDate, final String transactionId) {
final Boolean onlyManualEntries, final Date fromDate, final Date toDate, final String transactionId, final Integer entityType) {
final StringBuilder sqlBuilder = new StringBuilder(200);
sqlBuilder.append("select SQL_CALC_FOUND_ROWS ");
@@ -118,6 +118,12 @@ public class JournalEntryReadPlatformServiceImpl implements JournalEntryReadPlat
objectArray[arrayPos] = transactionId;
arrayPos = arrayPos + 1;
}
if (entityType != null && entityType != 0 && (onlyManualEntries == null)) {
sqlBuilder.append(" and journalEntry.entity_type_enum = ?");
objectArray[arrayPos] = entityType;
arrayPos = arrayPos + 1;
}
if (searchParameters.isOfficeIdPassed()) {
sqlBuilder.append(" and journalEntry.office_id = ?");