|
|
@@ -400,6 +400,37 @@ public class SmsbDepartmentServiceImpl extends ServiceImpl<SmsbDepartmentMapper
|
|
|
return departments;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public Map<String, String> getDepartmentNameByOrg(List<String> orgList) {
|
|
|
+ if (CollectionUtils.isEmpty(orgList)) {
|
|
|
+ return Collections.emptyMap();
|
|
|
+ }
|
|
|
+
|
|
|
+ List<SmsbDepartmentDO> list = this.lambdaQuery()
|
|
|
+ .eq(SmsbDepartmentDO::getIsDel, 0)
|
|
|
+ .in(SmsbDepartmentDO::getPath, orgList).list();
|
|
|
+
|
|
|
+ Map<String, String> map = new HashMap<>();
|
|
|
+ for (SmsbDepartmentDO dep : list) {
|
|
|
+ if (dep.getParentId() == null) {
|
|
|
+ map.put(dep.getPath(), dep.getName());
|
|
|
+ } else {
|
|
|
+ StringBuilder sb = new StringBuilder(dep.getName());
|
|
|
+ while (true) {
|
|
|
+ SmsbDepartmentDO parent = this.getById(dep.getParentId());
|
|
|
+ if (parent != null) {
|
|
|
+ sb.insert(0,parent.getName()+"/");
|
|
|
+ }
|
|
|
+ if (parent == null || parent.getParentId() == null) {
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ map.put(dep.getPath(), sb.toString());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 获取当前部门及上级部门
|
|
|
*
|