diff --git a/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/controller/TaskMessageController.java b/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/controller/TaskMessageController.java index 6e8c751..9f63398 100644 --- a/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/controller/TaskMessageController.java +++ b/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/controller/TaskMessageController.java @@ -1,6 +1,5 @@ package com.docus.server.archivefile.controller; -import com.docus.core.util.ListUtils; import com.docus.infrastructure.web.request.SearchRequest; import com.docus.infrastructure.web.response.PageResult; import com.docus.server.api.archivefile.TaskMessageApi; @@ -9,12 +8,10 @@ import com.docus.server.archivefile.convert.TaskMessageConverter; import com.docus.server.archivefile.service.ITaskMessageRetryLogService; import com.docus.server.archivefile.service.ITaskMessageService; import com.docus.server.entity.TaskMessage; -import com.docus.server.entity.TaskMessageRetryLog; import com.docus.server.vo.TaskMessageVO; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; -import java.util.List; /** * 被动接收任务表 Controller @@ -41,16 +38,14 @@ public class TaskMessageController implements TaskMessageApi { return TaskMessageConvert.INSTANCE.convert(taskMessage); } - /* + /** * 关键字搜素 + * * @param searchRequest 搜索参数 * @return 分页列表 */ @Override public PageResult search(SearchRequest searchRequest) { - PageResult pageResult = taskMessageService.search(searchRequest); - List retryLogs = taskMessageRetryLogService.findByTaskIds(ListUtils.distinctSelect(pageResult.getList(), TaskMessage::getId)); - List taskMessages = taskMessageConverter.toTaskMessageVO(pageResult.getList(), retryLogs); - return new PageResult<>(taskMessages, pageResult.getTotal(), pageResult.getPageNum(), pageResult.getPageSize()); + return taskMessageService.search(searchRequest); } } diff --git a/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/convert/TaskMessageConvert.java b/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/convert/TaskMessageConvert.java index 6b00f22..39ce1e5 100644 --- a/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/convert/TaskMessageConvert.java +++ b/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/convert/TaskMessageConvert.java @@ -1,6 +1,10 @@ package com.docus.server.archivefile.convert; +import com.docus.core.util.DateUtil; +import com.docus.infrastructure.web.response.PageResult; import com.docus.server.entity.TaskMessage; +import com.docus.server.enums.CollectTypeEnum; +import com.docus.server.enums.StateEnum; import com.docus.server.vo.TaskMessageVO; import org.mapstruct.Mapper; import org.mapstruct.Mappings; @@ -18,4 +22,22 @@ public interface TaskMessageConvert { @Mappings({}) List convert(List taskMessages); + + @Mappings({}) + PageResult convert(PageResult pageResult); + + default TaskMessage convert(String json, String xml, CollectTypeEnum collectType, String retryKey, Long id) { + TaskMessage taskOriginalMessage = new TaskMessage(); + taskOriginalMessage.setId(id); + taskOriginalMessage.setName(collectType.name()); + taskOriginalMessage.setMemo(collectType.getDesc()); + taskOriginalMessage.setCollectType(collectType); + taskOriginalMessage.setRetryKey(retryKey); + taskOriginalMessage.setJsonStr(json); + taskOriginalMessage.setSource(xml); + taskOriginalMessage.setState(StateEnum.OK); + taskOriginalMessage.setCreateTime(DateUtil.now()); + taskOriginalMessage.setUpdateTime(DateUtil.now()); + return taskOriginalMessage; + } } diff --git a/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/convert/TaskMessageConverter.java b/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/convert/TaskMessageConverter.java index 6aa468a..822ec30 100644 --- a/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/convert/TaskMessageConverter.java +++ b/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/convert/TaskMessageConverter.java @@ -1,19 +1,13 @@ package com.docus.server.archivefile.convert; import com.docus.core.util.DateUtil; -import com.docus.core.util.ListUtils; -import com.docus.core.util.property.Setters; import com.docus.infrastructure.redis.service.IdService; import com.docus.server.entity.TaskMessage; -import com.docus.server.entity.TaskMessageRetryLog; import com.docus.server.enums.CollectTypeEnum; import com.docus.server.enums.StateEnum; -import com.docus.server.vo.TaskMessageVO; import org.springframework.stereotype.Component; import javax.annotation.Resource; -import java.util.List; -import java.util.Map; @Component public class TaskMessageConverter { @@ -34,16 +28,4 @@ public class TaskMessageConverter { taskOriginalMessage.setUpdateTime(DateUtil.now()); return taskOriginalMessage; } - - public List toTaskMessageVO(List list, List taskMessageRetryLogs) { - Map longTaskMessageRetryLogMap = ListUtils.toMap(taskMessageRetryLogs, TaskMessageRetryLog::getMessageId); - - List taskMessageVOList = TaskMessageConvert.INSTANCE.convert(list); - - return Setters.instance().list(taskMessageVOList).cycleSetProperties(taskMessage -> { - if (longTaskMessageRetryLogMap.containsKey(taskMessage.getId())) { - taskMessage.setHaveRetryLog(true); - } - }); - } } diff --git a/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/service/ITaskMessageService.java b/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/service/ITaskMessageService.java index 0f13ed9..8eff286 100644 --- a/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/service/ITaskMessageService.java +++ b/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/service/ITaskMessageService.java @@ -5,6 +5,7 @@ import com.docus.infrastructure.web.response.PageResult; import com.docus.server.entity.TaskMessage; import com.docus.server.enums.CollectTypeEnum; import com.docus.server.enums.StateEnum; +import com.docus.server.vo.TaskMessageVO; import java.util.List; @@ -18,5 +19,5 @@ public interface ITaskMessageService { TaskMessage findById(String id); - PageResult search(SearchRequest searchRequest); + PageResult search(SearchRequest searchRequest); } diff --git a/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/service/impl/TaskConfigServiceImpl.java b/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/service/impl/TaskConfigServiceImpl.java index 1cd7623..b757b15 100644 --- a/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/service/impl/TaskConfigServiceImpl.java +++ b/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/service/impl/TaskConfigServiceImpl.java @@ -27,7 +27,6 @@ public class TaskConfigServiceImpl implements ITaskConfigService { TaskConfig taskConfig = getTaskConfigById(id); taskConfig.setAllPointerTime(date); updateTaskConfig(taskConfig); - updateTaskConfig(taskConfig); } @Transactional(rollbackFor = Exception.class) diff --git a/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/service/impl/TaskMessageServiceImpl.java b/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/service/impl/TaskMessageServiceImpl.java index 88c0571..431df8d 100644 --- a/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/service/impl/TaskMessageServiceImpl.java +++ b/common-docus/docus-archivefile/src/main/java/com/docus/server/archivefile/service/impl/TaskMessageServiceImpl.java @@ -2,19 +2,28 @@ package com.docus.server.archivefile.service.impl; import com.docus.core.util.DateUtil; import com.docus.core.util.Func; +import com.docus.core.util.ListUtils; +import com.docus.core.util.property.Setters; +import com.docus.infrastructure.redis.service.IdService; import com.docus.infrastructure.web.request.SearchRequest; import com.docus.infrastructure.web.response.PageResult; +import com.docus.server.archivefile.convert.TaskMessageConvert; import com.docus.server.archivefile.convert.TaskMessageConverter; import com.docus.server.archivefile.infrastructure.dao.ITaskMessageDao; +import com.docus.server.archivefile.infrastructure.dao.ITaskMessageRetryLogDao; import com.docus.server.archivefile.service.ITaskMessageService; import com.docus.server.entity.TaskMessage; +import com.docus.server.entity.TaskMessageRetryLog; import com.docus.server.enums.CollectTypeEnum; import com.docus.server.enums.StateEnum; +import com.docus.server.vo.TaskMessageVO; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import javax.annotation.Resource; import java.util.List; +import java.util.Map; @Service public class TaskMessageServiceImpl implements ITaskMessageService { @@ -22,6 +31,10 @@ public class TaskMessageServiceImpl implements ITaskMessageService { private TaskMessageConverter converter; @Resource private ITaskMessageDao taskMessageDao; + @Resource + private ITaskMessageRetryLogDao taskMessageRetryLogDao; + @Resource + private IdService idService; /** * 新增 ws xml 原始报文 @@ -29,7 +42,8 @@ public class TaskMessageServiceImpl implements ITaskMessageService { @Transactional(rollbackFor = Exception.class) @Override public Long insertTaskMessage(String json, String xml, CollectTypeEnum collectType, String retryKey) { - TaskMessage taskOriginalMessage = converter.toConvertTaskOriginalMessageDO(json, xml, collectType, retryKey); + TaskMessage taskOriginalMessage = TaskMessageConvert.INSTANCE.convert(json, xml, collectType, retryKey, idService.getDateSeq()); +// TaskMessage taskOriginalMessage = converter.toConvertTaskOriginalMessageDO(json, xml, collectType, retryKey); taskMessageDao.save(taskOriginalMessage); return taskOriginalMessage.getId(); } @@ -61,7 +75,22 @@ public class TaskMessageServiceImpl implements ITaskMessageService { } @Override - public PageResult search(SearchRequest request) { - return taskMessageDao.searchTaskMessage(request); + public PageResult search(SearchRequest request) { + PageResult result = TaskMessageConvert.INSTANCE.convert(taskMessageDao.searchTaskMessage(request)); + + if (CollectionUtils.isEmpty(result.getList())) { + return new PageResult<>(); + } + + List retryLogs = taskMessageRetryLogDao.findBy("messageId", ListUtils.distinctSelect(result.getList(), TaskMessageVO::getId)); + Map longTaskMessageRetryLogMap = ListUtils.toMap(retryLogs, TaskMessageRetryLog::getMessageId); + + Setters.instance().list(result.getList()).cycleSetProperties(taskMessage -> { + if (longTaskMessageRetryLogMap.containsKey(taskMessage.getId())) { + taskMessage.setHaveRetryLog(true); + } + }); + + return result; } } diff --git a/pom.xml b/pom.xml index e8e506f..55fba4f 100644 --- a/pom.xml +++ b/pom.xml @@ -19,6 +19,11 @@ docus-api-common docus-client-interface + + + 1.3.0.Final + + @@ -221,17 +226,17 @@ org.mapstruct mapstruct - 1.3.0.Final + ${org.mapstruct.version} org.mapstruct mapstruct-jdk8 - 1.3.0.Final + ${org.mapstruct.version} org.mapstruct mapstruct-processor - 1.3.0.Final + ${org.mapstruct.version} @@ -249,4 +254,27 @@ + + + + org.apache.maven.plugins + maven-compiler-plugin + + + + org.projectlombok + lombok + ${lombok.version} + + + org.mapstruct + mapstruct-processor + ${org.mapstruct.version} + + + + + + +