segment2.0
linrf 2 years ago
parent dcc092a202
commit 10ac3d2601

@ -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<TaskMessageVO> search(SearchRequest searchRequest) {
PageResult<TaskMessage> pageResult = taskMessageService.search(searchRequest);
List<TaskMessageRetryLog> retryLogs = taskMessageRetryLogService.findByTaskIds(ListUtils.distinctSelect(pageResult.getList(), TaskMessage::getId));
List<TaskMessageVO> taskMessages = taskMessageConverter.toTaskMessageVO(pageResult.getList(), retryLogs);
return new PageResult<>(taskMessages, pageResult.getTotal(), pageResult.getPageNum(), pageResult.getPageSize());
return taskMessageService.search(searchRequest);
}
}

@ -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<TaskMessageVO> convert(List<TaskMessage> taskMessages);
@Mappings({})
PageResult<TaskMessageVO> convert(PageResult<TaskMessage> 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;
}
}

@ -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<TaskMessageVO> toTaskMessageVO(List<TaskMessage> list, List<TaskMessageRetryLog> taskMessageRetryLogs) {
Map<Long, TaskMessageRetryLog> longTaskMessageRetryLogMap = ListUtils.toMap(taskMessageRetryLogs, TaskMessageRetryLog::getMessageId);
List<TaskMessageVO> taskMessageVOList = TaskMessageConvert.INSTANCE.convert(list);
return Setters.<TaskMessageVO>instance().list(taskMessageVOList).cycleSetProperties(taskMessage -> {
if (longTaskMessageRetryLogMap.containsKey(taskMessage.getId())) {
taskMessage.setHaveRetryLog(true);
}
});
}
}

@ -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<TaskMessage> search(SearchRequest searchRequest);
PageResult<TaskMessageVO> search(SearchRequest searchRequest);
}

@ -27,7 +27,6 @@ public class TaskConfigServiceImpl implements ITaskConfigService {
TaskConfig taskConfig = getTaskConfigById(id);
taskConfig.setAllPointerTime(date);
updateTaskConfig(taskConfig);
updateTaskConfig(taskConfig);
}
@Transactional(rollbackFor = Exception.class)

@ -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<TaskMessage> search(SearchRequest request) {
return taskMessageDao.searchTaskMessage(request);
public PageResult<TaskMessageVO> search(SearchRequest request) {
PageResult<TaskMessageVO> result = TaskMessageConvert.INSTANCE.convert(taskMessageDao.searchTaskMessage(request));
if (CollectionUtils.isEmpty(result.getList())) {
return new PageResult<>();
}
List<TaskMessageRetryLog> retryLogs = taskMessageRetryLogDao.findBy("messageId", ListUtils.distinctSelect(result.getList(), TaskMessageVO::getId));
Map<Long, TaskMessageRetryLog> longTaskMessageRetryLogMap = ListUtils.toMap(retryLogs, TaskMessageRetryLog::getMessageId);
Setters.<TaskMessageVO>instance().list(result.getList()).cycleSetProperties(taskMessage -> {
if (longTaskMessageRetryLogMap.containsKey(taskMessage.getId())) {
taskMessage.setHaveRetryLog(true);
}
});
return result;
}
}

@ -19,6 +19,11 @@
<module>docus-api-common</module>
<module>docus-client-interface</module>
</modules>
<properties>
<org.mapstruct.version>1.3.0.Final</org.mapstruct.version>
</properties>
<dependencies>
<!--配置中心客户端-->
@ -221,17 +226,17 @@
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct</artifactId>
<version>1.3.0.Final</version>
<version>${org.mapstruct.version}</version>
</dependency>
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-jdk8</artifactId>
<version>1.3.0.Final</version>
<version>${org.mapstruct.version}</version>
</dependency>
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>1.3.0.Final</version>
<version>${org.mapstruct.version}</version>
</dependency>
<!-- 实体映射转换 end -->
</dependencies>
@ -249,4 +254,27 @@
</profiles>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<annotationProcessorPaths>
<path>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
</path>
<path>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>${org.mapstruct.version}</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
</plugins>
</build>
</project>

Loading…
Cancel
Save