ColumnNode

This commit is contained in:
redkale
2023-11-17 23:03:13 +08:00
parent b29dedbb79
commit 02b24953ea
6 changed files with 25 additions and 25 deletions

View File

@@ -1702,11 +1702,11 @@ public abstract class AbstractDataSqlSource extends AbstractDataSource implement
setsql.append(", ");
}
String sqlColumn = info.getSQLColumn(null, col.getColumn());
if (col.getValue2() instanceof ColumnBytesNode) {
if (col.getValue() instanceof ColumnBytesNode) {
if (blobs == null) {
blobs = new ArrayList<>();
}
blobs.add(((ColumnBytesNode) col.getValue2()).getValue());
blobs.add(((ColumnBytesNode) col.getValue()).getValue());
setsql.append(sqlColumn).append("=").append(prepareParamSign(++index));
} else {
setsql.append(sqlColumn).append("=").append(info.formatSQLValue(sqlColumn, attr, col, sqlFormatter));
@@ -1787,11 +1787,11 @@ public abstract class AbstractDataSqlSource extends AbstractDataSource implement
setsql.append(", ");
}
String sqlColumn = info.getSQLColumn(alias, col.getColumn());
if (col.getValue2() instanceof ColumnBytesNode) {
if (col.getValue() instanceof ColumnBytesNode) {
if (blobs == null) {
blobs = new ArrayList<>();
}
blobs.add(((ColumnBytesNode) col.getValue2()).getValue());
blobs.add(((ColumnBytesNode) col.getValue()).getValue());
setsql.append(sqlColumn).append("=").append(prepareParamSign(++index));
} else {
setsql.append(sqlColumn).append("=").append(info.formatSQLValue(sqlColumn, attr, col, sqlFormatter));

View File

@@ -144,7 +144,7 @@ public class ColumnExpNode implements ColumnNode {
return this;
}
public ColumnNode getLeft2() {
public ColumnNode getLeft() {
return left;
}
@@ -160,7 +160,7 @@ public class ColumnExpNode implements ColumnNode {
this.express = express;
}
public ColumnNode getRight2() {
public ColumnNode getRight() {
return right;
}

View File

@@ -83,7 +83,7 @@ public class ColumnFuncNode implements ColumnNode {
this.func = func;
}
public ColumnNode getValue2() {
public ColumnNode getValue() {
return value;
}

View File

@@ -13,7 +13,7 @@ import org.redkale.util.*;
/**
* ColumnValue主要用于多个字段更新的表达式。
* value值一般为:ColumnExpNode、ColumnFuncNode、ColumnNameNode、ColumnNumberNode、ColumnStringNode、ColumnBytesNode <br>
* value值为:ColumnExpNode、ColumnFuncNode、ColumnNameNode、ColumnNumberNode、ColumnStringNode、ColumnBytesNode <br>
* 用于 DataSource.updateColumn 方法 <br>
*
* <p>
@@ -477,7 +477,7 @@ public class ColumnValue {
this.express = express;
}
public ColumnNode getValue2() {
public ColumnNode getValue() {
return value;
}

View File

@@ -545,16 +545,16 @@ public final class EntityCache<T> {
}
private Number queryColumnFuncNodeNumber(final List<T> list, final ColumnFuncNode funcNode) {
if (funcNode.getValue2() instanceof ColumnNameNode) {
final Attribute<T, Serializable> attr = info.getAttribute(((ColumnNameNode) funcNode.getValue2()).getColumn());
if (funcNode.getValue() instanceof ColumnNameNode) {
final Attribute<T, Serializable> attr = info.getAttribute(((ColumnNameNode) funcNode.getValue()).getColumn());
final Function<T, Number> attrFunc = x -> (Number) attr.get(x);
return getNumberResult(list, funcNode.getFunc(), null, attr.type(), attrFunc, (FilterNode) null);
}
Number num = null;
if (funcNode.getValue2() instanceof ColumnFuncNode) {
num = queryColumnFuncNodeNumber(list, (ColumnFuncNode) funcNode.getValue2());
} else if (funcNode.getValue2() instanceof ColumnExpNode) {
num = queryColumnExpNodeNumber(list, (ColumnExpNode) funcNode.getValue2());
if (funcNode.getValue() instanceof ColumnFuncNode) {
num = queryColumnFuncNodeNumber(list, (ColumnFuncNode) funcNode.getValue());
} else if (funcNode.getValue() instanceof ColumnExpNode) {
num = queryColumnExpNodeNumber(list, (ColumnExpNode) funcNode.getValue());
}
return num;
}
@@ -902,7 +902,7 @@ public final class EntityCache<T> {
try {
for (int i = 0; i < attrs.size(); i++) {
ColumnValue cv = values.get(i);
updateColumn(attrs.get(i), rs, cv.getExpress(), cv.getValue2());
updateColumn(attrs.get(i), rs, cv.getExpress(), cv.getValue());
}
} finally {
tableLock.unlock();
@@ -928,7 +928,7 @@ public final class EntityCache<T> {
for (T rs : rms) {
for (int i = 0; i < attrs.size(); i++) {
ColumnValue cv = values.get(i);
updateColumn(attrs.get(i), rs, cv.getExpress(), cv.getValue2());
updateColumn(attrs.get(i), rs, cv.getExpress(), cv.getValue());
}
}
} finally {
@@ -1064,7 +1064,7 @@ public final class EntityCache<T> {
private <V> Serializable updateColumnExpNode(Attribute<T, V> attr, final T entity, ColumnExpNode node) {
Serializable leftVal = null;
ColumnNode leftNode = node.getLeft2();
ColumnNode leftNode = node.getLeft();
//类型只能是ColumnNameNode、ColumnNumberNode、ColumnExpNode
if (leftNode instanceof ColumnNameNode) {
leftVal = info.getUpdateAttribute(leftNode.toString()).get(entity);
@@ -1078,7 +1078,7 @@ public final class EntityCache<T> {
}
Serializable rightVal = null;
ColumnNode rightNode = node.getRight2();
ColumnNode rightNode = node.getRight();
//类型只能是ColumnNameNode、ColumnNumberNode、ColumnExpNode
if (rightNode instanceof ColumnNameNode) {
rightVal = info.getUpdateAttribute(rightNode.toString()).get(entity);

View File

@@ -1512,7 +1512,7 @@ public final class EntityInfo<T> {
return null;
}
//ColumnExpNode、ColumnFuncNode、ColumnNameNode、ColumnNumberNode、ColumnStringNode
ColumnNode node = cv.getValue2();
ColumnNode node = cv.getValue();
//ColumnExpNode时 cv.getExpress() == ColumnExpress.MOV 只用于updateColumn
if (node instanceof ColumnExpNode) {
return formatColumnExpNodeSQLValue(attr, null, (ColumnExpNode) node, formatter);
@@ -1551,16 +1551,16 @@ public final class EntityInfo<T> {
}
protected CharSequence formatColumnFuncNodeSQLValue(Attribute<T, Serializable> attr, String tabalis, final ColumnFuncNode node, BiFunction<EntityInfo, Object, CharSequence> formatter) {
if (node.getValue2() instanceof ColumnExpNode) {
return node.getFunc().getColumn(formatColumnExpNodeSQLValue(attr, tabalis, (ColumnExpNode) node.getValue2(), formatter).toString());
if (node.getValue() instanceof ColumnExpNode) {
return node.getFunc().getColumn(formatColumnExpNodeSQLValue(attr, tabalis, (ColumnExpNode) node.getValue(), formatter).toString());
} else {
return node.getFunc().getColumn(formatColumnNameNodeSQLValue(attr, tabalis, (ColumnNameNode) node.getValue2(), formatter).toString());
return node.getFunc().getColumn(formatColumnNameNodeSQLValue(attr, tabalis, (ColumnNameNode) node.getValue(), formatter).toString());
}
}
protected CharSequence formatColumnExpNodeSQLValue(Attribute<T, Serializable> attr, String tabalis, final ColumnExpNode node, BiFunction<EntityInfo, Object, CharSequence> formatter) {
CharSequence leftVal = null;
ColumnNode leftNode = node.getLeft2();
ColumnNode leftNode = node.getLeft();
if (leftNode instanceof ColumnNameNode) {
leftVal = formatColumnNameNodeSQLValue(attr, tabalis, (ColumnNameNode) leftNode, formatter);
} else if (leftNode instanceof ColumnStringNode) {
@@ -1576,7 +1576,7 @@ public final class EntityInfo<T> {
return leftVal;
}
CharSequence rightVal = null;
ColumnNode rightNode = node.getRight2();
ColumnNode rightNode = node.getRight();
if (rightNode instanceof ColumnNameNode) {
rightVal = formatColumnNameNodeSQLValue(attr, tabalis, (ColumnNameNode) rightNode, formatter);
} else if (rightNode instanceof ColumnStringNode) {