Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
fuyue82
o2oa
提交
a529ca79
o2oa
项目概览
fuyue82
/
o2oa
与 Fork 源项目一致
Fork自
浙江兰德纵横网络技术股份有限公司 / o2oa
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
o2oa
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a529ca79
编写于
9月 11, 2020
作者:
liyi_hz2008
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[查询优化]优化CMS,考勤,OKR,BBS等应用的distinct查询,提升整体查询性能
上级
748a913e
变更
27
隐藏空白更改
内联
并排
Showing
27 changed file
with
142 addition
and
117 deletion
+142
-117
o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/factory/BBSOperationRecordFactory.java
...s/assemble/control/factory/BBSOperationRecordFactory.java
+3
-2
o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/factory/BBSVoteRecordFactory.java
.../x/bbs/assemble/control/factory/BBSVoteRecordFactory.java
+2
-1
o2server/x_calendar_assemble_control/src/main/java/com/x/calendar/assemble/control/factory/Calendar_EventRepeatMasterFactory.java
...le/control/factory/Calendar_EventRepeatMasterFactory.java
+2
-1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/factory/AppInfoFactory.java
...va/com/x/cms/assemble/control/factory/AppInfoFactory.java
+2
-2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/factory/FileFactory.java
.../java/com/x/cms/assemble/control/factory/FileFactory.java
+1
-1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/factory/SearchFactory.java
...ava/com/x/cms/assemble/control/factory/SearchFactory.java
+9
-8
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/input/BaseAction.java
...va/com/x/cms/assemble/control/jaxrs/input/BaseAction.java
+3
-2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/queryview/ActionList.java
...om/x/cms/assemble/control/jaxrs/queryview/ActionList.java
+3
-2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/queryview/ActionListAll.java
...x/cms/assemble/control/jaxrs/queryview/ActionListAll.java
+5
-4
o2server/x_cms_core_entity/src/main/java/com/x/cms/core/entity/query/Query.java
...tity/src/main/java/com/x/cms/core/entity/query/Query.java
+9
-8
o2server/x_mind_assemble_control/src/main/java/com/x/mind/assemble/control/factory/MindBaseInfoFactory.java
.../x/mind/assemble/control/factory/MindBaseInfoFactory.java
+2
-1
o2server/x_mind_assemble_control/src/main/webapp/describe/sources/com/x/mind/assemble/control/factory/MindBaseInfoFactory.java
.../x/mind/assemble/control/factory/MindBaseInfoFactory.java
+2
-1
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrCenterWorkInfoFactory.java
...kr/assemble/control/factory/OkrCenterWorkInfoFactory.java
+5
-4
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrConfigSecretaryFactory.java
...r/assemble/control/factory/OkrConfigSecretaryFactory.java
+3
-2
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrConfigSystemFactory.java
.../okr/assemble/control/factory/OkrConfigSystemFactory.java
+3
-2
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrStatisticReportContentFactory.java
...ble/control/factory/OkrStatisticReportContentFactory.java
+5
-4
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrStatisticReportStatusFactory.java
...mble/control/factory/OkrStatisticReportStatusFactory.java
+3
-2
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrTaskFactory.java
...va/com/x/okr/assemble/control/factory/OkrTaskFactory.java
+5
-4
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrTaskHandledFactory.java
...x/okr/assemble/control/factory/OkrTaskHandledFactory.java
+3
-2
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkAuthorizeRecordFactory.java
...semble/control/factory/OkrWorkAuthorizeRecordFactory.java
+5
-4
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkBaseInfoFactory.java
.../okr/assemble/control/factory/OkrWorkBaseInfoFactory.java
+7
-6
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkChatFactory.java
...om/x/okr/assemble/control/factory/OkrWorkChatFactory.java
+5
-4
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkDynamicsFactory.java
.../okr/assemble/control/factory/OkrWorkDynamicsFactory.java
+3
-2
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkPersonFactory.java
.../x/okr/assemble/control/factory/OkrWorkPersonFactory.java
+39
-38
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkReportBaseInfoFactory.java
...ssemble/control/factory/OkrWorkReportBaseInfoFactory.java
+7
-6
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkReportPersonLinkFactory.java
...emble/control/factory/OkrWorkReportPersonLinkFactory.java
+3
-2
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkReportProcessLogFactory.java
...emble/control/factory/OkrWorkReportProcessLogFactory.java
+3
-2
未找到文件。
o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/factory/BBSOperationRecordFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.bbs.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -53,7 +54,7 @@ public class BBSOperationRecordFactory extends AbstractFactory {
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
BBSOperationRecord
>
root
=
cq
.
from
(
BBSOperationRecord
.
class
);
Predicate
p
=
cb
.
isNotNull
(
root
.
get
(
BBSOperationRecord_
.
id
)
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
BBSOperationRecord_
.
operatorName
)
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
BBSOperationRecord_
.
operatorName
)
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
}
o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/factory/BBSVoteRecordFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.bbs.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -133,7 +134,7 @@ public class BBSVoteRecordFactory extends AbstractFactory {
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
BBSVoteRecord_
.
optionId
),
voteOptionId
));
}
cq
.
select
(
root
.
get
(
BBSVoteRecord_
.
votorName
)
);
return
em
.
createQuery
(
cq
.
where
(
p
)
.
distinct
(
true
)).
getResultList
(
);
return
em
.
createQuery
(
cq
.
where
(
p
)
).
getResultList
().
stream
().
distinct
().
collect
(
Collectors
.
toList
()
);
}
public
List
<
BBSVoteRecord
>
listVoteRecordForPage
(
String
subjectId
,
String
voteOptionId
,
Integer
maxRecordCount
)
throws
Exception
{
...
...
o2server/x_calendar_assemble_control/src/main/java/com/x/calendar/assemble/control/factory/Calendar_EventRepeatMasterFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.calendar.assemble.control.factory;
import
java.util.Date
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -179,6 +180,6 @@ public class Calendar_EventRepeatMasterFactory extends AbstractFactory {
p
=
CriteriaBuilderTools
.
predicate_and
(
cb
,
p
,
permission
);
cq
.
select
(
root
.
get
(
Calendar_EventRepeatMaster_
.
id
));
return
em
.
createQuery
(
cq
.
distinct
(
true
).
where
(
p
)).
getResultList
(
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
().
stream
().
distinct
().
collect
(
Collectors
.
toList
()
);
}
}
\ No newline at end of file
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/factory/AppInfoFactory.java
浏览文件 @
a529ca79
...
...
@@ -492,8 +492,8 @@ public class AppInfoFactory extends AbstractFactory {
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
AppInfo
>
root
=
cq
.
from
(
AppInfo
.
class
);
Predicate
p
=
cb
.
isNotNull
(
root
.
get
(
AppInfo_
.
appType
));
cq
.
select
(
root
.
get
(
AppInfo_
.
appType
))
.
distinct
(
true
)
;
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
AppInfo_
.
appType
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
// public Long countAppInfoWithAppType(String type) throws Exception {
...
...
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/factory/FileFactory.java
浏览文件 @
a529ca79
...
...
@@ -94,7 +94,7 @@ public class FileFactory extends ElementFactory {
CriteriaQuery
<
File
>
cq
=
cb
.
createQuery
(
File
.
class
);
Root
<
File
>
root
=
cq
.
from
(
File
.
class
);
Predicate
p
=
cb
.
equal
(
root
.
get
(
File_
.
name
),
flag
);
List
<
File
>
os
=
em
.
createQuery
(
cq
.
select
(
root
).
where
(
p
)
.
distinct
(
true
)).
getResultList
(
);
List
<
File
>
os
=
em
.
createQuery
(
cq
.
select
(
root
).
where
(
p
)
).
getResultList
().
stream
().
distinct
().
collect
(
Collectors
.
toList
()
);
if
(
os
.
size
()
==
1
)
{
o
=
os
.
get
(
0
);
em
.
detach
(
o
);
...
...
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/factory/SearchFactory.java
浏览文件 @
a529ca79
package
com.x.cms.assemble.control.factory
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -36,8 +37,8 @@ public class SearchFactory extends AbstractFactory {
}
else
{
p
=
cb
.
and
(
p
,
root
.
get
(
Document_
.
appId
).
in
(
appids
));
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
Document_
.
creatorUnitName
)
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
500
).
getResultList
();
cq
.
select
(
root
.
get
(
Document_
.
creatorUnitName
)
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
500
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
// @MethodDescribe("查询用户可见的指定状态下的文件涉及的顶层组织列表量")
...
...
@@ -55,8 +56,8 @@ public class SearchFactory extends AbstractFactory {
}
else
{
p
=
cb
.
and
(
p
,
root
.
get
(
Document_
.
appId
).
in
(
appids
));
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
Document_
.
creatorTopUnitName
)
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
500
).
getResultList
();
cq
.
select
(
root
.
get
(
Document_
.
creatorTopUnitName
)
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
500
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
//@MethodDescribe("查询用户可见的指定状态下的文件涉及的栏目ID列表量")
...
...
@@ -74,8 +75,8 @@ public class SearchFactory extends AbstractFactory {
}
else
{
p
=
cb
.
and
(
p
,
root
.
get
(
Document_
.
appId
).
in
(
appids
));
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
Document_
.
appId
)
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
500
).
getResultList
();
cq
.
select
(
root
.
get
(
Document_
.
appId
)
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
500
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
//@MethodDescribe("查询用户可见的指定状态下的文件涉及的分类ID列表")
...
...
@@ -93,8 +94,8 @@ public class SearchFactory extends AbstractFactory {
}
else
{
p
=
cb
.
and
(
p
,
root
.
get
(
Document_
.
appId
).
in
(
appids
));
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
Document_
.
categoryId
)
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
500
).
getResultList
();
cq
.
select
(
root
.
get
(
Document_
.
categoryId
)
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
500
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
//@MethodDescribe("根据categoryId查询该应用栏目下的所有文档数量")
...
...
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/input/BaseAction.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.cms.assemble.control.jaxrs.input;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -46,7 +47,7 @@ abstract class BaseAction extends StandardJaxrsAction {
CriteriaQuery
<
AppInfo
>
cq
=
cb
.
createQuery
(
AppInfo
.
class
);
Root
<
AppInfo
>
root
=
cq
.
from
(
AppInfo
.
class
);
Predicate
p
=
cb
.
equal
(
root
.
get
(
AppInfo_
.
appAlias
),
alias
);
List
<
AppInfo
>
os
=
em
.
createQuery
(
cq
.
select
(
root
).
where
(
p
)
.
distinct
(
true
)).
getResultList
(
);
List
<
AppInfo
>
os
=
em
.
createQuery
(
cq
.
select
(
root
).
where
(
p
)
).
getResultList
().
stream
().
distinct
().
collect
(
Collectors
.
toList
()
);
if
(
os
.
size
()
==
1
)
{
return
os
.
get
(
0
);
}
else
{
...
...
@@ -63,7 +64,7 @@ abstract class BaseAction extends StandardJaxrsAction {
CriteriaQuery
<
AppInfo
>
cq
=
cb
.
createQuery
(
AppInfo
.
class
);
Root
<
AppInfo
>
root
=
cq
.
from
(
AppInfo
.
class
);
Predicate
p
=
cb
.
equal
(
root
.
get
(
AppInfo_
.
appName
),
name
);
List
<
AppInfo
>
os
=
em
.
createQuery
(
cq
.
select
(
root
).
where
(
p
)
.
distinct
(
true
)).
getResultList
(
);
List
<
AppInfo
>
os
=
em
.
createQuery
(
cq
.
select
(
root
).
where
(
p
)
).
getResultList
().
stream
().
distinct
().
collect
(
Collectors
.
toList
()
);
if
(
os
.
size
()
==
1
)
{
return
os
.
get
(
0
);
}
else
{
...
...
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/queryview/ActionList.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.cms.assemble.control.jaxrs.queryview;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -63,8 +64,8 @@ public class ActionList extends BaseAction {
p
=
cb
.
or
(
p
,
root
.
get
(
QueryView_
.
availableUnitList
).
in
(
unitNames
));
p
=
cb
.
or
(
p
,
root
.
get
(
QueryView_
.
availableIdentityList
).
in
(
identities
));
}
cq
.
select
(
root
.
get
(
QueryView_
.
id
)).
where
(
p
)
.
distinct
(
true
)
;
List
<
String
>
list
=
em
.
createQuery
(
cq
).
getResultList
();
cq
.
select
(
root
.
get
(
QueryView_
.
id
)).
where
(
p
);
List
<
String
>
list
=
em
.
createQuery
(
cq
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
return
list
;
}
...
...
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/queryview/ActionListAll.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.cms.assemble.control.jaxrs.queryview;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -71,8 +72,8 @@ public class ActionListAll extends BaseAction {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
QueryView
>
root
=
cq
.
from
(
QueryView
.
class
);
cq
.
select
(
root
.
get
(
QueryView_
.
appId
))
.
distinct
(
true
)
;
List
<
String
>
list
=
em
.
createQuery
(
cq
).
getResultList
();
cq
.
select
(
root
.
get
(
QueryView_
.
appId
));
List
<
String
>
list
=
em
.
createQuery
(
cq
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
return
list
;
}
...
...
@@ -82,8 +83,8 @@ public class ActionListAll extends BaseAction {
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
QueryView
>
root
=
cq
.
from
(
QueryView
.
class
);
Predicate
p
=
cb
.
equal
(
root
.
get
(
QueryView_
.
appId
),
appId
);
cq
.
select
(
root
.
get
(
QueryView_
.
id
)).
where
(
p
)
.
distinct
(
true
)
;
List
<
String
>
list
=
em
.
createQuery
(
cq
).
getResultList
();
cq
.
select
(
root
.
get
(
QueryView_
.
id
)).
where
(
p
);
List
<
String
>
list
=
em
.
createQuery
(
cq
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
return
list
;
}
...
...
o2server/x_cms_core_entity/src/main/java/com/x/cms/core/entity/query/Query.java
浏览文件 @
a529ca79
...
...
@@ -5,6 +5,7 @@ import java.util.Date;
import
java.util.LinkedHashMap
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.Tuple
;
...
...
@@ -432,8 +433,8 @@ public class Query extends GsonPropertyObject {
Root
<
Item
>
root
=
cq
.
from
(
Item
.
class
);
Predicate
p
=
FilterEntryTools
.
toPredicate
(
cb
,
root
,
f
);
p
=
cb
.
and
(
p
,
root
.
get
(
Item_
.
bundle
).
in
(
jobs
));
cq
.
select
(
root
.
get
(
Item_
.
bundle
)).
distinct
(
true
).
where
(
p
);
List
<
String
>
os
=
em
.
createQuery
(
cq
).
getResultList
();
cq
.
select
(
root
.
get
(
Item_
.
bundle
)).
where
(
p
);
List
<
String
>
os
=
em
.
createQuery
(
cq
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
/** 不等于在这里单独通过等于处理 */
if
(
Comparison
.
isNotEquals
(
f
.
getComparison
()))
{
os
=
ListUtils
.
subtract
(
jobs
,
os
);
...
...
@@ -461,8 +462,8 @@ public class Query extends GsonPropertyObject {
Root
<
Item
>
root
=
cq
.
from
(
Item
.
class
);
Predicate
p
=
FilterEntryTools
.
toPredicate
(
cb
,
root
,
f
);
p
=
cb
.
and
(
p
,
root
.
get
(
Item_
.
bundle
).
in
(
jobs
));
cq
.
select
(
root
.
get
(
Item_
.
bundle
)).
distinct
(
true
).
where
(
p
);
List
<
String
>
os
=
em
.
createQuery
(
cq
).
getResultList
();
cq
.
select
(
root
.
get
(
Item_
.
bundle
)).
where
(
p
);
List
<
String
>
os
=
em
.
createQuery
(
cq
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
/** 不等于在这里单独通过等于处理 */
if
(
Comparison
.
isNotEquals
(
f
.
getComparison
()))
{
os
=
ListUtils
.
subtract
(
jobs
,
os
);
...
...
@@ -493,8 +494,8 @@ public class Query extends GsonPropertyObject {
DateRangeEntryTools
.
toDocumentPredicate
(
cb
,
root
,
this
.
getDateRangeEntry
()));
Predicate
pw
=
cb
.
and
(
WhereEntryTools
.
toDocumentPredicate
(
cb
,
root
,
this
.
getRestrictWhereEntry
()),
WhereEntryTools
.
toDocumentPredicate
(
cb
,
root
,
this
.
getWhereEntry
()));
cq
.
select
(
root
.
get
(
Document
.
id_FIELDNAME
)).
distinct
(
true
).
where
(
cb
.
and
(
pd
,
pw
));
return
em
.
createQuery
(
cq
).
getResultList
();
cq
.
select
(
root
.
get
(
Document
.
id_FIELDNAME
)).
where
(
cb
.
and
(
pd
,
pw
));
return
em
.
createQuery
(
cq
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
private
Table
concreteTable
(
List
<
String
>
docIds
)
throws
Exception
{
...
...
@@ -579,8 +580,8 @@ public class Query extends GsonPropertyObject {
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
Item_
.
path5
),
paths
.
length
>
5
?
paths
[
5
]
:
""
));
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
Item_
.
path6
),
paths
.
length
>
6
?
paths
[
6
]
:
""
));
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
Item_
.
path7
),
paths
.
length
>
7
?
paths
[
7
]
:
""
));
cq
.
select
(
root
).
distinct
(
true
).
where
(
p
);
List
<
Item
>
list
=
em
.
createQuery
(
cq
).
getResultList
();
cq
.
select
(
root
).
where
(
p
);
List
<
Item
>
list
=
em
.
createQuery
(
cq
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
for
(
Item
o
:
list
)
{
Row
row
=
table
.
get
(
o
.
getBundle
());
switch
(
o
.
getItemPrimitiveType
())
{
...
...
o2server/x_mind_assemble_control/src/main/java/com/x/mind/assemble/control/factory/MindBaseInfoFactory.java
浏览文件 @
a529ca79
...
...
@@ -3,6 +3,7 @@ package com.x.mind.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -318,7 +319,7 @@ public class MindBaseInfoFactory extends AbstractFactory {
cq
.
orderBy
(
cb
.
asc
(
root
.
get
(
MindBaseInfo_
.
sequence
)
)
);
}
}
return
em
.
createQuery
(
cq
.
distinct
(
true
).
where
(
p
)).
setMaxResults
(
count
).
getResultList
(
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
count
).
getResultList
().
stream
().
distinct
().
collect
(
Collectors
.
toList
()
);
}
/**
...
...
o2server/x_mind_assemble_control/src/main/webapp/describe/sources/com/x/mind/assemble/control/factory/MindBaseInfoFactory.java
浏览文件 @
a529ca79
...
...
@@ -3,6 +3,7 @@ package com.x.mind.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -318,7 +319,7 @@ public class MindBaseInfoFactory extends AbstractFactory {
cq
.
orderBy
(
cb
.
asc
(
root
.
get
(
MindBaseInfo_
.
sequence
)
)
);
}
}
return
em
.
createQuery
(
cq
.
distinct
(
true
).
where
(
p
)).
setMaxResults
(
count
).
getResultList
(
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
count
).
getResultList
().
stream
().
distinct
().
collect
(
Collectors
.
toList
()
);
}
/**
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrCenterWorkInfoFactory.java
浏览文件 @
a529ca79
...
...
@@ -3,6 +3,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.Query
;
...
...
@@ -333,8 +334,8 @@ public class OkrCenterWorkInfoFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrCenterWorkInfo_
.
creatorIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrCenterWorkInfo_
.
creatorIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrCenterWorkInfo_
.
creatorIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 查询中心工作部署者身份列表(去重复)
...
...
@@ -356,8 +357,8 @@ public class OkrCenterWorkInfoFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrCenterWorkInfo_
.
deployerIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrCenterWorkInfo_
.
deployerIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrCenterWorkInfo_
.
deployerIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 查询中心工作汇报审核领导身份列表(去重复)
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrConfigSecretaryFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -123,8 +124,8 @@ public class OkrConfigSecretaryFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrConfigSecretary_
.
leaderIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrConfigSecretary_
.
leaderIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrConfigSecretary_
.
leaderIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 根据身份名称,从领导秘书配置信息中查询与该身份有关的所有信息列表
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrConfigSystemFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -112,8 +113,8 @@ public class OkrConfigSystemFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrConfigSystem_
.
configValue
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrConfigSystem_
.
configValue
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrConfigSystem_
.
configValue
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 根据身份名称,从系统参数配置信息中查询与该身份有关的所有信息列表
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrStatisticReportContentFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.Date
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -328,8 +329,8 @@ public class OkrStatisticReportContentFactory extends AbstractFactory {
if
(
endDate
!=
null
){
p
=
cb
.
and
(
p
,
cb
.
lessThan
(
root
.
get
(
OkrStatisticReportContent_
.
statisticTime
),
endDate
));
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrStatisticReportContent_
.
statisticTimeFlag
));
return
em
.
createQuery
(
cq
.
where
(
p
)
).
getResultList
();
cq
.
select
(
root
.
get
(
OkrStatisticReportContent_
.
statisticTimeFlag
));
return
em
.
createQuery
(
cq
.
where
(
p
)
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 查询统计数据中工作责任者身份列表(去重复)
...
...
@@ -351,8 +352,8 @@ public class OkrStatisticReportContentFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrStatisticReportContent_
.
responsibilityIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrStatisticReportContent_
.
responsibilityIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrStatisticReportContent_
.
responsibilityIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 根据身份名称,从工作最新汇报内容统计信息中查询与该身份有关的所有信息列表
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrStatisticReportStatusFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -154,8 +155,8 @@ public class OkrStatisticReportStatusFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrStatisticReportStatus_
.
responsibilityIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrStatisticReportStatus_
.
responsibilityIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrStatisticReportStatus_
.
responsibilityIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrTaskFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -198,9 +199,9 @@ public class OkrTaskFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrTask
>
root
=
cq
.
from
(
OkrTask
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrTask_
.
targetIdentity
));
cq
.
select
(
root
.
get
(
OkrTask_
.
targetIdentity
));
Predicate
p
=
root
.
get
(
OkrTask_
.
dynamicObjectType
).
in
(
taskTypeList
);
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
...
...
@@ -349,8 +350,8 @@ public class OkrTaskFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrTask_
.
targetIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrTask_
.
targetIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrTask_
.
targetIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 根据身份名称,从具体工作待办待阅信息中查询与该身份有关的所有信息列表
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrTaskHandledFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -126,8 +127,8 @@ public class OkrTaskHandledFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrTaskHandled_
.
targetIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrTaskHandled_
.
targetIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrTaskHandled_
.
targetIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 根据身份名称,从具体工作已办已阅信息中查询与该身份有关的所有信息列表
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkAuthorizeRecordFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -219,8 +220,8 @@ public class OkrWorkAuthorizeRecordFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkAuthorizeRecord_
.
delegatorIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkAuthorizeRecord_
.
delegatorIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkAuthorizeRecord_
.
delegatorIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 查询工作承接者身份列表(去重复)
...
...
@@ -242,8 +243,8 @@ public class OkrWorkAuthorizeRecordFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkAuthorizeRecord_
.
targetIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkAuthorizeRecord_
.
targetIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkAuthorizeRecord_
.
targetIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 根据身份名称,从工作授权信息中查询与该身份有关的所有信息列表
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkBaseInfoFactory.java
浏览文件 @
a529ca79
...
...
@@ -4,6 +4,7 @@ import java.util.ArrayList;
import
java.util.Date
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.Query
;
...
...
@@ -699,8 +700,8 @@ public class OkrWorkBaseInfoFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkBaseInfo_
.
creatorIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkBaseInfo_
.
creatorIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkBaseInfo_
.
creatorIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 查询具体工作部署者身份列表(去重复)
...
...
@@ -722,8 +723,8 @@ public class OkrWorkBaseInfoFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkBaseInfo_
.
deployerIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkBaseInfo_
.
deployerIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkBaseInfo_
.
deployerIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 查询具体工作阅知领导身份列表(去重复)
...
...
@@ -791,8 +792,8 @@ public class OkrWorkBaseInfoFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkBaseInfo_
.
responsibilityIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkBaseInfo_
.
responsibilityIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkBaseInfo_
.
responsibilityIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkChatFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.Query
;
...
...
@@ -235,8 +236,8 @@ public class OkrWorkChatFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkChat_
.
senderIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkChat_
.
senderIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkChat_
.
senderIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 查询工作交流信息接收者身份列表(去重复)
...
...
@@ -258,8 +259,8 @@ public class OkrWorkChatFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkChat_
.
targetIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkChat_
.
targetIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkChat_
.
targetIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 根据身份名称,从具体工作交流信息中查询与该身份有关的所有信息列表
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkDynamicsFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.Query
;
...
...
@@ -320,8 +321,8 @@ public class OkrWorkDynamicsFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
)
{
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkDynamics_
.
targetIdentity
).
in
(
identities_error
)));
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkDynamics_
.
targetIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkDynamics_
.
targetIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkPersonFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.Query
;
...
...
@@ -78,7 +79,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
workId
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
workId
));
/**
* 获取的时候过滤条件: 1、如果当前身份是创建者或者部署者的,那么,草稿也要取,如果当前身份不是创建者或者部署者,那么草稿不要去
...
...
@@ -114,7 +115,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
p
=
cb
.
and
(
p
,
cb
.
or
(
p_creator_or_depoloyer
,
p_watcher
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
...
...
@@ -136,12 +137,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
workId
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
workId
));
Predicate
p
=
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
employeeIdentity
),
userIdentity
);
if
(
centerId
!=
null
&&
!
centerId
.
isEmpty
())
{
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
centerId
),
centerId
));
}
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
// @MethodDescribe( "根据用户姓名和处理者身份,列示有权限访问的所有具体工作Id列表" )
...
...
@@ -158,11 +159,11 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
workId
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
workId
));
Predicate
p
=
cb
.
isNotNull
(
root
.
get
(
OkrWorkPerson_
.
workId
));
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
employeeName
),
name
));
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
processIdentity
),
processIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
// @MethodDescribe( "根据用户姓名和处理者身份,列示有权限访问的所有具体工作Id列表" )
...
...
@@ -180,7 +181,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
workId
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
workId
));
Predicate
p
=
cb
.
isNotNull
(
root
.
get
(
OkrWorkPerson_
.
workId
));
...
...
@@ -194,7 +195,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
processIdentity
),
processIdentity
));
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
status
),
"正常"
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
200
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
200
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
// @MethodDescribe( "根据用户姓名,列示有权限访问的所有中心工作Id列表" )
...
...
@@ -207,12 +208,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
Predicate
p
=
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
employeeName
),
name
);
if
(
statuses
!=
null
&&
statuses
.
size
()
>
0
)
{
p
=
cb
.
and
(
p
,
root
.
get
(
OkrWorkPerson_
.
status
).
in
(
statuses
));
}
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
// @MethodDescribe( "根据用户姓名和处理者身份,列示有权限访问的所有中心工作Id列表" )
...
...
@@ -230,13 +231,13 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
Predicate
p
=
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
employeeName
),
name
);
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
processIdentity
),
processIdentity
));
if
(
statuses
!=
null
&&
statuses
.
size
()
>
0
)
{
p
=
cb
.
and
(
p
,
root
.
get
(
OkrWorkPerson_
.
status
).
in
(
statuses
));
}
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
// @MethodDescribe( "根据用户身份和处理者身份,列示有权限访问的所有中心工作Id列表" )
...
...
@@ -254,13 +255,13 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
Predicate
p
=
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
employeeIdentity
),
identity
);
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
processIdentity
),
processIdentity
));
if
(
statuses
!=
null
&&
statuses
.
size
()
>
0
)
{
p
=
cb
.
and
(
p
,
root
.
get
(
OkrWorkPerson_
.
status
).
in
(
statuses
));
}
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
// @MethodDescribe( "根据组织名称,列示有权限访问的所有中心工作Id列表" )
...
...
@@ -273,12 +274,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
Predicate
p
=
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
unitName
),
name
);
if
(
statuses
!=
null
&&
statuses
.
size
()
>
0
)
{
p
=
cb
.
and
(
p
,
root
.
get
(
OkrWorkPerson_
.
status
).
in
(
statuses
));
}
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
// @MethodDescribe( "根据组织列表,列示有权限访问的所有中心工作Id列表" )
...
...
@@ -291,12 +292,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
Predicate
p
=
root
.
get
(
OkrWorkPerson_
.
unitName
).
in
(
names
);
if
(
statuses
!=
null
&&
statuses
.
size
()
>
0
)
{
p
=
cb
.
and
(
p
,
root
.
get
(
OkrWorkPerson_
.
status
).
in
(
statuses
));
}
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
// @MethodDescribe( "根据顶层组织名称,列示有权限访问的所有中心工作Id列表" )
...
...
@@ -309,12 +310,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
Predicate
p
=
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
topUnitName
),
name
);
if
(
statuses
!=
null
&&
statuses
.
size
()
>
0
)
{
p
=
cb
.
and
(
p
,
root
.
get
(
OkrWorkPerson_
.
status
).
in
(
statuses
));
}
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
...
...
@@ -336,12 +337,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
employeeIdentity
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
employeeIdentity
));
Predicate
p
=
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
centerId
),
centerId
);
if
(
identity
!=
null
&&
!
identity
.
isEmpty
())
{
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
processIdentity
),
identity
));
}
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
2000
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
2000
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
// @MethodDescribe( "根据顶层组织列表,列示有权限访问的所有中心工作Id列表" )
...
...
@@ -355,12 +356,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
Predicate
p
=
root
.
get
(
OkrWorkPerson_
.
topUnitName
).
in
(
names
);
if
(
statuses
!=
null
&&
statuses
.
size
()
>
0
)
{
p
=
cb
.
and
(
p
,
root
.
get
(
OkrWorkPerson_
.
status
).
in
(
statuses
));
}
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
1000
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
...
...
@@ -380,7 +381,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
employeeName
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
employeeName
));
Predicate
p
=
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
workId
),
workId
);
if
(
identity
!=
null
&&
!
identity
.
isEmpty
())
{
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
processIdentity
),
identity
));
...
...
@@ -388,7 +389,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
if
(
statuses
!=
null
&&
statuses
.
size
()
>
0
)
{
p
=
cb
.
and
(
p
,
root
.
get
(
OkrWorkPerson_
.
status
).
in
(
statuses
));
}
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
100
).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
setMaxResults
(
100
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
...
...
@@ -480,7 +481,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
workId
));
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
workId
));
Predicate
p
=
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
employeeIdentity
),
employeeIdentity
);
p
=
cb
.
and
(
p
,
cb
.
isNotNull
(
root
.
get
(
OkrWorkPerson_
.
workId
)));
if
(
centerId
!=
null
&&
!
centerId
.
isEmpty
())
{
...
...
@@ -495,7 +496,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
if
(
statuses
!=
null
&&
statuses
.
size
()
>
0
)
{
p
=
cb
.
and
(
p
,
root
.
get
(
OkrWorkPerson_
.
status
).
in
(
statuses
));
}
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
...
...
@@ -1059,15 +1060,15 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaBuilder
cb
=
em
.
getCriteriaBuilder
();
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
employeeIdentity
));
return
em
.
createQuery
(
cq
).
setMaxResults
(
10000
).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
employeeIdentity
));
return
em
.
createQuery
(
cq
).
setMaxResults
(
10000
).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 根据工作类别和登录身份来查询用户可以访问到的所有中心工作数量
*
* @param workTypeName
* @param workTypeNames
* @param loginIdentity
* @param processIdentity
* @return
* @throws Exception
*/
...
...
@@ -1087,8 +1088,8 @@ public class OkrWorkPersonFactory extends AbstractFactory {
if
(
processIdentity
!=
null
&&
!
processIdentity
.
isEmpty
())
{
p
=
cb
.
and
(
p
,
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
processIdentity
),
processIdentity
));
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
centerId
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
public
List
<
String
>
listByAuthorizeRecordIds
(
List
<
String
>
authorizeRecordIds
,
List
<
String
>
statuses
)
...
...
@@ -1388,8 +1389,8 @@ public class OkrWorkPersonFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
)
{
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkPerson_
.
employeeIdentity
).
in
(
identities_error
)));
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
employeeIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
employeeIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
...
...
@@ -1425,7 +1426,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
CriteriaQuery
<
String
>
cq
=
cb
.
createQuery
(
String
.
class
);
Root
<
OkrWorkPerson
>
root
=
cq
.
from
(
OkrWorkPerson
.
class
);
Predicate
p
=
cb
.
equal
(
root
.
get
(
OkrWorkPerson_
.
workId
),
workId
);
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkPerson_
.
employeeIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkPerson_
.
employeeIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
}
\ No newline at end of file
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkReportBaseInfoFactory.java
浏览文件 @
a529ca79
...
...
@@ -4,6 +4,7 @@ import java.util.ArrayList;
import
java.util.Date
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -480,8 +481,8 @@ public class OkrWorkReportBaseInfoFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkReportBaseInfo_
.
creatorIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkReportBaseInfo_
.
creatorIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkReportBaseInfo_
.
creatorIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 查询工作汇报当前处理者身份列表(去重复)
...
...
@@ -596,8 +597,8 @@ public class OkrWorkReportBaseInfoFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkReportBaseInfo_
.
reporterIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkReportBaseInfo_
.
reporterIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkReportBaseInfo_
.
reporterIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 查询工作管理者,督办员身份列表(去重复)
...
...
@@ -619,8 +620,8 @@ public class OkrWorkReportBaseInfoFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkReportBaseInfo_
.
workAdminIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkReportBaseInfo_
.
workAdminIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkReportBaseInfo_
.
workAdminIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkReportPersonLinkFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.Query
;
...
...
@@ -336,8 +337,8 @@ public class OkrWorkReportPersonLinkFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkReportPersonLink_
.
processorIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkReportPersonLink_
.
processorIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkReportPersonLink_
.
processorIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 根据身份名称,从工作汇报处理者信息中查询与该身份有关的所有信息列表
...
...
o2server/x_okr_assemble_control/src/main/java/com/x/okr/assemble/control/factory/OkrWorkReportProcessLogFactory.java
浏览文件 @
a529ca79
...
...
@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.persistence.EntityManager
;
import
javax.persistence.Query
;
...
...
@@ -317,8 +318,8 @@ public class OkrWorkReportProcessLogFactory extends AbstractFactory {
if
(
identities_error
!=
null
&&
identities_error
.
size
()
>
0
){
p
=
cb
.
and
(
p
,
cb
.
not
(
root
.
get
(
OkrWorkReportProcessLog_
.
processorIdentity
).
in
(
identities_error
))
);
}
cq
.
distinct
(
true
).
select
(
root
.
get
(
OkrWorkReportProcessLog_
.
processorIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
();
cq
.
select
(
root
.
get
(
OkrWorkReportProcessLog_
.
processorIdentity
));
return
em
.
createQuery
(
cq
.
where
(
p
)).
getResultList
()
.
stream
().
distinct
().
collect
(
Collectors
.
toList
())
;
}
/**
* 根据身份名称,从工作汇报处理日志信息中查询与该身份有关的所有信息列表
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录