|
|
@@ -1936,8 +1936,8 @@ public class OnlCgformHeadServiceImpl extends ServiceImpl<OnlCgformHeadMapper, O
|
|
|
|
|
|
while(true) {
|
|
|
List<OnlCgformField> dbCgformFieldList;
|
|
|
- String var13;
|
|
|
- ArrayList<String> var19;
|
|
|
+// String var13;
|
|
|
+ ArrayList<String> oldFieldNameList;
|
|
|
label108:
|
|
|
do {
|
|
|
while(cgformHeadIterator.hasNext()) {
|
|
|
@@ -1947,23 +1947,28 @@ public class OnlCgformHeadServiceImpl extends ServiceImpl<OnlCgformHeadMapper, O
|
|
|
|
|
|
if (dbCgformFieldList != null && dbCgformFieldList.size() != 0) {
|
|
|
// 数据库字段map
|
|
|
- Map<String, Integer> dbFieldMap = new HashMap<>();
|
|
|
+ Map<String, Integer> dbFieldNameMap = new HashMap<>();
|
|
|
|
|
|
for (OnlCgformField dbCgformField : dbCgformFieldList) {
|
|
|
- dbFieldMap.put(dbCgformField.getDbFieldName(), 1);
|
|
|
+ dbFieldNameMap.put(dbCgformField.getDbFieldName(), 1);
|
|
|
}
|
|
|
|
|
|
// 参数字段map
|
|
|
- Map<String, Integer> fieldMap = new HashMap<>();
|
|
|
- Iterator<OnlCgformField> cgformFieldIterator = cgformFieldList.iterator();
|
|
|
+ Map<String, Integer> fieldNameMap = new HashMap<>();
|
|
|
+// Iterator<OnlCgformField> cgformFieldIterator = cgformFieldList.iterator();
|
|
|
+//
|
|
|
+// while(cgformFieldIterator.hasNext()) {
|
|
|
+// OnlCgformField cgformField = cgformFieldIterator.next();
|
|
|
+// fieldNameMap.put(cgformField.getDbFieldName(), 1);
|
|
|
+// }
|
|
|
|
|
|
- while(cgformFieldIterator.hasNext()) {
|
|
|
- OnlCgformField cgformField = cgformFieldIterator.next();
|
|
|
- fieldMap.put(cgformField.getDbFieldName(), 1);
|
|
|
+ for (OnlCgformField cgformField : cgformFieldList) {
|
|
|
+ fieldNameMap.put(cgformField.getDbFieldName(), 1);
|
|
|
}
|
|
|
|
|
|
- var19 = new ArrayList<>();
|
|
|
- List<String> var20 = new ArrayList<>();
|
|
|
+
|
|
|
+ oldFieldNameList = new ArrayList<>();
|
|
|
+ List<String> newFieldNameList = new ArrayList<>();
|
|
|
// Iterator<String> keyIterator = fieldMap.keySet().iterator();
|
|
|
//
|
|
|
// while(keyIterator.hasNext()) {
|
|
|
@@ -1975,47 +1980,62 @@ public class OnlCgformHeadServiceImpl extends ServiceImpl<OnlCgformHeadMapper, O
|
|
|
// }
|
|
|
// }
|
|
|
|
|
|
- for (String fieldKey : fieldMap.keySet()) {
|
|
|
- if (dbFieldMap.get(fieldKey) == null) {
|
|
|
- var20.add(fieldKey);
|
|
|
+ for (String fieldName : fieldNameMap.keySet()) {
|
|
|
+ if (dbFieldNameMap.get(fieldName) == null) {
|
|
|
+ newFieldNameList.add(fieldName);
|
|
|
} else {
|
|
|
- var19.add(fieldKey);
|
|
|
+ oldFieldNameList.add(fieldName);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
- List<String> dbFieldList = new ArrayList<>();
|
|
|
+ List<String> removeFieldList = new ArrayList<>();
|
|
|
|
|
|
- for (String dbField : dbFieldMap.keySet()) {
|
|
|
- if (fieldMap.get(dbField) == null) {
|
|
|
- dbFieldList.add(dbField);
|
|
|
+ for (String dbField : dbFieldNameMap.keySet()) {
|
|
|
+ if (fieldNameMap.get(dbField) == null) {
|
|
|
+ removeFieldList.add(dbField);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- OnlCgformField var23;
|
|
|
- if (dbFieldList.size() > 0) {
|
|
|
- Iterator<OnlCgformField> var22 = dbCgformFieldList.iterator();
|
|
|
-
|
|
|
- while(var22.hasNext()) {
|
|
|
- var23 = var22.next();
|
|
|
- if (dbFieldList.contains(var23.getDbFieldName())) {
|
|
|
- this.fieldService.removeById(var23.getId());
|
|
|
+// OnlCgformField var23;
|
|
|
+ if (removeFieldList.size() > 0) {
|
|
|
+// Iterator<OnlCgformField> var22 = dbCgformFieldList.iterator();
|
|
|
+//
|
|
|
+// while(var22.hasNext()) {
|
|
|
+// var23 = var22.next();
|
|
|
+// if (removeFieldList.contains(var23.getDbFieldName())) {
|
|
|
+// this.fieldService.removeById(var23.getId());
|
|
|
+// }
|
|
|
+// }
|
|
|
+ for (OnlCgformField cgformField : dbCgformFieldList) {
|
|
|
+ if (removeFieldList.contains(cgformField.getDbFieldName())) {
|
|
|
+ this.fieldService.removeById(cgformField.getId());
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (var20.size() > 0) {
|
|
|
- Iterator<OnlCgformField> var22 = cgformFieldList.iterator();
|
|
|
+ if (newFieldNameList.size() > 0) {
|
|
|
+// Iterator<OnlCgformField> var22 = cgformFieldList.iterator();
|
|
|
+//
|
|
|
+// while(var22.hasNext()) {
|
|
|
+// OnlCgformField var23 = (OnlCgformField)var22.next();
|
|
|
+// if (newFieldNameList.contains(var23.getDbFieldName())) {
|
|
|
+// OnlCgformField var14 = new OnlCgformField();
|
|
|
+// var14.setCgformHeadId(dbCgformHead.getId());
|
|
|
+// this.copyField(var23, var14);
|
|
|
+// this.fieldService.save(var14);
|
|
|
+// }
|
|
|
+// }
|
|
|
|
|
|
- while(var22.hasNext()) {
|
|
|
- var23 = (OnlCgformField)var22.next();
|
|
|
- if (var20.contains(var23.getDbFieldName())) {
|
|
|
- OnlCgformField var14 = new OnlCgformField();
|
|
|
- var14.setCgformHeadId(dbCgformHead.getId());
|
|
|
- this.copyField(var23, var14);
|
|
|
- this.fieldService.save(var14);
|
|
|
+ for (OnlCgformField cgformField : cgformFieldList) {
|
|
|
+ if (newFieldNameList.contains(cgformField.getDbFieldName())) {
|
|
|
+ OnlCgformField newFormField = new OnlCgformField();
|
|
|
+ newFormField.setCgformHeadId(dbCgformHead.getId());
|
|
|
+ this.copyField(cgformField, newFormField);
|
|
|
+ this.fieldService.save(newFormField);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
continue label108;
|
|
|
}
|
|
|
@@ -2030,63 +2050,85 @@ public class OnlCgformHeadServiceImpl extends ServiceImpl<OnlCgformHeadMapper, O
|
|
|
}
|
|
|
|
|
|
return;
|
|
|
- } while(var19.size() <= 0);
|
|
|
+ } while(oldFieldNameList.size() <= 0);
|
|
|
|
|
|
- Iterator<String> var22 = var19.iterator();
|
|
|
+// Iterator<String> var22 = var19.iterator();
|
|
|
+//
|
|
|
+// while(var22.hasNext()) {
|
|
|
+// var13 = var22.next();
|
|
|
+// this.b(var13, cgformFieldList, dbCgformFieldList);
|
|
|
+// }
|
|
|
|
|
|
- while(var22.hasNext()) {
|
|
|
- var13 = (String)var22.next();
|
|
|
- this.b(var13, cgformFieldList, dbCgformFieldList);
|
|
|
+ for (String oldFieldName : oldFieldNameList) {
|
|
|
+ this.updateOldField(oldFieldName, cgformFieldList, dbCgformFieldList);
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private void b(String var1, List<OnlCgformField> var2, List<OnlCgformField> var3) {
|
|
|
- OnlCgformField var4 = null;
|
|
|
- Iterator var5 = var2.iterator();
|
|
|
-
|
|
|
- while(var5.hasNext()) {
|
|
|
- OnlCgformField var6 = (OnlCgformField)var5.next();
|
|
|
- if (var1.equals(var6.getDbFieldName())) {
|
|
|
- var4 = var6;
|
|
|
+ /**
|
|
|
+ * 更新已存在字段
|
|
|
+ *
|
|
|
+ * @param oldFieldName 字段名称
|
|
|
+ * @param cgformFieldList 表单中的字段列表
|
|
|
+ * @param dbCgformFieldList 数据库中字段列表
|
|
|
+ */
|
|
|
+ private void updateOldField(String oldFieldName, List<OnlCgformField> cgformFieldList, List<OnlCgformField> dbCgformFieldList) {
|
|
|
+ OnlCgformField newFormField = null;
|
|
|
+// Iterator var5 = cgformFieldList.iterator();
|
|
|
+//
|
|
|
+// while(var5.hasNext()) {
|
|
|
+// OnlCgformField var6 = (OnlCgformField)var5.next();
|
|
|
+// if (oldFieldName.equals(var6.getDbFieldName())) {
|
|
|
+// cgformField = var6;
|
|
|
+// }
|
|
|
+// }
|
|
|
+ for (OnlCgformField cgformField : cgformFieldList) {
|
|
|
+ if (oldFieldName.equals(cgformField.getDbFieldName())) {
|
|
|
+ newFormField = cgformField;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- OnlCgformField var8 = null;
|
|
|
- Iterator var9 = var3.iterator();
|
|
|
-
|
|
|
- while(var9.hasNext()) {
|
|
|
- OnlCgformField var7 = (OnlCgformField)var9.next();
|
|
|
- if (var1.equals(var7.getDbFieldName())) {
|
|
|
- var8 = var7;
|
|
|
+ OnlCgformField oldFormField = null;
|
|
|
+// Iterator var9 = dbCgformFieldList.iterator();
|
|
|
+//
|
|
|
+// while(var9.hasNext()) {
|
|
|
+// OnlCgformField dbFormField = (OnlCgformField)var9.next();
|
|
|
+// if (oldFieldName.equals(dbFormField.getDbFieldName())) {
|
|
|
+// oldFormField = dbFormField;
|
|
|
+// }
|
|
|
+// }
|
|
|
+ for (OnlCgformField dbFormField : dbCgformFieldList) {
|
|
|
+ if (oldFieldName.equals(dbFormField.getDbFieldName())) {
|
|
|
+ oldFormField = dbFormField;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (var4 != null && var8 != null) {
|
|
|
- boolean var10 = false;
|
|
|
- if (!var4.getDbType().equals(var8.getDbType())) {
|
|
|
- var8.setDbType(var4.getDbType());
|
|
|
- var10 = true;
|
|
|
+ if (newFormField != null && oldFormField != null) {
|
|
|
+ boolean isUpdated = false;
|
|
|
+ if (!Objects.equals(newFormField.getDbType(), oldFormField.getDbType())) {
|
|
|
+ oldFormField.setDbType(newFormField.getDbType());
|
|
|
+ isUpdated = true;
|
|
|
}
|
|
|
|
|
|
- if (!var4.getDbDefaultVal().equals(var8.getDbDefaultVal())) {
|
|
|
- var8.setDbDefaultVal(var4.getDbDefaultVal());
|
|
|
- var10 = true;
|
|
|
+ if (!Objects.equals(newFormField.getDbDefaultVal(), oldFormField.getDbDefaultVal())) {
|
|
|
+ oldFormField.setDbDefaultVal(newFormField.getDbDefaultVal());
|
|
|
+ isUpdated = true;
|
|
|
}
|
|
|
|
|
|
- if (var4.getDbLength() != var8.getDbLength()) {
|
|
|
- var8.setDbLength(var4.getDbLength());
|
|
|
- var10 = true;
|
|
|
+ if (!Objects.equals(newFormField.getDbLength(), oldFormField.getDbLength())) {
|
|
|
+ oldFormField.setDbLength(newFormField.getDbLength());
|
|
|
+ isUpdated = true;
|
|
|
}
|
|
|
|
|
|
- if (var4.getDbIsNull() != var8.getDbIsNull()) {
|
|
|
- var8.setDbIsNull(var4.getDbIsNull());
|
|
|
- var10 = true;
|
|
|
+ if (!Objects.equals(newFormField.getDbIsNull(), oldFormField.getDbIsNull())) {
|
|
|
+ oldFormField.setDbIsNull(newFormField.getDbIsNull());
|
|
|
+ isUpdated = true;
|
|
|
}
|
|
|
|
|
|
- if (var10) {
|
|
|
- this.fieldService.updateById(var8);
|
|
|
+ if (isUpdated) {
|
|
|
+ this.fieldService.updateById(oldFormField);
|
|
|
}
|
|
|
}
|
|
|
|