Merge branch 'hoxfix/20241010' into dev

This commit is contained in:
jinhaiyang 2024-10-10 11:39:48 +08:00
commit a4b1780e6c
4 changed files with 24 additions and 14 deletions

View File

@ -161,6 +161,10 @@
<groupId>cn.axzo.apollo</groupId>
<artifactId>apollo-api</artifactId>
</dependency>
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
</dependency>
<dependency>
<groupId>org.checkerframework</groupId>
<artifactId>checker-qual</artifactId>

View File

@ -16,6 +16,15 @@ import cn.axzo.msg.center.service.enums.RouterCategoryEnum;
import cn.axzo.msg.center.utils.UUIDUtil;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
@ -26,14 +35,6 @@ import java.util.Set;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
* @description
@ -79,7 +80,7 @@ public class MessageTemplateRouterServiceImpl implements MessageTemplateRouterSe
return;
}
saveDetailRouter(router.getRouteDetail());
batchSaveButtonRouter(router.getRouteButtons());
batchSaveButtonRouter(router.getRouteButtons(), isUpdate);
}
@Override
@ -220,7 +221,7 @@ public class MessageTemplateRouterServiceImpl implements MessageTemplateRouterSe
messageRouterConfigDao.saveBatch(detailRouter.fetchMessageRouterConfigs());
}
private void batchSaveButtonRouter(List<MessageRouteButtonDTO> buttonRouters) {
private void batchSaveButtonRouter(List<MessageRouteButtonDTO> buttonRouters, boolean isUpdate) {
if (CollectionUtils.isEmpty(buttonRouters)) {
log.info("buttonRouters is empty.");
return;
@ -230,7 +231,7 @@ public class MessageTemplateRouterServiceImpl implements MessageTemplateRouterSe
.map(e -> MessageRouteButtonWrapper.of(e.fetchMessageRouteButton(), e))
.collect(Collectors.toList());
// 生成自定义按钮的唯一标识和顺序
buildButtonCodeAndPriority(routeButtonWrappers);
buildButtonCodeAndPriority(routeButtonWrappers, isUpdate);
// 保存模板对应的按钮路由
List<MessageRouteButton> routeButtons = routeButtonWrappers.stream()
.map(MessageRouteButtonWrapper::getRouteButton)
@ -243,10 +244,10 @@ public class MessageTemplateRouterServiceImpl implements MessageTemplateRouterSe
messageRouterConfigDao.saveBatch(routerConfigs);
}
private void buildButtonCodeAndPriority(List<MessageRouteButtonWrapper> routeButtonWrappers) {
private void buildButtonCodeAndPriority(List<MessageRouteButtonWrapper> routeButtonWrappers, boolean isUpdate) {
for (int i = 0; i < routeButtonWrappers.size(); i++) {
MessageRouteButton button = routeButtonWrappers.get(i).getRouteButton();
if (RouterButtonSourceEnum.CUSTOM.equals(button.getSource())) {
if (!isUpdate && RouterButtonSourceEnum.CUSTOM.equals(button.getSource())) {
// 这里仅对自定义的按钮设置按钮标识
button.setBtnCode(UUIDUtil.uuidString());
}

View File

@ -92,7 +92,6 @@
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>26.0.0</version>
</dependency>
</dependencies>

View File

@ -38,6 +38,7 @@
<binarywang.weixin-java.version>4.5.0</binarywang.weixin-java.version>
<mapstruct.version>1.4.2.Final</mapstruct.version>
<feign-httpclient.version>11.8</feign-httpclient.version>
<jetbrains.version>26.0.0</jetbrains.version>
</properties>
<dependencyManagement>
@ -92,6 +93,11 @@
<artifactId>feign-httpclient</artifactId>
<version>${feign-httpclient.version}</version>
</dependency>
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>${jetbrains.version}</version>
</dependency>
</dependencies>
</dependencyManagement>