|
|
|
@ -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;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|