feat(X-Pack): 数据填报更新数据支持字段置空
This commit is contained in:
parent
76903a2328
commit
85cae1a240
@ -333,18 +333,18 @@ public class DataFillDataService {
|
|||||||
if (StringUtils.equalsIgnoreCase(field.getType(), "dateRange")) {
|
if (StringUtils.equalsIgnoreCase(field.getType(), "dateRange")) {
|
||||||
String name1 = field.getSettings().getMapping().getColumnName1();
|
String name1 = field.getSettings().getMapping().getColumnName1();
|
||||||
String name2 = field.getSettings().getMapping().getColumnName2();
|
String name2 = field.getSettings().getMapping().getColumnName2();
|
||||||
if (tableFieldMap.containsKey(name1) && data.containsKey(name1) && data.get(name1) != null) {
|
if (tableFieldMap.containsKey(name1)) {
|
||||||
DatasourceRequest.TableFieldWithValue value1 = new DatasourceRequest.TableFieldWithValue()
|
DatasourceRequest.TableFieldWithValue value1 = new DatasourceRequest.TableFieldWithValue()
|
||||||
.setValue(new java.sql.Date((long) data.get(name1)))
|
.setValue(data.get(name1) != null ? new java.sql.Date((long) data.get(name1)) : null)
|
||||||
.setFiledName(name1)
|
.setFiledName(name1)
|
||||||
.setTypeName(tableFieldMap.get(name1).getFieldType())
|
.setTypeName(tableFieldMap.get(name1).getFieldType())
|
||||||
.setType(tableFieldMap.get(name1).getType());
|
.setType(tableFieldMap.get(name1).getType());
|
||||||
searchFields.add(value1);
|
searchFields.add(value1);
|
||||||
extTableFields.put(name1, field);
|
extTableFields.put(name1, field);
|
||||||
}
|
}
|
||||||
if (tableFieldMap.containsKey(name2) && data.containsKey(name2) && data.get(name2) != null) {
|
if (tableFieldMap.containsKey(name2)) {
|
||||||
DatasourceRequest.TableFieldWithValue value2 = new DatasourceRequest.TableFieldWithValue()
|
DatasourceRequest.TableFieldWithValue value2 = new DatasourceRequest.TableFieldWithValue()
|
||||||
.setValue(new java.sql.Date((long) data.get(name2)))
|
.setValue(data.get(name2) != null ? new java.sql.Date((long) data.get(name2)) : null)
|
||||||
.setFiledName(name2)
|
.setFiledName(name2)
|
||||||
.setTypeName(tableFieldMap.get(name2).getFieldType())
|
.setTypeName(tableFieldMap.get(name2).getFieldType())
|
||||||
.setType(tableFieldMap.get(name2).getType());
|
.setType(tableFieldMap.get(name2).getType());
|
||||||
@ -353,7 +353,7 @@ public class DataFillDataService {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
String name = field.getSettings().getMapping().getColumnName();
|
String name = field.getSettings().getMapping().getColumnName();
|
||||||
if (tableFieldMap.containsKey(name) && data.containsKey(name) && data.get(name) != null) {
|
if (tableFieldMap.containsKey(name)) {
|
||||||
DatasourceRequest.TableFieldWithValue value = new DatasourceRequest.TableFieldWithValue()
|
DatasourceRequest.TableFieldWithValue value = new DatasourceRequest.TableFieldWithValue()
|
||||||
.setValue(data.get(name))
|
.setValue(data.get(name))
|
||||||
.setFiledName(name)
|
.setFiledName(name)
|
||||||
@ -361,14 +361,14 @@ public class DataFillDataService {
|
|||||||
.setType(tableFieldMap.get(name).getType());
|
.setType(tableFieldMap.get(name).getType());
|
||||||
|
|
||||||
if (StringUtils.equalsIgnoreCase(field.getType(), "date")) {
|
if (StringUtils.equalsIgnoreCase(field.getType(), "date")) {
|
||||||
value.setValue(new java.sql.Date((long) data.get(name)));
|
value.setValue(data.get(name) != null ? new java.sql.Date((long) data.get(name)) : null);
|
||||||
}
|
}
|
||||||
searchFields.add(value);
|
searchFields.add(value);
|
||||||
|
|
||||||
extTableFields.put(name, field);
|
extTableFields.put(name, field);
|
||||||
|
|
||||||
// 关于unique的字段判断
|
// 关于unique的字段判断
|
||||||
if (field.getSettings().isUnique()) {
|
if (field.getSettings().isUnique() && data.get(name) != null) {
|
||||||
|
|
||||||
uniqueFields.add(value);
|
uniqueFields.add(value);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user