Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
ghsby
o2oa
提交
eb1c8ec0
o2oa
项目概览
ghsby
/
o2oa
落后 Fork 源项目 2880 个版本
Fork自
浙江兰德纵横网络技术股份有限公司 / o2oa
通知
1
Star
1
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,发现更多精彩内容 >>
提交
eb1c8ec0
编写于
11月 06, 2020
作者:
Z
zhourui
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
worklog
上级
80e35038
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
51 addition
and
46 deletion
+51
-46
o2server/x_processplatform_assemble_surface/src/main/java/com/x/processplatform/assemble/surface/jaxrs/worklog/ActionListWithWorkOrWorkCompleted.java
...face/jaxrs/worklog/ActionListWithWorkOrWorkCompleted.java
+51
-46
未找到文件。
o2server/x_processplatform_assemble_surface/src/main/java/com/x/processplatform/assemble/surface/jaxrs/worklog/ActionListWithWorkOrWorkCompleted.java
浏览文件 @
eb1c8ec0
...
...
@@ -85,58 +85,63 @@ class ActionListWithWorkOrWorkCompleted extends BaseAction {
List
<
WoReadCompleted
>
readCompleteds
=
_readCompleteds
.
get
();
List
<
WorkLog
>
workLogs
=
_workLogs
.
get
();
WorkLogTree
tree
=
new
WorkLogTree
(
workLogs
);
List
<
Wo
>
wos
=
new
ArrayList
<>();
for
(
WorkLog
o
:
workLogs
.
stream
().
filter
(
o
->
Objects
.
equals
(
ActivityType
.
manual
,
o
.
getFromActivityType
()))
.
collect
(
Collectors
.
toList
()))
{
Wo
wo
=
Wo
.
copier
.
copy
(
o
);
Node
node
=
tree
.
find
(
o
);
if
(
null
!=
node
)
{
Nodes
nodes
=
node
.
downNextManual
();
if
(
nodes
.
isEmpty
())
{
/* 如果没有找到后面的人工节点,那么有多种可能,有一种是已经删除,工作合并到其他分支了,那么找其他分支的下一步 */
WorkLog
otherWorkLog
=
workLogs
.
stream
()
.
filter
(
g
->
(
g
!=
o
)
&&
StringUtils
.
equals
(
g
.
getArrivedActivity
(),
o
.
getArrivedActivity
())
&&
StringUtils
.
equals
(
g
.
getSplitToken
(),
o
.
getSplitToken
()))
.
findFirst
().
orElse
(
null
);
if
(
null
!=
otherWorkLog
)
{
node
=
tree
.
find
(
otherWorkLog
);
if
(
null
!=
node
)
{
nodes
=
node
.
downNextManual
();
if
(
workLogs
.
isEmpty
())
{
WorkLogTree
tree
=
new
WorkLogTree
(
workLogs
);
List
<
Wo
>
wos
=
new
ArrayList
<>();
for
(
WorkLog
o
:
workLogs
.
stream
()
.
filter
(
o
->
Objects
.
equals
(
ActivityType
.
manual
,
o
.
getFromActivityType
()))
.
collect
(
Collectors
.
toList
()))
{
Wo
wo
=
Wo
.
copier
.
copy
(
o
);
Node
node
=
tree
.
find
(
o
);
if
(
null
!=
node
)
{
Nodes
nodes
=
node
.
downNextManual
();
if
(
nodes
.
isEmpty
())
{
/* 如果没有找到后面的人工节点,那么有多种可能,有一种是已经删除,工作合并到其他分支了,那么找其他分支的下一步 */
WorkLog
otherWorkLog
=
workLogs
.
stream
()
.
filter
(
g
->
(
g
!=
o
)
&&
StringUtils
.
equals
(
g
.
getArrivedActivity
(),
o
.
getArrivedActivity
())
&&
StringUtils
.
equals
(
g
.
getSplitToken
(),
o
.
getSplitToken
()))
.
findFirst
().
orElse
(
null
);
if
(
null
!=
otherWorkLog
)
{
node
=
tree
.
find
(
otherWorkLog
);
if
(
null
!=
node
)
{
nodes
=
node
.
downNextManual
();
}
}
}
}
if
(!
nodes
.
isEmpty
()
)
{
for
(
Node
n
:
nodes
)
{
tasks
.
stream
().
filter
(
t
->
StringUtils
.
equals
(
t
.
getActivityToken
(),
n
.
getWorkLog
().
getFromActivityToken
())).
forEach
(
t
->
{
wo
.
getNextTaskIdentityList
().
add
(
t
.
getIdentity
()
);
});
taskCompleteds
.
stream
()
.
filter
(
t
->
BooleanUtils
.
isTrue
(
t
.
getJoinInquire
())
&&
StringUtils
.
equals
(
t
.
getActivityToken
(),
n
.
getWorkLog
().
getFromActivityToken
()))
.
forEach
(
t
->
{
wo
.
getNextTaskCompletedIdentityList
().
add
(
t
.
getIdentity
()
);
});
if
(!
nodes
.
isEmpty
())
{
for
(
Node
n
:
nodes
)
{
tasks
.
stream
().
filter
(
t
->
StringUtils
.
equals
(
t
.
getActivityToken
(),
n
.
getWorkLog
().
getFromActivityToken
())).
forEach
(
t
->
{
wo
.
getNextTaskIdentityList
().
add
(
t
.
getIdentity
());
}
);
taskCompleteds
.
stream
()
.
filter
(
t
->
BooleanUtils
.
isTrue
(
t
.
getJoinInquire
())
&&
StringUtils
.
equals
(
t
.
getActivityToken
(),
n
.
getWorkLog
().
getFromActivityToken
()))
.
forEach
(
t
->
{
wo
.
getNextTaskCompletedIdentityList
().
add
(
t
.
getIdentity
());
}
);
}
}
}
/* 下一环节处理人可能是重复处理导致重复的,去重 */
wo
.
setNextTaskIdentityList
(
ListTools
.
trim
(
wo
.
getNextTaskIdentityList
(),
true
,
true
));
wo
.
setNextTaskCompletedIdentityList
(
ListTools
.
trim
(
wo
.
getNextTaskCompletedIdentityList
(),
true
,
true
));
wos
.
add
(
wo
);
}
/* 下一环节处理人可能是重复处理导致重复的,去重 */
wo
.
setNextTaskIdentityList
(
ListTools
.
trim
(
wo
.
getNextTaskIdentityList
(),
true
,
true
));
wo
.
setNextTaskCompletedIdentityList
(
ListTools
.
trim
(
wo
.
getNextTaskCompletedIdentityList
(),
true
,
true
));
wos
.
add
(
wo
);
ListTools
.
groupStick
(
wos
,
tasks
,
WorkLog
.
fromActivityToken_FIELDNAME
,
Task
.
activityToken_FIELDNAME
,
TASKLIST_FIELDNAME
);
ListTools
.
groupStick
(
wos
,
taskCompleteds
,
WorkLog
.
fromActivityToken_FIELDNAME
,
TaskCompleted
.
activityToken_FIELDNAME
,
TASKCOMPLETEDLIST_FIELDNAME
);
ListTools
.
groupStick
(
wos
,
reads
,
WorkLog
.
fromActivityToken_FIELDNAME
,
Read
.
activityToken_FIELDNAME
,
READLIST_FIELDNAME
);
ListTools
.
groupStick
(
wos
,
readCompleteds
,
WorkLog
.
fromActivityToken_FIELDNAME
,
ReadCompleted
.
activityToken_FIELDNAME
,
READCOMPLETEDLIST_FIELDNAME
);
result
.
setData
(
wos
);
}
ListTools
.
groupStick
(
wos
,
tasks
,
WorkLog
.
fromActivityToken_FIELDNAME
,
Task
.
activityToken_FIELDNAME
,
TASKLIST_FIELDNAME
);
ListTools
.
groupStick
(
wos
,
taskCompleteds
,
WorkLog
.
fromActivityToken_FIELDNAME
,
TaskCompleted
.
activityToken_FIELDNAME
,
TASKCOMPLETEDLIST_FIELDNAME
);
ListTools
.
groupStick
(
wos
,
reads
,
WorkLog
.
fromActivityToken_FIELDNAME
,
Read
.
activityToken_FIELDNAME
,
READLIST_FIELDNAME
);
ListTools
.
groupStick
(
wos
,
readCompleteds
,
WorkLog
.
fromActivityToken_FIELDNAME
,
ReadCompleted
.
activityToken_FIELDNAME
,
READCOMPLETEDLIST_FIELDNAME
);
result
.
setData
(
wos
);
return
result
;
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录