REQ-3117: 流程按钮同步
This commit is contained in:
parent
9988a74221
commit
b5c9aae004
@ -45,6 +45,10 @@ public class WorkflowButtonSyncClientController implements WorkflowButtonSyncCli
|
||||
request.getButtons().stream()
|
||||
.collect(toMap(WorkflowButton::getCode, identity(),
|
||||
(oldValue, newValue) -> oldValue));
|
||||
Map<String, WorkflowButton> name2FlowButton =
|
||||
request.getButtons().stream()
|
||||
.collect(toMap(WorkflowButton::getName, identity(),
|
||||
(oldValue, newValue) -> oldValue));
|
||||
List<MessageTemplateButtonV3> buttons =
|
||||
messageTemplateButtonV3Dao.lambdaQuery().list();
|
||||
|
||||
@ -56,7 +60,7 @@ public class WorkflowButtonSyncClientController implements WorkflowButtonSyncCli
|
||||
semaphore.acquire();
|
||||
tasks.runAsync(() -> {
|
||||
try {
|
||||
sync(code2Template, code2FlowButton, button);
|
||||
sync(code2Template, code2FlowButton, name2FlowButton, button);
|
||||
} catch (Exception e) {
|
||||
log.warn("sync button error, button={}", button, e);
|
||||
throw new RuntimeException(e);
|
||||
@ -72,6 +76,7 @@ public class WorkflowButtonSyncClientController implements WorkflowButtonSyncCli
|
||||
|
||||
private void sync(Map<String, MessageTemplateV3> code2Template,
|
||||
Map<String, WorkflowButton> code2FlowButton,
|
||||
Map<String, WorkflowButton> name2FlowButton,
|
||||
MessageTemplateButtonV3 button) {
|
||||
if (button.getSource() != RouterButtonSourceEnum.SYSTEM)
|
||||
return;
|
||||
@ -80,6 +85,8 @@ public class WorkflowButtonSyncClientController implements WorkflowButtonSyncCli
|
||||
return;
|
||||
|
||||
WorkflowButton workflowButton = code2FlowButton.get(button.getCode());
|
||||
if (workflowButton == null)
|
||||
workflowButton = name2FlowButton.get(button.getName());;
|
||||
if (workflowButton == null) return;
|
||||
MessageTemplateButtonV3 update = new MessageTemplateButtonV3();
|
||||
update.setId(button.getId());
|
||||
|
||||
@ -20,6 +20,7 @@ public class WorkflowSyncButtonsRequest {
|
||||
@Setter
|
||||
@Getter
|
||||
public static class WorkflowButton {
|
||||
private String name;
|
||||
private String code;
|
||||
private RouterCategoryEnum category;
|
||||
private String url;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user