Merge branch 'feature/REQ-2699' into dev

This commit is contained in:
yanglin 2024-08-28 16:37:47 +08:00
commit 3f7a720c0b

View File

@ -1,14 +1,12 @@
package cn.axzo.msg.center.message.xxl;
import cn.axzo.msg.center.dal.MessageRouteDetailDao;
import cn.axzo.msg.center.dal.MessageRouterConfigDao;
import cn.axzo.msg.center.domain.entity.MessageRouteDetail;
import cn.axzo.msg.center.domain.entity.MessageRouterConfig;
import cn.axzo.msg.center.service.enums.TerminalTypeEnum;
import com.google.common.base.Splitter;
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.IJobHandler;
import com.xxl.job.core.handler.annotation.XxlJob;
import com.xxl.job.core.log.XxlJobLogger;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
@ -26,32 +24,19 @@ import java.util.List;
@RequiredArgsConstructor
public class AppendWorkspaceTypeJob extends IJobHandler {
private final MessageRouteDetailDao messageRouteDetailDao;
private final MessageRouterConfigDao messageRouterConfigDao;
@Override
@Transactional
@XxlJob("appendWorkspaceTypeJob")
public ReturnT<String> execute(String param) throws Exception {
List<MessageRouteDetail> details;
if (StringUtils.isBlank(param)) {
details = messageRouteDetailDao.list();
} else {
List<String> templateCodes = Splitter.on(",").omitEmptyStrings().trimResults().splitToList(param);
details = messageRouteDetailDao.lambdaQuery()
.in(MessageRouteDetail::getTemplateCode, templateCodes)
.list();
}
for (MessageRouteDetail detail : details) {
List<MessageRouterConfig> configs = messageRouterConfigDao.lambdaQuery()
.in(MessageRouterConfig::getTerminalType, Arrays.asList(
TerminalTypeEnum.ANDROID, TerminalTypeEnum.IOS,
TerminalTypeEnum.MINI_PROGRAM, TerminalTypeEnum.WEB_VIEW))
.eq(MessageRouterConfig::getRouterCode, detail.getTemplateCode())
.list();
for (MessageRouterConfig config : configs) {
maybeAppendWorkspaceType(config);
}
List<MessageRouterConfig> configs = messageRouterConfigDao.lambdaQuery()
.in(MessageRouterConfig::getTerminalType, Arrays.asList(
TerminalTypeEnum.ANDROID, TerminalTypeEnum.IOS,
TerminalTypeEnum.MINI_PROGRAM, TerminalTypeEnum.WEB_VIEW))
.list();
for (MessageRouterConfig config : configs) {
maybeAppendWorkspaceType(config);
}
return ReturnT.SUCCESS;
}
@ -86,6 +71,8 @@ public class AppendWorkspaceTypeJob extends IJobHandler {
.eq(MessageRouterConfig::getId, config.getId())
.set(MessageRouterConfig::getUrl, url)
.update();
XxlJobLogger.log("append workspaceType success, id: {}, routerCode: {}, url: {}",
config.getId(), config.getRouterCode(), url);
}
}