|
@@ -5,13 +5,10 @@ import ${packageName}.data.I${ClassName}Data;
|
|
import ${packageName}.data.model.Tb${ClassName};
|
|
import ${packageName}.data.model.Tb${ClassName};
|
|
import ${packageName}.model.${ClassName};
|
|
import ${packageName}.model.${ClassName};
|
|
import java.util.List;
|
|
import java.util.List;
|
|
-import com.querydsl.core.QueryResults;
|
|
|
|
import com.querydsl.core.types.Predicate;
|
|
import com.querydsl.core.types.Predicate;
|
|
-import com.querydsl.core.types.Projections;
|
|
|
|
import com.querydsl.jpa.impl.JPAQueryFactory;
|
|
import com.querydsl.jpa.impl.JPAQueryFactory;
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.RequiredArgsConstructor;
|
|
import org.springframework.context.annotation.Primary;
|
|
import org.springframework.context.annotation.Primary;
|
|
-import org.springframework.data.jpa.repository.JpaRepository;
|
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
import cc.iotkit.data.util.PredicateBuilder;
|
|
import cc.iotkit.data.util.PredicateBuilder;
|
|
|
|
|
|
@@ -19,6 +16,11 @@ import cc.iotkit.common.api.PageRequest;
|
|
import cc.iotkit.common.api.Paging;
|
|
import cc.iotkit.common.api.Paging;
|
|
import cc.iotkit.common.utils.StringUtils;
|
|
import cc.iotkit.common.utils.StringUtils;
|
|
import java.util.Collection;
|
|
import java.util.Collection;
|
|
|
|
+import java.util.Objects;
|
|
|
|
+import java.util.Optional;
|
|
|
|
+import com.google.common.collect.Lists;
|
|
|
|
+
|
|
|
|
+
|
|
import cc.iotkit.common.utils.MapstructUtils;
|
|
import cc.iotkit.common.utils.MapstructUtils;
|
|
import cc.iotkit.data.util.PageBuilder;
|
|
import cc.iotkit.data.util.PageBuilder;
|
|
|
|
|
|
@@ -46,33 +48,35 @@ public class ${ClassName}DataImpl implements I${ClassName}Data {
|
|
|
|
|
|
private Predicate buildQueryCondition(${ClassName} bo) {
|
|
private Predicate buildQueryCondition(${ClassName} bo) {
|
|
PredicateBuilder builder = PredicateBuilder.instance();
|
|
PredicateBuilder builder = PredicateBuilder.instance();
|
|
-
|
|
|
|
- #foreach($column in $columns)
|
|
|
|
- #if($column.query)
|
|
|
|
- #set($queryType=$column.queryType)
|
|
|
|
- #set($javaField=$column.javaField)
|
|
|
|
- #set($javaType=$column.javaType)
|
|
|
|
- #set($columnName=$column.columnName)
|
|
|
|
- #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
|
|
|
|
- #if($queryType != 'BETWEEN')
|
|
|
|
- #if($javaType == 'String')
|
|
|
|
- #set($condition='StringUtils.isNotBlank(bo.get'+$AttrName+'())')
|
|
|
|
|
|
+ if(Objects.nonNull(bo)) {
|
|
|
|
+
|
|
|
|
+ #foreach($column in $columns)
|
|
|
|
+ #if($column.query)
|
|
|
|
+ #set($queryType=$column.queryType)
|
|
|
|
+ #set($javaField=$column.javaField)
|
|
|
|
+ #set($javaType=$column.javaType)
|
|
|
|
+ #set($columnName=$column.columnName)
|
|
|
|
+ #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
|
|
|
|
+ #if($queryType != 'BETWEEN')
|
|
|
|
+ #if($javaType == 'String')
|
|
|
|
+ #set($condition='StringUtils.isNotBlank(bo.get'+$AttrName+'())')
|
|
|
|
+ #else
|
|
|
|
+ #set($condition='bo.get'+$AttrName+'() != null')
|
|
|
|
+ #end
|
|
|
|
+ builder.and($condition, () -> tb${ClassName}.${javaField}.eq(bo.get${AttrName}()));
|
|
#else
|
|
#else
|
|
- #set($condition='bo.get'+$AttrName+'() != null')
|
|
|
|
|
|
+ builder.and(params.get("begin$AttrName") != null && params.get("end$AttrName") != null,
|
|
|
|
+ () -> tb${ClassName}.${javaField}.bettwen(params.get("begin$AttrName"), params.get("end$AttrName")));
|
|
#end
|
|
#end
|
|
- builder.and($condition, ()->tb${ClassName}.${javaField}.eq(bo.get${AttrName}()));
|
|
|
|
- #else
|
|
|
|
- builder.and(params.get("begin$AttrName") != null && params.get("end$AttrName") != null,
|
|
|
|
- ()->tb${ClassName}.${javaField}.bettwen(params.get("begin$AttrName"), params.get("end$AttrName")));
|
|
|
|
#end
|
|
#end
|
|
#end
|
|
#end
|
|
- #end
|
|
|
|
|
|
+ }
|
|
return builder.build();
|
|
return builder.build();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public List<${ClassName}> findByIds(Collection<Long> id) {
|
|
|
|
- List allById = baseRepository.findAllById(id);
|
|
|
|
|
|
+ public List<${ClassName}> findByIds(Collection<Long> ids) {
|
|
|
|
+ List<Tb${ClassName}> allById = baseRepository.findAllById(ids);
|
|
return MapstructUtils.convert(allById, ${ClassName}.class);
|
|
return MapstructUtils.convert(allById, ${ClassName}.class);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -100,8 +104,7 @@ public class ${ClassName}DataImpl implements I${ClassName}Data {
|
|
@Override
|
|
@Override
|
|
public ${ClassName} findById(Long id) {
|
|
public ${ClassName} findById(Long id) {
|
|
Tb${ClassName} ret = jpaQueryFactory.select(tb${ClassName}).from(tb${ClassName}).where(tb${ClassName}.id.eq(id)).fetchOne();
|
|
Tb${ClassName} ret = jpaQueryFactory.select(tb${ClassName}).from(tb${ClassName}).where(tb${ClassName}.id.eq(id)).fetchOne();
|
|
- ${ClassName} convert = MapstructUtils.convert(ret, ${ClassName}.class);
|
|
|
|
- return convert;
|
|
|
|
|
|
+ return MapstructUtils.convert(ret, ${ClassName}.class);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|