|
@@ -1,5 +1,6 @@
|
|
package com.qunzhixinxi.hnqz.admin.controller;
|
|
package com.qunzhixinxi.hnqz.admin.controller;
|
|
|
|
|
|
|
|
+import cn.hutool.core.collection.CollUtil;
|
|
import cn.hutool.core.util.ArrayUtil;
|
|
import cn.hutool.core.util.ArrayUtil;
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
@@ -28,7 +29,9 @@ import org.springframework.web.bind.annotation.RestController;
|
|
import java.util.HashMap;
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
|
|
+import java.util.Objects;
|
|
import java.util.concurrent.atomic.AtomicBoolean;
|
|
import java.util.concurrent.atomic.AtomicBoolean;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 部门任务类型配置控制层
|
|
* 部门任务类型配置控制层
|
|
@@ -93,23 +96,24 @@ public class WmDeptTaskTypeConfigController {
|
|
});
|
|
});
|
|
}
|
|
}
|
|
// 查询上级的deptId
|
|
// 查询上级的deptId
|
|
- SysDeptRelation ancestorDeptRelation = sysDeptRelationService.getOne(Wrappers.<SysDeptRelation>lambdaQuery()
|
|
|
|
|
|
+ List<SysDeptRelation> ancestorDeptRelations = sysDeptRelationService.list(Wrappers.<SysDeptRelation>lambdaQuery()
|
|
.eq(SysDeptRelation::getDescendant, deptId)
|
|
.eq(SysDeptRelation::getDescendant, deptId)
|
|
.ne(SysDeptRelation::getAncestor, deptId)
|
|
.ne(SysDeptRelation::getAncestor, deptId)
|
|
.ne(SysDeptRelation::getAncestor, 1));
|
|
.ne(SysDeptRelation::getAncestor, 1));
|
|
// 上级dept对应任务类型配置
|
|
// 上级dept对应任务类型配置
|
|
- if (ancestorDeptRelation != null) {
|
|
|
|
- WmDeptTaskTypeConfig ancestorDeptTaskTypeConfig = wmDeptTaskTypeConfigService.getOne(Wrappers.<WmDeptTaskTypeConfig>lambdaQuery()
|
|
|
|
- .eq(WmDeptTaskTypeConfig::getDeptId, ancestorDeptRelation.getAncestor()));
|
|
|
|
- if (ancestorDeptTaskTypeConfig != null) {
|
|
|
|
|
|
+ if (CollUtil.isNotEmpty(ancestorDeptRelations)) {
|
|
|
|
+ List<Integer> ancestorIds = ancestorDeptRelations.stream().mapToInt(SysDeptRelation::getAncestor).boxed().collect(Collectors.toList());
|
|
|
|
+ List<WmDeptTaskTypeConfig> ancestorDeptTaskTypeConfigs = wmDeptTaskTypeConfigService.list(Wrappers.<WmDeptTaskTypeConfig>lambdaQuery().eq(WmDeptTaskTypeConfig::getDeptId, ancestorIds));
|
|
|
|
+ if (CollUtil.isNotEmpty(ancestorDeptTaskTypeConfigs)) {
|
|
List<WmDeptTaskTypeConfigJsonDTO> ancestorConfigJsonDTOList =
|
|
List<WmDeptTaskTypeConfigJsonDTO> ancestorConfigJsonDTOList =
|
|
- JSON.parseArray(ancestorDeptTaskTypeConfig.getTaskTypeJson(), WmDeptTaskTypeConfigJsonDTO.class);
|
|
|
|
- ancestorConfigJsonDTOList.stream()
|
|
|
|
- .forEach(configJsonDTO -> {
|
|
|
|
- if (configJsonDTO.getQualifiedTask() && configJsonDTO.getAssociateLower()) {
|
|
|
|
- configed.set(true);
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
|
|
+ ancestorDeptTaskTypeConfigs.stream()
|
|
|
|
+ .flatMap(config -> JSON.parseArray(config.getTaskTypeJson(), WmDeptTaskTypeConfigJsonDTO.class).stream()).collect(Collectors.toList());
|
|
|
|
+
|
|
|
|
+ ancestorConfigJsonDTOList.forEach(configJsonDTO -> {
|
|
|
|
+ if (configJsonDTO.getQualifiedTask() && configJsonDTO.getAssociateLower()) {
|
|
|
|
+ configed.set(true);
|
|
|
|
+ }
|
|
|
|
+ });
|
|
}
|
|
}
|
|
}
|
|
}
|
|
resultMap.put("config", configed.get());
|
|
resultMap.put("config", configed.get());
|