Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
J
jyzb_platformV2
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Members
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
赵剑炜
jyzb_platformV2
Commits
37140e2e
Commit
37140e2e
authored
Nov 07, 2023
by
赵剑炜
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改子节点方法
parent
1735c5fb
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
31 行增加
和
17 行删除
+31
-17
OrgDto.java
jyzb-api/src/main/java/com/junmp/jyzb/api/bean/dto/OrgDto.java
+1
-0
PubOrgServiceImpl.java
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/PubOrgServiceImpl.java
+30
-17
没有找到文件。
jyzb-api/src/main/java/com/junmp/jyzb/api/bean/dto/OrgDto.java
View file @
37140e2e
...
...
@@ -18,6 +18,7 @@ public class OrgDto {
private
String
dName
;
private
Boolean
isLeaf
;
private
Integer
statusFlag
;
private
Integer
childCount
;
private
List
<
OrgDto
>
children
=
new
ArrayList
<>();
public
void
addChild
(
OrgDto
child
)
{
...
...
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/PubOrgServiceImpl.java
View file @
37140e2e
...
...
@@ -393,8 +393,8 @@ public class PubOrgServiceImpl extends ServiceImpl<PubOrgMapper, PubOrg> implem
// 添加 MatchQueryBuilder 作为 must 条件
MatchQueryBuilder
matchQueryBuilder
=
QueryBuilders
.
matchQuery
(
"
org
Name"
,
keyword
).
operator
(
Operator
.
AND
);
MatchQueryBuilder
matchQueryBuilder2
=
QueryBuilders
.
matchQuery
(
"
org
Name.pinyin"
,
keyword
).
operator
(
Operator
.
AND
);
MatchQueryBuilder
matchQueryBuilder
=
QueryBuilders
.
matchQuery
(
"
d
Name"
,
keyword
).
operator
(
Operator
.
AND
);
MatchQueryBuilder
matchQueryBuilder2
=
QueryBuilders
.
matchQuery
(
"
d
Name.pinyin"
,
keyword
).
operator
(
Operator
.
AND
);
BoolQueryBuilder
boolQueryBuilder
=
QueryBuilders
.
boolQuery
();
boolQueryBuilder
.
should
(
matchQueryBuilder
);
...
...
@@ -419,22 +419,12 @@ public class PubOrgServiceImpl extends ServiceImpl<PubOrgMapper, PubOrg> implem
return
pubOrgList
;
}
public
List
<
OrgDto
>
searchAndBuildTree
(
Integer
pageNum
,
Integer
pageSize
,
String
keyword
)
throws
IOException
{
// 先进行搜索,获取前20条数据
QueryOrgReq
req
=
new
QueryOrgReq
();
List
<
PubOrg
>
searchResults
=
searchOrg
(
pageNum
,
pageSize
,
keyword
);
req
.
setDelFlag
(
1
);
LambdaQueryWrapper
<
PubOrg
>
wp
=
this
.
createWrapper
(
req
);
// 获取所有组织机构数据
List
<
PubOrg
>
allOrgs
=
this
.
list
(
wp
);
List
<
OrgDto
>
treeResult
=
buildTree
(
searchResults
,
allOrgs
);
return
treeResult
;
}
public
List
<
OrgDto
>
buildTree
(
List
<
PubOrg
>
searchResults
,
List
<
PubOrg
>
allOrgs
)
{
Map
<
Long
,
OrgDto
>
orgDtoMap
=
new
HashMap
<>();
// 将所有组织机构转换为OrgDto并放入map中
// 将所有组织机构转换为OrgDto并放入map中
,同时计算子节点数量
for
(
PubOrg
org
:
allOrgs
)
{
OrgDto
orgDto
=
new
OrgDto
();
// 这里根据你的实际字段进行映射
...
...
@@ -448,8 +438,23 @@ public class PubOrgServiceImpl extends ServiceImpl<PubOrgMapper, PubOrg> implem
orgDto
.
setStatusFlag
(
org
.
getStatusFlag
());
orgDto
.
setDName
(
org
.
getDName
());
orgDto
.
setOrgParentIds
(
org
.
getOrgParentIds
());
// 其他字段的映射...
// 计算子节点数量
int
childCount
=
0
;
for
(
PubOrg
childOrg
:
allOrgs
)
{
if
(
childOrg
.
getOrgParentId
().
equals
(
org
.
getOrgId
()))
{
childCount
++;
}
}
orgDto
.
setChildCount
(
childCount
);
if
(
childCount
<=
0
)
{
orgDto
.
setIsLeaf
(
true
);
}
else
{
orgDto
.
setIsLeaf
(
false
);
}
// 将OrgDto放入map中,以orgId为键
orgDtoMap
.
put
(
org
.
getOrgId
(),
orgDto
);
}
...
...
@@ -510,8 +515,15 @@ public class PubOrgServiceImpl extends ServiceImpl<PubOrgMapper, PubOrg> implem
@Override
public
List
<
OrgDto
>
getOrgTreeByEs
(
QueryOrgReq
req
)
throws
IOException
{
List
<
OrgDto
>
treeDto
=
searchAndBuildTree
(
0
,
10
,
req
.
getOrgName
());
return
treeDto
;
// 先进行搜索,获取前20条数据
List
<
PubOrg
>
searchResults
=
searchOrg
(
0
,
15
,
req
.
getOrgName
());
req
.
setDelFlag
(
1
);
LambdaQueryWrapper
<
PubOrg
>
wp
=
this
.
createWrapper
(
req
);
// 获取所有组织机构数据
List
<
PubOrg
>
allOrgs
=
this
.
list
(
wp
);
List
<
OrgDto
>
treeResult
=
buildTree
(
searchResults
,
allOrgs
);
return
treeResult
;
}
private
OrgDto
convertToDto
(
PubOrg
org
,
List
<
PubOrg
>
allOrgs
)
{
...
...
@@ -527,6 +539,7 @@ public class PubOrgServiceImpl extends ServiceImpl<PubOrgMapper, PubOrg> implem
orgDto
.
setStatusFlag
(
org
.
getStatusFlag
());
orgDto
.
setOrgParentId
(
org
.
getOrgParentId
());
orgDto
.
setDName
(
org
.
getDName
());
// 其他字段的映射...
// 查找当前节点的子节点
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论