REQ-3581: 返回幂等信息
This commit is contained in:
parent
19c3696f5d
commit
421bc0cbc4
@ -197,30 +197,25 @@ public class EssService {
|
||||
|
||||
@BizTransactional
|
||||
public void downloadContractPDF(EssContract contract, boolean retryDownload) {
|
||||
EssContract reload = essContractDao.findForUpdateOrNull(contract.getEssContractId());
|
||||
if (reload == null) {
|
||||
log.warn("合同不存在, essContractId={}", contract.getEssContractId());
|
||||
if (StringUtils.isNotBlank(contract.getOssFileKey()) && !retryDownload) {
|
||||
log.info("合同已下载PDF, contract={}", contract);
|
||||
return;
|
||||
}
|
||||
if (StringUtils.isNotBlank(reload.getOssFileKey()) && !retryDownload) {
|
||||
log.info("合同已下载PDF, contract={}", reload);
|
||||
return;
|
||||
}
|
||||
if (!shouldDownloadContractPDF(reload)) {
|
||||
log.info("合同不需要下载PDF, contract={}", reload);
|
||||
if (!shouldDownloadContractPDF(contract)) {
|
||||
log.info("合同不需要下载PDF, contract={}", contract);
|
||||
return;
|
||||
}
|
||||
try {
|
||||
String pdfUrl = getContractPDFUrlFromEss(reload);
|
||||
String fileName = String.format("%s.pdf", reload.getContractName());
|
||||
String pdfUrl = getContractPDFUrlFromEss(contract);
|
||||
String fileName = String.format("%s.pdf", contract.getContractName());
|
||||
String fileKey = ossService.uploadToOss(pdfUrl, fileName);
|
||||
essContractDao.setOssFileKey(reload, fileKey);
|
||||
essLogDao.log("uploadContractToOss", reload.getEssContractId(),
|
||||
essContractDao.setOssFileKey(contract, fileKey);
|
||||
essLogDao.log("uploadContractToOss", contract.getEssContractId(),
|
||||
"ossFileKey", fileKey, "forceDownload", retryDownload);
|
||||
log.info("上传合同到OSS成功, essContractId={}", reload.getEssContractId());
|
||||
log.info("上传合同到OSS成功, essContractId={}", contract.getEssContractId());
|
||||
} catch (Exception e) {
|
||||
log.warn("上传合同到OSS失败", e);
|
||||
essLogDao.log(e, "uploadContractToOss", reload.getEssContractId());
|
||||
essLogDao.log(e, "uploadContractToOss", contract.getEssContractId());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -1,38 +0,0 @@
|
||||
package cn.axzo.nanopart.ess.server.mq;
|
||||
|
||||
import cn.axzo.framework.rocketmq.BaseListener;
|
||||
import cn.axzo.framework.rocketmq.EventConsumer;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.rocketmq.common.message.MessageExt;
|
||||
import org.apache.rocketmq.spring.annotation.ConsumeMode;
|
||||
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
|
||||
import org.apache.rocketmq.spring.core.RocketMQListener;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
/**
|
||||
* @author yanglin
|
||||
*/
|
||||
@Slf4j
|
||||
@Component
|
||||
@RequiredArgsConstructor
|
||||
@RocketMQMessageListener(
|
||||
maxReconsumeTimes = 3,
|
||||
consumeMode = ConsumeMode.ORDERLY,
|
||||
nameServer = "${rocketmq.name-server}",
|
||||
topic = "topic_nanopart_${spring.profiles.active}",
|
||||
consumerGroup = "ess_download_contract_pdf_${spring.application.name}_${spring.profiles.active}"
|
||||
)
|
||||
public class NanopartEssListener extends BaseListener
|
||||
implements RocketMQListener<MessageExt> {
|
||||
|
||||
private final EventConsumer eventConsumer;
|
||||
|
||||
@Override
|
||||
public void onMessage(MessageExt message) {
|
||||
log.info("receive mq message: {}", JSON.toJSONString(message));
|
||||
super.onEvent(message, eventConsumer);
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user