-
Notifications
You must be signed in to change notification settings - Fork 52
Open
Description
//1、因为大多数情况表模型和业务模型是分开的需要转换,有以下类似的api使用就更方便了
//2、部分业务需要设置空值,但是现在api是不支持设置空值的,需要自己写xml或者全量更新
/**
* 设置更新字段为空
* @param fns
* @return
*/
@SafeVarargs
public final LambdaExampleWrapper<T> setNull(Fn<T, Object> ... fns) {
for (Fn<T, Object> fn : fns) {
this.example.set(fn.toColumn()+" = NULL ");
}
return this;
}
public <RE extends Serializable> List<RE> list(Class<RE> returnClass){
List<T> ts = list();
List<RE> res = BeanUtil.copys(ts, returnClass);
if(ts instanceof Page) {
Page<RE> pageRes = new Page<>();
pageRes.addAll(res);
pageRes.setTotal(((Page<T>) ts).getTotal());
//其他字段按需添加
return pageRes;
}
return res;
}
public <RE extends Serializable> RE one(Class<RE> returnClass){
T t = one();
if(t != null) {
return BeanUtil.copy(t, returnClass);
}
return null;
}
public <RE extends Serializable> List<RE> top(Integer limit,Class<RE> returnClass){
List<T> ts = top(limit);
List<RE> res = BeanUtil.copys(ts, returnClass);
return res;
}
public <RE extends Serializable> RE first(Class<RE> returnClass) {
T t = first();
if(t != null) {
return BeanUtil.copy(t, returnClass);
}
return null;
}
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels