Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
byit-myth-job
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liyuan
byit-myth-job
Commits
9b4a0967
Commit
9b4a0967
authored
Dec 11, 2020
by
huangfusuper
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
解决因为生命周期导致java节点数据错乱的BUG
parent
09e474e8
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
49 additions
and
33 deletions
+49
-33
RpcCallbackInstanceRunTheLifeCycleCallback.java
...tegy/impl/RpcCallbackInstanceRunTheLifeCycleCallback.java
+47
-31
SpecialJobParam.java
.../src/main/java/com/byit/dto/specials/SpecialJobParam.java
+2
-2
No files found.
byit-myth-core/myth-admin-core/src/main/java/com/byit/strategy/impl/RpcCallbackInstanceRunTheLifeCycleCallback.java
View file @
9b4a0967
...
@@ -97,43 +97,59 @@ public class RpcCallbackInstanceRunTheLifeCycleCallback implements InstanceRunTh
...
@@ -97,43 +97,59 @@ public class RpcCallbackInstanceRunTheLifeCycleCallback implements InstanceRunTh
//转换节点参数为包装对象
//转换节点参数为包装对象
RunParamWrapped
runParamWrapped
=
JSON
.
parseObject
(
runParam
,
RunParamWrapped
.
class
);
RunParamWrapped
runParamWrapped
=
JSON
.
parseObject
(
runParam
,
RunParamWrapped
.
class
);
String
privateParam
=
runParamWrapped
.
getPrivateParam
();
//如果对应参数为空直接设置
if
(
StringUtils
.
isBlank
(
privateParam
))
{
runParamWrapped
.
setPrivateParam
(
JSON
.
toJSONString
(
rpcScriptParamAndPlaceholderDto
));
jobTask
.
setRunParam
(
JSON
.
toJSONString
(
runParamWrapped
));
return
jobTask
;
}
//获取任务里面的数据
if
(
"JAVA"
.
equals
(
jobTask
.
getJobType
())){
ScriptParamAndPlaceholderDto
scriptParamAndPlaceholderDto
=
JSON
.
parseObject
(
privateParam
,
ScriptParamAndPlaceholderDto
.
class
);
Map
<
String
,
String
>
publicParamMap
=
runParamWrapped
.
getPublicParamMap
();
if
(
CollectionUtil
.
isEmpty
(
publicParamMap
)){
//替换参数
runParamWrapped
.
setPublicParamMap
(
new
HashMap
<>(
8
));
if
(
CollectionUtil
.
isNotEmpty
(
placeholder
))
{
}
//获取任务里面的替换参数
Map
<
String
,
String
>
javaParamPublic
=
runParamWrapped
.
getPublicParamMap
();
Map
<
String
,
String
>
jobTaskPlaceholder
=
scriptParamAndPlaceholderDto
.
getPlaceholder
();
if
(
CollectionUtil
.
isNotEmpty
(
scriptParam
)){
//如果任务里面的替换参数为空 就直接设置
javaParamPublic
.
putAll
(
scriptParam
);
if
(
CollectionUtil
.
isEmpty
(
jobTaskPlaceholder
))
{
scriptParamAndPlaceholderDto
.
setPlaceholder
(
placeholder
);
}
else
{
placeholder
.
forEach
(
jobTaskPlaceholder:
:
put
);
//追加数据
scriptParamAndPlaceholderDto
.
setPlaceholder
(
jobTaskPlaceholder
);
}
}
if
(
CollectionUtil
.
isNotEmpty
(
placeholder
)){
javaParamPublic
.
putAll
(
placeholder
);
}
runParamWrapped
.
setPublicParamMap
(
javaParamPublic
);
}
else
{
String
privateParam
=
runParamWrapped
.
getPrivateParam
();
//如果对应参数为空直接设置
if
(
StringUtils
.
isBlank
(
privateParam
))
{
runParamWrapped
.
setPrivateParam
(
JSON
.
toJSONString
(
rpcScriptParamAndPlaceholderDto
));
jobTask
.
setRunParam
(
JSON
.
toJSONString
(
runParamWrapped
));
return
jobTask
;
}
//获取任务里面的数据
ScriptParamAndPlaceholderDto
scriptParamAndPlaceholderDto
=
JSON
.
parseObject
(
privateParam
,
ScriptParamAndPlaceholderDto
.
class
);
//替换参数
if
(
CollectionUtil
.
isNotEmpty
(
placeholder
))
{
//获取任务里面的替换参数
Map
<
String
,
String
>
jobTaskPlaceholder
=
scriptParamAndPlaceholderDto
.
getPlaceholder
();
//如果任务里面的替换参数为空 就直接设置
if
(
CollectionUtil
.
isEmpty
(
jobTaskPlaceholder
))
{
scriptParamAndPlaceholderDto
.
setPlaceholder
(
placeholder
);
}
else
{
placeholder
.
forEach
(
jobTaskPlaceholder:
:
put
);
//追加数据
scriptParamAndPlaceholderDto
.
setPlaceholder
(
jobTaskPlaceholder
);
}
}
//脚本参数
if
(
CollectionUtil
.
isNotEmpty
(
scriptParam
))
{
Map
<
String
,
String
>
jobTaskParam
=
scriptParamAndPlaceholderDto
.
getParam
();
//如果任务里面的替换参数为空 就直接设置
if
(!
CollectionUtil
.
isEmpty
(
jobTaskParam
))
{
scriptParam
.
forEach
(
jobTaskParam:
:
put
);
//追加数据
}
}
scriptParamAndPlaceholderDto
.
setParam
(
jobTaskParam
);
//脚本参数
if
(
CollectionUtil
.
isNotEmpty
(
scriptParam
))
{
Map
<
String
,
String
>
jobTaskParam
=
scriptParamAndPlaceholderDto
.
getParam
();
//如果任务里面的替换参数为空 就直接设置
if
(!
CollectionUtil
.
isEmpty
(
jobTaskParam
))
{
scriptParam
.
forEach
(
jobTaskParam:
:
put
);
//追加数据
}
scriptParamAndPlaceholderDto
.
setParam
(
jobTaskParam
);
}
runParamWrapped
.
setPrivateParam
(
JSON
.
toJSONString
(
scriptParamAndPlaceholderDto
));
}
}
runParamWrapped
.
setPrivateParam
(
JSON
.
toJSONString
(
scriptParamAndPlaceholderDto
));
jobTask
.
setRunParam
(
JSON
.
toJSONString
(
runParamWrapped
));
jobTask
.
setRunParam
(
JSON
.
toJSONString
(
runParamWrapped
));
return
jobTask
;
return
jobTask
;
}).
collect
(
Collectors
.
toList
());
}).
collect
(
Collectors
.
toList
());
...
...
byit-myth-core/myth-dto-core/src/main/java/com/byit/dto/specials/SpecialJobParam.java
View file @
9b4a0967
...
@@ -40,7 +40,7 @@ public class SpecialJobParam implements Serializable {
...
@@ -40,7 +40,7 @@ public class SpecialJobParam implements Serializable {
private
String
startNodeTaskName
;
private
String
startNodeTaskName
;
/**
/**
* 任务名称 -> 任务参数载体
* 任务名称 -> 任务参数载体
value对应 ScriptParamAndPlaceholderDto
*/
*/
private
Map
<
String
,
String
>
paramCarrier
;
private
Map
<
String
,
String
>
paramCarrier
;
...
@@ -54,7 +54,7 @@ public class SpecialJobParam implements Serializable {
...
@@ -54,7 +54,7 @@ public class SpecialJobParam implements Serializable {
*/
*/
private
List
<
RepairTimeParam
>
repairTimeList
;
private
List
<
RepairTimeParam
>
repairTimeList
;
/**
/**
* 时间类型格式
* 时间类型格式
与 RepairTimeParam 里面的时间格式一致
*/
*/
private
String
timeFormatName
;
private
String
timeFormatName
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment