diff --git a/pom.xml b/pom.xml
index c932c3c1..94022ba3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -48,8 +48,9 @@
- org.springframework.boot
- spring-boot-starter-data-jpa
+ javax.persistence
+ persistence-api
+ 1.0.2
org.springframework.boot
@@ -64,6 +65,11 @@
org.springframework.boot
spring-boot-starter-security
+
+
+ org.springframework.boot
+ spring-boot-starter-aop
+
org.springframework.boot
diff --git a/yshop-common/src/main/java/co/yixiang/enums/OrderInfoEnum.java b/yshop-common/src/main/java/co/yixiang/enums/OrderInfoEnum.java
index cee72acc..a5c8c0fd 100644
--- a/yshop-common/src/main/java/co/yixiang/enums/OrderInfoEnum.java
+++ b/yshop-common/src/main/java/co/yixiang/enums/OrderInfoEnum.java
@@ -7,8 +7,6 @@ package co.yixiang.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
-
-import javax.persistence.criteria.CriteriaBuilder;
import java.util.stream.Stream;
/**
diff --git a/yshop-common/src/main/java/co/yixiang/utils/QueryHelp.java b/yshop-common/src/main/java/co/yixiang/utils/QueryHelp.java
deleted file mode 100644
index c986b094..00000000
--- a/yshop-common/src/main/java/co/yixiang/utils/QueryHelp.java
+++ /dev/null
@@ -1,178 +0,0 @@
-/**
- * Copyright (C) 2018-2020
- * All rights reserved, Designed By www.yixiang.co
-
- */
-package co.yixiang.utils;
-
-import cn.hutool.core.collection.CollUtil;
-import cn.hutool.core.util.ObjectUtil;
-import lombok.extern.slf4j.Slf4j;
-import co.yixiang.annotation.Query;
-import javax.persistence.criteria.*;
-import java.lang.reflect.Field;
-import java.text.SimpleDateFormat;
-import java.util.*;
-
-/**
- * @author Zheng Jie
- * @date 2019-6-4 14:59:48
- */
-@Slf4j
-@SuppressWarnings({"unchecked","all"})
-public class QueryHelp {
-
- public static Predicate getPredicate(Root root, Q query, CriteriaBuilder cb) {
- List list = new ArrayList<>();
-
- if(query == null){
- return cb.and(list.toArray(new Predicate[0]));
- }
- try {
- List fields = getAllFields(query.getClass(), new ArrayList<>());
- for (Field field : fields) {
- boolean accessible = field.isAccessible();
- field.setAccessible(true);
- Query q = field.getAnnotation(Query.class);
- if (q != null) {
- String propName = q.propName();
- String joinName = q.joinName();
- String blurry = q.blurry();
- String attributeName = isBlank(propName) ? field.getName() : propName;
- Class> fieldType = field.getType();
- Object val = field.get(query);
- if (ObjectUtil.isNull(val) || "".equals(val)) {
- continue;
- }
- Join join = null;
- // 模糊多字段
- if (ObjectUtil.isNotEmpty(blurry)) {
- String[] blurrys = blurry.split(",");
- List orPredicate = new ArrayList<>();
- for (String s : blurrys) {
- orPredicate.add(cb.like(root.get(s)
- .as(String.class), "%" + val.toString() + "%"));
- }
- Predicate[] p = new Predicate[orPredicate.size()];
- list.add(cb.or(orPredicate.toArray(p)));
- continue;
- }
- if (ObjectUtil.isNotEmpty(joinName)) {
- String[] joinNames = joinName.split(">");
- for (String name : joinNames) {
- switch (q.join()) {
- case LEFT:
- if(ObjectUtil.isNotNull(join)){
- join = join.join(name, JoinType.LEFT);
- } else {
- join = root.join(name, JoinType.LEFT);
- }
- break;
- case RIGHT:
- if(ObjectUtil.isNotNull(join)){
- join = join.join(name, JoinType.RIGHT);
- } else {
- join = root.join(name, JoinType.RIGHT);
- }
- break;
- default: break;
- }
- }
- }
- switch (q.type()) {
- case EQUAL:
- list.add(cb.equal(getExpression(attributeName,join,root)
- .as((Class extends Comparable>) fieldType),val));
- break;
- case GREATER_THAN:
- list.add(cb.greaterThanOrEqualTo(getExpression(attributeName,join,root)
- .as((Class extends Comparable>) fieldType), (Comparable) val));
- break;
- case LESS_THAN:
- list.add(cb.lessThanOrEqualTo(getExpression(attributeName,join,root)
- .as((Class extends Comparable>) fieldType), (Comparable) val));
- break;
- case LESS_THAN_NQ:
- list.add(cb.lessThan(getExpression(attributeName,join,root)
- .as((Class extends Comparable>) fieldType), (Comparable) val));
- break;
- case INNER_LIKE:
- list.add(cb.like(getExpression(attributeName,join,root)
- .as(String.class), "%" + val.toString() + "%"));
- break;
- case LEFT_LIKE:
- list.add(cb.like(getExpression(attributeName,join,root)
- .as(String.class), "%" + val.toString()));
- break;
- case RIGHT_LIKE:
- list.add(cb.like(getExpression(attributeName,join,root)
- .as(String.class), val.toString() + "%"));
- break;
- case IN:
- if (CollUtil.isNotEmpty((Collection)val)) {
- list.add(getExpression(attributeName,join,root).in((Collection) val));
- }
- break;
- case NOT_EQUAL:
- list.add(cb.notEqual(getExpression(attributeName,join,root), val));
- break;
- case NOT_NULL:
- list.add(cb.isNotNull(getExpression(attributeName,join,root)));
- break;
- case BETWEEN:
- List