feat: UpdateChain & UpdateWrapper set和setRaw增加 condition 判断方法.

This commit is contained in:
jerry_zheng 2023-08-07 23:04:58 +08:00 committed by Jerry Zheng
parent ebf6a073b8
commit 13fc7cf95d
2 changed files with 69 additions and 0 deletions

View File

@ -82,35 +82,62 @@ public class UpdateChain<T> extends QueryWrapperAdapter<UpdateChain<T>> {
return new UpdateChain<>(baseMapper); return new UpdateChain<>(baseMapper);
} }
public UpdateChain<T> set(String property, Object value, boolean condition) {
entityWrapper.set(property, value, condition);
return this;
}
public UpdateChain<T> set(String property, Object value) { public UpdateChain<T> set(String property, Object value) {
entityWrapper.set(property, value); entityWrapper.set(property, value);
return this; return this;
} }
public UpdateChain<T> set(LambdaGetter<T> getter, Object value, boolean condition) {
entityWrapper.set(getter, value, condition);
return this;
}
public UpdateChain<T> set(LambdaGetter<T> getter, Object value) { public UpdateChain<T> set(LambdaGetter<T> getter, Object value) {
entityWrapper.set(getter, value); entityWrapper.set(getter, value);
return this; return this;
} }
public UpdateChain<T> set(QueryColumn queryColumn, Object value, boolean condition) {
entityWrapper.set(queryColumn, value, condition);
return this;
}
public UpdateChain<T> set(QueryColumn queryColumn, Object value) { public UpdateChain<T> set(QueryColumn queryColumn, Object value) {
entityWrapper.set(queryColumn, value); entityWrapper.set(queryColumn, value);
return this; return this;
} }
public UpdateChain<T> setRaw(String property, Object value, boolean condition) {
entityWrapper.setRaw(property, value, condition);
return this;
}
public UpdateChain<T> setRaw(String property, Object value) { public UpdateChain<T> setRaw(String property, Object value) {
entityWrapper.setRaw(property, value); entityWrapper.setRaw(property, value);
return this; return this;
} }
public UpdateChain<T> setRaw(LambdaGetter<T> getter, Object value, boolean condition) {
entityWrapper.setRaw(getter, value, condition);
return this;
}
public UpdateChain<T> setRaw(LambdaGetter<T> getter, Object value) { public UpdateChain<T> setRaw(LambdaGetter<T> getter, Object value) {
entityWrapper.setRaw(getter, value); entityWrapper.setRaw(getter, value);
return this; return this;
} }
public UpdateChain<T> setRaw(QueryColumn queryColumn, Object value, boolean condition) {
entityWrapper.setRaw(queryColumn, value, condition);
return this;
}
public UpdateChain<T> setRaw(QueryColumn queryColumn, Object value) { public UpdateChain<T> setRaw(QueryColumn queryColumn, Object value) {
entityWrapper.set(queryColumn, value); entityWrapper.set(queryColumn, value);
return this; return this;

View File

@ -36,6 +36,12 @@ public interface UpdateWrapper extends Serializable {
return handler.getUpdates(); return handler.getUpdates();
} }
default UpdateWrapper set(String property, Object value, boolean condition) {
if (condition) {
return set(property, value);
}
return this;
}
default UpdateWrapper set(String property, Object value) { default UpdateWrapper set(String property, Object value) {
if (value instanceof QueryWrapper || value instanceof QueryCondition || value instanceof QueryColumn) { if (value instanceof QueryWrapper || value instanceof QueryCondition || value instanceof QueryColumn) {
@ -46,6 +52,12 @@ public interface UpdateWrapper extends Serializable {
return this; return this;
} }
default <T> UpdateWrapper set(LambdaGetter<T> getter, Object value, boolean condition) {
if (condition) {
return set(getter, value);
}
return this;
}
default <T> UpdateWrapper set(LambdaGetter<T> getter, Object value) { default <T> UpdateWrapper set(LambdaGetter<T> getter, Object value) {
if (value instanceof QueryWrapper || value instanceof QueryCondition || value instanceof QueryColumn) { if (value instanceof QueryWrapper || value instanceof QueryCondition || value instanceof QueryColumn) {
@ -57,6 +69,12 @@ public interface UpdateWrapper extends Serializable {
return this; return this;
} }
default <T> UpdateWrapper set(QueryColumn queryColumn, Object value, boolean condition) {
if (condition) {
return set(queryColumn, value);
}
return this;
}
default <T> UpdateWrapper set(QueryColumn queryColumn, Object value) { default <T> UpdateWrapper set(QueryColumn queryColumn, Object value) {
if (value instanceof QueryWrapper || value instanceof QueryCondition || value instanceof QueryColumn) { if (value instanceof QueryWrapper || value instanceof QueryCondition || value instanceof QueryColumn) {
@ -67,17 +85,41 @@ public interface UpdateWrapper extends Serializable {
return this; return this;
} }
default UpdateWrapper setRaw(String property, Object value, boolean condition) {
if (condition) {
return setRaw(property, value);
}
return this;
}
default UpdateWrapper setRaw(String property, Object value) { default UpdateWrapper setRaw(String property, Object value) {
getUpdates().put(property, new RawValue(value)); getUpdates().put(property, new RawValue(value));
return this; return this;
} }
default <T> UpdateWrapper setRaw(LambdaGetter<T> getter, Object value, boolean condition) {
if (condition) {
return setRaw(getter, value);
}
return this;
}
default <T> UpdateWrapper setRaw(LambdaGetter<T> getter, Object value) { default <T> UpdateWrapper setRaw(LambdaGetter<T> getter, Object value) {
getUpdates().put(LambdaUtil.getFieldName(getter), new RawValue(value)); getUpdates().put(LambdaUtil.getFieldName(getter), new RawValue(value));
return this; return this;
} }
default <T> UpdateWrapper setRaw(QueryColumn queryColumn, Object value, boolean condition) {
if (condition) {
return setRaw(queryColumn, value);
}
return this;
}
default <T> UpdateWrapper setRaw(QueryColumn queryColumn, Object value) { default <T> UpdateWrapper setRaw(QueryColumn queryColumn, Object value) {
getUpdates().put(queryColumn.getName(), new RawValue(value)); getUpdates().put(queryColumn.getName(), new RawValue(value));
return this; return this;