From 38ed87ce35c2ff3941b1343d5df0578794755cc5 Mon Sep 17 00:00:00 2001
From: verou <857149855@qq.com>
Date: 星期二, 25 三月 2025 15:26:36 +0800
Subject: [PATCH] fix:分组bug
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrGroupServiceImpl.java | 37 +++++++++++++++++++++++++++++++++++++
1 files changed, 37 insertions(+), 0 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrGroupServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrGroupServiceImpl.java
index fb2b943..65b0fe6 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrGroupServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrGroupServiceImpl.java
@@ -1,12 +1,49 @@
package com.vincent.rsf.server.manager.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.vincent.rsf.common.utils.Utils;
+import com.vincent.rsf.framework.common.R;
+import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.manager.mapper.MatnrGroupMapper;
import com.vincent.rsf.server.manager.entity.MatnrGroup;
import com.vincent.rsf.server.manager.service.MatnrGroupService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.stream.Collectors;
@Service("matnrGroupService")
public class MatnrGroupServiceImpl extends ServiceImpl<MatnrGroupMapper, MatnrGroup> implements MatnrGroupService {
+ @Override
+ public List<MatnrGroup> getTreeData(Map<String, Object> map) {
+ List<MatnrGroup> matnrs = new ArrayList<>();
+ if (Objects.isNull(map)) {
+ matnrs = this.list(new LambdaQueryWrapper<MatnrGroup>().orderByAsc(MatnrGroup::getCode));
+ } else {
+ if (Objects.isNull(map.get("condition"))) {
+ throw new CoolException("condition鍙傛暟涓嶈兘涓虹┖锛侊紒");
+ }
+ if (!StringUtils.isBlank(map.get("condition").toString())) {
+ List<MatnrGroup> groups = this.list(new LambdaQueryWrapper<MatnrGroup>()
+ .like(MatnrGroup::getName, map.get("condition"))
+ .orderByAsc(MatnrGroup::getCode));
+ List<Long> collect = groups.stream().map(MatnrGroup::getId).collect(Collectors.toList());
+ List<MatnrGroup> list = this.list(new LambdaQueryWrapper<MatnrGroup>().in(MatnrGroup::getId, collect));
+ matnrs.addAll(list);
+ List<MatnrGroup> treeData = Utils.toTreeData(matnrs, 0L, MatnrGroup::getParentId, MatnrGroup::getId, MatnrGroup::setChildren);
+ return treeData;
+ } else {
+ matnrs = this.list(new LambdaQueryWrapper<MatnrGroup>().orderByAsc(MatnrGroup::getCode));
+ }
+ }
+ List<MatnrGroup> treeData = Utils.toTreeData(matnrs, 0L, MatnrGroup::getParentId, MatnrGroup::getId, MatnrGroup::setChildren);
+ return treeData;
+ }
}
--
Gitblit v1.9.1