REQ-2324: 调整代码

This commit is contained in:
yanglin 2024-05-13 19:54:19 +08:00
parent 8319075251
commit 184e389fbf
4 changed files with 22 additions and 9 deletions

View File

@ -1,10 +1,12 @@
package cn.axzo.msg.center.message.domain.dto;
import cn.axzo.msg.center.domain.entity.MessageBaseTemplate;
import cn.axzo.msg.center.message.domain.dto.MessageTemplateRouterDTO.MessageRouteButtonDTO;
import cn.axzo.msg.center.service.dto.MessageCardContentItemDTO;
import cn.axzo.msg.center.service.enums.BizDetailJumpStrategyEnum;
import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
import cn.axzo.msg.center.service.enums.RouterCategoryEnum;
import cn.axzo.msg.center.utils.JSONObjectUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
@ -13,6 +15,7 @@ import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.apache.commons.collections.CollectionUtils;
import java.io.Serializable;
import java.util.List;
@ -97,6 +100,15 @@ public class MessageTemplateDTO implements Serializable {
private JSONObject pushData;
public boolean hasPresetButtons() {
List<MessageRouteButtonDTO> buttons = msgTemplateRouter.getRouteButtons();
if (CollectionUtils.isEmpty(buttons)) {
return false;
}
return buttons.stream()
.anyMatch(btn -> btn.getCategory() == RouterCategoryEnum.PRESET_BUTTON);
}
public boolean isCardJumpToBiz() {
if (msgTemplateRouter == null) {
return false;

View File

@ -132,7 +132,7 @@ public class TodoRangeQueryService {
.eq(Todo::getType, request.determineToDoType())
.eq(Todo::getExecutorPersonId, request.getPersonId())
//判断是否支持批量过滤
.and(request.getSupportBatchProcess() != null, nested -> nested.eq(Todo::getSupportBatchProcess, request.getSupportBatchProcess().getCode()))
.eq(request.getSupportBatchProcess() != null, Todo::getSupportBatchProcess, request.getSupportBatchProcess())
// like search
.and(StringUtils.isNotBlank(request.getTitle()), nested -> nested
.like(Todo::getTitle, request.getTitle())

View File

@ -40,6 +40,11 @@ class TodoLogger {
logTodosUpdated(ctx, todos);
}
void logSetTodoProcessing(TodoRequestContext ctx, List<Todo> todos) {
ctx.addLogContent("state", PendingMessageStateEnum.PROCESSING);
logTodosUpdated(ctx, todos);
}
void logTodoRollback(TodoRequestContext ctx, List<Todo> todos) {
ctx.addLogContent("state", PendingMessageStateEnum.HAS_BEEN_SENT);
logTodosUpdated(ctx, todos);

View File

@ -11,7 +11,6 @@ import cn.axzo.msg.center.domain.entity.Todo;
import cn.axzo.msg.center.domain.entity.TodoBusiness;
import cn.axzo.msg.center.inside.notices.config.PendingMessageBizConfig;
import cn.axzo.msg.center.message.domain.dto.MessageTemplateDTO;
import cn.axzo.msg.center.message.domain.dto.MessageTemplateRouterDTO;
import cn.axzo.msg.center.message.domain.param.PendingMessagePushParam;
import cn.axzo.msg.center.message.service.MessageTemplateNewService;
import cn.axzo.msg.center.message.service.todo.manage.event.NewTodoEvent;
@ -133,12 +132,9 @@ public class TodoManager {
//批量默认为false
YesOrNo supportBatchProcess = request.getSupportBatchProcess() == null ? YesOrNo.NO : request.getSupportBatchProcess();
//业务待办设置是否批量处理
if (template.getMsgCategory().equals(MessageCategoryEnum.BIZ_PENDING_MESSAGE)) {
List<MessageTemplateRouterDTO.MessageRouteButtonDTO> routeButtons = template.getMsgTemplateRouter().getRouteButtons();
if (CollectionUtils.isNotEmpty(routeButtons)) {
if (template.getMsgCategory() == MessageCategoryEnum.BIZ_PENDING_MESSAGE
&& template.hasPresetButtons())
supportBatchProcess = YesOrNo.YES;
}
}
request.setSupportBatchProcess(supportBatchProcess);
List<Todo> todos = todoRecordBuilder.buildTodos(
request, ctx.getRequestNo(), ext, business);
@ -397,7 +393,7 @@ public class TodoManager {
if (updated) {
List<Todo> updatedTodos = todoDao.getByIdentityCodes(identityCodes);
TodoRequestContext ctx = TodoRequestContext.create("batchSetProcessing", identityCodes);
todoLogger.logTodosUpdated(ctx, updatedTodos);
todoLogger.logSetTodoProcessing(ctx, updatedTodos);
}
return updated;
}