refactoring additional fields for data scope

This commit is contained in:
John Woodlock
2012-08-30 19:05:49 +10:00
parent f09d781005
commit 508a46e537
@@ -310,14 +310,18 @@ public class ReadWriteNonCoreDataServiceImpl implements
}
}
// just updating fields that have changed since pre-update read - though
// its possible these values are different from the page the user was
// looking at and even different from the current db values (if some
// other update got in quick) - would need a version field for
// completeness but its okay to take this risk with additional fields
// data
for (String key : updatedColumns.keySet()) {
logger.info("Update Column: " + key + " - Value: " + updatedColumns.get(key));
logger.info("Update Column: " + key + " - Value: "
+ updatedColumns.get(key));
}
String pValueWrite = "";
String saveSql = "";
String singleQuote = "'";
@@ -326,8 +330,7 @@ public class ReadWriteNonCoreDataServiceImpl implements
boolean firstColumn = true;
saveSql = "update `" + fullSetName + "` ";
for (String key : keys) {
if (!(key.equalsIgnoreCase("id"))) {
for (String key : updatedColumns.keySet()) {
if (firstColumn) {
saveSql += " set ";
firstColumn = false;
@@ -335,20 +338,15 @@ public class ReadWriteNonCoreDataServiceImpl implements
saveSql += ", ";
}
pValue = queryParams.get(key);
if (pValue == null || pValue.equals("")) {
pValue = updatedColumns.get(key);
if (StringUtils.isEmpty(pValue)) {
pValueWrite = "null";
} else {
pValueWrite = singleQuote
+ genericDataService.replace(pValue,
singleQuote, singleQuote + singleQuote)
+ singleQuote;
}
saveSql += "`"
+ genericDataService
.replace(key, underscore, space) + "` = "
+ pValueWrite;
+ genericDataService.replace(pValue, singleQuote,
singleQuote + singleQuote) + singleQuote;
}
saveSql += "`" + key + "` = " + pValueWrite;
}
saveSql += " where id = " + id;
@@ -356,26 +354,20 @@ public class ReadWriteNonCoreDataServiceImpl implements
String insertColumns = "";
String selectColumns = "";
String columnName = "";
for (String key : keys) {
pValue = queryParams.get(key);
if (!(key.equalsIgnoreCase("id"))) {
for (String key : updatedColumns.keySet()) {
pValue = updatedColumns.get(key);
pValue = queryParams.get(key);
if (pValue == null || pValue.equals("")) {
if (StringUtils.isEmpty(pValue)) {
pValueWrite = "null";
} else {
pValueWrite = singleQuote
+ genericDataService.replace(pValue,
singleQuote, singleQuote + singleQuote)
+ singleQuote;
+ genericDataService.replace(pValue, singleQuote,
singleQuote + singleQuote) + singleQuote;
}
columnName = "`"
+ genericDataService
.replace(key, underscore, space) + "`";
columnName = "`" + key + "`";
insertColumns += ", " + columnName;
selectColumns += "," + pValueWrite + " as " + columnName;
}
}
saveSql = "insert into `" + fullSetName + "` (id" + insertColumns
+ ")" + " select " + id + " as id" + selectColumns;