From cc3185eaf94050d299cbd9d0c105eb3d1229996a Mon Sep 17 00:00:00 2001
From: cp <513960435@qq.com>
Date: 星期四, 24 十月 2024 16:10:04 +0800
Subject: [PATCH] 修復
---
zy-asrs-common/src/main/java/com/zy/asrs/common/web/BaseController.java | 136 ++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 120 insertions(+), 16 deletions(-)
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/web/BaseController.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/web/BaseController.java
index 7fc00e0..8ef4122 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/web/BaseController.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/web/BaseController.java
@@ -2,13 +2,14 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zy.asrs.common.sys.entity.User;
import com.zy.asrs.common.sys.entity.UserLogin;
import com.zy.asrs.common.sys.service.UserLoginService;
import com.zy.asrs.common.sys.service.UserService;
import com.zy.asrs.common.wms.entity.Tag;
-import com.zy.asrs.common.wms.service.ManTagService;
+import com.zy.asrs.common.wms.service.TagService;
import com.zy.asrs.framework.common.BaseRes;
import com.zy.asrs.framework.common.Cools;
import com.zy.asrs.framework.controller.AbstractBaseController;
@@ -35,9 +36,9 @@
@Autowired
private UserLoginService userLoginService;
@Autowired
- private ManTagService manTagService;
+ private TagService tagService;
- protected Long getHostId(){
+ protected Long getHostId() {
if (getUserId() == 9527) {
return null;
}
@@ -56,11 +57,11 @@
}
}
- protected Long getUserId(){
+ protected Long getUserId() {
return Long.parseLong(String.valueOf(request.getAttribute("userId")));
}
- protected User getUser(){
+ protected User getUser() {
User user = userService.getById(getUserId());
if (null == user) {
throw new CoolException(BaseRes.DENIED);
@@ -68,10 +69,10 @@
return user;
}
- protected String getComment(Class<?> cls, String fieldName){
+ protected String getComment(Class<?> cls, String fieldName) {
Field[] fields = Cools.getAllFields(cls);
- for (Field field : fields){
- if (fieldName.equals(field.getName())){
+ for (Field field : fields) {
+ if (fieldName.equals(field.getName())) {
return field.getAnnotation(ApiModelProperty.class).value();
}
}
@@ -80,6 +81,7 @@
/**
* 鍒嗛〉缁勮
+ *
* @param pageNumber
* @param pageSize
* @param map
@@ -87,7 +89,7 @@
* @param <T>
* @return
*/
- protected <T> Page<T> toPage(Integer pageNumber, Integer pageSize, Map<String, Object> map, Class<T> cls){
+ protected <T> Page<T> toPage(Integer pageNumber, Integer pageSize, Map<String, Object> map, Class<T> cls) {
// 鍒嗛〉绱㈠紩鍜屽崟椤垫暟閲忕粍瑁�
pageNumber = Optional.ofNullable(pageNumber).orElse(1);
pageSize = Optional.ofNullable(pageSize).orElse(10);
@@ -98,10 +100,8 @@
// 鍏ㄥ瓧娈垫ā绯婃悳绱� todo
if (!Cools.isEmpty(map.get("condition"))) {
Set<String> columns = new HashSet<>();
- for (Field field : Cools.getAllFields(cls)){
- if (Modifier.isFinal(field.getModifiers())
- || Modifier.isStatic(field.getModifiers())
- || Modifier.isTransient(field.getModifiers())){
+ for (Field field : Cools.getAllFields(cls)) {
+ if (Modifier.isFinal(field.getModifiers()) || Modifier.isStatic(field.getModifiers()) || Modifier.isTransient(field.getModifiers())) {
continue;
}
String column = null;
@@ -115,14 +115,118 @@
columns.add(column);
}
}
- columns.forEach(col->map.put(col, map.get("condition")));
+ columns.forEach(col -> map.put(col, map.get("condition")));
}
// page.setCondition(map);
return page;
}
- protected Tag getOriginTag(){
- return manTagService.getTop();
+ protected Tag getOriginTag() {
+ return tagService.getTop(getHostId());
}
+ /**
+ * 鍏ㄥ瓧娈垫ā绯婃悳绱�
+ *
+ * @param cls 妯″瀷绫�
+ * @param set 鎺掗櫎瀛楁闆嗗悎
+ * @param condition 鎼滅储鍐呭
+ */
+ protected <T> void allLike(Class<T> cls, Set<String> set, QueryWrapper<T> wrapper, String condition) {
+ if (Cools.isEmpty(condition)) {
+ return;
+ }
+ final List<String> columns = new ArrayList<>();
+ for (Field field : Cools.getAllFields(cls)) {
+ if (Modifier.isFinal(field.getModifiers()) || Modifier.isStatic(field.getModifiers()) || Modifier.isTransient(field.getModifiers())) {
+ continue;
+ }
+ String column = null;
+ if (field.isAnnotationPresent(TableField.class)) {
+ column = camelToUnderscore(field.getAnnotation(TableField.class).value());
+ }
+ if (Cools.isEmpty(column)) {
+ column = camelToUnderscore(field.getName());
+ }
+ //if (!set.contains(column)) {
+ columns.add(column);
+ //}
+ }
+ if (columns.isEmpty()) {
+ return;
+ }
+
+ wrapper.and(w -> {
+ for (int i = 0; i < columns.size(); i++) {
+ String colums = columns.get(i);
+ if (i == 0) {
+ w.like(colums, condition);
+ } else {
+ w.or().like(colums, condition);
+ }
+ }
+ });
+
+// for (int i=0;i<columns.size();i++){
+// String colums = columns.get(i);
+// if (i==0){
+// wrapper.and(w -> w.like(colums, condition));
+// } else {
+// wrapper.or(w -> w.like(colums, condition));
+// }
+//// wrapper.like(columns.get(i), condition);
+// }
+ }
+
+ private static String camelToUnderscore(String camelCase) {
+ return camelCase.replaceAll("([a-z])([A-Z])", "$1_$2").toLowerCase();
+ }
+
+// /**
+// * 鍏ㄥ瓧娈垫ā绯婃悳绱�
+// *
+// * @param cls 妯″瀷绫�
+// * @param set 鎺掗櫎瀛楁闆嗗悎
+// * @param condition 鎼滅储鍐呭
+// */
+// protected <T> void allLike(Class<T> cls, Set<String> set, LambdaQueryWrapper<T> wrapper, String condition) {
+// if (Cools.isEmpty(condition)) {
+// return;
+// }
+// final List<String> columns = new ArrayList<>();
+// for (Field field : Cools.getAllFields(cls)) {
+// if (Modifier.isFinal(field.getModifiers()) || Modifier.isStatic(field.getModifiers()) || Modifier.isTransient(field.getModifiers())) {
+// continue;
+// }
+// String column = null;
+// if (field.isAnnotationPresent(TableField.class)) {
+// column = camelToUnderscore(field.getAnnotation(TableField.class).value());
+// }
+// if (Cools.isEmpty(column)) {
+// column = camelToUnderscore(field.getName());
+// }
+// //if (!set.contains(column)) {
+// columns.add(column);
+// //}
+// }
+// if (columns.isEmpty()) {
+// return;
+// }
+//
+// SFunction<cls, String> columnFunc = Entity::columnName;
+// wrapper.and(w -> {
+// for (int i = 0; i < columns.size(); i++) {
+// String colums = columns.get(i);
+// if (i == 0) {
+// w.like(colums, condition);
+// } else {
+// w.or().like(colums, condition);
+// }
+// }
+// });
+//
+//
+// }
+
+
}
--
Gitblit v1.9.1